---
title: "Problemas al programar con IA, por síntoma (qué está pasando → qué hacer)"
author: garplab
publisher: TypingTube
license: CC BY 4.0
license_url: https://creativecommons.org/licenses/by/4.0/
license_scope: Todo el cuerpo de este documento (sin este frontmatter)
language: es
canonical: https://typing-tube.net/articles/es/lookup
---

# Problemas al programar con IA, por síntoma (qué está pasando → qué hacer)

Una tabla para buscar por síntoma, no por título. El enlace "Detalles" lleva a la sección del artículo que describe el remedio con sus mediciones.

Esta tabla presupone Claude Code (el agente de programación de Anthropic). hook, CLAUDE.md, subagent y auto memory son los nombres de sus funciones.

| Qué está pasando | Qué hacer | Funciones de Claude Code | Detalles |
|---|---|---|---|
| Cada vez que la IA ejecuta los tests, decenas de miles de líneas de salida inundan el contexto | Enruta todas las ejecuciones de tests a través de un único script wrapper, escribe la salida completa en un archivo de log y devuelve a la IA solo un resumen de los fallos. | `context window` / `wrapper script` / `fixed-prefix count line ([observed])` | [読まない技術 第1回：テスト結果を読まない技術](https://typing-tube.net/articles/cd93e0c5cac832#cd93e0c5cac832-4eea2df8) |
| Cuantas más notas de conocimiento guarda la IA, más tiene que leer cada sesión futura | Usa un hook PreToolUse que se ejecute justo antes de escribir en memoria para que la IA lea antes una checklist, y deja el archivo de instrucciones (CLAUDE.md) reducido a una sola línea: "lee antes de escribir". | `MEMORY.md` / `loaded at session start` / `context rot` | [読まない技術 第2回：メモリを読まない技術](https://typing-tube.net/articles/384477896fec22#384477896fec22-4eea2df8) |
| Los tests pasan, pero no está claro si realmente protegen algo | Escribe una política de una página sobre mutation testing (romper el código a propósito para ver si los tests lo detectan) y haz que la IA la lea cada vez que le pidas revisar los tests. | `mutation testing` / `positive control` / `vacuous truth` | [読まない技術 第3回：単体テストを読まない技術](https://typing-tube.net/articles/e4ad91d2fd6c67#e4ad91d2fd6c67-4eea2df8) |
| La IA a veces usa una skill registrada y a veces no | Deja el comando como un script normal, bloquea las invocaciones incorrectas con un hook PreToolUse e indica a la IA qué documentación debe leer. | `PreToolUse hook (Bash matcher)` / `hook stderr + exit 2` / `mission` | [読まない技術 第4回：スキルを使わない技術](https://typing-tube.net/articles/8f9ae8791b448d#8f9ae8791b448d-4eea2df8) |
| Una vez que el trabajo pasa a un sub-agente, no se ve qué está pasando hasta que termina | Define en YAML qué tareas pueden delegarse a un sub-agente y qué archivos de entrada deben existir antes de lanzarlo, y verifícalo con un hook antes de que arranque. | `subagent (Agent tool)` / `subagent (no parent context)` / `contract (inputs / outputs / acceptance)` | [読まない技術 第5回：サブエージェントの出力だけは読め](https://typing-tube.net/articles/62f714d7c2b599#62f714d7c2b599-7e6cc5ce) |
| Cuantas más reglas se añaden al archivo de instrucciones, menos se respetan las reglas anteriores | Reescribe cada regla de "no hagas X", una por una, como un test automatizado (Minitest) capaz de detectar la infracción. | `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 compartida entre sesiones paralelas se desordena, y hacer que lean la política no ayuda | Traslada la misma política a un hook PostToolUse y muéstrala junto al diff justo después de guardar. Mantén el contenido igual: cambia solo el momento en que se muestra. | `MEMORY.md` / `concurrent test runs` / `hooks / automated tests` | [読まない技術 第7回：共有メモリを整理しない技術](https://typing-tube.net/articles/83c46d1e6b2591#83c46d1e6b2591-4eea2df8) |
| Aunque se ha dejado escrito cómo manejar un fallo, la IA repite el mismo error la próxima vez | Resume la política de reintento en unas pocas líneas en un archivo, y haz que un hook que detecte el fallo la inserte automáticamente. | `auto memory (feedback_*)` | [読まない技術 第8回：修正履歴を読まない技術](https://typing-tube.net/articles/f7c9c30f567aee#f7c9c30f567aee-4eea2df8) |
| Incluso leyendo las notas de traspaso y el informe de finalización, faltan las partes incómodas | Coloca siempre, junto al informe de finalización, números obtenidos mecánicamente, como los de git diff --stat. | `handoff` / `test summary line (full log in a file)` | [読まない技術 第9回：引き継ぎを読まない技術](https://typing-tube.net/articles/a43b57a94d2216#a43b57a94d2216-4eea2df8) |
| Los números que cuenta la máquina se convierten en otros distintos para cuando llegan al informe | Añade un prefijo fijo a la línea con el número, y haz que un hook compruebe que se copió literalmente. | `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) |
| Interrumpir a la IA a mitad de tarea descoloca todo lo que hace después | En lugar de que una persona interrumpa a mitad de tarea, deja que intervengan un hook PostToolUse que devuelve la política justo después de guardar y un hook que detecta el fallo y devuelve el trabajo. La persona espera a un punto de corte. | `user message during a task` / `recency` / `context window` | [読まない技術 第11回：口を挟まない技術](https://typing-tube.net/articles/6c6d2e4f80a649#6c6d2e4f80a649-e4cb60ea) |
| Al final de una sesión, no está decidido qué hay que leer y qué no | No leas el entregable ni el registro de trabajo: decide el resultado únicamente por el exit code de los tests 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 propuesta que ya se rechazó vuelve a aparecer en la siguiente sesión | Reúne cada decisión rechazada en un único documento, con un formato fijo. |  | [AIの意見を聞かない技術 第1回：提案を検討しない技術](https://typing-tube.net/articles/kikanai-01-no-review#kikanai-01-no-review-9e2b31e8) |
| Aunque se ha escrito una prohibición de una línea, se interpreta tanto de más como de menos | En el único documento que reúne las decisiones rechazadas (por ejemplo non_goals.md), añade un apartado de "motivo" a cada prohibición, junto a la conclusión. |  | [AIの意見を聞かない技術 第2回：禁止を書かない技術](https://typing-tube.net/articles/kikanai-02-reason#kikanai-02-reason-2973ce11) |
| La prohibición está bien escrita pero no se respeta, y cada vez alguien pregunta al respecto | En el documento de decisiones rechazadas, añade un apartado de "alcance" a cada prohibición y enumera, una por línea, los casos límite que generan dudas. | `gap between goal pressure and spec` / `rule-to-test mapping` | [AIの意見を聞かない技術 第3回：禁止ルールを作らない技術](https://typing-tube.net/articles/kikanai-03-scope#kikanai-03-scope-1db3e01a) |
| Al dar las mismas instrucciones a varios sub-agentes, cada uno devuelve el trabajo en una forma distinta | En la lista de tareas delegables a un sub-agente, indica explícitamente los archivos de entrada que deben prepararse antes del lanzamiento. | `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) |
| Las prohibiciones sin ningún test automatizado se acumulan sin ser más que texto en una página | En el documento de decisiones rechazadas, añade un apartado de "verificación automática" a la lista y marca, elemento por elemento, si existe un test automatizado (Minitest) correspondiente. | `probabilistic compliance (p^n)` | [AIの意見を聞かない技術 第5回：自動テストを書かない技術](https://typing-tube.net/articles/kikanai-05-machine-check#kikanai-05-machine-check-0f82d02b) |
| Cada trabajo de la IA termina con un "por favor, abre la pantalla y compruébalo" | Prepara un único smoke test con Playwright, y decide el resultado por el registro que queda en la base de datos, no por el aspecto de la pantalla. | `automatic error report from users` | [AIの意見を聞かない技術 第6回：AIの確認依頼を断る技術](https://typing-tube.net/articles/kikanai-06-production#kikanai-06-production-6c41de4e) |
| Cada vez que la IA dice algo ligeramente desviado, eres tú quien lo explica y lo corrige | En lugar de que una persona explique y corrija cada desviación, escribe la corrección en el stderr del hook (exit 2) y en los mensajes de fallo de los tests automatizados, para que ese sea el camino por el que llega a la IA. | `SendMessage (retry)` | [AIの意見を聞かない技術 第7回：AIの話を聞かない技術](https://typing-tube.net/articles/kikanai-07-no-listening#kikanai-07-no-listening-f900b392) |
| La lista de decisiones rechazadas sigue creciendo y parece que llegará un punto en que nadie la lea | Añade un apartado de "opciones no adoptadas" al final del documento de decisiones rechazadas, y registra ahí las propuestas rechazadas. | `MEMORY.md` / `context rot` | [AIの意見を聞かない技術 第8回：ルールを整理しない技術](https://typing-tube.net/articles/kikanai-08-no-inventory#kikanai-08-no-inventory-d72023ae) |
| Las líneas de "ejecuta esto siempre" del archivo de instrucciones nunca disminuyen | Usa un test automatizado que compruebe si cada comando que el archivo de instrucciones marca como "ejecutar siempre" existe también en 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) |
| Aunque se ha escrito exactamente cómo hacerlo, la corrección no vuelve hecha de ese modo | En lugar de dictar el procedimiento, define, para cada caso de uso, los archivos de entrada que deben existir antes de poder lanzar un sub-agente. | `per-mission guide document` / `presupposition` / `launch without a contract` | [言わない技術 第2回：具体的な指示を出さない技術](https://typing-tube.net/articles/iwanai-02-no-procedure#iwanai-02-no-procedure-e45dd403) |
| Reportar un bug significa escribir los pasos y los síntomas cada vez, tú mismo | Instala un formulario de reporte de bugs donde la persona solo escribe una frase describiendo el síntoma, y deja que JavaScript recoja automáticamente la URL, el historial de acciones y la información del navegador. | `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) |
| Escribir "primero dame un plan" cada vez es en sí mismo una tarea repetitiva | No hace falta ninguna implementación nueva. Coloca un único documento de diseño, y la IA leerá los documentos existentes y seguirá el mismo formato. |  | [言わない技術 第4回：計画を書けと言わない技術](https://typing-tube.net/articles/iwanai-04-no-plan-request#iwanai-04-no-plan-request-be44c158) |
| Las líneas que más se quiere que se cumplan son las que se escriben con más énfasis, pero no se sabe si eso ayuda | Deja de intentar medir el efecto: en su lugar, cuenta las líneas del archivo de instrucciones que usan énfasis y añade un test automatizado (un ratchet) que falle en cuanto ese número supere un umbral. | `emphasis count in CLAUDE.md` / `sycophancy` / `Dir.glob scan` | [言わない技術 第5回：念を押さない技術](https://typing-tube.net/articles/iwanai-05-no-emphasis#iwanai-05-no-emphasis-abb803f1) |
| El entregable de un sub-agente vuelve en una forma distinta a la esperada | Para cada caso de uso de sub-agente, define en un único documento los criterios de aceptación de su entregable: nombre de archivo, formato, campos obligatorios. | `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) |
| Encontrar un error da ganas de exigir: "¿de verdad leíste esto?" | En lugar de exigir una respuesta, fija la segunda frase de cada petición a la plantilla de pregunta "¿no es cierto que ...?". | `sycophancy` | [言わない技術 第7回：AI を問い詰めない技術](https://typing-tube.net/articles/iwanai-07-no-interrogation#iwanai-07-no-interrogation-293fc181) |
| Responder "eso no es" a la respuesta obtenida no la mejora en nada | En lugar de señalarlo tú mismo, presenta las prohibiciones sin alternativa mediante un hook PostToolUse, mostrado junto al diff justo después de guardar. | `SendMessage (retry)` / `guarded_by + marker` / `over-triggering` | [言わない技術 第8回：AI にダメ出ししない技術](https://typing-tube.net/articles/iwanai-08-no-criticism#iwanai-08-no-criticism-e4cb60ea) |
| La IA habla del contenido de un archivo como si lo hubiera abierto, sin haberlo hecho | Haz que la IA escriba markers correspondientes tanto en el documento referenciado como en el código, y verifica con un test automatizado que esos markers existen de verdad. | `hallucination` / `escape hatch (SKIP_*= / --no-verify)` / `marker` | [言わない技術 第9回：AI に考えさせない技術](https://typing-tube.net/articles/iwanai-09-no-guessing#iwanai-09-no-guessing-61ef1df2) |
| La IA sigue preguntando "¿A o B?" y el trabajo se detiene mientras decides | Deja de responder al momento: haz que la elección la decida un test automatizado o un hook. |  | [言わない技術 第10回：質問に答えない技術](https://typing-tube.net/articles/iwanai-10-no-answering#iwanai-10-no-answering-0efdc39b) |
| La IA está haciendo la revisión, pero no está claro qué es lo que no está mirando | Usa un test automatizado externo que cuente elementos para detectar cualquier test automatizado que recorra archivos pero no tenga una aserción de mínimo sobre el conteo (por ejemplo, assert_operator ... :>=). | `Minitest` / `vacuous truth` / `Dir.glob scan` | [言わない技術 第11回：AI にレビューをさせない技術](https://typing-tube.net/articles/iwanai-11-no-review#iwanai-11-no-review-659e23ad) |
| Las capturas de pantalla se acumulan, pero no está claro cuál verificó qué | Antes de mirar la pantalla, exige responder a dos preguntas — "qué se está verificando" y "por qué no basta un método más barato" — y mantén una guía de una página que priorice la opción más barata, en el orden test unitario → test de integración → 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) |
| Se puso un paso que exige dejarlo por escrito, pero no se puede contar cuántas ejecuciones lo saltaron | Antes de una captura de pantalla o un E2E, haz escribir un archivo de declaración que diga qué se va a verificar (por ejemplo tmp/visual_verification.md), convierte su existencia en una precondición de un hook PreToolUse, y que sin él no arranque ni la captura ni el E2E. | `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) |
| El mismo test vuelve a ejecutarse aunque el código no ha cambiado, y toca esperar igualmente | Añade una opción --last al script wrapper de tests que reproduzca el log anterior, para que no haga falta volver a ejecutar. | `--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) |
| No se rompió nada, y aun así aparece una fila de errores desconocidos | Haz que el script wrapper de tests tome un lock exclusivo (aprovechando la atomicidad de mkdir), y que se niegue a ejecutar si no puede obtenerlo. | `flaky failure` / `mkdir lock` / `concurrent test runs` | [確かめない技術 第4回：偽の失敗を読まない技術](https://typing-tube.net/articles/tashikamenai-04-false-failures#tashikamenai-04-false-failures-a29d752a) |
| Un informe que dice "los tests pasan" no menciona las partes que nunca se ejecutaron | Etiqueta los tests E2E pesados por nombre de área y omítelos (skip) por defecto, e imprime cada vez la lista de áreas que no se ejecutaron. | `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) |
| No hay forma de saber después si una instrucción que especificaba cómo proceder realmente se siguió | Cuando quieras que se siga un procedimiento, no refuerces la redacción de la instrucción: cámbiala para que seguir el procedimiento deje un rastro en el entregable (por ejemplo, imprimir una línea por cada archivo abierto). | `sycophancy` / `file existence check` / `tool_use count` | [動かさない技術 第1回：手順を守らせない技術](https://typing-tube.net/articles/ugokasanai-01-no-procedure-enforcement#ugokasanai-01-no-procedure-enforcement-129e096a) |
| Un wrapper que se puso en marcha se abandona a mitad de camino, volviendo al comando en bruto | Cuando quieras que se use el wrapper, no refuerces la instrucción: comprueba en su lugar si todavía queda un motivo para volver al comando en bruto, es decir, si al wrapper le falta alguna capacidad. | `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) |
| Hacer la misma pregunta repetidamente da una respuesta distinta cada vez, y resumir pierde algo | Antes de fusionar varias respuestas en una, imprime con qué frecuencia apareció cada tipo de hallazgo: cuántos de cuántos lo señalaron. | `one subagent run` / `answer key` | [動かさない技術 第3回：集めない技術](https://typing-tube.net/articles/ugokasanai-03-no-aggregation#ugokasanai-03-no-aggregation-f7af24f4) |
| No hay forma de saber si una línea que dice "haz X si hace falta" llegó a activarse alguna vez | No escribas instrucciones condicionales como "haz X si hace falta": impón ese paso con un hook que bloquee el avance hasta que se cumpla. | `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) |
| Decir "piénsalo de nuevo" cambia la respuesta, pero no está claro si la IA realmente quedó convencida | En lugar de devolverlo con un "piénsalo de nuevo", señala con precisión qué premisa es errónea. | `sycophancy` / `SendMessage (retry)` / `guarded_by + marker` | [動かさない技術 第5回：選び直させない技術](https://typing-tube.net/articles/ugokasanai-05-no-reselection#ugokasanai-05-no-reselection-88f30148) |
| Escribir "no adivines" hizo que la IA empezara a volver sin haber construido nada | No entregues solo una prohibición: acompáñala de una salida alternativa, como "si no aplica ningún caso, indica 'no aplica'". | `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) |
| Cuanto más se prolonga una conversación que va bien, más esfuerzo cuesta verificarla | Termina la sesión en cada límite de tarea, y empieza la siguiente tarea en una sesión nueva. | `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) |
| Todos los entregables son correctos, pero se va acumulando un desperdicio que nunca aparece en ellos | Una vez completados los entregables, ejecuta un script que analice, de una sola vez, el propio registro de trabajo (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) |
| Las notas dejadas para la siguiente persona se desincronizan de la realidad y quedan obsoletas | No dejes el conocimiento en un documento: incrústalo en el mensaje de fallo de un test automatizado o en el mensaje de parada de un hook, para que aparezca justo en el momento en que se necesita. | `handoff` / `MEMORY.md` / `mtime check` | [動かさない技術 第9回：知見を残さない技術](https://typing-tube.net/articles/ugokasanai-09-no-knowledge-notes#ugokasanai-09-no-knowledge-notes-cb7946f3) |
| Se sigue indagando en la causa, y la lectura continúa incluso después de encontrar la respuesta | Cuenta, a partir del registro de trabajo, las rachas de lecturas que no cambiaron nada, y escribe una condición de parada de una línea antes de empezar a indagar. | `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) |
| El modelo más barato se convierte en el predeterminado sin medir si realmente encaja con el uso | Dale la misma tarea al modelo barato y al modelo caro, y decide solo después de contar por separado los turnos hasta terminar y la cantidad leída de nuevo, reutilizada (cache read) y escrita. | `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) |
| Cuando algo no funciona, la solución a la que se recurre es subir de modelo, no mejorar el mecanismo | Dale la misma tarea al modelo más caro y al más barato, y convierte en una comprobación permanente los puntos donde solo falla el más barato. | `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 investigación que la sesión principal podría terminar sola se delega a un sub-agente por si acaso | Antes de delegar, comprueba si el agente padre ya tiene ese contexto. Si lo tiene, sigue en el agente padre; entrega a un sub-agente solo el grueso de la lectura que no tiene ya. | `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) |
| Por defecto se divide el trabajo en cuatro y se lanzan todos a la vez, sin más | Dale a cada sub-agente solo lo que pueda devolver en una sola respuesta. Lo que fija el costo no es cuántos sub-agentes hay, sino cuántas idas y vueltas hace cada sub-agente resultante de la división con el 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) |
| Un "mira esto también" se inyecta desde fuera a mitad del trabajo | Espera a un punto de corte natural del trabajo, y luego incorpora la petición adicional con el alcance reducido. Al preguntarle a la propia IA por carencias, añade siempre: "si es suficiente, dilo explícitamente". Así tiene una salida (escape hatch) y no necesita inventarse una carencia. | `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) |
| Se intenta decidir qué modelo usar comparándolos directamente entre sí | Antes de empezar a comparar modelos, cuenta a cuántos hooks o tests automatizados equivale el esfuerzo de esa comparación. Si puedes escribir más mecanismos que ese número, ponlos en marcha antes de comparar. | `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) |
| "No hubo diferencia" se usa como motivo para dar por cerrada la verificación | Antes de cerrar con "no hubo diferencia", cuenta dos cosas: si algún resultado quedó excluido del recuento (por ejemplo sub-agentes fallidos), vuelve a incluirlo y recuenta; si más de la mitad de los ítems da cero en todas las condiciones, reformula la tarea y mide de nuevo. | `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) |

---

Fuente: "Problemas al programar con IA, por síntoma (qué está pasando → qué hacer)" garplab (TypingTube) https://typing-tube.net/articles/es/lookup / CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
Puedes copiar, republicar, traducir y usar comercialmente esta tabla si citas la fuente. La versión más reciente y los artículos completos están en la URL de arriba.
