Include shared histories in rollout compression (#42039)

## What changed

- Make `local_thread_store_compression` compress cold rollout files across shared and forked histories without a separate compression mode.
- Retire `local_thread_store_shared_compression` while continuing to accept it in strict configuration without changing compression behavior.
- Read rollout files through the compressed-rollout reader when `codex exec resume` determines the latest turn's working directory.

## Testing

- Cover compression and restoration of an archived fork chain.
- Cover cwd-based resume selection when only the compressed rollout remains.
- Cover the removed compatibility key in strict configuration.

GitOrigin-RevId: 8edebf61eccc1f79cabb8e641f8982c76f337bf1
This commit is contained in:
jif authored and copyberry committed 2026-09-01 12:23:20 +00:00
1 parent 2e5ee418ad
commit 9d0eae74cd
13 files changed
+137 -305

No files matched your search

@@ -140,9 +140,6 @@ async fn compressed_shared_fork_resume_preserves_checkpoint_and_frozen_history()
config
.features
.enable(Feature::LocalThreadStoreCompression)?;
config
.features
.enable(Feature::LocalThreadStoreSharedCompression)?;
// Use production feature wiring, rather than manually writing zstd files or calling the worker.
let store =
codex_core::thread_store_from_config(&config, codex_core::init_state_db(&config).await);