# Compressed Codex import proof

Use separate checkouts and fresh T3 homes for base 46afd69a8b6dd4149747fd04d86576af009f7eec and head e019af965d58415c2272b7ca02b7080afafbf597.
Run seed-rollouts.mjs once, using a synthetic Codex home; use the identical home for both sides. Its files have current mtimes and contain only synthetic messages. There is no uncompressed duplicate of the compressed session.

The dev stack was launched through the scenario start-app helper with --no-seed. Its Codex settings had an explicit homePath pointing to the fixture and a no-model binary; Replay (dev) was ready. No live provider turn was run. Browser: Chromium, Linux web client, 1280x800 CSS pixels, light theme, 2x device pixels.

UI driver steps, both sides:
1. Pair, wait for welcome to finish loading.
2. Open Add more agents; Turn on: Codex. Wait for the history scan.
3. Collapse Add more agents; open Review all; expand Other folders.
4. Capture the discovered projects. Base lists one (plain-control); head lists two (including compressed-project).
5. Select all and Import projects and start. Expand Settled in the sidebar and open the imported thread. On head open compressed-project; on base the only available control is plain-control.
6. Dismiss the Codex probe-error banner (the no-model binary deliberately cannot connect), close thread details, and read the user and assistant messages. No new message is sent.

The screenshots of the scan and the final compressed conversation were each compared with another capture taken more than 500 ms later; they were pixel-identical. Captures were visually inspected. Public images crop the composer, and scan captures cover only the synthetic fixture's parent path. Project names, counts, and conversation text are preserved. Recordings use the same redactions; before scan is 2x speed and after scan/import is 4x speed. The separate recovered-messages clip shows the banner being dismissed at normal speed.

Two scenarios:prove attempts could not complete the setup (pairing-navigation race and the app command not inheriting CODEX_HOME). The manual fallback supplies the proof; failed runner captures are not evidence.

AI-assisted; verified with the tests and tools listed above.
