test: add OPF pre-push rewrite coverage over a real remote (E1-E5)
Commit

Cover the OPF (OpenAI Privacy Filter) pre-push rewrite at the integration and strategy layers, exercising what the existing in-process unit tests structurally cannot: OPF enabled via committed settings, resolved and executed inside a spawned pre-push hook, redacting real committed checkpoints and pushing the Entire-OPF-Applied trailer to a real bare remote.
- E1: happy path via the real git-invoked hook — remote v1 tip carries the trailer, the fake opf binary is invoked, checkpoint + branch land.
- E2: diverged v1 -> V1DivergedError aborts the user push (non-zero exit, actionable message); the branch tip on the remote does not advance.
- E4: bootstrap cap exceeded -> typed abort before OPF runs; nothing pushed and the opf binary is never executed.
- E5: non-TTY push (execx.NonInteractive, no controlling terminal) completes without hanging and still ships the trailer (regression 626a0344e).
- E3: the CAS V1RefMovedError path is deterministically impossible to hit from a spawned hook, so it lands at the strategy layer via a fake OPF runtime that advances the local v1 ref mid-rewrite; a re-run succeeds.
Integration tests point the OPF command at a fake opf script on disk
(the in-process runtime seam is unavailable across the process boundary).
OPF is git-branch only, so all E-group tests stay on the default backend.
Co-Authored-By: Claude Fable 5 noreply@anthropic.com Claude-Session: https://claude.ai/code/session_012yi3hHGAGepwfrfjPETjGq Entire-Checkpoint: 950ada63c568
Checkpoints
Checkpoint 1