Modifica una feature esistente
Modifica software funzionante integrando il cambiamento minimo richiesto con comportamento e pattern locali già presenti.
La modifica di una feature esistente richiede regole di preservazione più forti rispetto alla creazione di un’area isolata. L’agente deve comprendere il funzionamento corrente prima di proporre modifiche.
Ispeziona prima l’implementazione
Leggi il minimo insieme pertinente di file e identifica:
- punti di ingresso e comportamento pubblico;
- metodi, servizi, utility e guard già presenti;
- pattern di validazione, gestione errori e stato;
- test e controlli manuali già usati per la feature;
- modifiche del developer già presenti nel working tree;
- chiamanti e comportamenti vicini da mantenere stabili.
Contratta il delta, non un progetto sostitutivo
Il Task Contract deve descrivere la differenza comportamentale richiesta e la superficie minima autorizzata. Deve indicare il comportamento funzionante da preservare.
Una soluzione teoricamente più elegante non autorizza la riscrittura della feature.
Implementa preservation-first
Preferisci, nell’ordine:
- riuso di metodi e astrazioni esistenti;
- aggiunta locale coerente con i pattern vicini;
- minimo adeguamento necessario alla logica esistente;
- task di refactoring separato ed esplicito quando serve davvero un cambiamento strutturale.
Non fondere funzioni, rinominare API estese, sostituire librerie, riorganizzare cartelle o modernizzare sintassi se il task approvato non lo richiede.
Integra le modifiche del developer
Se il developer modifica la feature durante il task, rileggi i file correnti e adatta il lavoro rimanente. Non ripristinare mai la versione precedente dell’agente sopra modifiche umane più recenti.
Verifica il comportamento interessato
Usa test mirati, controlli di build e verifica manuale adeguati al progetto esistente. Controlla sia il nuovo comportamento richiesto sia il comportamento preservato più esposto a regressioni.
Riporta i problemi collaterali separatamente invece di correggerli opportunisticamente.