feat: reviewer escopado ao diff + ui_verify re-audita só as violações - #50
Merged
Conversation
Duas fontes medidas de reviewer caro (171M tokens/21,5% do total no projeto de estudo): (1) o prompt geral do reviewer mandava "use git diff and the codebase" — escopo repo-wide no engine mais caro do roster — e o system.md mandava re-auditar ai-docs/ui/patterns.md no review geral, pagando de novo o trabalho que o UI gate dedicado JÁ tinha assentado antes; (2) o ui_verify re-enviava a rubrica INTEIRA (15 itens, ~6KB + releituras de contrato/ catálogos) para verificar meia dúzia de violações — era a maior linha de reviewer de UI (45M tokens em 41 chamadas). - reviewer/user.md: escopo = o DIFF (changed_files do envelope + git diff); ler fora disso só quando um arquivo mudado exigir; nunca varrer o repo. - reviewer/system.md: conformidade de UI pertence ao UI gate — o review geral não re-audita patterns.md (defeito de UI que quebra o ASK continua contando). - ui-gate.mjs: verifyPrompt novo — o re-audit pós-fix_ui recebe SÓ as violações encontradas + arquivos tocados pelo reparo, com proibição de reabrir itens já aprovados; a rubrica completa fica só no ui_check. - DOCS.md atualizado; testes novos no ui-gate.test.js (prompt do verify sem a rubrica e com as violações/arquivos; prompts do reviewer pinados). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NPYaKxNaVRhPumKbawFNT3
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.
Contexto
Quarta PR do estudo de consumo (#47, #48, #49). O reviewer respondeu por 171M tokens (21,5%) no projeto medido, com duas causas de fluxo:
system.mdmandava re-auditarpatterns.mdno review geral — pagando de novo a conformidade de UI que o gate dedicado (ui_check/ui_verify) já tinha assentado ANTES do review, por design.ui_verifyre-enviava a rubrica inteira (15 itens + seleções de implementação + releituras de contrato/catálogos) para verificar meia dúzia de violações — a maior linha de reviewer de UI: 45M tokens em 41 chamadas.O que muda
reviewer/user.md: o escopo é o DIFF (changed_filesdo envelope +git diff); ler fora disso só quando um arquivo mudado exigir (callers diretos, contrato implementado); "never crawl the repository". Foco melhora o review, não piora.reviewer/system.md: conformidade de UI pertence ao UI gate — o review geral não re-auditapatterns.md; um defeito de UI que quebra o próprio ASK continua sendo motivo de rejeição.ui-gate.mjs: novoverifyPrompt— o re-audit pós-fix_uirecebe só as violações (blocking + findings não-met, com rule ids) e os arquivos tocados pelo reparo, com proibição explícita de reabrir itens já aprovados. A rubrica completa continua noui_check(a auditoria plena acontece uma vez, como deve).Nota de design: o plano original cogitava fundir
ui_checknoreviewdo sdlc; optei por não fazer — o gate é compartilhado por 4 FDAs e a separação funcional/UI é isolamento de qualidade barato. O custo real medido estava no escopo repo-wide e no verify redundante, que esta PR elimina.Testes
ui-gate.test.js: teste novo captura o prompt doui_verify(contém as violações e o arquivo do reparo; não contém "Applicable rubric" nem a tabela de applicability) e pina os prompts do reviewer (escopo-diff presente, instrução repo-wide removida, cláusula de não-re-auditar patterns.md). Suite completa 1450 pass + lint limpo.🤖 Generated with Claude Code
https://claude.ai/code/session_01NPYaKxNaVRhPumKbawFNT3