# Linked environment transient-drop proof

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

Both runs: Linux Chromium, 1280×800, light theme, fresh synthetic T3 homes, no provider turns and no imported history. App A runs via `T3CODE_DEV_SEED=0 vp run dev --home-dir <fresh homeA>`; B runs from the same checkout via `serve` on port 47101. Both enable `linkedEnvironmentsEnabled`. A links B with full access through a reset-once TCP proxy on port 47102.

Run driver.cjs with EVIDENCE_SCRATCH pointing at a new scratch directory and EVIDENCE_CHECKOUT pointing at the checkout, passing `before` or `after`. It creates timestamped state and logs. Read its dev log for A's web origin. Call control endpoint http://127.0.0.1:47103/link to link A to B. Call /pair to obtain the ephemeral browser pairing link (do not publish it).

Browser actions, identical on both commits:
1. Open A, pair, and complete onboarding with history import unchecked.
2. Open `/settings/connections`. Confirm the Demo machine row initially reads `Full access · Reachable`.
3. Navigate to `/settings/general` and start recording.
4. Call control endpoint `/arm`; this closes idle proxy sockets and resets only the next connection.
5. Navigate to `/settings/connections` and leave it open for at least 85 seconds.
6. Capture the visible row. Take a second screenshot at least 500 ms later and compare bytes before retaining the still. Stop recording.
7. Read control endpoint `/` for the synthetic PASS/DROP connection log. Stop the driver and verify its server ports are closed.

Observed on base a03d9bce026ef11930b35e9855adc1cdb5ea6eb7: `Full access · Not answering right now.` remained visible beyond 85 seconds; connection log ended PASS, DROP with no later probe.

Observed on head 7e69f920f250363c323b9b6668d3312ec6721ad7: the same single dropped connection was followed by PASS on the retry; row read `Full access · Reachable` and stayed reachable beyond 85 seconds.
