fix: prepare video validation without delaying capture

TH
3h ago
+2136-427

Summary

MP4 validator preparation runs in the background without delaying capture. Stop uses cached or started preparation without canceling it at its deadline. macOS uses AVFoundation; other hosts validate the container. Missing authority returns typed errors; recover with agent-device prepare ios-runner --platform ios on the recording host using the same Swift cache, then retry stop in the original session.

Shutdown cancels and awaits owned unfinished compilation and cleanup; published executables remain reusable. A second same-cache owner can continue after the first closes. Cleanup failures remain typed. Non-macOS touch visualization returns raw video and telemetry with overlayWarning. Launch waits are bounded; Android smoke uses settled Back and confirmed fill. Follow-up to #4150.

Scope: lifecycle, recording, tests and docs; 56 files, +2,136/-427 against c8ad8fb1257787ce0973cf74271cb9a4fafb51d9. The final f026759..b1150a8 change is test-only: bounded close-stall cleanup and regression coverage; no runtime behavior changes.

Validation

At b1150a8715055777d9f9788c521f4374cd313c19, pnpm check:affected --run --head b1150a8715055777d9f9788c521f4374cd313c19 passed (exact commit, unchanged checkout): 13 passed, 8 skipped, 1 deduplicated; 1,230 related and 17,188 unit tests passed, 1 unit skipped. See the evidence comment for the regression proof and limits.

Hosted coverage and device checks remain pending at this head. The startup CI increase at 7ff did not reproduce in bounded macOS base/head/base comparisons; its cause remains unproven.