Skip to content

Bootstrap installs the whole token-efficiency profile on Linux (repomix, toon, ccusage, headroom, socraticode, serena pins) - #299

Merged
seathatflowsinourveins merged 1 commit into
mainfrom
claude/token-bootstrap-pins-20260925
Sep 25, 2026
Merged

seathatflowsinourveins merged 1 commit into
mainfrom
claude/token-bootstrap-pins-20260925

Conversation

@seathatflowsinourveins

Copy link
Copy Markdown
Collaborator

Scope

  • What this PR changes: a new Linux/WSL2 host now gets the whole token-efficiency profile from adoption/bootstrap-linux.sh. Before, 6 of its 14 components were recipe-only. The new entries in adoption/pins-linux-x86_64.json:

    Component Version Kind Integrity anchor Version probe
    repomix 1.18.1 npm sha256 matching npm dist.integrity exec, verified to start no server
    toon (@toon-format/cli) 4.1.1 npm sha256 matching npm dist.integrity exec, verified to start no server
    ccusage 20.0.24 npm sha256 matching npm dist.integrity exec, verified to start no server
    headroom (headroom-ai[mcp]) 0.37.0 uv-tool the resolved manylinux wheel's sha256 from the PyPI JSON digests exec, verified to start no server
    socraticode 1.14.0 npm, --ignore-scripts sha256 identical to the macOS pins entry npm-metadata (any invocation starts its MCP server)
    serena (serena-agent) 2.0.0.dev0 @ c6fbd1c5… new uv-tool-from-git the pinned 40-hex commit, re-verified against uv's uv-receipt.toml after install (fail closed); no PyPI release exists exec
  • install_uv_tool gains an optional pin package field. It falls back to id, so every existing uv-tool pin is unaffected.

  • install_pin's null-sha256 fail-closed gate requires a verified commit for the one git kind.

  • Docs: adoption/README.md, bootstrap.md and platforms/*.md carry the "changed after v2026.09.25.2" markers. The README's coverage cells are corrected: token-efficiency is now 14 of 14 on Linux, and the socraticode pin also lifts macos-arm64-foundation and semantic-rag.

  • Regenerated: the new-host grand list.

  • Base: current origin/main. Lane: lane:foundation.

SOTA sources

The official artifacts come from the upstream projects' own registries. Each hash was fetched and recomputed in a temporary directory, and no host install ran:

  • npm registry package metadata and tarballs (registry.npmjs.org) for repomix (github.com/yamadashy/repomix), @toon-format/cli (github.com/toon-format/toon), ccusage (github.com/ryoppippi/ccusage) and socraticode;
  • PyPI JSON API digests (pypi.org/pypi/headroom-ai/0.37.0/json) for headroom-ai;
  • github.com/oraios/serena at commit c6fbd1c5932df2494ffa0020af5a9fbe80b82143, installed with uv's git support (docs.astral.sh/uv, tool install from git);
  • the repository's own Bootstraps: declared, bounded version probes instead of --version on every bin entry #251 version_probe schema and recipes/README.md install lines.

Review (one round) and fixes

An independent read-only review found no defect in the pin data or the script's runtime behaviour, and three lower findings, all fixed:

  • Medium: add execution-level tests for the git install's fail-closed branches. InstallUvToolFromGitTests runs the extracted function against a uv shim and covers four cases: the commit recorded, no receipt, the wrong commit, and uv missing.
  • Low: anchor COMMIT_HEX at the start.
  • Low: name the profile in an ambiguous sentence in adoption/platforms/macos-arm64.md.

The Codex cross-family review is skipped until 2026-09-30.

Local commands run

bash -n adoption/bootstrap-linux.sh; shellcheck --shell=bash --severity=style adoption/bootstrap-linux.sh -> 0 issues
validate.yml's offline validate-job steps + evidence_manifest.py --check -> 0 failures
verdict_review_gate.py --root . --base origin/main -> passed (0 changed rows)
adoption/bootstrap/grand-list/release-pin/catalog-freshness test modules -> Ran 612, OK (skipped 15)
earlier full suite on the pre-rebase branch -> 5597 run, the only failure was the grand-list freshness now regenerated

No real bootstrap was run on this host. Every install was verification-only, in temporary directories.

🤖 Generated with Claude Code

@seathatflowsinourveins seathatflowsinourveins added the lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers label Sep 25, 2026
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

…for repomix, toon, ccusage, headroom, socraticode and serena

A new Linux/WSL2 host now gets every token-efficiency component from the bootstrap instead of six of them being recipe-only: official npm/PyPI artifacts pinned by sha256 (npm dist.integrity and PyPI digests cross-checked), serena through a new uv-tool-from-git kind whose integrity anchor is the pinned commit re-verified against uv's receipt after install. socraticode keeps an npm-metadata version probe (any invocation starts its MCP server). Docs carry the changed-after-v2026.09.25.2 markers; execution tests cover the git install's fail-closed branches.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@seathatflowsinourveins
seathatflowsinourveins force-pushed the claude/token-bootstrap-pins-20260925 branch from 65f617b to 4f55571 Compare September 25, 2026 23:10
@seathatflowsinourveins
seathatflowsinourveins merged commit 0a57db6 into main Sep 25, 2026
24 checks passed
@seathatflowsinourveins
seathatflowsinourveins deleted the claude/token-bootstrap-pins-20260925 branch September 25, 2026 23:39
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…acts and receipt)

Qualified on nativestack-5975wx-20260925 against the pinned 0.37.0: the
verified wheel in a new prefix (RECORD 555/555), the unchanged upstream
#3736 test 6/6 (0.37.0: 4/6), and the stack's MCP path over stdio with
byte-exact retrieval and cross-version store reads; an independent
verifier agreed. The coordinator retains 0.37.0: at v0.39.0 the
'[N lines omitted: ...]' notice counts levels over all input lines
(log_compressor.py:461-487 and the Rust format_output; checked with gh),
so fixture A's '[593 lines omitted: 1 ERROR]' reports the kept CRITICAL
line as omitted; the Rust detector still lacks the #3736 timestamp
guard; #299 pins 0.37.0 in the bootstrap and #296's counters run at it.
No pin changes.

- evidence/artifacts/sota-refresh-20260925/headroom-039/: harness and
  verifier scripts, key results as files, all other outputs and the
  production snapshots bundled, a read-only read-back and results.json
  (decision reasons, overturn condition, beacon note, corrections).
- evidence/receipts/headroom-039-qualification-20260925.json
  (native_cli_e2e).

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…rter 0.14.1

adoption/pins-linux-x86_64.json moves ai-memory to the v2.4.1 archive
(sha256 15cafdc4..., 16,026,020 bytes, equal to the release sidecar, the
API digest and the release body; binary dec065a8...; tag commit 433a19f3) and mcporter to the 0.14.1 npm
tarball (sha256 8e489864..., integrity sha512-/6pv...). The notes carry
the forward-only migration and the ps-on-PATH requirement.
pins-macos-arm64.json is unchanged: the Mac qualifies on its own.

adoption/templates/claude.settings.template.json: the eight ai-memory
hook commands name tools/ai-memory-2.4.1, matching the live source host
after the upstream install-hooks rewrite. bootstrap.md,
platforms/linux-wsl2.md and platforms/macos-arm64.md say the Linux pin
file and the template changed after v2026.09.25.2, and tell a Mac to
point the rendered hooks at its installed 2.3.2 prefix.

recipes/README.md: both rows name the new pins, and a new "Upgrading an
existing store" section gives the cold-copy procedure the host used.
Copies follow in docs/token-efficiency-stack.json,
tools/token-report/README.md and observability/native-data/README.md.
The two catalogs/landscape/upstream-snapshot.json rows come from a
fresh run of their gh api endpoints, and the saturation-audit rows cite
the new receipts. catalogs/landscape/foundation.json winner pins do not
move.

tests/test_adoption_bootstrap_macos.py required every shared component to
carry the same version and npm hash on both platforms, which a Linux-only
move breaks. It now names each Mac-behind-Linux lag exactly (ai-memory
2.3.2/2.4.0 and mcporter 0.13.13/0.14.1, with their receipts), so a move
on either side fails until the table is reviewed, and compares npm hashes
only between equal versions.

Review repairs (2026-09-25, independent review needs_changes):
- recipes/README.md: the hook commands' 49374 is an example; use the
  host's own server URL (NativeStack binds 127.0.0.1:49474, and 49374 is
  another distro's default there) and record what NativeStack used. The
  upgrade section states the order hazard: bootstrap-linux.sh repoints
  bin/ai-memory at once, so an existing store is stopped and cold-copied
  before any bootstrap re-run; adoption/update.md step 1 says the same.
- platforms/macos-arm64.md: the changed-after marker in step 3 states only
  the difference and points to a standing "ai-memory hook paths on macOS"
  note, which gives the full recipe command (--apply, --capture-mode
  allowlist, --no-capture-prompts, --server-url): with no stored mode,
  v2.3.2's installer falls back to denylist.
- catalogs/landscape/foundation.json durable-memory: one appended, dated
  limitation for the 20:44Z cutover; the earlier 2026-09-25 text is kept,
  and the winner pin (a verdict field) does not change.

Final round (2026-09-26): the ai-memory pin, the hook template, the
recipes and docs, the upstream-snapshot row, the saturation-audit row and
the Mac-lag test pair move from 2.4.0 to 2.4.1 after the user-approved
2.4.1 cutover (the 2.4.0 receipt stays as history). The upgrade section
covers both cutovers and warns against `pgrep -f` in the quiesce wait.
platforms/macos-arm64.md now says accurately that #299 also added
ccusage, headroom, repomix, serena, socraticode and toon to the Linux
pins, and which of the ten have Mac entries. The foundation.json
limitation names both cutovers.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…station SOTA refresh

docs/decisions/2026-09-25-ai-memory-2-4-0-release-review.md gains a dated
correction section; the original text is kept. GHSA-9pj6-vhgr-3mwh is not
reachable on this host (stateless transport: GET /mcp 405 with allow:
POST, no --http-stateful), and 2.4.0 writes no automatic pre-migration
archive for a store created by 2.3.2 (snapshot_before_db_migration is
gated to the 1.x -> 2.0 upgrade). It also records that the upgrade was
performed on 2026-09-25 and cites the new receipt.

docs/decisions/2026-09-25-workstation-sota-refresh.md is the dated
research-convergence record for the whole workstation-lane refresh: per
unit, the decision, its primary sources (releases, compares, advisories
and the refuter's key finding), the alternatives and the overturn
condition. rtk, markitdown, mcporter and ai-memory were qualified and
switched; socraticode 1.15.0 is qualified with the cutover deferred to no
earlier than 2026-10-01; dagu 2.17.2 is held by the trading lane;
headroom stays 0.37.0 because 0.38.0 carries #3736 on the MCP compress
path; qmd, qdrant, ccusage, worktrunk and vllm are already current;
llama.cpp b11146 is recorded, not qualified; both models are retained;
the ai-memory Nemotron embedder is evaluation-only. The research and
qualification results are cited as private inputs only.

Review repairs (2026-09-25, independent review needs_changes), each
fact re-checked with gh api at about 22:35Z:
- headroom: v0.39.0 (2026-09-25T19:29:55Z) contains d971f7c3 (compare
  ahead 86, behind 0; the release notes list #3748), so the overturn
  condition is met; qualifying 0.39.0 is the queued follow-up.
- ai-memory: only commands/hook*.rs and commands/install_hooks.rs are
  unchanged in the v2.3.2...v2.4.0 compare (config.rs, serve.rs, run.rs,
  reindex.rs, mcp_bridge.rs and six ai-memory-core files changed).
- ai-memory v2.4.1 (2026-09-25T21:46:32Z) carries the #792 fix and the
  forward-only V67 migration but not #859; it meets the "a 2.4.1
  appears" condition, and qualifying it (another rehearsal and the
  user's approval) is queued. Recorded in both documents.
- The embedder section cites issue #274 (the Mac-only harness, A17, "the
  workstation now owns R1") and catalogs/foundation/memory-stack-20260925.json;
  #274 covers the C3/C4 rerun, and the Nemotron-prefix evaluation comes
  after it.
- The release review gains a dated one-line pointer under its title.
- The rtk and markitdown receipts are linked now that #291 has merged.

Final round (2026-09-26):
- ai-memory: the record and the release review state that 2.4.1 was
  rehearsed and, with the user's approval, switched on 2026-09-26
  (00:14:12Z stop, 00:19:51Z start, V66 to V67), replacing the "needs
  another rehearsal and the user's approval" sentences and "2.4.0 serves".
- headroom: 0.39.0 was qualified and is not switched. The reasons are
  source-checked with gh at 00:28Z: the omission notice counts levels
  over all lines (log_compressor.py:461-487 and the Rust format_output;
  same Python blob since v0.37.0; #3635 changed only the Rust file), the
  Rust detector lacks the #3736 guard, and #299/#296 run 0.37.0.
- The embedder section cites experiment.json and convergence.json for
  the C1 to C3 arms (the catalog has no C1 label).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
… regenerate reports

Shared hot files, last in the branch per docs/lanes.md:

- manifests/stack.json: ai-memory 2.4.1 (release tag URL, source_pin
  433a19f3d54dea287571b1423591db2a89965fa9, freshness; evidence_ids keep
  the 2.4.0 receipt as history and add the 2.4.1 one) and mcporter
  0.14.1 (tree/v0.14.1 URLs, freshness), each with its new receipt in
  evidence_ids. The mcporter command becomes
  `mcporter --config "${MCPORTER_CONFIG}" list socraticode --brief --no-oauth`:
  the targetless `list --brief` form fails on both versions.
- manifests/evidence.json: receipt entries for
  ai-memory-240-qualification-20260925,
  mcporter-0141-qualification-20260925,
  ai-memory-241-qualification-20260925 and
  headroom-039-qualification-20260925 (headroom stays 0.37.0; the
  receipt is not in its evidence_ids), and every added or changed file
  registered with scripts/host_receipts.py register_file on top of main's
  copy.
- catalogs/landscape/new-host-grand-list.json and
  docs/new-host-grand-list.md from new_host_grand_list.py --write (Linux
  bootstrap 2.4.1 / 0.14.1 against the unchanged 2.3.2 / 0.13.13
  landscape winner pins; macOS bootstrap unchanged);
  component_matrix.py --write produced no change.

Rebased onto current main (including #291 and #299): both sides' pins,
doc text and receipts[] entries are kept, and evidence.json was rebuilt
from main's copy (indent 2, ASCII) and re-registered.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…acts and receipt)

Qualified on nativestack-5975wx-20260925 against the pinned 0.37.0: the
verified wheel in a new prefix (RECORD 555/555), the unchanged upstream
#3736 test 6/6 (0.37.0: 4/6), and the stack's MCP path over stdio with
byte-exact retrieval and cross-version store reads; an independent
verifier agreed. The coordinator retains 0.37.0: at v0.39.0 the
'[N lines omitted: ...]' notice counts levels over all input lines
(log_compressor.py:461-487 and the Rust format_output; checked with gh),
so fixture A's '[593 lines omitted: 1 ERROR]' reports the kept CRITICAL
line as omitted; the Rust detector still lacks the #3736 timestamp
guard; #299 pins 0.37.0 in the bootstrap and #296's counters run at it.
No pin changes.

- evidence/artifacts/sota-refresh-20260925/headroom-039/: harness and
  verifier scripts, key results as files, all other outputs and the
  production snapshots bundled, a read-only read-back and results.json
  (decision reasons, overturn condition, beacon note, corrections).
- evidence/receipts/headroom-039-qualification-20260925.json
  (native_cli_e2e).

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…rter 0.14.1

adoption/pins-linux-x86_64.json moves ai-memory to the v2.4.1 archive
(sha256 15cafdc4..., 16,026,020 bytes, equal to the release sidecar, the
API digest and the release body; binary dec065a8...; tag commit 433a19f3) and mcporter to the 0.14.1 npm
tarball (sha256 8e489864..., integrity sha512-/6pv...). The notes carry
the forward-only migration and the ps-on-PATH requirement.
pins-macos-arm64.json is unchanged: the Mac qualifies on its own.

adoption/templates/claude.settings.template.json: the eight ai-memory
hook commands name tools/ai-memory-2.4.1, matching the live source host
after the upstream install-hooks rewrite. bootstrap.md,
platforms/linux-wsl2.md and platforms/macos-arm64.md say the Linux pin
file and the template changed after v2026.09.25.2, and tell a Mac to
point the rendered hooks at its installed 2.3.2 prefix.

recipes/README.md: both rows name the new pins, and a new "Upgrading an
existing store" section gives the cold-copy procedure the host used.
Copies follow in docs/token-efficiency-stack.json,
tools/token-report/README.md and observability/native-data/README.md.
The two catalogs/landscape/upstream-snapshot.json rows come from a
fresh run of their gh api endpoints, and the saturation-audit rows cite
the new receipts. catalogs/landscape/foundation.json winner pins do not
move.

tests/test_adoption_bootstrap_macos.py required every shared component to
carry the same version and npm hash on both platforms, which a Linux-only
move breaks. It now names each Mac-behind-Linux lag exactly (ai-memory
2.3.2/2.4.0 and mcporter 0.13.13/0.14.1, with their receipts), so a move
on either side fails until the table is reviewed, and compares npm hashes
only between equal versions.

Review repairs (2026-09-25, independent review needs_changes):
- recipes/README.md: the hook commands' 49374 is an example; use the
  host's own server URL (NativeStack binds 127.0.0.1:49474, and 49374 is
  another distro's default there) and record what NativeStack used. The
  upgrade section states the order hazard: bootstrap-linux.sh repoints
  bin/ai-memory at once, so an existing store is stopped and cold-copied
  before any bootstrap re-run; adoption/update.md step 1 says the same.
- platforms/macos-arm64.md: the changed-after marker in step 3 states only
  the difference and points to a standing "ai-memory hook paths on macOS"
  note, which gives the full recipe command (--apply, --capture-mode
  allowlist, --no-capture-prompts, --server-url): with no stored mode,
  v2.3.2's installer falls back to denylist.
- catalogs/landscape/foundation.json durable-memory: one appended, dated
  limitation for the 20:44Z cutover; the earlier 2026-09-25 text is kept,
  and the winner pin (a verdict field) does not change.

Final round (2026-09-26): the ai-memory pin, the hook template, the
recipes and docs, the upstream-snapshot row, the saturation-audit row and
the Mac-lag test pair move from 2.4.0 to 2.4.1 after the user-approved
2.4.1 cutover (the 2.4.0 receipt stays as history). The upgrade section
covers both cutovers and warns against `pgrep -f` in the quiesce wait.
platforms/macos-arm64.md now says accurately that #299 also added
ccusage, headroom, repomix, serena, socraticode and toon to the Linux
pins, and which of the ten have Mac entries. The foundation.json
limitation names both cutovers.

Delta review (2026-09-26): the ai-memory install_note dates the
three-value check to 2026-09-25 (22:43Z qualification, 23:10Z verifier)
and says 2026-09-26 re-checked the API digest.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…station SOTA refresh

docs/decisions/2026-09-25-ai-memory-2-4-0-release-review.md gains a dated
correction section; the original text is kept. GHSA-9pj6-vhgr-3mwh is not
reachable on this host (stateless transport: GET /mcp 405 with allow:
POST, no --http-stateful), and 2.4.0 writes no automatic pre-migration
archive for a store created by 2.3.2 (snapshot_before_db_migration is
gated to the 1.x -> 2.0 upgrade). It also records that the upgrade was
performed on 2026-09-25 and cites the new receipt.

docs/decisions/2026-09-25-workstation-sota-refresh.md is the dated
research-convergence record for the whole workstation-lane refresh: per
unit, the decision, its primary sources (releases, compares, advisories
and the refuter's key finding), the alternatives and the overturn
condition. rtk, markitdown, mcporter and ai-memory were qualified and
switched; socraticode 1.15.0 is qualified with the cutover deferred to no
earlier than 2026-10-01; dagu 2.17.2 is held by the trading lane;
headroom stays 0.37.0 because 0.38.0 carries #3736 on the MCP compress
path; qmd, qdrant, ccusage, worktrunk and vllm are already current;
llama.cpp b11146 is recorded, not qualified; both models are retained;
the ai-memory Nemotron embedder is evaluation-only. The research and
qualification results are cited as private inputs only.

Review repairs (2026-09-25, independent review needs_changes), each
fact re-checked with gh api at about 22:35Z:
- headroom: v0.39.0 (2026-09-25T19:29:55Z) contains d971f7c3 (compare
  ahead 86, behind 0; the release notes list #3748), so the overturn
  condition is met; qualifying 0.39.0 is the queued follow-up.
- ai-memory: only commands/hook*.rs and commands/install_hooks.rs are
  unchanged in the v2.3.2...v2.4.0 compare (config.rs, serve.rs, run.rs,
  reindex.rs, mcp_bridge.rs and six ai-memory-core files changed).
- ai-memory v2.4.1 (2026-09-25T21:46:32Z) carries the #792 fix and the
  forward-only V67 migration but not #859; it meets the "a 2.4.1
  appears" condition, and qualifying it (another rehearsal and the
  user's approval) is queued. Recorded in both documents.
- The embedder section cites issue #274 (the Mac-only harness, A17, "the
  workstation now owns R1") and catalogs/foundation/memory-stack-20260925.json;
  #274 covers the C3/C4 rerun, and the Nemotron-prefix evaluation comes
  after it.
- The release review gains a dated one-line pointer under its title.
- The rtk and markitdown receipts are linked now that #291 has merged.

Final round (2026-09-26):
- ai-memory: the record and the release review state that 2.4.1 was
  rehearsed and, with the user's approval, switched on 2026-09-26
  (00:14:12Z stop, 00:19:51Z start, V66 to V67), replacing the "needs
  another rehearsal and the user's approval" sentences and "2.4.0 serves".
- headroom: 0.39.0 was qualified and is not switched. The reasons are
  source-checked with gh at 00:28Z: the omission notice counts levels
  over all lines (log_compressor.py:461-487 and the Rust format_output;
  same Python blob since v0.37.0; #3635 changed only the Rust file), the
  Rust detector lacks the #3736 guard, and #299/#296 run 0.37.0.
- The embedder section cites experiment.json and convergence.json for
  the C1 to C3 arms (the catalog has no C1 label).

Delta review (2026-09-26): the refresh record says 2.4.1 arm 28/28
(results/step4-rehearsal.json has 28 checks), and the release review's
"now name 2.4.0" is dated to the 2.4.0 cutover and marked superseded by
2.4.1.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
… regenerate reports

Shared hot files, last in the branch per docs/lanes.md:

- manifests/stack.json: ai-memory 2.4.1 (release tag URL, source_pin
  433a19f3d54dea287571b1423591db2a89965fa9, freshness; evidence_ids keep
  the 2.4.0 receipt as history and add the 2.4.1 one) and mcporter
  0.14.1 (tree/v0.14.1 URLs, freshness), each with its new receipt in
  evidence_ids. The mcporter command becomes
  `mcporter --config "${MCPORTER_CONFIG}" list socraticode --brief --no-oauth`:
  the targetless `list --brief` form fails on both versions.
- manifests/evidence.json: receipt entries for
  ai-memory-240-qualification-20260925,
  mcporter-0141-qualification-20260925,
  ai-memory-241-qualification-20260925 and
  headroom-039-qualification-20260925 (headroom stays 0.37.0; the
  receipt is not in its evidence_ids), and every added or changed file
  registered with scripts/host_receipts.py register_file on top of main's
  copy.
- catalogs/landscape/new-host-grand-list.json and
  docs/new-host-grand-list.md from new_host_grand_list.py --write (Linux
  bootstrap 2.4.1 / 0.14.1 against the unchanged 2.3.2 / 0.13.13
  landscape winner pins; macOS bootstrap unchanged);
  component_matrix.py --write produced no change.

Rebased onto current main (including #291 and #299): both sides' pins,
doc text and receipts[] entries are kept, and evidence.json was rebuilt
from main's copy (indent 2, ASCII) and re-registered.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…acts and receipt)

Qualified on nativestack-5975wx-20260925 against the pinned 0.37.0: the
verified wheel in a new prefix (RECORD 555/555), the unchanged upstream
#3736 test 6/6 (0.37.0: 4/6), and the stack's MCP path over stdio with
byte-exact retrieval and cross-version store reads; an independent
verifier agreed. The coordinator retains 0.37.0: at v0.39.0 the
'[N lines omitted: ...]' notice counts levels over all input lines
(log_compressor.py:461-487 and the Rust format_output; checked with gh),
so fixture A's '[593 lines omitted: 1 ERROR]' reports the kept CRITICAL
line as omitted; the Rust detector still lacks the #3736 timestamp
guard; #299 pins 0.37.0 in the bootstrap and #296's counters run at it.
No pin changes.

- evidence/artifacts/sota-refresh-20260925/headroom-039/: harness and
  verifier scripts, key results as files, all other outputs and the
  production snapshots bundled, a read-only read-back and results.json
  (decision reasons, overturn condition, beacon note, corrections).
- evidence/receipts/headroom-039-qualification-20260925.json
  (native_cli_e2e).

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…rter 0.14.1

adoption/pins-linux-x86_64.json moves ai-memory to the v2.4.1 archive
(sha256 15cafdc4..., 16,026,020 bytes, equal to the release sidecar, the
API digest and the release body; binary dec065a8...; tag commit 433a19f3) and mcporter to the 0.14.1 npm
tarball (sha256 8e489864..., integrity sha512-/6pv...). The notes carry
the forward-only migration and the ps-on-PATH requirement.
pins-macos-arm64.json is unchanged: the Mac qualifies on its own.

adoption/templates/claude.settings.template.json: the eight ai-memory
hook commands name tools/ai-memory-2.4.1, matching the live source host
after the upstream install-hooks rewrite. bootstrap.md,
platforms/linux-wsl2.md and platforms/macos-arm64.md say the Linux pin
file and the template changed after v2026.09.25.2, and tell a Mac to
point the rendered hooks at its installed 2.3.2 prefix.

recipes/README.md: both rows name the new pins, and a new "Upgrading an
existing store" section gives the cold-copy procedure the host used.
Copies follow in docs/token-efficiency-stack.json,
tools/token-report/README.md and observability/native-data/README.md.
The two catalogs/landscape/upstream-snapshot.json rows come from a
fresh run of their gh api endpoints, and the saturation-audit rows cite
the new receipts. catalogs/landscape/foundation.json winner pins do not
move.

tests/test_adoption_bootstrap_macos.py required every shared component to
carry the same version and npm hash on both platforms, which a Linux-only
move breaks. It now names each Mac-behind-Linux lag exactly (ai-memory
2.3.2/2.4.0 and mcporter 0.13.13/0.14.1, with their receipts), so a move
on either side fails until the table is reviewed, and compares npm hashes
only between equal versions.

Review repairs (2026-09-25, independent review needs_changes):
- recipes/README.md: the hook commands' 49374 is an example; use the
  host's own server URL (NativeStack binds 127.0.0.1:49474, and 49374 is
  another distro's default there) and record what NativeStack used. The
  upgrade section states the order hazard: bootstrap-linux.sh repoints
  bin/ai-memory at once, so an existing store is stopped and cold-copied
  before any bootstrap re-run; adoption/update.md step 1 says the same.
- platforms/macos-arm64.md: the changed-after marker in step 3 states only
  the difference and points to a standing "ai-memory hook paths on macOS"
  note, which gives the full recipe command (--apply, --capture-mode
  allowlist, --no-capture-prompts, --server-url): with no stored mode,
  v2.3.2's installer falls back to denylist.
- catalogs/landscape/foundation.json durable-memory: one appended, dated
  limitation for the 20:44Z cutover; the earlier 2026-09-25 text is kept,
  and the winner pin (a verdict field) does not change.

Final round (2026-09-26): the ai-memory pin, the hook template, the
recipes and docs, the upstream-snapshot row, the saturation-audit row and
the Mac-lag test pair move from 2.4.0 to 2.4.1 after the user-approved
2.4.1 cutover (the 2.4.0 receipt stays as history). The upgrade section
covers both cutovers and warns against `pgrep -f` in the quiesce wait.
platforms/macos-arm64.md now says accurately that #299 also added
ccusage, headroom, repomix, serena, socraticode and toon to the Linux
pins, and which of the ten have Mac entries. The foundation.json
limitation names both cutovers.

Delta review (2026-09-26): the ai-memory install_note dates the
three-value check to 2026-09-25 (22:43Z qualification, 23:10Z verifier)
and says 2026-09-26 re-checked the API digest.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…station SOTA refresh

docs/decisions/2026-09-25-ai-memory-2-4-0-release-review.md gains a dated
correction section; the original text is kept. GHSA-9pj6-vhgr-3mwh is not
reachable on this host (stateless transport: GET /mcp 405 with allow:
POST, no --http-stateful), and 2.4.0 writes no automatic pre-migration
archive for a store created by 2.3.2 (snapshot_before_db_migration is
gated to the 1.x -> 2.0 upgrade). It also records that the upgrade was
performed on 2026-09-25 and cites the new receipt.

docs/decisions/2026-09-25-workstation-sota-refresh.md is the dated
research-convergence record for the whole workstation-lane refresh: per
unit, the decision, its primary sources (releases, compares, advisories
and the refuter's key finding), the alternatives and the overturn
condition. rtk, markitdown, mcporter and ai-memory were qualified and
switched; socraticode 1.15.0 is qualified with the cutover deferred to no
earlier than 2026-10-01; dagu 2.17.2 is held by the trading lane;
headroom stays 0.37.0 because 0.38.0 carries #3736 on the MCP compress
path; qmd, qdrant, ccusage, worktrunk and vllm are already current;
llama.cpp b11146 is recorded, not qualified; both models are retained;
the ai-memory Nemotron embedder is evaluation-only. The research and
qualification results are cited as private inputs only.

Review repairs (2026-09-25, independent review needs_changes), each
fact re-checked with gh api at about 22:35Z:
- headroom: v0.39.0 (2026-09-25T19:29:55Z) contains d971f7c3 (compare
  ahead 86, behind 0; the release notes list #3748), so the overturn
  condition is met; qualifying 0.39.0 is the queued follow-up.
- ai-memory: only commands/hook*.rs and commands/install_hooks.rs are
  unchanged in the v2.3.2...v2.4.0 compare (config.rs, serve.rs, run.rs,
  reindex.rs, mcp_bridge.rs and six ai-memory-core files changed).
- ai-memory v2.4.1 (2026-09-25T21:46:32Z) carries the #792 fix and the
  forward-only V67 migration but not #859; it meets the "a 2.4.1
  appears" condition, and qualifying it (another rehearsal and the
  user's approval) is queued. Recorded in both documents.
- The embedder section cites issue #274 (the Mac-only harness, A17, "the
  workstation now owns R1") and catalogs/foundation/memory-stack-20260925.json;
  #274 covers the C3/C4 rerun, and the Nemotron-prefix evaluation comes
  after it.
- The release review gains a dated one-line pointer under its title.
- The rtk and markitdown receipts are linked now that #291 has merged.

Final round (2026-09-26):
- ai-memory: the record and the release review state that 2.4.1 was
  rehearsed and, with the user's approval, switched on 2026-09-26
  (00:14:12Z stop, 00:19:51Z start, V66 to V67), replacing the "needs
  another rehearsal and the user's approval" sentences and "2.4.0 serves".
- headroom: 0.39.0 was qualified and is not switched. The reasons are
  source-checked with gh at 00:28Z: the omission notice counts levels
  over all lines (log_compressor.py:461-487 and the Rust format_output;
  same Python blob since v0.37.0; #3635 changed only the Rust file), the
  Rust detector lacks the #3736 guard, and #299/#296 run 0.37.0.
- The embedder section cites experiment.json and convergence.json for
  the C1 to C3 arms (the catalog has no C1 label).

Delta review (2026-09-26): the refresh record says 2.4.1 arm 28/28
(results/step4-rehearsal.json has 28 checks), and the release review's
"now name 2.4.0" is dated to the 2.4.0 cutover and marked superseded by
2.4.1.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins added a commit that referenced this pull request Sep 26, 2026
…fresh record (headroom 0.39.0 qualified, not switched) (#307)

* ai-memory 2.4.0 qualification evidence (sanitized artifacts, cutover facts and receipt)

Qualified on nativestack-5975wx-20260925 against the installed 2.3.2 on
restored copies of an online backup (2.3.2 baseline 16/16 on its second
attempt, 2.4.0 rehearsal 19/19: V64 -> V66 with nothing missing, /healthz
200, 23 tools unchanged, both hook clients captured, 2.3.2 refuses the
migrated store), reviewed by an independent verifier (agree, 3 minor
defects), then switched by the coordinator in a user-approved cold-copy
cutover (20:43:48Z stop, 20:44:37Z start, V65/V66 applied, fingerprint
PASS, real Claude Code capture). The Codex /hooks trust step for the 7
changed commands is pending and the user's.

- evidence/artifacts/sota-refresh-20260925/ai-memory/: the driver and
  the verifier's scripts byte-identical, sanitized step results,
  cutover.json with the coordinator's aggregate facts only (no cold copy,
  fingerprint file or store content), a read-only read-back and
  results.json with both arms, the verifier verdict and what was not
  published.
- evidence/receipts/ai-memory-240-qualification-20260925.json
  (native_cli_e2e).

Review repairs (2026-09-25, independent review needs_changes): the
receipt adds the failed production compare check (claude_settings_unchanged:
~/.claude/settings.json changed at 19:01:59Z by an unidentified writer);
results.json corrects the verifier's two wording defects in place and keeps
the originals in a corrections list; recorded_at_utc is the time the
receipt content was written. Final round: the #792 limitation says the
fix is not in 2.4.0 and was released in v2.4.1 at 2026-09-25T21:46:32Z.

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* mcporter 0.14.1 qualification evidence (sanitized artifacts, cutover facts and receipt)

Qualified on nativestack-5975wx-20260925 against the installed 0.13.13:
the verified npm tarball (sha256 8e489864..., SLSA provenance from
release.yml at refs/tags/v0.14.1) in a new prefix, and the same 37-step
acceptance in isolated daemon namespaces passing 37/37 on both versions
with identical outcomes. An independent verifier agreed and measured the
one difference the acceptance cannot see: without ps on the daemon's
PATH, 0.14.1 cannot connect keep-alive servers and `daemon stop`
refuses. The coordinator then relinked bin/mcporter with no daemon
running; `list socraticode --brief --no-oauth` listed 26 tools and
codebase_health reached Qdrant.

- evidence/artifacts/sota-refresh-20260925/mcporter/: harness and
  verifier scripts byte-identical, both arms' results, the per-step raw
  outputs bundled into two JSON files (deduplicated), integrity and
  provenance outputs, cutover.json, a read-only read-back and
  results.json.
- evidence/receipts/mcporter-0141-qualification-20260925.json
  (native_cli_e2e).

Review repairs (2026-09-25, independent review needs_changes): the
staging install's package.json and package-lock.json are published as
stage/package.evidence.json and stage/package-lock.evidence.json (bytes
unchanged), so they are not repository dependency manifests and the OSV
inventory and Dependabot scope stay as they were; results.json records
the renames; recorded_at_utc is the time the receipt content was written.

Delta review (2026-09-26): the two npm registry key .pem files are
listed under not_published (source https://registry.npmjs.org/-/npm/v1/keys),
because .gitignore excludes *.pem; they were never committed.

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* ai-memory 2.4.1 qualification and cutover evidence (sanitized artifacts and receipt)

Qualified on nativestack-5975wx-20260925 against production 2.4.0 on
restored copies of one online backup (2.4.0 arm 26/26, 2.4.1 arm 28/28:
V66 -> V67 with nothing missing, 2.4.0 refuses the V67 copy, path-only
install-hooks render, and the #792 A/B: 65/65 keepalive timers and all 60
vanished peers reclaimed on 2.4.1, none on 2.4.0), reviewed by an
independent verifier (agree, 8 minor defects). The coordinator then
performed the user-approved cutover on 2026-09-26: stop 00:14:12Z, cold
V66 copy, relink, path-only hook rewrite, start 00:19:51Z with V67
applied, fingerprint PASS, keepalive on 2 of 2 live sockets and real
Claude Code capture. The Codex /hooks re-trust is pending and the
user's. The 2.4.0 receipt stays as history.

- evidence/artifacts/sota-refresh-20260925/ai-memory-241/: the driver
  and the verifier's scripts byte-identical, sanitized results for both,
  cutover.json with the coordinator's aggregate facts only (no cold copy,
  fingerprint file or store content), a read-only read-back and
  results.json (steps for both arms, the verdict, and the verifier's
  wording corrections).
- evidence/receipts/ai-memory-241-qualification-20260925.json
  (native_cli_e2e); recorded_at_utc is the time the content was written.

Delta review (2026-09-26): results/step4-rehearsal.json has 28 checks,
all true, so the receipt and the B-arm excerpt say 28 (the original 29 is
kept in results.json corrections), and the R1/A17 control-build limitation
cites issue #274.

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* headroom 0.39.0 qualification evidence, not switched (sanitized artifacts and receipt)

Qualified on nativestack-5975wx-20260925 against the pinned 0.37.0: the
verified wheel in a new prefix (RECORD 555/555), the unchanged upstream
#3736 test 6/6 (0.37.0: 4/6), and the stack's MCP path over stdio with
byte-exact retrieval and cross-version store reads; an independent
verifier agreed. The coordinator retains 0.37.0: at v0.39.0 the
'[N lines omitted: ...]' notice counts levels over all input lines
(log_compressor.py:461-487 and the Rust format_output; checked with gh),
so fixture A's '[593 lines omitted: 1 ERROR]' reports the kept CRITICAL
line as omitted; the Rust detector still lacks the #3736 timestamp
guard; #299 pins 0.37.0 in the bootstrap and #296's counters run at it.
No pin changes.

- evidence/artifacts/sota-refresh-20260925/headroom-039/: harness and
  verifier scripts, key results as files, all other outputs and the
  production snapshots bundled, a read-only read-back and results.json
  (decision reasons, overturn condition, beacon note, corrections).
- evidence/receipts/headroom-039-qualification-20260925.json
  (native_cli_e2e).

manifests/evidence.json registration follows in the branch's last commit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Linux pins, hook template, recipes and docs: ai-memory 2.4.1 and mcporter 0.14.1

adoption/pins-linux-x86_64.json moves ai-memory to the v2.4.1 archive
(sha256 15cafdc4..., 16,026,020 bytes, equal to the release sidecar, the
API digest and the release body; binary dec065a8...; tag commit 433a19f3) and mcporter to the 0.14.1 npm
tarball (sha256 8e489864..., integrity sha512-/6pv...). The notes carry
the forward-only migration and the ps-on-PATH requirement.
pins-macos-arm64.json is unchanged: the Mac qualifies on its own.

adoption/templates/claude.settings.template.json: the eight ai-memory
hook commands name tools/ai-memory-2.4.1, matching the live source host
after the upstream install-hooks rewrite. bootstrap.md,
platforms/linux-wsl2.md and platforms/macos-arm64.md say the Linux pin
file and the template changed after v2026.09.25.2, and tell a Mac to
point the rendered hooks at its installed 2.3.2 prefix.

recipes/README.md: both rows name the new pins, and a new "Upgrading an
existing store" section gives the cold-copy procedure the host used.
Copies follow in docs/token-efficiency-stack.json,
tools/token-report/README.md and observability/native-data/README.md.
The two catalogs/landscape/upstream-snapshot.json rows come from a
fresh run of their gh api endpoints, and the saturation-audit rows cite
the new receipts. catalogs/landscape/foundation.json winner pins do not
move.

tests/test_adoption_bootstrap_macos.py required every shared component to
carry the same version and npm hash on both platforms, which a Linux-only
move breaks. It now names each Mac-behind-Linux lag exactly (ai-memory
2.3.2/2.4.0 and mcporter 0.13.13/0.14.1, with their receipts), so a move
on either side fails until the table is reviewed, and compares npm hashes
only between equal versions.

Review repairs (2026-09-25, independent review needs_changes):
- recipes/README.md: the hook commands' 49374 is an example; use the
  host's own server URL (NativeStack binds 127.0.0.1:49474, and 49374 is
  another distro's default there) and record what NativeStack used. The
  upgrade section states the order hazard: bootstrap-linux.sh repoints
  bin/ai-memory at once, so an existing store is stopped and cold-copied
  before any bootstrap re-run; adoption/update.md step 1 says the same.
- platforms/macos-arm64.md: the changed-after marker in step 3 states only
  the difference and points to a standing "ai-memory hook paths on macOS"
  note, which gives the full recipe command (--apply, --capture-mode
  allowlist, --no-capture-prompts, --server-url): with no stored mode,
  v2.3.2's installer falls back to denylist.
- catalogs/landscape/foundation.json durable-memory: one appended, dated
  limitation for the 20:44Z cutover; the earlier 2026-09-25 text is kept,
  and the winner pin (a verdict field) does not change.

Final round (2026-09-26): the ai-memory pin, the hook template, the
recipes and docs, the upstream-snapshot row, the saturation-audit row and
the Mac-lag test pair move from 2.4.0 to 2.4.1 after the user-approved
2.4.1 cutover (the 2.4.0 receipt stays as history). The upgrade section
covers both cutovers and warns against `pgrep -f` in the quiesce wait.
platforms/macos-arm64.md now says accurately that #299 also added
ccusage, headroom, repomix, serena, socraticode and toon to the Linux
pins, and which of the ten have Mac entries. The foundation.json
limitation names both cutovers.

Delta review (2026-09-26): the ai-memory install_note dates the
three-value check to 2026-09-25 (22:43Z qualification, 23:10Z verifier)
and says 2026-09-26 re-checked the API digest.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Decision records: correct the ai-memory 2.4.0 review; record the workstation SOTA refresh

docs/decisions/2026-09-25-ai-memory-2-4-0-release-review.md gains a dated
correction section; the original text is kept. GHSA-9pj6-vhgr-3mwh is not
reachable on this host (stateless transport: GET /mcp 405 with allow:
POST, no --http-stateful), and 2.4.0 writes no automatic pre-migration
archive for a store created by 2.3.2 (snapshot_before_db_migration is
gated to the 1.x -> 2.0 upgrade). It also records that the upgrade was
performed on 2026-09-25 and cites the new receipt.

docs/decisions/2026-09-25-workstation-sota-refresh.md is the dated
research-convergence record for the whole workstation-lane refresh: per
unit, the decision, its primary sources (releases, compares, advisories
and the refuter's key finding), the alternatives and the overturn
condition. rtk, markitdown, mcporter and ai-memory were qualified and
switched; socraticode 1.15.0 is qualified with the cutover deferred to no
earlier than 2026-10-01; dagu 2.17.2 is held by the trading lane;
headroom stays 0.37.0 because 0.38.0 carries #3736 on the MCP compress
path; qmd, qdrant, ccusage, worktrunk and vllm are already current;
llama.cpp b11146 is recorded, not qualified; both models are retained;
the ai-memory Nemotron embedder is evaluation-only. The research and
qualification results are cited as private inputs only.

Review repairs (2026-09-25, independent review needs_changes), each
fact re-checked with gh api at about 22:35Z:
- headroom: v0.39.0 (2026-09-25T19:29:55Z) contains d971f7c3 (compare
  ahead 86, behind 0; the release notes list #3748), so the overturn
  condition is met; qualifying 0.39.0 is the queued follow-up.
- ai-memory: only commands/hook*.rs and commands/install_hooks.rs are
  unchanged in the v2.3.2...v2.4.0 compare (config.rs, serve.rs, run.rs,
  reindex.rs, mcp_bridge.rs and six ai-memory-core files changed).
- ai-memory v2.4.1 (2026-09-25T21:46:32Z) carries the #792 fix and the
  forward-only V67 migration but not #859; it meets the "a 2.4.1
  appears" condition, and qualifying it (another rehearsal and the
  user's approval) is queued. Recorded in both documents.
- The embedder section cites issue #274 (the Mac-only harness, A17, "the
  workstation now owns R1") and catalogs/foundation/memory-stack-20260925.json;
  #274 covers the C3/C4 rerun, and the Nemotron-prefix evaluation comes
  after it.
- The release review gains a dated one-line pointer under its title.
- The rtk and markitdown receipts are linked now that #291 has merged.

Final round (2026-09-26):
- ai-memory: the record and the release review state that 2.4.1 was
  rehearsed and, with the user's approval, switched on 2026-09-26
  (00:14:12Z stop, 00:19:51Z start, V66 to V67), replacing the "needs
  another rehearsal and the user's approval" sentences and "2.4.0 serves".
- headroom: 0.39.0 was qualified and is not switched. The reasons are
  source-checked with gh at 00:28Z: the omission notice counts levels
  over all lines (log_compressor.py:461-487 and the Rust format_output;
  same Python blob since v0.37.0; #3635 changed only the Rust file), the
  Rust detector lacks the #3736 guard, and #299/#296 run 0.37.0.
- The embedder section cites experiment.json and convergence.json for
  the C1 to C3 arms (the catalog has no C1 label).

Delta review (2026-09-26): the refresh record says 2.4.1 arm 28/28
(results/step4-rehearsal.json has 28 checks), and the release review's
"now name 2.4.0" is dated to the 2.4.0 cutover and marked superseded by
2.4.1.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Stack pins ai-memory 2.4.1 and mcporter 0.14.1; register evidence and regenerate reports

Rebuilt on main c09dd6d (#306) per the hot-file protocol: the reviewed
stack.json diff, the same registered path set and all four qualification
receipts as the reviewed head b64f9b0.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Scout <scout@local>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@seathatflowsinourveins

Copy link
Copy Markdown
Collaborator Author

Cross-family review (Codex CLI 0.155.1, gpt-6-astra, model_reasoning_effort=max, read-only sandbox), 2026-09-26. Run by the workstation coordinator against a clean checkout of main after merge. Supported findings get a repair PR (one repair round; residuals recorded).

DEFECTS FOUND

  • medium | adoption/pins-linux-x86_64.json:299 | SocratiCode’s ignore_scripts: true is ignored: Linux’s dispatcher never passes it, and install_npm omits --ignore-scripts. Dependency installation scripts therefore run despite the PR’s explicit guarantee. | Pass the field through the dispatcher, honor it in install_npm, and test the actual npm arguments.

  • medium | adoption/bootstrap-linux.sh:393 | The newly added Headroom wheel URL and SHA-256 are never consumed. Installation resolves headroom-ai[mcp]==0.37.0 from the configured index; the version probe cannot establish that the installed artifact matches the reviewed wheel. | Download and verify the pinned wheel before installing that local artifact with the MCP extra; add a hash-mismatch rejection test.

seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…and install the pinned headroom wheel

Repairs the GPT-6 cross-family findings on #299, with guarded retained drivers.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins pushed a commit that referenced this pull request Sep 26, 2026
…and install the pinned headroom wheel

Repairs the GPT-6 cross-family findings on #299, with guarded retained drivers.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins added a commit that referenced this pull request Sep 26, 2026
…and install the pinned headroom wheel (#334)

Repairs the GPT-6 cross-family findings on #299, with guarded retained drivers.

Co-authored-by: Scout <scout@local>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lane:foundation Foundation lane: Claude/Codex setup, hosts, memory, RAG, research, workers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant