Explorar, planear, programar, verificar e fazer commit
Nesta lição, vais aplicar um fluxo de trabalho de engenharia que reduz suposições: primeiro compreendes o estado atual, depois alteras apenas o necessário e por fim verificas o resultado.Um fluxo de trabalho disciplinado
A Nova é mais fiável quando o trabalho no repositório segue cinco etapas explícitas:- Explorar a implementação atual.
- Planear quando a incerteza ou o risco o justificam.
- Programar a menor alteração coerente.
- Verificar com evidência adequada à alteração.
- Fazer commit apenas quando pedido explicitamente.
1. Explorar
Começa por localizar o comportamento, as respetivas dependências e os testes. A Nova deve preferir pesquisas focadas de nomes de ficheiros e código e, depois, ler secções específicas em vez de analisar todo o repositório. Exemplo:- Factos observados no código e na configuração.
- Inferências que ainda precisam de confirmação.
- A causa principal dos sintomas a jusante.
- Convenções existentes que uma correção deve seguir.
- Testes ou evidência de runtime em falta.
2. Decidir se deves planear
O planeamento é adequado para alterações de arquitetura, migrações, alterações incompatíveis, sistemas de alto risco ou trabalho que abrange módulos acoplados onde uma sequência errada causaria retrabalho. A Nova distingue a execução direta do fluxo de planeamento sujeito a aprovação. Normalmente, classifica o pedido pela complexidade e pelo risco; também podes pedir um plano explicitamente:/resume plan [planId] para listar ou reativar planos de implementação incompletos numa sessão interativa.
Para correções simples, a execução direta é preferível. Criar um plano para corrigir uma gralha numa linha acrescenta formalidade sem reduzir o risco.
3. Programar
A implementação deve seguir os padrões estabelecidos pelo projeto. Antes de editar, a Nova deve analisar:- A função ou componente completo que vai mudar.
- Importações, tipos e interfaces públicas.
- Implementações próximas que resolvem problemas semelhantes.
- Testes e fixtures existentes.
- Manifestos de dependências antes de introduzir uma biblioteca.
4. Verificar
A verificação deve visar os critérios de sucesso observáveis. Consoante o projeto, pode incluir:- Testes unitários ou de integração focados.
- Linting e verificação de tipos.
- Um build de produção.
- Verificação no browser de um fluxo de UI real e dos seus estados de carregamento, erro, vazio e sucesso.
- Análise de diff em trabalho apenas de documentação.
- Estado de Git para confirmar a superfície exata da alteração.
5. Rever e fazer commit
Antes de fazer commit, analisa a árvore de trabalho e o diff preparado. Procura ficheiros não relacionados, artefactos gerados, credenciais, binários demasiado grandes e alterações de configuração acidentais. A Nova não precisa de um commit para considerar uma implementação concluída. Faz commit apenas quando o pedires. Quando o agente interativo trata desse pedido, o fluxo é:- Analisar o estado do Git.
- Preparar as alterações relevantes.
- Rever o diff preparado.
- Gerar uma mensagem de commit convencional.
- Executar o commit sem contornar hooks.
- Fazer push apenas se pedires push.
/commit e nova commit são mais restritos: exigem alterações já preparadas, geram uma mensagem convencional a partir de git diff --staged e criam o commit. Não preparam ficheiros nem fazem push. As alterações existentes de outros utilizadores não devem ser repostas nem substituídas como atalho.
Recuperar de erros
A Nova suporta/rollback last para remover a última interação da conversa do contexto ativo. Isto não desfaz efeitos secundários. A recuperação de checkpoints é independente, opcional, limitada a ficheiros e sujeita a aprovação:
Recapitulação
- Explora e identifica a causa principal antes de alterar código.
- Planeia apenas quando o risco, o acoplamento ou a incerteza o justificarem.
- Verifica o comportamento e o âmbito da alteração antes de fazeres commit.