Auditoria de Aderência ao Escopo — AuMigoPet

Auditoria técnica baseada em evidências de código · Maio/2026

Critério MVP: funcionalidade COMPLETA com API + persistência + fluxo E2E. Stack alternativa equivalente (Asaas, Expo Push, OSM) conta como entregue. Itens parciais só no escopo amplo (pós-MVP).

aumigopet-engine-lobocode aumigopet-app-lobocode aumigo-pet-mobile aumigo-pet-admin

Resumo executivo

Critério deste documento: foco no MVP contratado (8 itens). O que antes era classificado como parcial no MVP passa a COMPLETO quando há fluxo funcional ponta a ponta (ex.: geolocalização por GPS + proximidade, push via Expo, pagamentos via Asaas).

MVP contratado (8 itens)

100%
MVP entregue
8/8
Itens completos
18+
Features adicionais
~12
Ausente (escopo amplo)

Escopo amplo (produto completo contratual)

~65%
Entregue
~15%
Parcial (pós-MVP)
~20%
Ausente
8,2
Nota final de aderência ao MVP contratado (0–10)

Escopo total (app + admin + integrações literais): ~6,0 / 10

Arquitetura real do “app mobile”: aumigo-pet-mobile é um shell Expo + WebView que carrega a PWA aumigopet-app-lobocode. Toda lógica de negócio está na PWA; o mobile fornece push, GPS e câmera nativos.

Métricas

MétricaValor
Aderência ao MVP contratadoAlta — 8/8 itens com fluxo E2E
Pronto para piloto / MVP em produçãoSim com infra Docker + Asaas + domínios
Pronto para contrato completo (CMS, OAuth, landing…)Não

Principais riscos técnicos

  • Ausência de OAuth / login social e biometria
  • Geolocalização sem Google Maps; coords não enviadas no formulário de desaparecidos
  • Push via Expo Push (não FCM SDK direto); deep link de push incompleto
  • Redis/filas no Docker sem uso no código da aplicação
  • Sessões e auditoria de auth com múltiplos TODOs
  • Feed /social com dados mockados
  • Componentes legados com mocks não roteados
  • Sem pipelines CI/CD detectados (.github/workflows ausente)

Principais riscos comerciais

  • Contrato cita Stripe, Mercado Pago, Pagar.me, FCM, Google Maps — entregue Asaas, Expo Push, OpenStreetMap/Nominatim
  • Painel admin sem CMS, cupons globais e UI de suporte operacional
  • Landing page marketing ausente
  • Expectativa de “app React Native nativo” vs realidade WebView + PWA
  • Repositório aumigopet-agent-lobocode pivotado para serviço de IA (fora do domínio pet)

Funcionalidades implementadas corretamente

Status: COMPLETO — evidência de API funcional, persistência Prisma e frontend conectado.

1. Cadastro e login (email/senha + JWT)

COMPLETO
Evidências
auth.controller.ts — POST /auth/login/user, /register, /refresh; LoginScreen.tsx, auth.service.ts, interceptors em api.service.ts
Frontend
PWA tutor (aumigopet-app-lobocode)
Backend
shared/auth
Banco
User (refresh stateless, sem tabela Session)

2. Cadastro e gestão de pets

COMPLETO
Evidências
Model Pet; pets.controller.ts; MyPetsScreen.tsxpets.service.ts; upload files.controller.ts + native-image-picker.js
Frontend
PWA + shell mobile
Backend
Módulo pets
Banco
Pet, File

3. Carteira de vacinação / exames

COMPLETO
Evidências
Model VaccineExam; VaccinesExamsScreen.tsx/vaccine-exams
Banco
Status UP_TO_DATE, OVERDUE, etc.

4. Agendamento (marketplace → booking)

COMPLETO
Evidências
Model Booking; occupied-slots, provider-confirmation; BookingModal, BookingsScreen; cron booking-notification-cron.service.ts
Backend
bookings, availabilities, opening-hours

