Skip to main content

IAW Platform — Relatório de Situação

Data: 2026-04-13 | Autor: Platform Tech Lead | Destinatários: VPE (agents-os), CTO (Dany)


Resumo Executivo

A plataforma IAW está pronta para go-to-market. Fases 1 e 2 completas, P2 Strategy 4/4 done. Zero items de código pendentes. Dois blockers de infra (SonarQube DNS + runner instabilidade) são os únicos impedimentos para staging verde e promote automático para prod.

Métricas chave: 433 commits | 22 módulos backend | 51 páginas frontend | 23 suites E2E (18/18 PASS dev) | 6 idiomas | 4 ambientes operacionais


1. Estado dos Ambientes

AmbientePipelineStatusE2EDeploy
Dev#3244SUCCESS18/18 suites PASSAuto
UAT#3248SUCCESSCompletoAuto (promote dev→UAT)
Staging#3251Running24/26 PASS, 1 FAIL (fix em #3257)Auto (promote UAT→staging)
Prod#3235SUCCESSLiveBlue-green

2. Módulos 100% Funcionais e Testados

Core — Billing & Payments

MóduloBackendFrontendE2Ei18n (6 langs)Estado
Billing (checkout, subscriptions, invoices)routes + models + schemas + webhook_handler5 páginas3 suitesPT/EN/FR/ES/DE/IT100%
Stripe Connect (onboarding, payouts, KYC)routes + models + schemas + service3 páginas2 suites6 langs100%
Metered Billing (usage tracking, overage)UsageRecord + Stripe reporting + alertsPortal usage pageIntegrado6 langs100%
Invoicing Engine (SAF-T, Moloni, PDF)engine + tasks + fiscal syncAdmin + portalIntegrado6 langs100%

Core — Provisioning & Services

MóduloBackendFrontendE2Ei18nEstado
Provisioning (booking + virtual-store)2 provisioners + webhooks + stale checkAdmin services2 suites6 langs100%
Domains (Enom check/register/DNS)routes + models + CloudflarePortal domains1 suite6 langs100%

Core — Auth & Portal

MóduloBackendFrontendE2Ei18nEstado
Auth (JWT, RBAC, 14 permissions)routes + models + SSO/JWT Phase 24 páginas2 suites6 langs100%
Portal Cliente (self-service)dashboard + services + invoices + tickets15 páginas3 suites6 langs100%
Admin (360° management)dashboard + clients + team + payouts + usage22 páginas2 suites6 langs100%

Suporte

MóduloBackendFrontendE2Ei18nEstado
Notifications (Zeptomail)15+ email templates + Celery tasksVia E2E6 langs100%
Tickets (support)routes + models + departmentsPortal + admin1 suite6 langs100%
Clients (RGPD, affiliates)CRUD + export + delete + affiliatesAdmin pages2 suites6 langs100%
Audit Trailaction loggingAdmin page1 suite6 langs100%
Products & PlansCRUD + addons + slotsAdmin + public1 suite6 langs100%

3. Integrações Externas

IntegraçãoEstadoCobertura
Stripe Connect Custom100% operacionalOnboarding, split payments, payouts, KYC, 10 webhook event types
Moloni v1 (SAF-T)90% operacionalOAuth + InvoicingEngine + PDF + credit notes. Pendente: customer auto-sync
Enom (domínios)100% operacionalCheck + register + renew (DRY_RUN em dev/staging)
NATS EventBus100% operacional12 event types: 6 provisioning + 6 billing
Zeptomail (email)100% operacional15+ templates, 6 idiomas
iaw-sdkAdoptadoBookingSysadminClient + PlatformClient + event schemas
Hetzner CloudIntegradoVPS provisioning
CloudflareIntegradoDNS management

4. Segurança

