Funcionalidade paths - BrunodosSantosVaz/big-bang GitHub Wiki
Caminhos e texto portável
Funcionalidade BB-F-018 · requisito RF-BB-018 · versão documentada 2.0.1 · código 9c73feb3e357a1216011eaf64bf4b5d944827087.
Finalidade
Localizar raiz, configuração e versão e tratar texto de forma consistente nos sistemas suportados.
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
Derivar a raiz do pacote instalado, construir caminhos, converter separadores e normalizar CRLF na leitura de arquivos.
Validações
A camada do projeto é resolvida pela raiz explícita quando fornecida; normalização não altera conteúdo funcional.
Alternativas e erros
Arquivo ausente é propagado ao consumidor com diagnóstico; não há download ou deploy nesta camada.
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: Localizar raiz, configuração e versão e tratar texto de forma consistente nos sistemas suportados. 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.
paths.py
| Símbolo | Linha |
|---|---|
framework_dir |
8 |
config_path |
12 |
framework_version |
16 |
default_root |
21 |
to_posix |
26 |
read_text |
30 |
write_text |
36 |
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
Requisitos · Matriz de rastreabilidade · Referência CLI