v1.9.4 - QA Ponta a Ponta¶
Checklist manual para validar a v1.9.4 em ambiente local.
Preparação¶
- Rodar
python scripts/run_api.py. - Rodar
cd apps/web && npm run dev. - Abrir o frontend em modo API Real.
- Confirmar que a extensão v0.9.0 está carregada como extensão não empacotada, se o fluxo da extensão for testado.
IA e providers¶
- Abrir Configurações / IA.
- Selecionar Local seguro e confirmar que IA externa fica desligada.
- Selecionar IA básica e conferir fluxos principais habilitados.
- Selecionar Gemini, escolher modelo conhecido, salvar e testar conexão.
- Selecionar OpenAI, escolher modelo conhecido, salvar e testar conexão.
- Usar modelo customizado apenas na seção avançada.
- Confirmar que a UI não mostra API key após salvar.
- Confirmar que
localStorageesessionStoragenão guardam API key.
Lattes e Perfil¶
- Colar texto Lattes em Perfil > Acadêmico / Lattes.
- Extrair com IA quando provider estiver configurado.
- Confirmar que os itens são candidatos revisáveis.
- Confirmar manualmente um item no Perfil Universal.
Editais e Concursos¶
- Colar edital mock em Editais / Concursos.
- Marcar Usar IA/Gemini se configurada ou fluxo equivalente.
- Confirmar
provider_used,requested_providere fallback quando aplicável. - Verificar órgão, banca, cargo, datas, taxa, requisitos e conteúdo programático.
- Gerar Exam Fit Score usando Perfil Universal.
- Gerar plano de estudo inicial.
- Confirmar aviso de que o edital oficial sempre prevalece.
- Confirmar ausência de botão de inscrição automática.
Extensão e site¶
- Abrir uma página pública de edital/concurso.
- Clicar Capturar edital / concurso no popup.
- Confirmar que a Local Companion recebe
kind=public_exam. - Abrir Fontes e Captura > Extensão Local.
- Ver a captura com tipo Edital/Concurso.
- Clicar Importar como Edital/Concurso.
- Confirmar abertura de
/public-exams?capture_id=.... - Confirmar que o edital vira rascunho revisável, sem salvar automaticamente.
- Clicar em Status/contexto seguro na extensão.
- Confirmar que só há resumo seguro do Perfil, sem API key ou perfil inteiro.
Segurança¶
- Rodar grep/rg por chaves reais antes de commit.
- Confirmar que
docs/ethics/allowed-vs-not-allowed.mdnão existe. - Confirmar que segredos ficam em
.env*local,data/secrets/ou variável de ambiente local. - Confirmar que nenhum teste externo roda sem env var explícita.
- Confirmar que não houve alteração no fluxo authenticated-browser.