Segurança e conflitos
A configuração é aditiva e não destrutiva. Ela planeja cada arquivo gerenciado antes que uma execução normal grave qualquer conteúdo.
Prévia
langdrift setup \
--root /path/to/product \
--project-id proj_example \
--account-id acc_example \
--name 'Example Product' \
--dry-run \
--jsonO resultado atribui um status a cada caminho gerenciado:
create— o arquivo está ausente e seria criadopreserve— o JSON analisado já é igual ao valor esperadoconflict— o destino não pode ser reutilizado ou criado com segurança
Uma simulação valida e retorna esse plano sem gravar. Seu valor changed é false, inclusive quando arquivos seriam criados.
Preservação e conflitos
A comparação JSON ignora espaços em branco e a ordem das chaves dos objetos. Arquivos equivalentes são preservados byte a byte, incluindo formatação e datas. Arquivos existentes nunca são sobrescritos.
Os conflitos incluem:
- JSON malformado ou truncado
- um arquivo regular cujo valor analisado difere do projeto solicitado ou do esquema incluído
- uma versão de protocolo não compatível
- um destino que não é um arquivo regular
- um diretório pai obrigatório que não é um diretório
- um link simbólico em qualquer ponto de um caminho gerenciado
- uma configuração de integração alterada em um projeto existente
Se a verificação prévia encontrar qualquer conflito, a configuração não grava nada, mesmo que outros arquivos gerenciados estejam ausentes. Revise manualmente os motivos de cada arquivo.
O caminho legado .drifts/execution é sempre um conflito. A versão 0.1.0 usa .drifts/loop e não migra, renomeia, mescla nem remove a estrutura legada.
Gravações e novas execuções
Arquivos ausentes são criados de forma exclusiva e sem seguir links simbólicos. Se um destino surgir após a verificação prévia, a configuração o preserva quando o conteúdo analisado corresponder. Caso contrário, ela falha com SETUP_CONCURRENT_CHANGE.
Uma nova execução sem alterações informa apenas preserve e retorna changed: false. Esquemas obrigatórios ausentes são recriados em uma execução segura posterior.
A sequência de gravação não é uma transação de sistema de arquivos. Se uma falha de E/S ou uma alteração concorrente ocorrer depois que um ou mais arquivos forem criados, esses arquivos podem permanecer. O conteúdo existente continua sem ser sobrescrito. Inspecione o plano informado, revise os arquivos inválidos e execute a configuração novamente para reparar os arquivos que ainda faltam.