---
title: "Problemi della programmazione con l'AI, per sintomo (cosa sta succedendo → cosa fare)"
author: garplab
publisher: TypingTube
license: CC BY 4.0
license_url: https://creativecommons.org/licenses/by/4.0/
license_scope: L'intero corpo di questo documento (escluso questo frontmatter)
language: it
canonical: https://typing-tube.net/articles/it/lookup
---

# Problemi della programmazione con l'AI, per sintomo (cosa sta succedendo → cosa fare)

Una tabella consultabile per sintomo, non per titolo. Il link «Dettagli» porta alla sezione dell'articolo che descrive il rimedio con le relative misurazioni.

Questa tabella presuppone Claude Code (l'agente di programmazione di Anthropic). hook, CLAUDE.md, subagent e auto memory sono i nomi delle sue funzionalità.

| Cosa sta succedendo | Cosa fare | Funzionalità di Claude Code | Dettagli |
|---|---|---|---|
| Ogni volta che l'AI esegue i test, decine di migliaia di righe di output finiscono nel context | Convogliare tutte le esecuzioni dei test attraverso un unico script wrapper, scrivere l'output completo in un file di log e restituire all'AI solo un riepilogo dei fallimenti. | `context window` / `wrapper script` / `fixed-prefix count line ([observed])` | [読まない技術 第1回：テスト結果を読まない技術](https://typing-tube.net/articles/cd93e0c5cac832#cd93e0c5cac832-4eea2df8) |
| Più note di conoscenza l'AI salva, più aumenta la quantità che ogni sessione futura deve leggere | Usare un hook PreToolUse che si attiva subito prima di ogni scrittura in memoria per far leggere prima una checklist, e ridurre il file di istruzioni (CLAUDE.md) a una sola riga: "leggi prima di scrivere". | `MEMORY.md` / `loaded at session start` / `context rot` | [読まない技術 第2回：メモリを読まない技術](https://typing-tube.net/articles/384477896fec22#384477896fec22-4eea2df8) |
| I test passano, ma non è chiaro se stiano davvero proteggendo qualcosa | Scrivere una policy di una pagina sul mutation testing (la tecnica che rompe di proposito il codice per vedere se i test lo rilevano) e farla leggere all'AI ogni volta che le si chiede di revisionare i test. | `mutation testing` / `positive control` / `vacuous truth` | [読まない技術 第3回：単体テストを読まない技術](https://typing-tube.net/articles/e4ad91d2fd6c67#e4ad91d2fd6c67-4eea2df8) |
| A volte l'AI usa una skill registrata, a volte no | Lasciare il comando come un normale script, bloccare le invocazioni scorrette con un hook PreToolUse e indicare la documentazione da leggere. | `PreToolUse hook (Bash matcher)` / `hook stderr + exit 2` / `mission` | [読まない技術 第4回：スキルを使わない技術](https://typing-tube.net/articles/8f9ae8791b448d#8f9ae8791b448d-4eea2df8) |
| Una volta affidato il lavoro a un sub-agent, non si vede cosa sta succedendo finché non finisce | Definire in YAML quali task possono essere delegati a un sub-agent e quali file di input devono esistere prima dell'avvio, poi verificarlo con un hook prima che parta. | `subagent (Agent tool)` / `subagent (no parent context)` / `contract (inputs / outputs / acceptance)` | [読まない技術 第5回：サブエージェントの出力だけは読め](https://typing-tube.net/articles/62f714d7c2b599#62f714d7c2b599-7e6cc5ce) |
| Più regole si aggiungono al file di istruzioni, meno vengono rispettate quelle aggiunte prima | Riscrivere ogni regola del tipo "non fare X", una alla volta, come un test automatico (Minitest) in grado di rilevarne la violazione. | `CLAUDE.md` / `Claude Code hooks (PreToolUse / PostToolUse / Stop / SubagentStop)` / `hook contract (proof of reading)` | [読まない技術 第6回：ルールを読まない技術](https://typing-tube.net/articles/569d598941c00f#569d598941c00f-4eea2df8) |
| La memoria condivisa tra sessioni parallele diventa disordinata, e far leggere la policy non basta | Spostare lo stesso file di policy in un hook PostToolUse e mostrarlo insieme al diff subito dopo il salvataggio. Il contenuto da leggere resta lo stesso, cambia solo il momento. | `MEMORY.md` / `concurrent test runs` / `hooks / automated tests` | [読まない技術 第7回：共有メモリを整理しない技術](https://typing-tube.net/articles/83c46d1e6b2591#83c46d1e6b2591-4eea2df8) |
| Anche scrivendo come gestire un certo errore, l'AI ripete lo stesso errore la volta successiva | Riassumere la policy per i retry in un file di poche righe e farla inserire automaticamente da un hook che rileva l'errore. | `auto memory (feedback_*)` | [読まない技術 第8回：修正履歴を読まない技術](https://typing-tube.net/articles/f7c9c30f567aee#f7c9c30f567aee-4eea2df8) |
| Anche leggendo le note di handoff e il report finale, le parti scomode mancano sempre | Affiancare sempre al report finale numeri ottenuti meccanicamente, ad esempio con git diff --stat. | `handoff` / `test summary line (full log in a file)` | [読まない技術 第9回：引き継ぎを読まない技術](https://typing-tube.net/articles/a43b57a94d2216#a43b57a94d2216-4eea2df8) |
| Il numero contato dalla macchina cambia in un altro numero prima di arrivare nel report | Aggiungere un prefisso fisso alla riga con il numero e usare un hook per verificare che sia stato copiato alla lettera. | `machine-counted numbers ([observed] / git diff --stat)` / `test summary line (full log in a file)` / `self-report (bias toward completion)` | [読まない技術 第10回：AIに要約しろと言わない技術](https://typing-tube.net/articles/yomanai-10-no-summary#yomanai-10-no-summary-4eea2df8) |
| Interrompere l'AI a metà del lavoro manda in tilt tutto ciò che fa dopo | Invece di far interrompere una persona a metà del lavoro, lasciare che intervengano un hook PostToolUse che restituisce la policy subito dopo il salvataggio e un hook che rileva l'errore e rimanda indietro il lavoro. La persona aspetta un confine naturale. | `user message during a task` / `recency` / `context window` | [読まない技術 第11回：口を挟まない技術](https://typing-tube.net/articles/6c6d2e4f80a649#6c6d2e4f80a649-e4cb60ea) |
| Alla fine della sessione, non è stabilito cosa leggere e cosa si può saltare | Non leggere né il risultato né il log di lavoro: giudicare solo in base all'exit code dei test o del linter. | `self-report (bias toward completion)` / `machine-counted numbers ([observed] / git diff --stat)` / `exit code (pass / fail)` | [読まない技術 第12回：作業結果を読まない技術](https://typing-tube.net/articles/1769779c2f1b4b#1769779c2f1b4b-4eea2df8) |
| Una proposta già rifiutata ritorna nella sessione successiva | Raccogliere ogni decisione respinta in un unico documento, con un formato fisso. |  | [AIの意見を聞かない技術 第1回：提案を検討しない技術](https://typing-tube.net/articles/kikanai-01-no-review#kikanai-01-no-review-9e2b31e8) |
| Anche con un divieto scritto in una riga, viene interpretato sia in modo troppo ampio sia troppo restrittivo | Nell'unico documento che raccoglie le decisioni respinte (per esempio non_goals.md), aggiungere una sezione "motivo" a ogni divieto, accanto alla conclusione. |  | [AIの意見を聞かない技術 第2回：禁止を書かない技術](https://typing-tube.net/articles/kikanai-02-reason#kikanai-02-reason-2973ce11) |
| Il divieto è scritto correttamente ma non viene rispettato, e ogni volta arriva una domanda a riguardo | Nel documento delle decisioni respinte, aggiungere a ogni divieto una sezione "ambito di applicazione" ed elencare, una riga alla volta, i casi limite che generano dubbi. | `gap between goal pressure and spec` / `rule-to-test mapping` | [AIの意見を聞かない技術 第3回：禁止ルールを作らない技術](https://typing-tube.net/articles/kikanai-03-scope#kikanai-03-scope-1db3e01a) |
| Dando la stessa istruzione a più sub-agent, ognuno restituisce un formato diverso | Nell'elenco dei task che possono essere affidati a un sub-agent, specificare esplicitamente i file di input da preparare prima dell'avvio. | `subagent mission catalog + launch hook` / `contract (inputs / outputs / acceptance)` / `required input files` | [AIの意見を聞かない技術 第4回：サブエージェントの入力だけは、確かめろ](https://typing-tube.net/articles/kikanai-04-subagent-input#kikanai-04-subagent-input-0b96e6a8) |
| I divieti senza un test automatico si accumulano restando solo scritti sulla carta | Nel documento delle decisioni respinte, aggiungere all'elenco una sezione "verifica automatica" e indicare, voce per voce, se esiste il test automatico (Minitest) corrispondente. | `probabilistic compliance (p^n)` | [AIの意見を聞かない技術 第5回：自動テストを書かない技術](https://typing-tube.net/articles/kikanai-05-machine-check#kikanai-05-machine-check-0f82d02b) |
| Ogni lavoro dell'AI finisce con "apri la schermata e verifica" | Preparare un unico smoke test con Playwright e giudicare l'esito non dall'aspetto della schermata ma dal record rimasto nel database. | `automatic error report from users` | [AIの意見を聞かない技術 第6回：AIの確認依頼を断る技術](https://typing-tube.net/articles/kikanai-06-production#kikanai-06-production-6c41de4e) |
| Ogni volta che l'AI dice qualcosa leggermente fuori strada, tocca a te spiegare e correggere | Invece di far spiegare e correggere ogni scostamento a una persona, scrivere la segnalazione nello stderr di un hook (exit 2) e nei messaggi di fallimento dei test automatici, così che arrivi all'AI per quella via. | `SendMessage (retry)` | [AIの意見を聞かない技術 第7回：AIの話を聞かない技術](https://typing-tube.net/articles/kikanai-07-no-listening#kikanai-07-no-listening-f900b392) |
| L'elenco delle decisioni respinte continua a crescere e rischia di non essere più letto | Aggiungere in fondo al documento delle decisioni respinte una sezione "proposte non adottate" e registrare lì le proposte respinte. | `MEMORY.md` / `context rot` | [AIの意見を聞かない技術 第8回：ルールを整理しない技術](https://typing-tube.net/articles/kikanai-08-no-inventory#kikanai-08-no-inventory-d72023ae) |
| Le righe "esegui sempre questo" nel file di istruzioni non diminuiscono mai | Usare un test automatico che verifica se i comandi che il file di istruzioni segna come "da eseguire sempre" esistono anche in un pre-commit hook. | `CLAUDE.md` / `Minitest` / `hooks / automated tests` | [言わない技術 第1回：検証を指示しない技術](https://typing-tube.net/articles/iwanai-01-no-verification#iwanai-01-no-verification-f9f3539e) |
| Anche scrivendo esattamente come farlo, la correzione non torna fatta in quel modo | Invece di dettare la procedura, definire per ogni caso d'uso i file di input che devono esistere prima di avviare un sub-agent. | `per-mission guide document` / `presupposition` / `launch without a contract` | [言わない技術 第2回：具体的な指示を出さない技術](https://typing-tube.net/articles/iwanai-02-no-procedure#iwanai-02-no-procedure-e45dd403) |
| Per segnalare un bug, tocca sempre scrivere a mano i passaggi e i sintomi | Predisporre un modulo di segnalazione bug in cui la persona scrive solo una frase sul sintomo, mentre URL, cronologia delle azioni e informazioni sul browser vengono raccolti automaticamente via JavaScript. | `bug report form (JS collects URL / actions / browser)` | [言わない技術 第3回：不具合詳細を書かない技術](https://typing-tube.net/articles/iwanai-03-no-bug-details#iwanai-03-no-bug-details-e45dd403) |
| Scrivere ogni volta "prima fammi vedere il piano" è una fatica che si ripete | Non serve nessuna nuova implementazione. Basta un documento di design: l'AI leggerà i documenti esistenti e seguirà lo stesso formato. |  | [言わない技術 第4回：計画を書けと言わない技術](https://typing-tube.net/articles/iwanai-04-no-plan-request#iwanai-04-no-plan-request-be44c158) |
| Le righe che si vorrebbero rispettate di più sono scritte con più enfasi, ma non si sa se serva a qualcosa | Smettere di misurarne l'effetto e contare invece le righe del file di istruzioni che usano espressioni enfatiche, aggiungendo un test automatico (un ratchet) che fallisce quando il conteggio supera una soglia. | `emphasis count in CLAUDE.md` / `sycophancy` / `Dir.glob scan` | [言わない技術 第5回：念を押さない技術](https://typing-tube.net/articles/iwanai-05-no-emphasis#iwanai-05-no-emphasis-abb803f1) |
| Il risultato di un sub-agent torna in un formato diverso da quello previsto | Per ogni caso d'uso di un sub-agent, definire in un unico documento i criteri di accettazione del risultato: nome del file, formato, campi obbligatori. | `subagent (Agent tool)` / `contract (inputs / outputs / acceptance)` / `self-report (bias toward completion)` | [言わない技術 第6回：サブエージェントの出力だけは、細かく指示しろ](https://typing-tube.net/articles/iwanai-06-subagent-output#iwanai-06-subagent-output-633e9bd9) |
| Trovare un errore fa venire voglia di chiedere "ma l'hai davvero letto?" | Invece di interrogare, fissare la seconda frase di ogni richiesta sul modello di domanda "non è forse vero che ...?". | `sycophancy` | [言わない技術 第7回：AI を問い詰めない技術](https://typing-tube.net/articles/iwanai-07-no-interrogation#iwanai-07-no-interrogation-293fc181) |
| Rispondere "non è questo" alla risposta ricevuta non la migliora | Invece di segnalarlo di persona, presentare i divieti privi di alternativa tramite un hook PostToolUse, mostrato insieme al diff subito dopo il salvataggio. | `SendMessage (retry)` / `guarded_by + marker` / `over-triggering` | [言わない技術 第8回：AI にダメ出ししない技術](https://typing-tube.net/articles/iwanai-08-no-criticism#iwanai-08-no-criticism-e4cb60ea) |
| L'AI parla del contenuto di un file come se lo avesse aperto, anche quando non lo ha fatto | Far scrivere marker corrispondenti sia nel documento di riferimento sia nel codice, e verificare con un test automatico che i marker esistano davvero. | `hallucination` / `escape hatch (SKIP_*= / --no-verify)` / `marker` | [言わない技術 第9回：AI に考えさせない技術](https://typing-tube.net/articles/iwanai-09-no-guessing#iwanai-09-no-guessing-61ef1df2) |
| L'AI continua a chiedere "A o B?" e il lavoro si blocca in attesa di una decisione | Smettere di rispondere sul momento e far decidere la scelta a un test automatico o a un hook. |  | [言わない技術 第10回：質問に答えない技術](https://typing-tube.net/articles/iwanai-10-no-answering#iwanai-10-no-answering-0efdc39b) |
| L'AI sta facendo la revisione, ma non è chiaro cosa non stia guardando | Usare un test automatico esterno che conta dall'esterno per individuare i test automatici che scansionano file ma non hanno un limite minimo sul conteggio (assert_operator ... :>=). | `Minitest` / `vacuous truth` / `Dir.glob scan` | [言わない技術 第11回：AI にレビューをさせない技術](https://typing-tube.net/articles/iwanai-11-no-review#iwanai-11-no-review-659e23ad) |
| Gli screenshot si accumulano, ma non è chiaro quale abbia verificato cosa | Prima di controllare la schermata, far rispondere a due domande — "cosa si sta verificando" e "perché un metodo più economico non basta" — e tenere una linea guida di una pagina che privilegia l'opzione più economica, nell'ordine unit test → test di integrazione → E2E. | `Playwright screenshot` / `verification ladder (unit → integration → E2E)` / `verification declaration file + PreToolUse hook` | [確かめない技術 第1回：スクリーンショットを撮らない技術](https://typing-tube.net/articles/tashikamenai-01-no-screenshots#tashikamenai-01-no-screenshots-d3d345e4) |
| È stato introdotto un passaggio che richiede di scrivere qualcosa, ma non si riesce a contare quante esecuzioni lo hanno saltato | Prima di uno screenshot o di un E2E, far scrivere un file di dichiarazione che dica cosa si sta verificando (per esempio tmp/visual_verification.md), rendere la sua esistenza una precondizione di un hook PreToolUse, e senza di esso screenshot ed E2E non partono. | `verification declaration file + PreToolUse hook` / `Claude Code hooks (PreToolUse / PostToolUse / Stop / SubagentStop)` / `PreToolUse hook (Bash matcher)` | [確かめない技術 第2回：宣言を信じない技術](https://typing-tube.net/articles/tashikamenai-02-declaration-guard#tashikamenai-02-declaration-guard-4eea2df8) |
| Lo stesso test viene rieseguito anche senza modifiche al codice, e si perde tempo ad aspettarlo | Aggiungere un'opzione --last allo script wrapper dei test, che rimostra il log precedente rendendo inutile la riesecuzione. | `--last (replay the previous result)` / `mtime check` / `expensive entry point (screenshot / E2E / production)` | [確かめない技術 第3回：テストを再実行しない技術](https://typing-tube.net/articles/tashikamenai-03-no-rerun#tashikamenai-03-no-rerun-ffaed55c) |
| Senza aver rotto nulla, compare comunque una lunga lista di errori mai visti | Far acquisire allo script wrapper dei test un lock esclusivo (sfruttando l'atomicità di mkdir), ed evitare l'esecuzione se non riesce a ottenerlo. | `flaky failure` / `mkdir lock` / `concurrent test runs` | [確かめない技術 第4回：偽の失敗を読まない技術](https://typing-tube.net/articles/tashikamenai-04-false-failures#tashikamenai-04-false-failures-a29d752a) |
| Il report "i test passano" non menziona la parte che non è stata eseguita | Assegnare ai test E2E pesanti un tag per area e saltarli (skip) di default, stampando ogni volta l'elenco delle aree non eseguite. | `E2E area (E2E=<area>)` / `skipped-area count line` / `pass / fail by DB record` | [確かめない技術 第5回：全部走らせない技術](https://typing-tube.net/articles/tashikamenai-05-selective-e2e#tashikamenai-05-selective-e2e-bb037847) |
| Non è possibile capire in seguito se un'istruzione che specificava come procedere sia stata seguita | Per far rispettare una procedura, invece di rafforzare il testo dell'istruzione, modificarla in modo che seguirla lasci una traccia nel risultato (per esempio, far stampare una riga per ogni file aperto). | `sycophancy` / `file existence check` / `tool_use count` | [動かさない技術 第1回：手順を守らせない技術](https://typing-tube.net/articles/ugokasanai-01-no-procedure-enforcement#ugokasanai-01-no-procedure-enforcement-129e096a) |
| Il wrapper introdotto viene abbandonato a metà, tornando al comando grezzo | Per far usare il wrapper, invece di rafforzare l'istruzione, verificare se resta ancora un motivo per tornare al comando grezzo, cioè se al wrapper manca qualche funzionalità. | `wrapper script` / `the raw command the model defaults to` / `workaround after exit 2` | [動かさない技術 第2回：ラッパーを使わせない技術](https://typing-tube.net/articles/ugokasanai-02-no-wrapper-enforcement#ugokasanai-02-no-wrapper-enforcement-129e096a) |
| Ponendo più volte la stessa domanda, la risposta cambia ogni volta; riassumendo, qualcosa va perso | Prima di unire più risposte in una sola, stampare per ogni tipo di segnalazione quante volte è comparsa (quante su quante l'hanno sollevata). | `one subagent run` / `answer key` | [動かさない技術 第3回：集めない技術](https://typing-tube.net/articles/ugokasanai-03-no-aggregation#ugokasanai-03-no-aggregation-f7af24f4) |
| Non si sa se una riga del tipo "se necessario, fai X" sia mai scattata | Non scrivere istruzioni condizionali come "se necessario, fai X": imporre invece quel passaggio con un hook che blocca l'avanzamento finché non viene eseguito. | `rule-to-test mapping` / `Claude Code hooks (PreToolUse / PostToolUse / Stop / SubagentStop)` / `file existence check` | [動かさない技術 第4回：役に立たない技術](https://typing-tube.net/articles/ugokasanai-04-no-conditional-instruction#ugokasanai-04-no-conditional-instruction-e45dd403) |
| Dire "ripensaci" fa cambiare la risposta, ma non è chiaro se l'AI sia davvero convinta | Invece di rimandare indietro con "ripensaci", indicare in modo specifico quale premessa è sbagliata. | `sycophancy` / `SendMessage (retry)` / `guarded_by + marker` | [動かさない技術 第5回：選び直させない技術](https://typing-tube.net/articles/ugokasanai-05-no-reselection#ugokasanai-05-no-reselection-88f30148) |
| Dopo aver scritto "non fare supposizioni", l'AI ha iniziato a tornare senza aver costruito nulla | Non dare solo un divieto: affiancarlo a un'uscita alternativa, come "se non si applica, scrivi 'non applicabile'". | `escape hatch (SKIP_*= / --no-verify)` / `hooks + automated tests + ratchet` / `hallucination` | [動かさない技術 第6回：逃げ道を塞がない技術](https://typing-tube.net/articles/ugokasanai-06-no-blocking-exits#ugokasanai-06-no-blocking-exits-420ce5bc) |
| Continuare una conversazione che sta andando bene fa aumentare la fatica di verifica | Chiudere la sessione a ogni confine tra task e iniziare il task successivo in una sessione nuova. | `context window` / `input / output / cache read tokens` / `sycophancy` | [動かさない技術 第7回：セッションを続けない技術](https://typing-tube.net/articles/ugokasanai-07-no-long-sessions#ugokasanai-07-no-long-sessions-a59368ec) |
| I risultati sono tutti corretti, ma si accumula uno spreco che non compare in essi | Una volta pronti i risultati, aggregare una sola volta con uno script il log di lavoro (transcript). | `file existence check` / `machine-counted numbers ([observed] / git diff --stat)` / `Dir.glob scan` | [動かさない技術 第8回：成果物で判断しない技術](https://typing-tube.net/articles/ugokasanai-08-no-artifact-judgment#ugokasanai-08-no-artifact-judgment-588e1e37) |
| Le note lasciate per chi verrà dopo perdono aderenza alla realtà e diventano obsolete | Non lasciare la conoscenza in un documento: incorporarla nel messaggio di fallimento di un test automatico o nel messaggio di blocco di un hook, così che venga mostrata proprio nel momento in cui serve. | `handoff` / `MEMORY.md` / `mtime check` | [動かさない技術 第9回：知見を残さない技術](https://typing-tube.net/articles/ugokasanai-09-no-knowledge-notes#ugokasanai-09-no-knowledge-notes-cb7946f3) |
| Si continua a scavare nella causa, e la lettura prosegue anche dopo aver trovato la risposta | Contare, dal log di lavoro, le sequenze di letture che non hanno cambiato nulla, e scrivere in una riga la condizione di fine prima di iniziare a scavare. | `machine-counted numbers ([observed] / git diff --stat)` / `input / output / cache read tokens` / `Dir.glob scan` | [追わない技術 第1回：深追いしない技術](https://typing-tube.net/articles/owanai-01-no-deep-dive#owanai-01-no-deep-dive-36119a54) |
| Il modello con il prezzo unitario più basso viene impostato come predefinito senza misurarne l'adeguatezza all'uso | Dare lo stesso compito sia al modello economico sia a quello costoso, poi decidere solo dopo aver contato separatamente i turni fino al completamento e la quantità letta ex novo, riutilizzata (cache read) e scritta. | `rule-to-test mapping` / `Minitest` / `machine-counted numbers ([observed] / git diff --stat)` | [追わない技術 第2回：一番安いモデルを使わない技術](https://typing-tube.net/articles/owanai-02-no-cheapest-model#owanai-02-no-cheapest-model-15eb5702) |
| Quando qualcosa non funziona, la soluzione cercata è un modello più potente invece di un meccanismo migliore | Dare lo stesso compito sia al modello più costoso sia a quello più economico, e trasformare in un controllo permanente i punti in cui fallisce solo quello economico. | `rule-to-test mapping` / `Minitest` / `machine-counted numbers ([observed] / git diff --stat)` | [追わない技術 第3回：最新モデルを使わない技術](https://typing-tube.net/articles/owanai-03-no-latest-model#owanai-03-no-latest-model-eec0ed05) |
| Una ricerca che la sessione principale potrebbe concludere da sola viene comunque affidata a un sub-agent per sicurezza | Prima di delegare, verificare se l'agente padre possiede già quella premessa. Se sì, continuare lì; affidare a un sub-agent solo la grande mole di lettura che non possiede già. | `subagent (Agent tool)` / `context window` / `input / output / cache read tokens` | [追わない技術 第4回：サブエージェントを使わない技術](https://typing-tube.net/articles/owanai-04-no-subagent#owanai-04-no-subagent-efc681e6) |
| Per abitudine si divide il lavoro in quattro e lo si fa girare tutto insieme | Affidare a ciascun sub-agent solo ciò che può restituire in una sola risposta. Il costo non è determinato dal numero di sub-agent, ma da quanti andirivieni fa ciascun sub-agent risultante dalla suddivisione con l'agente padre. | `subagent (Agent tool)` / `input / output / cache read tokens` / `machine-counted numbers ([observed] / git diff --stat)` | [追わない技術 第5回：エージェントチームを使わない技術](https://typing-tube.net/articles/owanai-05-no-agent-team#owanai-05-no-agent-team-037074af) |
| A metà del lavoro arriva dall'esterno un "guarda anche questo" | Aspettare un confine naturale del lavoro e poi introdurre la richiesta aggiuntiva con un ambito ristretto. Quando si chiede all'AI stessa se manca qualcosa, aggiungere sempre: "se è sufficiente, scrivilo esplicitamente". Le lascia una via d'uscita (escape hatch), così non deve inventare una mancanza. | `subagent (Agent tool)` / `instruction priority (position / recency / system vs user)` / `over-triggering` | [追わない技術 第6回：途中でレビューさせない技術](https://typing-tube.net/articles/owanai-06-no-midway-review#owanai-06-no-midway-review-542ab968) |
| Si cerca di decidere quale modello usare confrontandoli direttamente | Prima di iniziare a confrontare i modelli, contare a quanti hook o test automatici equivale lo sforzo di quel confronto. Se si riescono a scrivere più meccanismi di quel numero, metterli in atto prima del confronto. | `input / output / cache read tokens` / `rule-to-test mapping` | [追わない技術 第7回：モデルを選ばない技術](https://typing-tube.net/articles/owanai-07-no-model-choice#owanai-07-no-model-choice-41136ab2) |
| "Non c'è stata alcuna differenza" viene usato come motivo per chiudere la verifica | Prima di chiudere con "non c'è stata alcuna differenza", contare due cose: se qualche risultato è stato escluso dal conteggio (per esempio sub-agent falliti), reinserirlo e ricontare; se più della metà delle voci ha zero in tutte le condizioni, riformulare il compito e misurare di nuovo. | `machine-counted numbers ([observed] / git diff --stat)` / `vacuous truth` | [追わない技術 第8回：諦めさせない技術](https://typing-tube.net/articles/owanai-08-no-giving-up#owanai-08-no-giving-up-82156f07) |

---

Fonte: «Problemi della programmazione con l'AI, per sintomo (cosa sta succedendo → cosa fare)» garplab (TypingTube) https://typing-tube.net/articles/it/lookup / CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
Questa tabella può essere copiata, ripubblicata, tradotta e utilizzata a scopo commerciale citando la fonte. La versione più recente e il testo completo di ogni articolo si trovano all'URL sopra.
