ADR 0017 modo flash - BrunodosSantosVaz/big-bang GitHub Wiki
ADR-0017: Modo Flash com testes escritos antes e execução seletiva
Big Bang v3: parte deste ADR foi substituída pelo ADR-0025 (reprovações comuns, promoção com recibo válido, modo autônomo).
- Situação: aceita
- Data: 2026-10-06
- Dono: Bruno dos Santos Vaz (
BrunodosSantosVaz) - Tarefa: #183; épico: #174.
Contexto e problema
O dono pediu acelerar a entrega, mantendo segurança e organização, e corrigiu explicitamente o requisito:
unica coisa que eu quero é que os testes continuem sendo feitos antes, porem os testes rodem mais no final
A mesma decisão pede executar apenas os testes afetados e reservar a suíte completa para mudanças estruturais, produção e versões maiores. Major/minor são versões maiores; patch é a miniversão, salvo alteração estrutural.
Decisão e justificativa
Persistir projeto.modo = "padrao" | "flash" no TOML, escolher em bb init --modo flash ou mudar posteriormente
por PR e ADR. Sem a chave, padrão retrocompatível. Testes continuam anteriores ao código e o fluxo de branches e
as travas de aceite permanecem. Flash muda o momento e a seleção da execução, respeitando dependências entre testes
e código. bb testes usa o seletor aprovado da stack ou executa toda a suíte quando não puder selecionar com segurança.
Reutilizar o plano autorizado, revisão independente por IA e a CI verde do SHA exato na candidata. Revisão humana explicitamente pedida e trabalho crítico continuam humanos. Produção sempre exige testes completos, ordem do dono e aprovação do ambiente. Nenhuma regra SEG-IA é desligada. Documentação e README acompanham os PRs.
O dono pediu aplicar na finalização do próprio framework e do Snake. No framework, usa-se o processo leve já existente e a decisão deste ADR; não se cria outro repositório nem se roda Fundação nele. No Snake, aplicação pela atualização oficial do framework, TOML e ADR do projeto.
Consequências
Stacks precisam fornecer um seletor testado; sem ele, Flash reduz esperas manuais mas executa a suíte completa. Mudanças estruturais no próprio framework continuam disparando CI completa. A execução local repetida não é obrigatória se o mesmo commit já possui evidência adequada na CI. Candidata recusa CI ausente, falha ou de outro SHA.
Veja o contrato operacional.