ItemEstado
JWT verify_aud + verify_iss (SSO Phase 2)Activo
RBAC granular (14 permissions, 5 roles)Activo
RGPD Art. 17 (direito ao apagamento)Implementado
RGPD data export (portabilidade)Implementado
DB anonymization scripts (staging/dev)Operacional
HMAC webhook verification (SaaS events)Activo
Rate limiting (bypass E2E em dev/UAT)Activo
bcrypt password hashingActivo
Stripe Connect document KYCImplementado

5. Testes

TipoQuantidadeResultado
Backend pytest37 ficheiros, 105+ testes105/105 PASS
E2E Playwright23 suites, 62 specs18/18 PASS (dev #3244)
Viewports E2Emobile (375px) + tablet (768px) + desktop (1280px)3 por suite
i18n6 idiomas x 9 namespaces = 54 ficheirosCompleto
Alembic migrations11 + 1 mergeSingle head

6. Sessões Recentes (2026-04-12/13)

Sessão 2026-04-12 — 13 MRs (!199-!211)

  • Stripe Connect Fase 1: COMPLETO (payouts, balance, KYC, schedule)
  • Billing metered Fase 2: COMPLETO (UsageRecord, Stripe reporting, overage alerts)
  • Portal self-service: suspend/unsuspend, domains, usage
  • Admin 360°: client services, payouts dashboard, usage overview
  • Auto-provisioning: VirtualStore pending_callback + stale check 24h

Sessão 2026-04-13 — 4 MRs (!215, !217, !221) + fixes

  • PLN090: Fix E2E timing (services-lifecycle + admin team toggle)
  • PLN091: NATS billing events (6 tipos, 7 integrações)
  • PLN092: SSO/JWT Phase 2 (verify_aud + verify_iss)
  • Fix: Alembic merge heads (staging deploy)
  • Fix: SVC-05 unsuspend timing
  • Fix: Runner tags (platform-ci/platform-deploy)
  • Chore: CHANGELOG + gitignore + objectives.json

P2 Strategy — 4/4 COMPLETA

  1. NATS inter-produto: DONE (provisioning + billing events)
  2. Webhooks booking-side: DONE (SaaS webhook handler)
  3. SSO/JWT partilhado: DONE (verify_aud + verify_iss)
  4. VirtualStoreProvisioner: DONE (real com callbacks)

7. Blockers Actuais

BlockerSeveridadeImpactoResponsávelEstado
SonarQube DNSP2quality:sonarqube job falha em todas as pipelinesVPEEscalado 3x
Runner instabilidadeP2Jobs ficam pending intermitentemente (runners morrem/não pegam jobs)VPEEscalado, parcialmente resolvido

Nota: Estes blockers são de infra, não de código. O código está 100% funcional.


8. Distância ao Go-to-Market

Completo

  • Fase 1 — Estabilização (auth, billing, portal, admin, domains)
  • Fase 2 — Core de Produto (Stripe Connect, auto-provisioning, metered billing, portal self-service)
  • P2 Strategy — Inter-produto (NATS events, SSO/JWT, webhooks, VirtualStore)
  • 4 ambientes operacionais (dev/UAT/staging/prod)
  • CI/CD com 44 jobs, 18 E2E suites
  • 6 idiomas
  • RGPD compliance

Pendente (não bloqueia go-live)

  • SonarQube DNS resolver (infra)
  • Runner estabilidade definitiva (infra)
  • Moloni customer auto-sync (nice-to-have)

Futuro (Fase 3+)

  • Previsão de churn (ML)
  • Pricing inteligente (IA)
  • Suporte automático (chatbot)
  • Marketplace add-ons
  • API pública

Conclusão

A plataforma está pronta para go-live. Zero items de código pendentes. A pipeline dev passa 42/43 jobs (único fail é SonarQube DNS — infra). UAT verde. Prod já em live. Quando os 2 blockers de infra forem resolvidos, staging promove automaticamente para prod com todo o código das Fases 1+2.

Recomendação: Resolver SonarQube DNS + estabilizar runners → staging green → promote prod → go-to-market.