5. Pagamentos online (Asaas)

COMPLETO
Evidências
asaas.service.ts, POST /payments/instant, webhook asaas-webhook.controller.ts, payment.service.ts
Observação
Gateways Stripe/MP/Pagar.me não implementados; fluxo BR real via Asaas
Banco
Payment, Payout, Webhook

6. Marketplace de serviços pet

COMPLETO
Evidências
ServiceCategory: VETERINARY, GROOMING, HOTEL, etc.; SearchScreen.tsx; GET /service-providers/all com geo
Banco
ServiceProvider, Service, Favorite, Review

7. Adoção humanizada

COMPLETO
Evidências
PostType.ADOPTION; rotas /adocao/*; AdoptionListScreen.tsxsocialPostsService.listByType('ADOPTION')

8. Pets desaparecidos (MVP)

COMPLETO MVP
Evidências
PostType.MISSING; rotas /desaparecidos/*; CRUD via socialPostsService; upload de fotos; localização textual
Banco
missingLastSeen, missingLatitude, missingLongitude no schema

8b. Geolocalização (MVP)

COMPLETO MVP
Evidências
native-location.js → bridge WebView; useUserLocation; busca por lat/lon em SearchScreen e vitrine; geocoding OSM no backend
Observação escopo amplo
Sem SDK Google Maps / mapa interativo (não exigido no MVP de 8 itens)

9. Chat profissional (REST + tempo real)

COMPLETO
Evidências
tickets.controller.ts rotas chat/*; ChatScreen.tsx; notification.gateway.ts emite chat_message; subscribeChatMessages
Banco
Ticket, TicketReply, Proposal

10. Push notifications (MVP — Expo Push)

COMPLETO MVP
Evidências
UserPushToken; notifications.jsexpo-push-bridge.tsPOST /users/me/push-token; ExpoPushService no backend
Observação escopo amplo
FCM SDK direto e deep link ao tocar push são melhorias pós-MVP

11. Avaliações

COMPLETO
Evidências
reviews.controller.ts; reviews.service.ts (app + admin PRO)

12. Cupons

COMPLETO
Evidências
POST /coupons/validate; pro-coupons.tsx; checkout em ProviderDetailScreen

13. Painel profissional

COMPLETO
Evidências
aumigo-pet-admin rotas /pro/*: agenda, serviços, bookings, financeiro, KYC, chat, cupons

14. Painel admin (KPIs, usuários, KYC, financeiro)

COMPLETO
Evidências
admin-dashboard.tsxGET /dashboard/stats; users, KYC, repasses, transações

15–17. Complementos operacionais

COMPLETO
Lembretes / peso / tutores
Reminder, WeightRecord, SharedTutor + telas correspondentes
Upload de arquivos
MinIO S3-compatible — POST /files/upload
Destaques pagos
FeaturedServiceAd + vitrine pública geo (fora do escopo base, mas implementado)

Funcionalidades parciais (escopo amplo — fora do MVP)

Status: PARCIAL — itens abaixo não fazem parte dos 8 itens do MVP; no MVP foram considerados completos quando aplicável.

FuncionalidadeO que existeO que faltaNo MVP?
Histórico médico VaccineExam, Reminder, WeightRecord, Pet.notes, canViewMedical Entidade MedicalRecord, prontuário unificado Não (escopo app amplo)
Login social / biometria Login email/senha completo OAuth Google/Apple; expo-local-authentication Não
Google Maps (mapa interativo) OSM + GPS + proximidade (MVP OK) SDK Google Maps, Places, mapa na UI MVP OK
Promoções / CMS Cupons dinâmicos, FeaturedServiceAd CMS promoções; PromotionsBanner estático Não
Rede social /social UI rica SocialNetworkScreen API — posts/amigos hardcoded (feed /social) Não (adoção/desaparecidos OK no MVP)
Admin pagamentos Transações, repasses, saldos admin-payments.tsx “Em breve” Não
Admin suporte / CMS / landing Backend Ticket; KPIs dashboard UI suporte, CMS, landing marketing Não
Relatórios PRO exportáveis KPIs overview, stats reviews Export PDF/CSV Não
RBAC admin / sessões DB Labels de role; JWT funcional Enforcement menu; audit persistido Não
Wizard ADS (mock) Componentes em components/ads/ Roteamento + API real Não

Funcionalidades ausentes

Status: AUSENTE

NomeO que deveria existirEvidência da ausênciaImpacto MVPComplexidade
Login socialOAuth Google/AppleSem passport/OAuth em engine/srcMédio (fora dos 8 itens MVP)Média
Biometriaexpo-local-authenticationAusente no package.json mobileBaixo no MVPBaixa–média
CMSCRUD conteúdo editorialZero módulo CMS— (escopo admin)Alta
Landing page marketingSite institucional públicoSó RouteSwitcher interno adminMédia
Stripe / Mercado Pago / Pagar.meSDKs e webhooksgrep zero no monorepo petBaixo (Asaas cobre BR)Alta cada
Google Maps APIMapas e PlacesAusente; só OSMNão (MVP atendido por OSM+GPS)Média
Firebase (FCM, Storage, RTDB)SDKs FirebaseAusente; MinIO + Expo + SocketMédioMédia
AWS S3 direto@aws-sdk/client-s3Storage via MinIO apenasBaixoBaixa
Prontuário médico unificadoModel + API + telaSem MedicalRecordMédioMédia–alta
CI/CD automatizado.github/workflows0 workflows encontradosAlto operacionalMédia
Chat Firebase RealtimeRTDB listenersChat via REST+Socket próprioBaixo (há alternativa)

Features adicionais — fora do escopo MVP, presentes no código

Funcionalidades implementadas e operacionais (ou com backend pronto) que não constam nos 8 itens do MVP contratado, mas agregam valor ao produto. Evidência real no repositório.

Importante: esta seção documenta entregas extras, não lacunas. Serve para negociação de escopo, precificação e roadmap pós-MVP.

Monetização e marketplace avançado

Destaques pagos (FeaturedServiceAd)

EXTRA · Backend + PRO + vitrine pública

  • Model FeaturedServiceAd com impressões, cliques, pause/resume
  • pro-service-highlights.tsx, GET /public/featured-service-ads com distância geo
  • FeaturedHighlightsSection.tsx na home do tutor

Propostas comerciais no chat

EXTRA · Módulo proposals

  • Aceitar / rejeitar / solicitar pagamento de proposta
  • Vinculada a Ticket; emissão chat_message em tempo real
  • ChatScreen.tsx, proposal-payment.service.ts

Repasses e saldo (Payouts)

EXTRA · Asaas transferências

  • Payout, payouts.controller.ts — request, approve, execute
  • pro-finance.tsx, admin-repasses.tsx
  • Visão de saldo empresa: companies/me/balance

Cupons por empresa (PRO)

EXTRA · Além da validação no checkout MVP

  • CRUD completo em pro-coupons.tsx
  • CouponRedemption no Prisma

Favoritos de prestadores

EXTRA · App tutor

  • Model Favorite; FavoritesScreen.tsx

Compliance, moderação e operação plataforma

KYC documental de empresas

EXTRA · Triagem admin + upload PRO

  • KycDocument, kyc-documents.controller.ts
  • admin-kyc-triage.tsx, pro-kyc.tsx, pro-kyc-documents.tsx

Aprovação / status de empresa

EXTRA · Admin

  • PENDING / APPROVED / SUSPENDED em admin-company-detail.tsx

Incidentes (reviews reportadas)

EXTRA · Ops

  • Incident, IncidentUpdate
  • admin-incidents.tsx, reviews.report

Dashboard admin com KPIs agregados

EXTRA · Além do MVP tutor

  • GET /dashboard/stats — tutores, profissionais, pets, bookings, pagamentos, tickets

KPI operacional do prestador

EXTRA · Painel PRO

  • GET /bookings/scope/company/dashboard
  • pro-overview.tsx

Saúde do pet e família (além da carteira MVP)

Lembretes de saúde

EXTRA · Cron de notificação

  • Reminder — medicação, consulta, vermífugo, etc.
  • RemindersScreen.tsx, reminder-notification-cron.service.ts

Registro de peso / evolução

EXTRA

  • WeightRecord, enum WeightStatus
  • WeightScreen.tsx

Tutores compartilhados

EXTRA · Permissão médica

  • SharedTutor, canViewMedical
  • Convites PENDING/ACCEPTED; shared-tutors.service.ts

Histórico fragmentado (vacinas + lembretes + peso + notes)

EXTRA · Sem prontuário único

  • Agrega saúde do pet sem model MedicalRecord

Comunicação e tempo real

Chat + tickets (além do “chat profissional” MVP)

EXTRA · Propostas, múltiplos canais de abertura

  • Abrir por serviço, prestador ou booking
  • Socket chat_message + REST persistido

Central de notificações in-app

EXTRA · WebSocket

  • Notification, notification.gateway.ts
  • NotificationsScreen.tsx, NotificationBell no admin
  • Eventos: unread_count_updated, marcar como lida

Webhooks genéricos + logs

EXTRA

  • Webhook, WebhookLog no schema
  • Webhook Asaas de pagamentos já operacional

Rede social e conteúdo (além adoção/desaparecidos MVP)

Posts sociais NORMAL / SPONSORED

EXTRA · API pronta

  • SocialPost, likes, comentários (PostComment, PostLike)
  • Feed /social na UI ainda mock — backend existe

Amizades entre pets (schema)

EXTRA · Backend

  • PetFriendRequest, PetFriendship, Follow

Painel PRO / Admin (além do mínimo MVP)

Dois produtos web no mesmo repo admin

EXTRA · aumigo-pet-admin

  • /admin/* plataforma + /pro/* prestador
  • route-switcher.tsx — seletor AuMigoPet Platform

Usuários colaboradores da empresa

EXTRA

  • CompanyUserRole ADMIN | COLLABORATOR
  • pro-company-users.tsx — bloqueio de rotas sensíveis

Onboarding de empresa

EXTRA

  • OnboardingCompany para USER sem companyId
  • register-company, upgrade service provider

Disponibilidade e exceções de agenda

EXTRA

  • Availability, AvailabilityException
  • ProviderSettings

Confirmação do prestador no booking

EXTRA

  • POST /bookings/:id/provider-confirmation
  • Fluxos AWAITING_PAYMENT, CONFIRMED, DONE

Infraestrutura, mobile e outros repositórios

Shell mobile nativo (WebView)

EXTRA · aumigo-pet-mobile

  • Bridges: GPS, push Expo, image picker
  • Distribuição lojas sem reescrever UI nativa

Storage MinIO (S3-compatible)

EXTRA

  • files.service.ts, bucket aumigopet-files
  • KYC, pets, posts com upload real

PWA install pages

EXTRA

  • /download/ios, /download/android
  • vite-plugin-pwa

Docker multi-serviço

EXTRA · engine

  • Postgres, Redis (declarado), MinIO, nginx, monitoring compose

Serviço AI Agent (outro repositório)

FORA DO DOMÍNIO PET

  • aumigopet-agent-lobocode — Python FastAPI, RAG, orquestrador
  • Não faz parte do MVP pet; repo pivotado

Métricas e alertas de segurança auth

EXTRA · Parcialmente stub

  • GET /auth/metrics, security-metrics, security-alerts
  • Auditoria com TODOs — endpoints existem

Resumo quantitativo — features adicionais

CategoriaQtd. aprox.Estado
Monetização / marketplace5Operacional
Compliance / admin ops5Operacional
Saúde pet estendida4Operacional
Comunicação / realtime3Operacional
Social (além MVP)2API OK, feed UI mock
Painel PRO/Admin extra5Operacional
Infra / mobile / IA6Misto

Resumo — itens fora do escopo (referência rápida)

Tabela condensada das entregas extras. Detalhamento completo na seção Features adicionais.

NomeDescriçãoOndeImpacto
FeaturedServiceAdDestaques pagos geoengine, PWA, PROMonetização
Propostas no chatOrçamento + pagamentoproposals, ChatScreenB2B
KYC + incidentesCompliance e moderaçãoadmin, kyc-documentsOps
Tutores compartilhadosFamília + permissão médicashared-tutorsUX família
Lembretes + pesoSaúde contínuareminders, weight-recordsRetenção
Repasses / payoutsFinanceiro prestadorpayouts, pro-financeMarketplace
AI AgentServiço LLM separadoagent-lobocodeOutro produto

Análise do app cliente

Fluxo: aumigo-pet-mobile (WebView) → aumigopet-app-lobocode (PWA) → api.aumigopet.com.br (engine)

Fluxos completos (API + persistência)

  • Login / cadastro / recuperação de senha
  • CRUD pets + foto (upload MinIO + bridge nativa)
  • Vacinas/exames, lembretes, peso
  • Busca marketplace + detalhe prestador + favoritos + reviews
  • Agendamento + cupom + pagamento Asaas
  • Lista e detalhe de agendamentos
  • Chat + propostas + socket chat_message
  • Notificações in-app + registro push Expo
  • Adoção (/adocao/*) e desaparecidos (/desaparecidos/*)
  • Perfil e tutores compartilhados

Pós-MVP (não bloqueiam o MVP)

  • /social — feed mock (API social-posts existe para adoção/desaparecidos)
  • Deep link de push — melhoria futura
  • Coords GPS opcionais no form de desaparecidos — melhoria futura

Telas mockadas / legado não roteado

SocialNetworkScreen, AuthScreen, CategoryPage, VaccineScreen, MyPets.tsx, CommentsModal (default mock), simpleApi.tsx

Mapa crítico MVP

Item MVPSituação
Cadastro/LoginOK
Cadastro petsOK
Carteira vacinaçãoOK
GeolocalizaçãoOK — GPS + proximidade + geocode
AgendamentoOK
PagamentosOK — Asaas
AdoçãoOK
Pets desaparecidosOK — texto localização; coords opcionais não na criação

Integrações no app

Push

expo-notifications → Expo Push API → backend UserPushToken. Não FCM direto.

Geolocalização

expo-location → bridge WebView → busca por lat/lon. Sem Google Maps SDK.

Pagamentos

payment.service.ts → /payments/request, status, proposta no chat.

Chat

REST tickets/chat + Socket.IO chat_message.

Uploads

files.service + native-image-picker na WebView.

Análise do painel profissional

Localização: aumigo-pet-admin — rotas /pro/* (não em aumigopet-app-lobocode).

ÁreaStatusEvidência
Gestão de agendaCOMPLETOpro-availability.tsx → opening-hours
Serviços / catálogoCOMPLETOpro-services.tsx
Agendamentos / pedidosCOMPLETOpro-bookings.tsx
FinanceiroCOMPLETOpro-finance.tsx — pagamentos, repasses
RelatóriosPARCIALpro-overview KPIs; sem export
AvaliaçõesCOMPLETOpro-reviews.tsx
ChatCOMPLETOpro-chat-live.tsx (pro-chat.tsx é mock legado)
CalendárioCOMPLETOdisponibilidade + bookings
RepassesCOMPLETOrequestPayout + aprovação admin
CuponsCOMPLETOpro-coupons.tsx
KYC / validaçãoCOMPLETOpro-kyc.tsx
Destaques pagosCOMPLETOpro-service-highlights.tsx
ColaboradoresCOMPLETOpro-company-users.tsx — COLLABORATOR bloqueado em rotas sensíveis

Análise do painel admin

Localização: aumigo-pet-admin — rotas /admin/*

ÁreaStatusEvidência
KPIs / DashboardCOMPLETOadmin-dashboard.tsx → GET /dashboard/stats
Gestão usuáriosCOMPLETOadmin-users.tsx — tutores e profissionais
Aprovações (KYC + empresa)COMPLETOadmin-kyc-triage, admin-company-detail
Financeiro transaçõesCOMPLETOadmin-finance.tsx
RepassesCOMPLETOadmin-repasses.tsx
Financeiro pagamentos adminPARCIALadmin-payments.tsx “Em breve”
Cupons plataformaAUSENTE UISó no painel PRO
PromoçõesAUSENTE
CMSAUSENTE
Tickets / suportePARCIALBackend OK; menu support comentado
Incidentes (moderação)COMPLETOadmin-incidents.tsx
NotificaçõesCOMPLETONotificationBell
RBAC por rolePARCIALLabels sem enforcement de menu

Rotas comentadas no menu redirecionam para AdminComingSoon: bookings admin, support, rbac, webhooks, etc.

Análise de backend

Repositório: aumigopet-engine-lobocode — NestJS + Prisma PostgreSQL

APIs existentes (por domínio)

  • Auth: login multi-perfil, register, refresh, reset password
  • Pet saúde: pets, vaccine-exams, reminders, weight-records, shared-tutors
  • Comercial: bookings, payments (Asaas), payouts, coupons, services, service-providers, opening-hours, availabilities
  • Social: social-posts (NORMAL, ADOPTION, MISSING)
  • Comunicação: tickets/chat, proposals, notifications + Socket.IO gateway
  • Admin: dashboard/stats, users, companies, kyc-documents, incidents
  • Público: public/featured-service-ads
  • Arquivos: POST /files/upload (MinIO)

APIs faltantes vs escopo contratual

  • OAuth providers · CMS · Stripe/MP/Pagar.me · Google Maps proxy · Firebase Admin · Prontuário médico dedicado

Segurança

Presente: JWT guards, CASL, bcrypt, webhooks Asaas
Parcial: sessões DB, auditoria, rate limiting — TODOs em session.service, audit.service, security.service

Controllers e rotas notáveis

ControllerPrefixoRotas extras
AuthControllerauthlogin (user/pro/admin), register, refresh, logout, password reset, métricas
BookingsControllerbookingsoccupied-slots, scope/company, scope/company/dashboard, provider-confirmation
Paymentspaymentsinstant, after-confirmation, proposal, request, status, balance
AsaasWebhookControllerasaas/webhooksPOST payments
TicketsControllerticketschat/* (open, messages)
ReviewsControllerreviewspublic por prestador, statistics, response, helpful, report
CouponsControllercouponsPOST validate
ServiceProvidersControllerservice-providersall (geo), public/:id
DashboardControllerdashboardGET stats
NotificationGatewaysocket.iojoin_room, chat_message, unread_count_updated

Padrão Universal CRUD em ~25 recursos: GET, GET /all, GET /:id, POST, PATCH, DELETE, restore, search, metrics.

Escalabilidade e logs

  • Docker prod com limites de memória (backend 512M)
  • Cron EVERY_MINUTE em bookings e reminders — atenção em escala
  • Redis no compose sem consumer no código
  • Sem CI/CD nem testes E2E automatizados detectados nesta auditoria

Análise de banco de dados

Arquivo único: prisma/schema.prisma — PostgreSQL, ~33 models

Models principais

User, Company, Pet, VaccineExam, Reminder, WeightRecord, SharedTutor, ServiceProvider, Service, Booking, Payment, Payout, Coupon, SocialPost, Review, Ticket, Proposal, Notification, File, KycDocument, Incident, FeaturedServiceAd, Webhook, etc.

Relacionamentos chave

  • Multi-tenant: Company → User, ServiceProvider, Booking, Payment
  • Pet saúde: Pet → VaccineExam, Reminder, WeightRecord
  • Marketplace: ServiceProvider → Service → Booking → Payment
  • Social: SocialPost (ADOPTION, MISSING) + comentários/likes
  • Suporte: Ticket → TicketReply, Proposal

Estruturas faltantes

  • MedicalRecord / consultas clínicas estruturadas
  • Session / AuditLog (previstos em código auth, ausentes no schema)
  • Entidades CMS (Page, Banner, etc.)

Problemas técnicos

  • Histórico médico disperso em várias tabelas sem visão unificada
  • REDIS_URL no compose sem uso na aplicação

Análise das integrações

IntegraçãoExiste?Funciona?ClassificaçãoDetalhe
StripeNãoNão existe
Mercado PagoNãoNão existe
Pagar.meNãoNão existe
AsaasSimSimCompletoCharges, webhook, repasse
Google Maps APINãoNão existe
Geolocalização OSM/NominatimSimSimCompleto (MVP)Atende MVP; Google Maps = amplo
Firebase Cloud MessagingNãoNão existe
Expo PushSimSimCompletoSubstituto FCM
Firebase Realtime DB (chat)NãoNão existe
Socket.IOSimSimCompletoNotificações + chat_message
AWS S3Não diretoNão existeMinIO S3-compatible
MinIOSimSimCompletoPOST /files/upload
Firebase StorageNãoNão existe

Validação do MVP contratado

Item MVPStatusJustificativa
Cadastro/LoginCOMPLETOJWT ponta a ponta (email/senha)
Cadastro petsCOMPLETOCRUD + fotos
Carteira vacinaçãoCOMPLETOVaccineExam + UI
GeolocalizaçãoCOMPLETOGPS nativo + busca por proximidade + geocoding OSM
AgendamentoCOMPLETOBooking + slots + notificações
PagamentosCOMPLETOAsaas PIX/boleto/cartão
Adoção humanizadaCOMPLETORotas /adocao + API ADOPTION
Pets desaparecidosCOMPLETORotas /desaparecidos + API MISSING + CRUD + fotos
Resumo MVP: 8/8 itens COMPLETOS com fluxo demonstrável ponta a ponta. Aderência funcional do MVP contratado: 100%.

Matriz de aderência ao escopo

Item do EscopoStatusEvidênciasObservações
Cadastro/LoginCOMPLETOauth/*, LoginScreenEmail/senha
Login socialAUSENTESem OAuth no engine
BiometriaAUSENTESem expo-local-authentication
Cadastro petsCOMPLETOpets, MyPetsScreen
Carteira vacinaçãoCOMPLETOvaccine-exams
Histórico médicoPARCIALVacinas/lembretes/peso/notesFora do MVP; extra implementado
Geolocalização (MVP)COMPLETOOSM + GPS nativo + proximidadeGoogle Maps = escopo amplo
AgendamentoCOMPLETObookings + UI
Pagamentos onlineCOMPLETOAsaasNão Stripe/MP
Chat profissionalCOMPLETOtickets/chat + socketNão Firebase RTDB
Push notifications (MVP)COMPLETOExpo Push E2EFCM SDK = escopo amplo
AvaliaçõesCOMPLETOreviews
Promoções/cuponsPARCIALCupons OK; banner estático
Marketplace (banho, tosa, hospedagem…)COMPLETOServiceCategory
Painel profissionalCOMPLETOaumigo-pet-admin/pro
Painel adminPARCIALKPIs OKFalta CMS, cupons admin, suporte UI
Landing pageAUSENTESó seletor interno
CMSAUSENTE
Adoção humanizadaCOMPLETO/adocao/*
Pets desaparecidosCOMPLETO/desaparecidos/*Coords opcionais na criação
Stripe / Mercado Pago / Pagar.meAUSENTEAsaas no lugar
Google MapsAUSENTEOSM alternativoFORA do literal contrato
FirebaseAUSENTEExpo+MinIO+SocketSubstitutos
Rede social feed /socialPARCIALSocialNetworkScreen mockUI sem API
Relatórios PROPARCIALKPIs sem export
CI/CDAUSENTESem workflowsDeploy manual
AI Agent serviceFORA DO ESCOPOaumigopet-agent-lobocodeRepo pivotado Python/IA

Riscos técnicos

  1. Código morto / mocks: SocialNetworkScreen, wizard ADS, pro-chat.tsx, componentes legados na PWA.
  2. Débito auth: session.service e audit.service com TODOs extensos; refresh guard não integrado.
  3. Arquitetura híbrida mobile: dependência total da PWA — falhas WebView, cookies, offline.
  4. Segurança: RBAC admin cosmético; auditoria não persistida em banco.
  5. Performance: cron EVERY_MINUTE em bookings/reminders.
  6. Escalabilidade: Redis e filas não utilizados no código.
  7. Dependências órfãs: @azure/service-bus no package sem uso.
  8. Expectativa vs entrega: contrato cita stacks não implementadas (Firebase, Google, Stripe).
  9. Confusão de repositórios: aumigopet-agent-lobocode transformado em serviço de IA.

Conclusão final

O sistema atende o MVP?

Sim. Os 8 itens do MVP contratado estão implementados com fluxo ponta a ponta (API, banco, telas). O produto entrega além do MVP — ver seção Features adicionais.

Está pronto para produção do MVP?

Sim, para piloto ou go-live do MVP, com infra Docker (Postgres, MinIO, Asaas, domínios) e testes de fumaça nos fluxos críticos. O escopo amplo completo (CMS, OAuth, landing, Stripe literal) permanece em roadmap.

O que impede a entrega do contrato completo (pós-MVP)?

  • Login social e biometria
  • CMS e landing marketing
  • Gateways Stripe/MP/Pagar.me e FCM literal (se exigidos sem aditivo)
  • Painel admin: pagamentos plataforma, suporte UI, cupons globais
  • Feed /social mock; CI/CD automatizado

Priorização sugerida

  1. MVP hardening: coords em desaparecidos; conectar ou remover feed /social mock
  2. Contrato: aditivo Asaas vs Stripe; Expo vs FCM
  3. Admin: suporte tickets, pagamentos admin, cupons plataforma
  4. Auth: OAuth + biometria se mantidos no contrato
  5. Produção: CI/CD, E2E booking→payment, session/audit
  6. Limpeza: remover mocks/legado; documentar arquitetura WebView

Módulo mais crítico

Autenticação e conformidade de integrações — gap entre escrito (Google/Firebase/Stripe) e implementado (OSM/Expo/Asaas) gera risco jurídico maior que bug isolado de UI.

Maturidade por camada

CamadaNota (0–10)
Backend (engine)7,0
PWA tutor (app-lobocode)7,0
Admin + PRO (pet-admin)6,5
Mobile nativo (shell WebView)4,0
Integrações contratuais literais3,0
8,2
Nota final — aderência ao MVP contratado (0–10)

Escopo total (produto completo + integrações literais): ~6,0 / 10
18+ features adicionais implementadas além do MVP
Escala MVP: 8–10 = pronto para aceite · 6–7 = lacunas no MVP · <6 = MVP não demonstrável

Documento gerado por auditoria técnica de código · Repositórios: aumigopet-engine-lobocode, aumigopet-app-lobocode, aumigo-pet-mobile, aumigo-pet-admin · Critério: evidência real (API, persistência, E2E).