refactor(apple): simplify snapshot route settlement

Merged
TH
2d ago
+128-138

Summary

Simplify iOS Simulator snapshot routing in place for #4205 (3 files). Remove the placeholder discovery and freshness ports, route observe-only eligibility through the route, and settle direct, surface, and failure fallback results through one path. The backend pin still originates in capture-kit and is enforced by the route. The two target validators remain: each checks transport-specific fields and emits a distinct error.

Validation

  • Tested SHA: f1520e3d1ecc314a5cb20c80279416f7dc006f53.
  • Focused route, bridge, runner, failure-policy and foreground Vitest: 85 passed.
  • pnpm typecheck and pnpm build passed after clearing stale ignored package type outputs.
  • Exact-head pnpm check:affected --run --head f1520e3d1ecc314a5cb20c80279416f7dc006f53: passed; receipt run-gXCDv2/receipt.json, exactCommit=true, checkoutChanged=false. Coverage and replay lanes were skipped as GitHub-owned or parked; provider integration was deduplicated against related tests.
  • Local iOS and Limrun live parity at f1520e3d1e, run with the branch's own CLI: the same producers and warnings as main (A/B on the local Simulator), and the bridge serves on Limrun. Details are in a PR comment.
  • Cold self-review only; independent review was not available under the task's no-subagent constraint. Hosted checks and review are pending.

Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.