TDD — Snapshot do Platform
Status
Implementado
Contexto
Leitura da estrutura /platform do Firestore para inspeção em tempo real. Acessível via Home → Ajuda → Debug (botão "Ler snapshot").
Contratos
Backend: platformDebugHttp (GET)
- Headers:
x-debug-token(DEBUG_PLATFORM_TOKEN; Bearer também aceito em algumas configs) - Função: retorna snapshot da árvore
platform/ministrys/{domain}
Frontend: GetPlatformDebugSnapshotUseCase
- Chama o endpoint e grava JSON no
DebugService(logs)
Interface de Usuário (UI)
O painel de debug é exibido dentro do popup Ajuda do aplicativo (Home → ícone ajuda). Requer desbloqueio: toque 5 vezes no ícone de bug no header.
Componentes relacionados ao Snapshot:
- Debug out — área de texto rolável com saída (monospace); exibe o JSON do snapshot após "Atualizar"
- Atualizar — botão que dispara a leitura do snapshot; grava resultado na saída
- Limpar — limpa a saída
- Copiar saída — copia o conteúdo da saída para a área de transferência
- Atalho 1 — botão numérico que executa o mesmo que "Atualizar"
- Nível de debug — dropdown (trace, debug, info, warn, error) que filtra o que aparece na saída
Observação: O painel de debug só aparece após o gesto de desbloqueio (5 toques no ícone de bug).
Fluxo
- Usuário clica em "Atualizar" (ou atalho 1) no DebugHelpPopup
- Frontend:
getPlatformDebugSnapshot.execute() - HTTP GET para
platformDebugHttp - Resposta JSON gravada via
DebugService.instance.loge exibida na área "Debug out"
Código de referência
frontend/lib/application/use_cases/get_platform_debug_snapshot.dartbackend/functions/src/interfaces/http/platform-debug-http-controller.ts