Testing and Evaluation Strategy
Testing and Evaluation Strategy
Section titled “Testing and Evaluation Strategy”Estratégia Geral
Section titled “Estratégia Geral”O Standard usa testes automatizados, evals determinísticos e golden datasets sintéticos para validar o lifecycle sem dados reais, sem LLM real e sem recursos Cloudflare reais no caminho padrão.
Pirâmide de Testes
Section titled “Pirâmide de Testes”- Unit tests por package.
- Integration tests com mock repositories/adapters.
- Contract tests para schemas, endpoints e erros.
- Regression tests com golden outputs sintéticos.
- Synthetic e2e para fluxo crítico sem provider externo.
- Testes Cloudflare/LLM reais apenas opcionais e manuais.
Testes por Package
Section titled “Testes por Package”Packages com testes existentes:
packages/assessment-enginepackages/scf-corepackages/document-ingestionpackages/kbpackages/soapackages/gap-analysispackages/poampackages/reportingpackages/agent-runtimepackages/securitypackages/observability
Esses testes cobrem state machine, approval gates, imutabilidade, tenant isolation, KB, report generation, RBAC, redaction e observability.
Contract Tests
Section titled “Contract Tests”tests/contracts valida:
- request/response schema behavior;
- error format com
trace_id; - schemas de audit/security events;
- endpoints versionados sob
/api/v1; - contratos conservadores para SoA sem mapping oficial.
Security Tests
Section titled “Security Tests”Security tests rodam em:
packages/security/tests;apps/api-gateway/tests/api-security.test.ts;- testes de observability para security events.
Critérios:
- auth required;
- tenant required;
- permission required;
- tenant mismatch bloqueado;
- prompt injection tratado como untrusted;
- tool allowlist enforced;
- redaction de campos sensíveis.
Tenant Isolation Tests
Section titled “Tenant Isolation Tests”Os pacotes de domínio e API testam isolamento para:
- documents;
- KB;
- SoA;
- Gap Analysis;
- POA&M;
- Reporting;
- workflows;
- audit/usage endpoints.
Nenhum teste usa dados reais de cliente.
Approval Gate Tests
Section titled “Approval Gate Tests”O Assessment Engine e packages de artefatos validam:
- SoA sem
approval_eventé bloqueado; - Gap Analysis sem
approval_eventé bloqueado; - POA&M sem
approval_eventé bloqueado; - Report sem
approval_eventé bloqueado; - artefato aprovado é imutável;
- correção exige nova versão;
- agente funcional não aprova artefato final.
Agent Evals
Section titled “Agent Evals”evals/agent-evals usa MockLLMProvider determinístico.
Invariantes:
- Framework Mapper não inventa mapping oficial.
- SoA Architect usa
requires_validationquando incerto. - Evidence Analyst não transforma
not_evidencedemnot_implemented. - Gap Analyst preserva
not_evidencedeconflicting. - Maturity Assessor não dá score alto sem evidência operacional.
- POA&M Planner vincula cada ação a
related_gap_finding_id. - Report Writer preserva limitações e fontes.
Golden Datasets Sintéticos
Section titled “Golden Datasets Sintéticos”evals/fixtures contém tenant, organization, assessment, documentos, SCF sintético, framework sintético, mappings oficiais e resultados de KB.
evals/golden contém outputs esperados para:
- SoA;
- Gap Analysis;
- Maturity;
- POA&M;
- Reporting.
Golden outputs usam IDs sintéticos e não incluem texto integral de documentos.
Regression Tests
Section titled “Regression Tests”evals/regression valida golden outputs por estrutura e invariantes, não por texto exato. Campos dinâmicos como timestamps, IDs gerados e trace_id não são comparados.
CI Strategy
Section titled “CI Strategy”CI executa:
- install;
- lint;
- typecheck;
test:unit;test:contracts;test:security;test:regression;test:evaluations;test:synthetic-e2e;- build.
test:integration fica disponível para execução local/manual e para investigação dirigida, pois duplica parte das suites de API Gateway e Workflows já cobertas no caminho de release candidate.
Testes Opcionais com Cloudflare Real
Section titled “Testes Opcionais com Cloudflare Real”Ficam fora do CI principal:
- Workers deploy/smoke real;
- R2 real;
- Vectorize real;
- Queues reais;
- Workflows reais;
- AI Gateway real.
Devem exigir env vars explícitas e nunca usar production.
Testes Opcionais com LLM Real
Section titled “Testes Opcionais com LLM Real”Ficam fora do CI principal. Devem:
- exigir env var explícita;
- usar dados sintéticos;
- não persistir prompt/output integral;
- registrar provider/model/usage;
- comparar comportamento, não texto exato.
Critérios de Qualidade
Section titled “Critérios de Qualidade”Testes devem falhar se:
- output de agente não valida schema;
- tenant isolation falha;
- approval gate é burlado;
- mapping oficial é inventado;
not_evidencedviranot_implementedsem rationale;- artifact aprovado é editado;
- logs contêm campo sensível proibido;
- API error não tem
trace_id.
Limitações do MVP
Section titled “Limitações do MVP”- Evals são determinísticos e não medem variância de LLM real.
- Golden outputs cobrem dataset mínimo.
- Maturity package ainda não existe como package dedicado; golden maturity é estrutural.
- Cloudflare real não roda no CI padrão.
- Coverage formal ainda não está configurado.
Decisões em Aberto
Section titled “Decisões em Aberto”- Ferramenta futura de coverage.
- Runner estatístico para evals com LLM real.
- Persistência histórica de métricas de eval.
- Política de aprovação para atualizar golden outputs.
- Test matrix por ambiente Cloudflare.