Lanes
One lane at a time — the goal, the critical path, and the current wave of blockers.
web-mobile — Surface build
Viv — Pin the three unguarded delete paths on the web-mobile QR Launchpad (cache repair, double-submit, sheet while deleting)
Done when: apps/web-mobile/features/qr/__tests__/qr-launchpad-delete-page.test.ts has a test for each of three paths, and each mutation turns at least one test red and is then restored: (1) the page's forgetDeletedQr call in handleDelete replaced by a no-op; (2) the `if (deleting) return;` guard at the top of handleDelete removed (two taps send two DELETEs); (3) the confirm sheet allowed to close while a delete is in flight (onClose always closing, or Cancel not disabled), which would hide a failure that arrives after dismissal. Files: apps/web-mobile/features/qr/pages/QRLaunchpadPage.tsx (about lines 157-175 and 457-490) and the test file above. HELD by draft PR #706 (branch r28/qr-delete-web-mobile): both files are in it.
No dependencies in this wave — nothing gates it, and nothing waits on it.