mirror of
https://github.com/openai/codex.git
synced 2026-10-27 18:48:37 +00:00
## Why A duplicated or inherited file handle can keep the rollout maintenance lock held after its guard is dropped, blocking subsequent compression or migration. ## What changed Explicitly unlock the file in `RolloutMaintenanceGuard::drop` so lock ownership ends with the guard even if another handle remains open. ## Testing Add a regression test that retains a duplicated file handle, verifies that the lock stays held until the last shared guard is dropped, and checks that dropping the old handle does not release a newly acquired lock. GitOrigin-RevId: 19005680dbc0a01b36c6f13e4ec358c6f00b75a0