AUR-615 — Nenhum texto stale no código
Problema
Depois da consolidação do cmd/aurumcode em arquivos por responsabilidade e
das camadas de configuração, vários comentários e docs de pacote ainda
descreviam o produto anterior: arquivos que não existem (aur520.go,
aur551.go, aur515.go, aur536.go, aur537.go, aur549.go, aur550.go,
aur521.go), cards tratados como futuros ("until AUR-520 lands", "a future
xBOM card", "AUR-471 ISO provider"), contagens erradas ("exactly two
things", "all three entries", "closed list of three") e uma versão "que
ainda não tem release". Quatro linhas de terminal contavam com plural entre
parênteses fora do catálogo de idiomas.
Desenho
| arquivo | responsabilidade |
|---|---|
internal/config/gate.go, config.go, qualitygates.go, provider_files.go, exceptions.go |
Docs de GateConfig (quatro campos; só fail_on/inconclusive declaram gate; sources aceita skills, analysis e qualquer engine ou categoria registrada), do pacote (os provedores de contexto que existem), de ReviewContextConfig (MCP não é arquivo de texto), de quality_gates (quatro subseções; supply_chain é a assinatura Cosign do cmd_sign.go), de DefaultProviders e das exceções (a comparação vive em gate.MatchException). |
internal/render/audit.go, sarif.go, sarif_test.go, finding_identity.go |
O registro de auditoria tem seções opcionais além das do AC-001 e exceptions_applied é preenchido; Suppressed/Justification vêm da exceção aplicada; a identidade do achado é compartilhada com pr_rounds.go. |
cmd/aurumcode/main.go, status_description.go, cmd_sbom.go, cmd_sign.go, codebase_context.go, repo_identity.go, checkout_identity.go, verified_checkout.go e os testes aur5*_test.go, passes_test.go |
Cada referência a aurNNN.go aponta para o arquivo real da função citada; a versão é carimbada pela imagem (AURUMCODE_VERSION); a linha inconclusiva vem do catálogo (gate.inconclusive_line). |
internal/reviewprofile/reviewprofile.go |
Um perfil declara ênfase, famílias e instruções; o de time é lido de profiles.yml (team.go). |
cmd/aurumcode/aur607_test.go, internal/gate/aur607_test.go, internal/i18n/aur607_test.go, redaction_wiring_test.go |
readJSON único (de aur579_test.go); testes "EnglishUnchanged" renomeados para DefaultLanguageUnchanged (o idioma padrão é o que mantém os bytes antigos); o teste do catálogo também recusa "(is)"; as linhas do subcomando docs removido saem da lista. |
cmd/aurumcode/terminal_counts.go (+ _test.go), internal/i18n/i18n.go, catalog.yml |
i18n.Counted (chave e <chave>_one) sobre o catálogo (<chave> e <chave>_one): falhas de publicação (review), resumo de dependencies, de xbom e de realimentacao. Em en os bytes anteriores, inclusive "(s)"; em pt-BR singular e plural. realimentacao não lê configuração de repositório e imprime o idioma padrão. |
internal/feedback/plan.go, internal/gate/exceptions.go, internal/supplychain/signer.go, internal/sbom/generator.go |
Título da PR da realimentação e aviso "Exceções desativadas" pelo catálogo (bytes anteriores no idioma padrão); aur551.go/aur549.go apontam para cmd_sign.go/cmd_sbom.go. |
internal/review/scope.go, reviewer.go |
Os avisos do gate de escopo (scope_discard_warning) e do gate de regras (discard_warning) contam pelo catálogo (review.scope_discarded, review.rule_discarded e suas razões) no idioma da revisão, que preparedPrompt passa a carregar. |
tests/acceptance/AUR-615.sh |
AC-001 (frases ausentes e textos novos presentes), AC-002 (as linhas contadas pelo catálogo, chaves nos dois idiomas, teste dos bytes), AC-003 (build e vet do módulo; testes completos dos pacotes autocontidos (menos o que lê os config.yml distribuídos) e, em cmd/aurumcode e internal/review, os testes deste card e o teste renomeado do AUR-607; readJSON definido uma vez), MUT-001 (chave pt-BR com "(s)" derruba TestAUR607PortugueseHasNoParenthesizedPlural). |
Provas
go build ./... && go vet ./... && go test ./...no container compartilhado (o aceite selado não enxergatests/fixtures,docsnem.board, dos quais dependem testes já existentes deinternal/review,cmd/aurumcodee dos scanners; por isso AC-003 selado corre o módulo inteiro só em build e vet).bash tests/acceptance/AUR-615.sh alle./.board/bin/oci-run --profile go-unit-offline-v1 --card AUR-615.
Limites
- Com
review.language: pt-BR, as linhas dedependenciesexbommudam de "5 componente(s)" para "5 componentes": o tutorialxbom(expected e página) é regravado com o lote.