🟢 Low
After a successful rollback, readThreadSnapshot treats the replacement session as unhydrated and fails with ACP driver does not support session/load snapshots when the driver lacks loadSession. The rollback commit callback sets activeSessionId but not hydratedSessionId, so mark the replacement session hydrated when committing it.
| 1 | - yield* Ref.set(activeSessionId, candidate.sessionId); |
| 2 | + yield* Ref.set(activeSessionId, candidate.sessionId); |
| 3 | + yield* Ref.set(hydratedSessionId, candidate.sessionId); |
🚀 Reply "fix it for me" or copy this AI Prompt for your agent:
| 1 | In file @packages/provider-acp/src/server/adapter.ts around line 7402: |
| 2 | |
| 3 | After a successful rollback, `readThreadSnapshot` treats the replacement session as unhydrated and fails with `ACP driver does not support session/load snapshots` when the driver lacks `loadSession`. The rollback commit callback sets `activeSessionId` but not `hydratedSessionId`, so mark the replacement session hydrated when committing it. |
Fixed in 6192355. The committed fresh rollback replacement marks its known-empty snapshot hydrated alongside its active identity. The existing rollback test now uses distinct session IDs and no load support, verifies actual empty history, and starts the next turn. Eleven focused ACP cases pass.