Funcionalidade hooks - BrunodosSantosVaz/big-bang GitHub Wiki

Proteção local das IAs

Funcionalidade BB-F-045 · requisito RF-BB-045 · versão documentada 2.0.1 · código 7d7bd0cff62d5a12d897999b613b55a7cda21d38.

Finalidade

Bloquear comandos e edições proibidos pelo contrato da sessão antes que alterem trabalho ou arquivos sensíveis.

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

Ler o evento da ferramenta, localizar a raiz e configuração e avaliar comandos, arquivos e áreas geradas; responder com autorização ou diagnóstico de bloqueio.

Validações

Instruções externas são dados; teste de aceite e arquivo sensível seguem decisão do dono; hooks complementam os controles de CI. As labels de decisão do dono são bloqueadas nos dois idiomas (v2 e v3), lidas da mesma tabela de nomes do framework.

Alternativas e erros

Evento inválido ou operação proibida produz bloqueio explícito; hook não garante a identidade da conta compartilhada nem substitui a revisão.

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: Bloquear comandos e edições proibidos pelo contrato da sessão antes que alterem trabalho ou arquivos sensíveis. 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.

_common.py

Implementação revisada.

Símbolo Linha
project_root 8
run 19

proteger_arquivos.py

Implementação revisada.

Símbolo Linha
guarded_path 18
changed_block 34
inspect 52

proteger_comandos.py

Implementação revisada.

Símbolo Linha
branch 18
git_check 24
gh_check 90
inspect 130

settings.json

Implementação revisada.

Cenários e rastreabilidade

Requisitos · Matriz de rastreabilidade · Referência CLI

Fontes rastreadas