# Files expansion proof

Web client, Chromium, 1280 by 800 CSS pixels, light theme, same synthetic project on fresh isolated databases; no live data was copied. The dev replay provider created one completed turn. Both app commits were run through scripts/scenarios/start-app.ts with T3CODE_DEV_SEED=0 and --no-seed.

The uploaded seed.mjs uses the existing makeState fixture to create the repository and thread through the real server CLI. Set SCENARIO_HELPER to scripts/scenarios/t3.ts and PROOF_HOME to the isolated home passed to start-app.ts, then run it with Node from the app checkout.

Browser steps on both sides:
1. Open the Folder expansion thread, toggle the right panel, choose Files.
2. Expand src, then src/provider.
3. Click Add panel surface (+), choose Diff, then click the Files tab.
4. Capture the tree: base has src collapsed; head retains src/provider and shows adapter.ts.
5. Expand scripts, reload the page, wait for Files to finish loading.
6. Capture the tree: base has scripts collapsed; head retains scripts, src and src/provider and shows their children.

Both recordings show the interactions. The base recording also includes an extra reload before scripts was expanded; the decisive reload follows the visible expansion of scripts. Neither recording compares timing. Each final still was taken after two screenshots more than 500 ms apart were byte-identical. All four stills and both recordings were visually inspected, using one-second contact sheets for the videos.

Before: b68aedfdb71534bfdfbe55771ef2e686742faa8e.
After: 475bea684ceeaefca42e6d309df425da50da7f93.

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