Funcionalidade cli - BrunodosSantosVaz/big-bang GitHub Wiki
Interface de comandos
Funcionalidade BB-F-004 · requisito RF-BB-004 · versão documentada 2.0.1 · código 4c10eb3217364a0e0688895ea8a3636896521dfb.
Finalidade
Disponibilizar os comandos bb com mensagens em português e retornos estáveis para pessoas e automações.
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
Interpretar --raiz, comando e argumentos; selecionar o handler, carregar a configuração quando necessário e devolver seu resultado. Os comandos e opções têm nome em inglês (bb generate, bb verify, bb claim, bb decision, bb pipeline …, --root, --dry-run) e aceitam o nome da v2 como alias, para que os scripts e hábitos dos projetos legados continuem funcionando (ADR-0024). Na v3, bb claim (com --person para pessoas), bb unclaim e bb renew usam a posse por trava atômica quando o projeto está no fluxo agrupador ou tem as labels em inglês; bb board labels|create|reconcile|show, bb move e bb pipeline controller operam o quadro único (ADR-0023).
Validações
Argumentos desconhecidos ou inválidos não são ignorados; cada comando mantém seus parâmetros explicitados na referência técnica. Cada nome legado tem exatamente um nome v3, definido na tabela única names.py; não há alias ambíguo dentro do mesmo comando pai.
Alternativas e erros
Erro esperado exibe diagnóstico e seu código; exceção inesperada é reportada sem declarar sucesso.
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: Disponibilizar os comandos bb com mensagens em português e retornos estáveis para pessoas e automações. 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.
cli.py
| Símbolo | Linha |
|---|---|
_Parser |
14 |
build_parser |
20 |
_init |
142 |
_ia |
164 |
_testes |
169 |
_v3_client |
175 |
_assumir |
180 |
_claim_v3 |
198 |
_epic_receipt_path |
224 |
_session_receipt |
229 |
_renew |
242 |
_liberar |
257 |
_status |
272 |
_decisao |
287 |
_revisao_aprovar |
295 |
_checklist_producao |
307 |
_aceite_liberar |
322 |
_verificar |
334 |
_atualizar |
345 |
_pacote |
352 |
_checksums |
363 |
_gerar |
373 |
_alvos |
395 |
_config_get |
414 |
main |
420 |
error |
15 |
init.py
bb.py
bb
Cenários e rastreabilidade
.bigbang/tests/test_bb_config.py:test_exemplo_valido.bigbang/tests/test_bb_config.py:test_compilado_valido_sem_secao_deploy.bigbang/tests/test_bb_config.py:test_chaves_opcionais_do_deploy.bigbang/tests/test_bb_config.py:test_recusa_chave_e_secao_desconhecidas.bigbang/tests/test_bb_config.py:test_recusa_chave_obrigatoria_ausente.bigbang/tests/test_bb_config.py:test_secao_do_perfil_ativo_e_obrigatoria.bigbang/tests/test_bb_config.py:test_build_de_cada_sistema.bigbang/tests/test_bb_config.py:test_alvo_conforme_o_perfil.bigbang/tests/test_bb_config.py:test_esquema_de_alvos_e_extensivel_capacidades_sao_do_gerador.bigbang/tests/test_bb_config.py:test_publico_exige_licenca.bigbang/tests/test_bb_config.py:test_tipos.bigbang/tests/test_bb_config.py:test_versao_igual_ao_framework.bigbang/tests/test_bb_config.py:test_repositorio_do_dono.bigbang/tests/test_bb_config.py:test_valores.bigbang/tests/test_bb_config.py:test_codigos_de_saida.bigbang/tests/test_bb_config.py:test_config_invalida.bigbang/tests/test_bb_config.py:test_toml_quebrado.bigbang/tests/test_names_config.py:test_config_get_in_both_languages_and_both_option_spellings.bigbang/tests/test_names_config.py:test_generate_and_verify_by_either_name.bigbang/tests/test_names_config.py:test_pipeline_subcommands_by_either_name
Requisitos · Matriz de rastreabilidade · Referência CLI