fix: quick wins da análise de Pareto — onboarding, testes verdes e alias /v1/scan - #222
Merged
Merged
Conversation
…ias /v1/scan Análise de funcionalidade completa do repositório (docs/pareto-analysis.md): o núcleo (kernel 21 validadores, proxy 451, ledger WAL+HMAC, API FastAPI) é real e funcional; os defeitos estavam na superfície de onboarding e em testes vermelhos por ambiente/isolamento. Correções (Fase 1 do plano — ~10% do esforço, ~52% do valor): - README: Path C instala sdk/python (onde BTVClient existe), exemplo real com client.validate(), porta 8080 (não 3000), payload aceito pelo gateway, 21 módulos (não 15), diagrama com endpoints reais, licença dupla - gateway: alias POST /v1/scan -> validate_handler (endpoint prometido no README agora existe) - btv-executive: testes de integração definem BTV_HMAC_KEY de fallback; cargo test verde sem setup manual - tests/e2e: appeals autentica com JWT (CRITICO-03) - test_consensus_validator: asyncio.run em vez de get_event_loop (loop fechado por testes anteriores derrubava 25 testes na suíte completa) - test_policy_engine_integration: compara com a constante canônica _DEFAULT_REFUSAL_THRESHOLD (0.80, v1.2.0) - Makefile: make dashboard sobe o Streamlit existente; target arena-demo fantasma removido; extra [dashboard] no pyproject Resultado: suíte Python 1809 passed / 0 failed (antes: 26 falhas); workspace Rust compila e testa verde. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JtKC6F5ypreXcwbhHq4zZt
…de compliance - Parte 1: prontidão de mercado — bloqueadores hard (sem streaming SSE, resposta do LLM não governada no proxy, headers Anthropic/Bedrock não encaminhados, timeout 20s, billing aspiracional) e diferenciais reais (fail-secure, middleware multi-tenant, posicionamento LGPD/Brasil) - Parte 2: auditoria da camada ISO 42001 / EU AI Act — o que é real (classify-risk, DurableLedger/Art.12, ROPA e Art.20 derivados do ledger, ContestabilityLoop) vs fachada (plugins com COMPLIANT hard-coded, FRIA 90% template, regras YAML silenciosamente quebradas incl. Art. 5, Art. 72/73 ausentes, ISO 42001 como checklist de auto-atestação) - Parte 3: ações recomendadas ordenadas por retorno Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JtKC6F5ypreXcwbhHq4zZt
A API afetada (PyCFunction::new_closure) não é usada em nenhum ponto do workspace. O fix exige pyo3 >= 0.29 — o mesmo rewrite de bindings já rastreado para RUSTSEC-2025-0020. Segue o padrão de aceite documentado do audit.toml existente. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JtKC6F5ypreXcwbhHq4zZt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Análise de funcionalidade completa do repositório (docs/pareto-analysis.md):
o núcleo (kernel 21 validadores, proxy 451, ledger WAL+HMAC, API FastAPI)
é real e funcional; os defeitos estavam na superfície de onboarding e em
testes vermelhos por ambiente/isolamento.
Correções (Fase 1 do plano — ~10% do esforço, ~52% do valor):
com client.validate(), porta 8080 (não 3000), payload aceito pelo
gateway, 21 módulos (não 15), diagrama com endpoints reais, licença dupla
README agora existe)
cargo test verde sem setup manual
fechado por testes anteriores derrubava 25 testes na suíte completa)
_DEFAULT_REFUSAL_THRESHOLD (0.80, v1.2.0)
fantasma removido; extra [dashboard] no pyproject
Resultado: suíte Python 1809 passed / 0 failed (antes: 26 falhas);
workspace Rust compila e testa verde.
Co-Authored-By: Claude Fable 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01JtKC6F5ypreXcwbhHq4zZt