Mobile app readiness

Phone and tablet app status

TrackMyShit is live on the web and can be added to a home screen now. Signed iPhone and Apple Watch builds are in founder testing; iPad and Android development builds are validated. No public app-store download is available yet.

Current platform ownership

iPhone and Apple Watch founder builds

The organization-signed iPhone Release build and embedded Watch companion have been installed and launched on the founder's paired devices. The compiled Swift client owns typed native return reads, review, mutation, and exact error recovery. Apple beta processing/testing is still separate from public App Store release.

iPad and Android development

iPad layouts and development builds have passed device/layout acceptance. The current Android Capacitor app uses the same protected responsive web return screen as the browser/PWA and does not claim a separate compiled native return client. Its debug build is validated for development, not as a signed Google Play release.

iphone

signed founder device validated

single column touch first

ipad

development build and layout validated

tablet two column where space allows

android

debug build validated

same responsive web surface

tablet

pwa live

tablet viewport sweep required

Launch sequence

  1. pwa
  2. ios
  3. ipad
  4. android

The browser/home-screen app is public now. Signed Apple founder builds exist, but TrackMyShit is not yet offered as a public App Store, TestFlight, or Google Play download.

Manifest

Display
standalone
Orientation
any
Tablet friendly
Yes
Core endpoints 20 developer references

Core endpoints

manifest: /manifest.webmanifest

service worker: /service-worker.js

deep link resolver: /api/v1/mobile/deep-link/resolve

web open resolver: /app/open

openapi: /api/v1/openapi

capabilities ios: /api/v1/capabilities?profile=ios

ios bootstrap bundle: /api/v1/mobile/ios/bootstrap-bundle

ios bootstrap signed: /api/v1/mobile/ios/bootstrap-bundle/signed

ios universal link diagnostics: /api/v1/public/ios/universal-links/diagnostics

android app link diagnostics: /api/v1/public/android/app-links/diagnostics

offline queue: /api/v1/mobile/offline-queue

push inbox: /api/v1/mobile/push-inbox

widget summary: /api/v1/mobile/widget/summary

field audit checkin: /api/v1/mobile/field-audit/checkin

camera quality check: /api/v1/mobile/camera-quality-check

marketplace local demand: /api/v1/marketplace/local-demand

marketplace map: /api/v1/marketplace/map

offline queue action: /api/v1/mobile/offline-queue/<operation_uuid>/action

offline conflict resolve: /api/v1/mobile/offline-conflicts/<operation_uuid>/resolve

app readiness: /api/v1/mobile/app-readiness

Native route contracts 0 developer references

Native route contracts

Machine-checkable method, authentication, scope, write, delivery, and retry boundaries for the protected native app.

Tablet layout audit

Dense owner workflows must stay usable on iPad portrait, landscape, and Split View widths before native tablet claims expand.

dashboard

/dashboard

two column summary and next actions where space allows

Phone fallback: single column touch first

item detail

/items/<id>

item summary beside owner actions and evidence

Phone fallback: stacked summary actions evidence

loan detail

/loans/<id>

timeline or messages beside return actions

Phone fallback: stacked loan sections

marketplace requests

/marketplace/requests

request filters beside triage rows

Phone fallback: filters then rows

feedback admin

/admin/feedback-tickets

filters metrics and ticket rows without horizontal overflow

Phone fallback: stacked filters and ticket rows

  • No horizontal overflow at iPad landscape, portrait, and Split View widths.
  • Primary navigation, filters, and row/card actions remain reachable by touch.
  • Dense owner workflows may use two columns on tablet but must collapse to one column on phone widths.
  • Authenticated tablet Playwright coverage remains the visual gate when auth state or smoke credentials are available.
Offline conflict replay Developer acceptance details

Offline conflict replay

Phone and tablet clients must let users inspect, retry, cancel, merge, and replay offline operations without silently losing local edits.

list or upsert: /api/v1/mobile/offline-queue

action: /api/v1/mobile/offline-queue/<operation_uuid>/action

resolve: /api/v1/mobile/offline-conflicts/<operation_uuid>/resolve

  1. capture: Queue item/photo/check-in draft locally and mirror it to offline queue when authenticated.
  2. sync attempt: Move operation through in-progress or failed without hiding retry/cancel controls.
  3. detect conflict: Mark conflict_detected or requires_manual_merge and expose server/local choices.
  4. resolve: Persist resolution strategy and field choices on the operation payload.
  5. replay: Return keep-local and merge-fields resolutions to pending for the next sync attempt.

Remaining release items

  • RM-028: Public native-store release · Apple signing, the app record, Build 3 upload, and the internal group exist; processed beta verification, release metadata/review, and any public release remain. Google Play remains separate.
  • RM-017: iOS universal-link domain association rollout · Publish the reviewed AASA host/path set and add the signed associated-domains entitlement, then pass the physical link-opening matrix.
  • RM-029: Android App Links production association · Authorize release signing, publish the reviewed Digital Asset Links host/path set, and pass verified-link acceptance.
  • RM-005: Native push-notification production rollout · Development APNs registration works; production sender credentials, delivery infrastructure, consent, and Android delivery remain separate work.