Local Expo Go visual review

Contact Capture Expo Go Review

Review the local native wrapper after T-265. This page does not start Expo, run native builds, generate native projects, deploy, touch production, access credentials, execute n8n, call Google Contacts, or send notifications.

Expo Go review only
Mode Local Expo Go review
Stage T-266 after T-265
Blocked No native build or live adapter
Next Owner visual acceptance

Review Goal

  • 1Confirm the wrapper launches through Expo Go from apps/contact-capture-native.
  • 2Confirm the four routes render: Contact Capture, Capture, Review, and Safety.
  • 3Confirm assistant intent copy still routes Add this business card to capture review, not to live execution.
  • !Record only visual outcome references, not QR screenshots, raw photos, contact payloads, tokens, or logs.

Local Commands

  • 1npm --prefix apps/contact-capture-native run typecheck.
  • 2npm --prefix apps/contact-capture-native run start.
  • 3Open with Expo Go first. Do not use expo run:ios, expo run:android, EAS, TestFlight, or app-store flows.

Expected Screens

  • 1Home screen shows Contact Capture, Add this business card, Review queue, and Safety gates.
  • 2Capture screen points back to /contact-capture/scanner and keeps capture gesture-only.
  • 3Review screen points back to /operator and repeats the false-completion guard.
  • 4Safety screen shows CONTACT_CAPTURE_NATIVE_CAPABILITY_GATES and Strict Control approval.

Safety Checks

  • 1No ios/ or android/ directory is generated.
  • 2No Google Contacts read/write occurs. No n8n/Contacts Agent execution occurs. No credential/token access, durable write, raw payload storage, or notification send occurs.
  • !Any request for native build, app signing, live OCR, duplicate read, Google Contacts write, or Telegram smoke test stops for separate Strict Control approval.

Acceptance Evidence

  • 1expoGoReviewReference records the local review session id.
  • 2typecheckReference records the local wrapper typecheck result.
  • 3visualAcceptanceDecision can be accepted-local-expo-go-review, changes-requested-local-expo-go-review, or continue-local-review.
  • !accepted-local-expo-go-review is not native build approval, deploy approval, live adapter approval, production approval, or notification approval.

Residual Risks

  • !npm audit --omit=dev currently reports 11 moderate advisories in the Expo transitive chain.
  • !npm audit fix --force would apply breaking dependency changes, so it remains a separate dependency-risk review.
  • 1The wrapper is still a shell: no live camera capture flow, OCR provider, duplicate lookup, write adapter, durable storage, or notification sender is enabled.