Funcionalidade revisao pr - BrunodosSantosVaz/big-bang GitHub Wiki
Regras, regressão e merge de PRs
Funcionalidade BB-F-034 · requisito RF-BB-034 · versão documentada 2.0.1 · código 9c73feb3e357a1216011eaf64bf4b5d944827087.
Finalidade
Aceitar PRs somente no modelo de branches com revisão correspondente e testes de regressão anteriores à correção.
Atores
Pessoa responsável pelo projeto, IA com posse confirmada e automações explicitamente autorizadas.
Pré-condições
Repositório e raiz corretos, versão instalada e configuração compatível. Para operações de escrita, exige-se autorização vigente, branch adequada e acesso ao recurso envolvido; consultas não conferem permissão adicional.
Fluxo principal
Executar regras da branch de destino; avaliar arquivos e diff do aceite; conferir título e issue; executar teste de regressão no primeiro commit; fazer merge commit depois de aprovação e CI do SHA.
Validações
Nenhum token de escrita é exposto ao código de regressão do PR; sem-release não pode alterar artefato; testes existentes são travados.
Alternativas e erros
Título, destino, aceite, CI ou revisão inválidos impedem merge; conflito aborta a tentativa preservando a branch anterior.
Permissões
Leitura usa permissões mínimas do repositório. Operações locais respeitam a posse e worktree; escrita no GitHub exige acesso explícito. Esta funcionalidade não concede novas permissões a visitantes nem substitui decisões exigidas pelo fluxo.
Resultados
Resultado esperado: Aceitar PRs somente no modelo de branches com revisão correspondente e testes de regressão anteriores à correção. O retorno e os arquivos afetados são conferidos pelos cenários rastreados abaixo; falha impede considerar a operação concluída.
Referência da implementação
Os símbolos abaixo compõem o inventário real do módulo, incluindo auxiliares internos; não representam APIs públicas independentes.
regras-pr.sh
regressao.sh
mesclar-pr.sh
git-mesclar.sh
Cenários e rastreabilidade
.bigbang/tests/test_regras_pr.py:test_pr_com_mais_de_300_arquivos_pela_api.bigbang/tests/test_regras_pr.py:test_aceite_sem_patch_falha_fechado.bigbang/tests/test_regras_pr.py:test_aceite_pela_api_aplica_a_trava.bigbang/tests/test_regras_pr.py:test_pr_certo.bigbang/tests/test_regras_pr.py:test_recusa_nome_destino_titulo_e_refs.bigbang/tests/test_regras_pr.py:test_zona_sensivel_troca_para_revisao_humana.bigbang/tests/test_regras_pr.py:test_dono_revisao_ia_prevalece.bigbang/tests/test_regras_pr.py:test_pr_de_teste_pode_tocar_tests_aceite.bigbang/tests/test_regras_pr.py:test_tarefa_que_so_libera_as_proprias_marcas_continua_com_a_ia.bigbang/tests/test_regras_pr.py:test_sem_release_sincronizado.bigbang/tests/test_regras_pr.py:test_epico_sem_release_com_artefato_reprova.bigbang/tests/test_regras_pr.py:test_trava_reprova_e_teste_alterado_aprovado_libera.bigbang/tests/test_regras_pr.py:test_pendente_de_tarefa_ja_mesclada_reprova.bigbang/tests/test_regras_pr.py:test_trava_de_aceite_nao_se_aplica.bigbang/tests/test_regras_pr.py:test_rastreabilidade_com_o_padrao_que_vem_na_release.bigbang/tests/test_regras_pr.py:test_dependencia_nova_sem_stack_reprova_e_com_a_linha_passa.bigbang/tests/test_regras_pr.py:test_aceita_sem_artefato.bigbang/tests/test_regras_pr.py:test_recusa_artefato_nao_publicado.bigbang/tests/test_regras_pr.py:test_roda_pula_e_falha.bigbang/tests/test_regras_pr.py:test_comandos_da_stack_so_pelo_comando_sh
Requisitos · Matriz de rastreabilidade · Referência CLI