pin-the-case-that-narrowed-the-rule
Quando un controllo scatta sul bersaglio sbagliato, la correzione lo indebolisce. Fissa il falso positivo come test nello stesso commit, o la regola si erode in silenzio.
Conferita da chi ha letto la scheda, non rivendicata dal file su se stesso. Una scheda che l'agente distilla durante un'esecuzione che ha consumato contenuti non affidabili nasce contaminata e resta in attesa di revisione prima di essere mai recuperata.
Quando viene in mente
- il linter ha segnalato codice legittimo
- aggiungo un'eccezione
- falso positivo in CI
- allento un controllo
Il valore di solito sta in Evita e Verifica. Fai è la sezione che scrivono tutti.
Il corpo della scheda qui sopra è una traduzione. L'originale inglese è ciò che la CLI importa, ciò che l'agente legge in esecuzione e ciò che l'hash qui sotto attesta.
Trigger
Un controllo che hai scritto è fallito su qualcosa che in realtà va bene, e stai per aggiungere un'eccezione, una voce in allowlist, o un pattern più ristretto.
Non si applica quando il controllo ha trovato un problema reale — correggi il problema. Non si applica nemmeno alla calibrazione di una soglia prima che il controllo sia mai stato eseguito seriamente.
Fai
- Scrivi, in una frase, perché il caso segnalato è legittimo. Se non riesci, forse il controllo ha ragione e il codice ha torto.
- Aggiungi entrambi i casi alla suite di test: quello legittimo che deve passare, e una versione sintetica della violazione reale che deve continuare a fallire.
- Restringi la regola il meno possibile. Esenta un percorso, non un'intera directory; richiedi una negazione nelle vicinanze, invece di eliminare la frase dalla lista.
- Metti il restringimento in un commit a sé, e dichiara nel messaggio quale caso lo ha reso necessario.
Evita
Eliminare la regola perché una volta era fastidiosa. Evita anche la versione più silenziosa: allargare un'eccezione finché la regola non copre più nulla — un'allowlist che cresce ogni sprint è una regola che viene ritirata una riga alla volta, senza che nessuno decida di ritirarla.
Evita di esentare per file quando la vera distinzione è per significato. Un controllo di frasi che vieta una frase in modo assoluto vieterà anche l'avvertimento che la nega, e la correzione onesta è richiedere la negazione, non smettere di controllare quella pagina.
Verifica
Dopo il restringimento, esegui la suite con la violazione originale reintrodotta. Deve continuare a fallire.
Poi leggi il diff della regola stessa e chiediti: quale classe di problemi può ora passare che prima non poteva? Se non riesci a rispondere, il restringimento non è stato capito.
Rischio
Questo aggiunge un test per ogni eccezione, e una suite piena di test per eccezioni è una suite tediosa da leggere.
Il rischio più grande è trattare il test fissato come prova che la regola sia ancora solida. Prova solo che un caso continua a fallire. Una regola ristretta cinque volte ha cinque casi fissati e possibilmente un grande buco tra di essi, e solo rileggere la regola nel suo insieme lo rivelerà.
Come usarla
La scheda è un dato. Clona il repository e importala per percorso — ciò che arriva dalla rete è trattato come contaminato e trattenuto in attesa di approvazione, che è il comportamento desiderabile e il motivo per cui qui non c'è un installatore in una riga.
git clone https://github.com/brcampidelli/chimera-agent.gitchimera skills-import chimera-agent/skills/pin-the-case-that-narrowed-the-rule/SKILL.mdIntegrità
SHA-256 del file così com'è pubblicato. Chi lo importa può verificare che ciò che ha ricevuto sia ciò che questa pagina mostrava.
9ae6da37eebf345c4dc4df56dd7506b00ea89e8ee74738afa8ffeab7a56bf0ed