New image patch ci/images/paperclip/ren-563-acpx-managed-home-fingerprint.patch (plus a README note). Before the ACPX engine hashes the resolved adapter env into the session fingerprint (adapterEnvHash), it swaps the managed AI connection's per-run temp home paths (HOME, XDG_CONFIG_HOME, XDG_DATA_HOME, CODEX_HOME, GROK_HOME, CLAUDE_CONFIG_DIR) for a fixed placeholder. This applies only when managedAiConnection is set and the value matches the managed layout under HOME. A user override that differs from that layout still changes the fingerprint.
Why
REN-563 / REN-541 check 3: every Atlas run starts a new Claude session. In run 53585dbc the server passed sessionIdBefore 68957f7a, but the engine's configFingerprint did not match, so it opened a new session (2d87748b). The server's own fingerprint already normalizes these paths (managedAiSessionFingerprintConfig); the engine's did not.
How verified (lint only, not yet in the cluster)
prepare.sh applies all 4 patches on the pinned commit.
adapter-utils execute.test.ts: 199/199 pass. The new test fails without the fix (fingerprints 89bce5f3… vs 63c76280…).
tsc --noEmit is clean.
After rollout: two runs of one agent on one card, where run 2's session id equals run 1's.
Impact
Merging builds and rolls out a new Paperclip server image, so the server restarts. Home Assistant is not touched. After rollout, the first run of each session still starts fresh because the stored fingerprint is from the old image.
Revert
Revert this commit. The next image build drops the patch.
## What
New image patch `ci/images/paperclip/ren-563-acpx-managed-home-fingerprint.patch` (plus a README note). Before the ACPX engine hashes the resolved adapter env into the session fingerprint (`adapterEnvHash`), it swaps the managed AI connection's per-run temp home paths (`HOME`, `XDG_CONFIG_HOME`, `XDG_DATA_HOME`, `CODEX_HOME`, `GROK_HOME`, `CLAUDE_CONFIG_DIR`) for a fixed placeholder. This applies only when `managedAiConnection` is set and the value matches the managed layout under `HOME`. A user override that differs from that layout still changes the fingerprint.
## Why
REN-563 / REN-541 check 3: every Atlas run starts a new Claude session. In run 53585dbc the server passed `sessionIdBefore` 68957f7a, but the engine's `configFingerprint` did not match, so it opened a new session (2d87748b). The server's own fingerprint already normalizes these paths (`managedAiSessionFingerprintConfig`); the engine's did not.
## How verified (lint only, not yet in the cluster)
- `prepare.sh` applies all 4 patches on the pinned commit.
- adapter-utils `execute.test.ts`: 199/199 pass. The new test fails without the fix (fingerprints 89bce5f3… vs 63c76280…).
- `tsc --noEmit` is clean.
- After rollout: two runs of one agent on one card, where run 2's session id equals run 1's.
## Impact
Merging builds and rolls out a new Paperclip server image, so the server restarts. Home Assistant is not touched. After rollout, the first run of each session still starts fresh because the stored fingerprint is from the old image.
## Revert
Revert this commit. The next image build drops the patch.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Approved on 01ed3ca20d (argus-bot). Checked: prepare.sh applies all 4 patches on a027f76; patch layout matches server managedAiHomeEnvironment (config/data/provider); resolvedAdapterEnv only feeds adapterEnvHash, the forwarded env is unchanged; execute.test.ts 199/199 pass, new test fails without the fix (31e7e1a2 vs 438e7585); adapter-utils tsc clean. Premise: Atlas runs 53585dbc (68957f7a->2d87748b) and 6369d0ad (2d87748b->4b4c35e1) both got a new session while the server reused its task session; run HOME is the managed /tmp/paperclip-ai-* layout. Revert: revert the commit, next build drops the patch.
Approved on 01ed3ca20d5302dcafb519a9fb50bbd1e6759bf2 (argus-bot). Checked: prepare.sh applies all 4 patches on a027f76; patch layout matches server managedAiHomeEnvironment (config/data/provider); resolvedAdapterEnv only feeds adapterEnvHash, the forwarded env is unchanged; execute.test.ts 199/199 pass, new test fails without the fix (31e7e1a2 vs 438e7585); adapter-utils tsc clean. Premise: Atlas runs 53585dbc (68957f7a->2d87748b) and 6369d0ad (2d87748b->4b4c35e1) both got a new session while the server reused its task session; run HOME is the managed /tmp/paperclip-ai-* layout. Revert: revert the commit, next build drops the patch.
Ghost
merged commit 3f3305cf01 into master2026-10-03 19:09:55 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
What
New image patch
ci/images/paperclip/ren-563-acpx-managed-home-fingerprint.patch(plus a README note). Before the ACPX engine hashes the resolved adapter env into the session fingerprint (adapterEnvHash), it swaps the managed AI connection's per-run temp home paths (HOME,XDG_CONFIG_HOME,XDG_DATA_HOME,CODEX_HOME,GROK_HOME,CLAUDE_CONFIG_DIR) for a fixed placeholder. This applies only whenmanagedAiConnectionis set and the value matches the managed layout underHOME. A user override that differs from that layout still changes the fingerprint.Why
REN-563 / REN-541 check 3: every Atlas run starts a new Claude session. In run 53585dbc the server passed
sessionIdBefore68957f7a, but the engine'sconfigFingerprintdid not match, so it opened a new session (2d87748b). The server's own fingerprint already normalizes these paths (managedAiSessionFingerprintConfig); the engine's did not.How verified (lint only, not yet in the cluster)
prepare.shapplies all 4 patches on the pinned commit.execute.test.ts: 199/199 pass. The new test fails without the fix (fingerprints 89bce5f3… vs 63c76280…).tsc --noEmitis clean.Impact
Merging builds and rolls out a new Paperclip server image, so the server restarts. Home Assistant is not touched. After rollout, the first run of each session still starts fresh because the stored fingerprint is from the old image.
Revert
Revert this commit. The next image build drops the patch.
🤖 Generated with Claude Code
Approved on
01ed3ca20d(argus-bot). Checked: prepare.sh applies all 4 patches on a027f76; patch layout matches server managedAiHomeEnvironment (config/data/provider); resolvedAdapterEnv only feeds adapterEnvHash, the forwarded env is unchanged; execute.test.ts 199/199 pass, new test fails without the fix (31e7e1a2 vs 438e7585); adapter-utils tsc clean. Premise: Atlas runs 53585dbc (68957f7a->2d87748b) and 6369d0ad (2d87748b->4b4c35e1) both got a new session while the server reused its task session; run HOME is the managed /tmp/paperclip-ai-* layout. Revert: revert the commit, next build drops the patch.