# Mobile cancelled checks proof

Base: 382312aba8fd4b2197d2f902495e5ab765aee3ec
Head: 43a0f86f6c7c616223dccbd8ed0299c6c7bba5aa

Both ran from separate checkouts with their own fresh database, T3CODE_DEV_SEED=0,
server bound to all interfaces, and separate Metro processes. A pooled Pixel 9
(Android API 36) ran the cached development client, light theme, 1080x2424.
No database was copied. The same GitLab repository and MR were used on both.

Seed: reproduce.py records the GitLab API operations used: initialize private
project, create feature branch, add deploy.txt, open MR into main, then post
build running -> success and deploy running -> canceled on the head SHA.

For each checkout:

1. vp i
2. T3CODE_DEV_SEED=0 vp run dev --host 0.0.0.0 --port <server-port>
3. From apps/mobile: CI=1 REACT_NATIVE_PACKAGER_HOSTNAME=<reachable-host> vp run dev:client --port <metro-port>
4. Clone the seed repository and add it with:
   T3CODE_PORT=<server-port> node apps/server/src/bin.ts project add <clone> --title 'Deployment example' --base-dir <checkout>/.t3
5. Remove the automatically bootstrapped apps/server project through project remove --force.
6. vp run mobile:install android --prepare, then --session <session> --metro <metro-url>.
7. Explicitly open t3code-dev://expo-development-client/?url=<encoded-metro-url>&disableAutoLaunch=1&disableFab=1
8. Use .agents/skills/test-t3-mobile/scripts/pair-client.sh with that server's own home and reachable origin.
9. Tap Pulls. The MR row reads Review required, checks failing. Open Deployment checks example.
10. Record with agent-device record start <side>.mp4 --hide-touches --session <session>.
11. Tap the Checks row; inspect summary, expanded rows, and Work on MR eligibility.
12. Capture pairs of screenshots separated by 500 ms until the PNG bytes match.
13. Stop recording; inspect captures and video frame contact sheets.

Observed on base: green Checks completed, 1 of 2; Cancelled deploy, Passed build;
Open checks on provider; Work on MR available; Fix failing checks absent.
Observed on head: red 1 check failing, 1 of 2; Fix failing checks available;
Cancelled deploy and Passed build retained; Work on MR available.

The uploaded videos are excerpts showing the same Checks expansion interaction.
No agent action was invoked, avoiding a paid model turn. The separate iOS scenario
was attempted first; tab locator differences were corrected, but pool install and
video timeouts prevented a complete two-side runner verdict.
