Repository navigation
Commit the LongMemEval v4 driver byte-exact for the A17 rerun (D2h, C4) - #386
seathatflowsinourveins merged 10 commits into
Conversation
blueprints/memory-stack/longmemeval/v4/: the harness v4 driver (lme_harness.py, lane_tools.py, lme_summarize.py, pins.json), the v3 equivalence reference (reference/lme_harness_v3.py), the X-arm and embedding-server tools (rerank_stage.py, embed_server_st.py, gguf_embed_front.py, mteb_lmeb.py), the VelaNext drivers (run_velanext.sh, setup_velanext.sh), PREREGISTRATION.md (hash-verified against a9b1db33...), the k1-subset.json question-id subset, the five requirements/*.in + *.lock.txt(.frozen) pairs, and vendor/agentmemory-repo-package-lock.json.frozen. Extracted byte-exact from the private agent-ecosystem repository, branch claude/longmemeval-velanext-lane-20260925, commit 576689a, per host request #274 and #384, following the pattern of #380 (not yet merged). The five requirements/*.lock.txt files match this repository's TRACKED lockfile pattern and are stored as .frozen for the same reason #380 freezes its npm lock (docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.md, still on #380's branch); official.lock.txt additionally pins nltk==3.9.1, which would also trip the repo-wide ignore-scope test if scanned live. vendor/agentmemory-repo-package-lock.json.frozen does not itself match that pattern but is frozen under the same rationale per this task's directive. README.md corrects the task's premise that C4 runs through rerank_stage.py: C4 (aimem-qwen3-rerank) is implemented in lme_harness.py itself via its LLM reranker path (LLM_URL, A12); rerank_stage.py implements the separate, non-decided X arms. It also documents each teardown function's actual ownership checks (am_teardown, mp_kill_mines, run_velanext.sh's stop_bg/same_process) against the code, not its docstrings, and lists what was left out of transfer scope and why (eligible-manifest.json, the agentmemory install lock and run_official_oracle.py are byte-identical to #380's copies and are not duplicated; embed_cache_proxy.py at 576689a is a changed v4 revision not in this task's requested file list). Checks: private-content scan (24/24 new source files plus README.md and SHA256SUMS, individually and combined), gitleaks-guarded-macos (no leaks), SHA256SUMS self-check, component_matrix.py --check, new_host_grand_list.py --check, validate_catalogs.py, git diff --check, scripts/validate.py (7173 hashed files), and the targeted unittest modules (221 tests, 1 skipped, all passing). Co-Authored-By: Claude Sonnet 5 <[email protected]>
|
GPT-6 cross-family review at Setup: The high and medium findings are in the frozen, byte-exact v4 code. As with #380, the fix for this PR is accurate README warnings. The safe execution belongs in the workstation rerun's own code (A17). Don't edit the frozen files. [high]
[medium] [medium] [low] Verified:
A17 (the workstation rerun) must add, recorded here for the rerun:
|
Verified each finding against the frozen code before editing; only README.md, SHA256SUMS and one new file change, nothing frozen is touched. [high] lme_harness.py's teardown does not establish ownership. _ours() (:698-701) accepts any command merely containing the substring "agentmemory", or the configured iii path/basename; am_teardown() (:749) also treats an empty `ps` result as "ours"; am_start() (:797-800) calls that same teardown with proc=None before it has started anything, so it can SIGKILL a foreign process before owning anything. The README wrongly called the empty-command case "the one gap" and said the functions check ownership; it now describes the actual name/liveness matching and ends with a plain warning: do not run lme_harness.py, run_velanext.sh or setup_velanext.sh on a shared host. A17's runner is where isolated ports/stores and identity-checked cleanup belong. [medium] Two warnings added, both verified by reading the code directly: - setup_velanext.sh:220's readiness loop accepts any Ollama server that answers on port 11438, with no check that it is the oll_pid process just started; :222-224 then pulls models, and :228-229 creates aliases, against whichever server answered. - lme_harness.py's mp_kill_mines() (:1149) trusts mp_mine_pids() (:1045), which only checks _pid_alive() (:1035, kill(pid, 0)) with no identity check, then killpg()s the whole process group; a reused PID's group can be hit. [low] pins.json:146 and run_velanext.sh:654 confirm qwen3.5-9b-64k.Modelfile is a C4 prerequisite (also used by the A15.2 F arms and the pooled aimem-qwen3-rerank stage), not outside D2h/C4 as the README said. Transferred it byte-exact from the private agent-ecosystem repository at 576689a (evals/longmemeval/ollama/qwen3.5-9b-64k.Modelfile, blob de951c9, git hash-object verified against the source blob id), added to SHA256SUMS and the Files table. The other three Modelfiles stay excluded and are now named individually with size/sha256/blob: lfm2.5-2.6b-64k.Modelfile (H3), nemotron-3.5-lightning-30b-a3b-64k.Modelfile (H2), qwen3.6-35b-a3b-64k.Modelfile (H1, and K1's LLM via H1_BUILD at run_velanext.sh:68) -- verified against lme_harness.py's H_RERANK_MODELS and run_velanext.sh's matching loop, not asserted from memory. Checks: shasum -a 256 -c SHA256SUMS (27/27 OK), python3 scripts/validate.py --scan-file on README.md/SHA256SUMS/the new Modelfile, and adoption/tools/gitleaks-guarded-macos over the whole directory (no leaks). Co-Authored-By: Claude Sonnet 5 <[email protected]>
manifests/evidence.json: took main's copy and re-registered this branch's 28 blueprints/memory-stack/longmemeval/v4/** files (the 27 previously registered plus the new ollama/qwen3.5-9b-64k.Modelfile), then reran component_matrix.py --write and new_host_grand_list.py --write (no content change; both were already current). Co-Authored-By: Claude Sonnet 5 <[email protected]>
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
|
Addressed the GPT-6 review ( Verified each finding against the frozen code directly before editing (not from the review's summary alone):
Local commands (post-merge, at the new head): Also merged Aside, out of this fix's scope: the merge means #380 is no longer "not yet merged" as the README's intro and the Ready for the GPT-6 re-check at 🤖 Generated with Claude Code |
Line ~289's "teardown behavior described above" row still named only the pre-fix set of functions (am_teardown, stop, mp_kill_mines, stop_bg/ same_process). Updated it to list every function and file the rewritten shared-host warning now cites (_ours, am_teardown, am_start, mp_mine_pids/_pid_alive/mp_kill_mines, stop_bg/same_process, setup_velanext.sh's readiness loop), so the table matches the prose above it. Co-Authored-By: Claude Sonnet 5 <[email protected]>
|
Small follow-up on top of the previous comment: the README's own evidence-class table had a row ("The teardown behavior described above") that still named only the pre-fix function list. Updated it to match the rewritten shared-host warning ( Final head for the GPT-6 re-check: |
…ongmemeval-v4-driver-20260927
Verified each finding against the frozen code and the merged #380 state before editing; only README.md, the decision record and evidence.json change, no frozen file touched. [should_fix] The "outside D2h/C4" line for the three still-excluded Modelfiles was misleading: run_velanext.sh's `gates` command is mandatory before any arm (require_gates, called by cmd_cpu/cmd_arms/cmd_a16) and smoke-tests all four reranker-LLM tags plus K1 before writing logs/gates/passed.json, so no D2h, C4 or K1 run passes gates from this directory without all three files. README title now matches the PR body's scope (D2h, C4, the A16 arms). [should_fix] #380 has merged to `main` since this PR opened; removed the two "not yet merged"/"lives only on #380's branch" statements. [should_fix] Added a dated 2026-09-27 addendum to docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.md, extending its scope from the two agentmemory/*.frozen files to this driver's six additional .frozen files. Evidence gathered directly: osv-scanner 2.6.0 against plainly named scratch copies (official.lock.txt: 114 unique advisories across 9 of 64 packages, dominated by nltk/transformers/torch/pillow; mempalace.lock.txt's chromadb: 4, including a pre-auth code-injection advisory; embed.lock.txt: 2; the npm lock repeats the original record's 2 OpenTelemetry advisories; hindsight.lock.txt and build.lock.txt: none), plus the same discriminating control the original record used (.frozen names: "No package sources found", exit 128). Also corrected README.md's claim that the .in files are "unpinned" (official.in alone pins 25 of 28 lines) and that TRACKED "does not match" them by design (it is a basename/directory-name technicality, not a deliberate exemption). [should_fix] Added a "Before anything runs" section: eligible-manifest.json, the agentmemory install files, embed_gates.json, reference/v3-check-ids.txt and the six renamed locks are all read by setup_velanext.sh/run_velanext.sh, but are not available from this directory alone. The table gives each file:line that reads it and where to get it (two are byte-identical to files #380 now carries on main; two are not present anywhere in this repository and need the private source; the locks need isolated-prefix restore commands). [nit] Split the evidence-class row that credited "reproducing... with inert probes" to source_review; that reproduction is the GPT-6 review's own independent observation, now cited by its actual PR-comment URL (confirmed via `gh api .../issues/386/comments`, which also confirmed the review's 1 high / 2 medium / 1 low was carried through in full, nothing dropped or narrowed). [nit] Qualified two over-broad safety claims: stop_bg's group-mode signals (the CPU stream) are unconditional, not same_process-guarded; setup_velanext.sh's `kill "$oll_pid"` can hit a reused PID in the failed-bind case, the same gap attributed to mp_kill_mines. [nit] Corrected the LME_HOME/Path.home() claim: LME_HOME itself defaults to this directory (lme_harness.py:87), not Path.home(); only the AE-derived paths do. [nit] Added .gitignore to the SHA256SUMS provenance exception, and noted the plain-name/`.frozen`-name distinction for git-show provenance commands. [nit] Added README notes for the three shared-host/portability gaps that are frozen-code findings, not README claims: two vendor harnesses launch without env -i (run_velanext.sh:563,596-597); lane_tools.py's v3-shim/fetch-hf --pin-main mutate shared state outside their lane-owned wrapper paths; the X arm's kalm-small reranker loads with trust_remote_code=True (mitigated by a pinned revision, local_files_only and HF_HUB_OFFLINE). [hygiene] Deleted the blob:none clone of the private agent-ecosystem repository left in the review session's scratchpad; nothing referenced it. Re-merged origin/main (three more commits landed) under the hot-file protocol before this commit: took main's manifests/evidence.json and re-registered this branch's 28 v4 files plus the two edited entries above. Checks after this round: shasum -a 256 -c SHA256SUMS (27/27 OK); python3 scripts/validate.py ({"hashed_files": 7278, "status": "passed"}); python3 scripts/validate.py --scan-file on the three changed files (passed); gitleaks over blueprints/memory-stack/longmemeval/v4 and docs/decisions (no leaks); python3 scripts/host_receipts.py validate (passed); python3 scripts/component_matrix.py --write and new_host_grand_list.py --write (no unexpected diff); git diff --check; the four unittest modules the PR body cites plus tests.test_validate.ScanFileForPrivateContentTests (all OK, 221+9 tests) -- all exit 0. Co-Authored-By: Claude Sonnet 5 <[email protected]>
Self-review of the previous commit found two accuracy issues before they
reached a second reviewer:
- The 2026-09-25 decision record's new addendum claimed that under plain
names, the required `dependency-review` check would fail this pull request
on specific advisories. That does not follow: `dependency-review` reads
GitHub's native dependency graph, which recognizes manifests by fixed
per-ecosystem names (`requirements.txt`, `package-lock.json`, ...), not by
this repository's `TRACKED` pattern. None of the six files' plain names
(`official.lock.txt`, `mempalace.lock.txt`, `agentmemory-repo-package-lock.json`,
and so on) is one of those recognized names, so `dependency-review` would
not see any of them regardless of the `.frozen` suffix -- unlike the
original record's own file, which was named exactly `package-lock.json`.
The gate these five Python locks actually escape by staying `.frozen` is
`osv-scanner`, via the `TRACKED`-forced inventory entry. Reworded the
addendum's "Under their plain names" paragraph and the PR body's matching
evidence row accordingly.
- README.md's new "Before anything runs" table cited "`:130` area's sibling
installs" for where `setup_velanext.sh` reads the five lock files under
their plain names; `:130` is the unrelated `eligible-manifest.json` hash
check. The actual citation is `venv()` and its five calls at `:94-109`.
Also fixed the pr-body.md line describing this round's `origin/main` merge:
it was a clean `git merge` with no conflict (git's 3-way merge resolved
`manifests/evidence.json` on its own), not a manual `checkout --theirs` +
re-registration as the first merge round used; reworded to say so, and
pointed the decision-record link at a resolvable full GitHub URL instead of
a relative path that would not resolve in a PR body.
Rechecked after these edits: shasum -a 256 -c SHA256SUMS (27/27 OK); python3
scripts/validate.py ({"hashed_files": 7278, "status": "passed"}, unchanged
file count); python3 scripts/validate.py --scan-file on the three changed
files (passed); gitleaks over both changed directories (no leaks); python3
scripts/host_receipts.py validate, component_matrix.py --write and
new_host_grand_list.py --write (no further diff beyond the two hash/byte
updates); git diff --check -- all exit 0.
Co-Authored-By: Claude Sonnet 5 <[email protected]>
|
Ready for the GPT-6 re-check at
|
|
GPT-6 cross-family re-check at VERDICT: needs_changes All four earlier findings are resolved as documentation fixes for this frozen-source transfer. One new medium finding remains in the lock decision record. Paths below are relative to
The 24 previously transferred source files remain byte-identical to New finding:
The decision’s file coverage is complete: its addendum names all five Python locks and the npm lock, and all six have checksum/evidence entries. Its accuracy fails on the finding above. Line 144 explicitly says the raw scan JSON is uncommitted; I could not independently validate the reported advisory totals from the retained checkout. The added Modelfile:
No additional secret, email, private hostname or personal home-path value was found. Private repository/branch identifiers are the already-authorized provenance. The repair introduces no executable changes. Existing home/cache mutations are documented at A17 must still add or pin:
Verified:
🤖 Generated with Claude Code |
OSV-Scanner 2.6.0 matches an [[IgnoredVulns]] entry by advisory ID and expiry only (internal/config/config.go:104-112, ShouldIgnore), so the two entries written for the Lumibot lock also filter the v4 locks: GHSA-8mgp-746c-j5xp on nltk 3.9.1 (official.lock.txt) and GHSA-h35f-9h28-mq5c on setuptools 81.0.0 (embed.lock.txt). Re-scanned with an empty config: official 115 unique advisories (114 with the config) and embed 3 (2). The addendum table and README now give both counts and name the filtered IDs. No frozen file changed. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Take main's manifests/evidence.json and re-register this branch's 29 files; the generated reports were rewritten with no change and validate.py passed. Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
Fix for the GPT-6 re-check at
|
|
GPT-6 scoped check of the OSV repair at VERDICT: needs_changes The medium is resolved. The repaired documentation correctly describes ID/expiry matching, consistent with OSV-Scanner v2.6.0
No other new findings. Verified
🤖 Generated with Claude Code |
manifests/evidence.json taken from main, then this branch's 29 files re-registered through host_receipts.register_file; component_matrix.py and new_host_grand_list.py regenerated (reports unchanged); validate.py passes. v4 SHA256SUMS still verifies 27/27. Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
main free. #386 is merged as
The next merge belongs to the token-efficiency lane (token-efficiency-evidence-cards), per the workstation's window. The mac-coordinator session will not merge to main again until that lane posts "main free". |
….4.0 reranker feasibility; v4-based runner rules S3 draft r4 (not frozen): - Reference feasibility from source. Official ai-memory v2.4.0 ships the LLM reranker: AI_MEMORY_RERANKER=llm in crates/ai-memory-cli/src/config.rs:413-420,1744-1759, crates/ai-memory-llm/src/reranker.rs and docs/llm-providers.md:185-192. The docs name no reranker model, so the preregistered qwen3.5-9b-64k stays. Its base is pinned by v4 pins.json:141-147, and the runner verifies the base, the effective template and parameters, and the served blob hashes. - C3' and C4' are defined from the v4 driver's C3/C4. agentmemory's primary arm is its shipped hook path, the A-protocol's D2h shape, with its v4 pins. - Late-candidate rule: later sweep survivors enter only through a dated amendment arm, like reserves admitted after confirmatory execution. The 32-layer sweep is held for the user's Gates A and B. - D-mac-prod: the Mac's production 19b6429 in a C4-shaped configuration, a labelled diagnostic outside the decision family, at the Mac session's request. The 19b6429 / v2.4.0 / v2.4.1 lineage is recorded. - Harness: v4 (#386) is the frozen adapter source, and the S3 runner is new code with the isolation rules from the #386 GPT-6 reviews. The cache proxy's omission is preregistered from A16.3. Only the public reranker Modelfile and its base pin are needed. - A workstation GPU window, a scheduled production stop the user approves; per-host qualification, including reranker timeout latency; Mac Hindsight pending the user's Apple Container decision. - S3's statistics govern, and the A-protocol's do not transfer. Section 12 covers the relationship to A1-A16.3. New blueprints/memory-stack/longmemeval/A17-SUPERSESSION.md (PROPOSED): R1 is not run under A1-A16.3, and S3 supersedes it on both hosts. No confirmatory arm has run on any host, so no look is spent. It takes effect only when the user confirms it at the S3 freeze. No session held an A17 draft (checked with the sessions that had owned it). Every path:line citation in the new text was checked against the files (19 of 19 resolve). Main (#386) is merged in so the v4 citations resolve. validate.py passed. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_012qwXNtFyUhY5x2dtrm7tG5
Scope
blueprints/memory-stack/longmemeval/v4/, extracted from the privateagent-ecosystemrepository for the workstation's amendment A17 rerun.6454424a8821c833e272d28ce791da2b9146e043(this branch's original fork point; kept current withmaintwice since, under the hot-file protocol: at9a24f7a4,manifests/evidence.jsonwas taken frommainand this branch's files re-registered; at7f48d7d3this round,git merge origin/mainresolved the same file cleanly with no conflict, confirmed after byvalidate.pyand a count of all 28 v4 entries)lane:foundationblueprints/memory-stack/longmemeval/v4/**,docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.md,manifests/evidence.jsonSOTA sources
xiaowu0162/LongMemEvalat9e0b455f4ef0e2ab8f2e582289761153549043fc(MIT). Imported bylme_harness.pyat run time, not copied.agent-ecosystemrepository, branchclaude/longmemeval-velanext-lane-20260925, commit576689af6f5e5f4d85013c7c4bed3b8f7c92f57d, directoryevals/longmemeval/. Per-file blob ids are in the directory'sREADME.mdFiles table.blueprints/memory-stack/longmemeval/for host request [mac-coordinator] other: commit the memory-stack LongMemEval harness and preregistration for the NativeStack rerun #274. Commit the Mac LongMemEval-S harness and preregistration byte-exact (#274) #380 has since merged tomain.docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.md, extended by this PR's addendum (see Decision record below).Evidence-class table
evals/longmemeval/<path>atagent-ecosystem@576689a, byte-exactsource_reviewgit rev-parse 576689a:evals/longmemeval/<path>against each file's blob id in the README; sha256 againstSHA256SUMSPREREGISTRATION.mdmatches the required hashsource_reviewa9b1db335eee1ff99d1883e048bcd8e443ca2afee3505a34fd874dd1ef412d5b, verified before the first commit was writtensource_reviewlme_harness.pyandrerank_stage.pydirectly (the directory README's "Which arms" section corrects the task's premise that C4 runs throughrerank_stage.py: C4 is implemented inlme_harness.pyitself;rerank_stage.pyimplements the separate, never-decided X arms)_ours,am_teardown,am_start,mp_mine_pids/_pid_alive/mp_kill_mines,stop_bg/same_process, andsetup_velanext.sh's readiness loop — name/liveness checks, not ownership checkssource_reviewlme_harness.pyteardown gaps above, reproduced rather than only read97697b81(PR comment): "An inert reproduction confirmed SIGKILL in all three cases"run_velanext.sh gatesfrom this directory without the three excluded Modelfilessource_reviewrequire_gates/cmd_gates/cmd_cpu/cmd_arms/cmd_a16andllama_llm_updirectly (README "Which arms"/"Not transferred" sections).frozenlocks' real dependency exposure under their plain names, and that the fiverequirements/*.lock.txt.frozenfiles keep out of the requiredosv-scannerinventory (dependency-reviewdoes not recognize any of the six plain names as a manifest either way)local_integrationosv-scanner scan source --config .github/osv-scanner.toml --no-resolve(2.6.0) on plainly named scratch copies, with a discriminating control on.frozen-named copies ("No package sources found", exit 128); full counts in the decision record's 2026-09-27 addendum--helpforlme_harness.pyandlme_summarize.pylocal_integrationenv -i HOME=<fake> PATH=/usr/bin:/bin; both exit 0 (below)local_integrationscripts/validate.py --scan-file,gitleaks-guarded-macos, and the discriminating controlstests.test_validate.ScanFileForPrivateContentTests.test_cli_scan_file_fails_on_a_planted_secret_without_echoing_itand the gitleaks planted-key check indocs/secret-storage.mdstep 5b (both fail on a fabricated key, confirming the passing scans below are not vacuous)Local commands run
Original commit (
97697b81):<fake>is a fresh temporary directory holding only agit cloneofxiaowu0162/LongMemEvalchecked out to9e0b455f4ef0e2ab8f2e582289761153549043fc; both scripts import nothing else at module load (numpy, stdlib, and the official checkout via a try/except that only raises if the arm actually runs), so no other install was needed.GPT-6 review round (
97697b81→9280f911→ddf4b245; addressed 1 high / 2 medium / 1 low, all README-only, no frozen file touched): addedollama/qwen3.5-9b-64k.Modelfile, verifiedgit hash-objectagainst source blobde951c96and line-identical to the extracted source;shasum -a 256 -c SHA256SUMS27/27 OK; the fourunittestmodules below OK;git diff --checkexit 0. Full per-finding notes are in the PR comments.This review-fix round (current head), after merging
origin/main(bringing #380 in) and applying this round's findings — a decision-record addendum,README.mdcorrections, and this file:CI at the previous head (
ddf4b245): every required check passed exceptvalidate, which failed ontests.test_adaptive_paper_metrics.FileSdRegistrationTests.test_a_clean_stop_of_an_unfinished_trial_stays_registered("exporter never registered its target") — a trading-lane test (docs/lanes.md'stest_adaptive_*.py) this PR's diff does not touch (git diff --name-status origin/main...HEADat that point showed onlyblueprints/memory-stack/longmemeval/v4/**andmanifests/evidence.json).validate.yml's last 5 runs onmainare all green, so this looks like a runner-timing flake rather than something this PR caused; this push reruns CI fresh.Decision record
docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.mdis now onmain(#380 merged). This PR adds a dated 2026-09-27 addendum to it, extending its scope from the twoagentmemory/*.frozenfiles to this driver's six additional*.frozenfiles (the fiverequirements/*.lock.txt.frozenandvendor/agentmemory-repo-package-lock.json.frozen), with the same kind of evidence the original record used: anosv-scannerrun on plainly named scratch copies, the advisory list, and a discriminating control against the.frozennames. Highlights (counts read unfiltered / with this repository'sosv-scanner.toml, whose two ignores are global by advisory ID):official.lock.txtalone carries 115/114 unique advisories across 9 of its 64 packages (nltk43/42,transformers26,torch20,pillow15,jinja24, and others);mempalace.lock.txt'schromadb1.5.9 carries 4, including a pre-authentication code-injection advisory;embed.lock.txtcarries 3/2 (the difference is GHSA-h35f-9h28-mq5c onsetuptools81.0.0;nltk's is GHSA-8mgp-746c-j5xp); the npm lock repeats the exact pair the original record already found in the smaller install-prefix lock;hindsight.lock.txtandbuild.lock.txtshow none at scan time. The addendum's "What the rename does not do" section is explicit that none of this makes the pinned packages safe to run — only unscanned by the required checks, as records of a fixed, historical (or to-be-measured) environment.Not transferred
Nothing was excluded for failing the private-content scan; all transferred files, plus this directory's
README.mdandSHA256SUMS, passed it individually and combined. Out of this task's requested scope, and listed with sha256 and reasons in the README's "Not transferred, and why":LANE.md, the source directory's ownREADME.md,eligible-manifest.json,agentmemory/package.json+package-lock.json, andrun_official_oracle.py(byte-identical to files #380 already carries, now onmain; not duplicated here);embed_cache_proxy.py(a v4 revision, not byte-identical to #380's frozen v3 copy, not requested — an arm needing the byte-exact cache cannot run from this directory alone without it);embed_gates.json;ruff.toml;reference/v3-check-ids.txt;reference/mac-rows/*.jsonl(result rows); and three of the original fourollama/*.Modelfile(lfm2.5-2.6b-64k,nemotron-3.5-lightning-30b-a3b-64k,qwen3.6-35b-a3b-64k— each an H-arm reranker LLM, andqwen3.6-35b-a3b-64kdoubles as K1's LLM).qwen3.5-9b-64k.Modelfile(blobde951c96) is transferred (Files table in the README): the GPT-6 review found it is a C4 prerequisite, not outside D2h/C4 as an earlier revision of the README said. The README's new "Before anything runs" section spells out that the three still-excluded Modelfiles,eligible-manifest.json, the agentmemory install files,embed_gates.jsonandreference/v3-check-ids.txtare all read byrun_velanext.sh gates, so no D2h, C4 or K1 run passes gates from this directory alone without them.Host evidence
Not applicable, no component ran and no
evidence/hosts/file changed.python3 scripts/host_receipts.py validate— n/a to this PR's own paths, but run above at the current head (167 receipts, passed) as part of the hot-file protocol.scripts/host_receipts.py review— n/a; see Review below instead.platform_statuschange is made.Checklist
blueprints/memory-stack/longmemeval/v4/**,docs/decisions/2026-09-25-longmemeval-frozen-npm-lock.mdandmanifests/evidence.jsonwere touched).Review
An Opus same-host review will follow. The GPT-6 cross-family review runs from the workstation when capacity returns; this PR waits for that verdict before merge.
Related: #384, #380, #274
🤖 Generated with Claude Code