# PROMPT 13 — Testes e QA do MVP Use o MASTER CONTEXT e todo o código produzido até aqui. ## Objetivo Criar cobertura suficiente para liberar piloto sem depender apenas de teste manual. ## Matriz mínima ### Unitário / Vitest - normalização/validação de cabeçalho; - limites de arquivo/linha; - nomes duplicados; - validação de tipo; - mapping 1:1; - obrigatórias; - transformação de linha; - geração de nomes de saída; - state machine do job. ### Componentes - upload; - Dialog; - Select; - drag-and-drop + alternativa teclado; - preview; - loading/error/disabled; - progress; - settings Switch. ### Integração - sessão válida/inválida; - workspace membership; - owner/admin/gestor/agent; - feature flag; - Redis indisponível; - storage failure; - job/download. ### Banco/RLS - workspace A não lê/escreve B; - agent não administra; - owner/admin administram; - setting de upload não-admin; - constraints de mapping/duplicidade. ### E2E Cenário principal: `login Elo Pro existente -> abrir Adaptador -> selecionar/subir modelo -> upload fonte -> selecionar aba/header -> mapear -> revisar -> processar -> baixar -> continuar`. ### Performance - fonte 10MB; - 50.000 linhas; - 10 fontes sequenciais; - dois usuários distintos processando em paralelo; - observar memória e timeout. ### Segurança Inclua os cenários do Prompt 12. ## Critérios de corte - zero acesso cruzado nos testes RLS; - fluxo principal completo; - modelo original intacto; - sem segundo login; - erros inesperados correlacionados no Sentry; - lint/typecheck/test suite verdes. ## Entrega Crie `docs/spreadsheet-adapter/06-test-plan-and-results.md` com matriz de testes, resultados e itens bloqueantes.