NameINNK Mobile AppTypeOUTPOSTCategoryPRODUCTVersion1.0.0DescriptionAplicativo mobile (iOS e Android) do marketplace INNK para Studio Owners, Guest Artists e Customers. Responsável exclusivamente por UX no dispositivo: navegação, captura/upload de mídia, leitura/escrita de dados via backend, mensagens, gestão de bookings (check-in/check-out), preferências de notificação e handoff de pagamentos/assinaturas. Não contém regras de negócio centrais (que permanecem nos serviços de API) — apenas validações de interface, cache e sincronização.
Plataforma-alvo: iOS (Apple App Store) e Android (Google Play), construído com React Native + Expo.
Comunicação com o ecossistema principal:
- Chamadas HTTPS ao "INNK API Gateway" (systemId: 106) (REST) via wrapper com retries, refresh e idempotência.
- Registro/atualização de push token no backend; recebimento de push via FCM/APNs (orquestrado pelo Notification Service 114).
Persistência local / cache / sync (offline-first):
- Segredos: tokens/refreshToken em Keychain (iOS) / Keystore (Android) via SecureStore.
- Cache e state: SQLite (expo-sqlite) para entidades e outbox.
- Outbox offline: fila persistida para mutações com idempotencyKey, retries e backoff; drenagem ao reconectar.
- Sincronização: sync-on-connect e sync-on-resume; fetch incremental por since/updatedAt; conflitos: server-authoritative para estados críticos (booking/pagamento), merge por updatedAt para perfil/rascunhos.
Offline / degradado:
- Leitura: navegação em dados previamente sincronizados com indicação de staleness.
- Escrita: ações ficam pendentes na outbox com UI de status; anexos grandes podem aguardar Wi‑Fi.
- Notificações: sem push, app faz sync parcial/polling quando em foreground.
Versionamento/atualização:
- Versionamento semântico; updates via Store + OTA (Expo EAS Update) quando permitido.
- Checagem de versão mínima compatível com backend e suporte a forceUpdate via config remoto.