Establish the native arm64 macOS 15 application shell, persistent configuration and early GitHub Actions feedback before implementing location and transport.
Exit criteria
Buildable paused menu-bar app, functional Settings and stable local identity; reproducible local commands and verified CI on PR/main with the agreed main/minimum-OS toolchains. Available configuration tests run in CI. No automatic location or demo transmission.
Validate native location permission, real-Mac acquisition and ad hoc application identity early, including initial lifecycle and rebuild checks.
Exit criteria
Real permission/acquisition outcomes and original timestamp/accuracy are visible; rebuild/Keychain behaviour and initial close/lock/sleep observations are recorded. Limitations are explicit. Full queue-aware lifecycle testing follows in M4.
Validate OsmAnd HTTP/HTTPS interoperability through synthetic local fixtures, manual position sending and confirmed one-shot SOS.
Exit criteria
Form encoding, units, TLS policy, failures and manual/SOS state are covered by meaningful CI tests; native explicit one-shot acquisition works. SOS remains confirmed, visible and manually retried, without delayed automatic delivery.
Complete reliable laptop tracking, bounded offline persistence, safe lifecycle/configuration changes and the minimal bilingual native interface.
Exit criteria
Time OR distance selection, 10,000-position/30-day queue, backoff, pause and destination safeguards pass deterministic CI checks. Real lifecycle and stationary capability/fallback are documented. The agreed English/Spanish menu and Settings interface is complete, accessible and uses an original icon.
Validate the installable ad hoc signed candidate, prepare automated draft releases and public documentation, and accept the MVP from reproducible evidence.
Exit criteria
DMG/signature/checksum and minimum/current-OS runtime evidence pass; candidate CI is green; draft preparation is demonstrated when authorized; real laptop/authorized receiver checks pass; documentation/wiki sources are reviewed. PROTO-020 records MVP acceptance for the exact candidate commit, with no required failed/untested criterion concealed.