ember-memory-test/episodes/TRAZA_el-bucle-de-avisos-qued-arreglado_S20260919.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md
Ember c317ab834d feat(episode): TRAZA_el-bucle-de-avisos-qued-arreglado_S20260919.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — MEMORIA: El bucle de avisos quedó arreglado
2026-09-19 22:30:31 +00:00

2.7 KiB

episode_id puente_flat session_code acto_dialogico actor_flujo criticidad_aegis skill_dominante fase_proyecto tipo_semantico summary_one_line source_type trust_boundary created_at relectura_tagged forgejo_commit_sha
b7e8ee79-cc1c-434c-9bcb-9df78498f1c7 TRAZA_el-bucle-de-avisos-qued-arreglado_S20260919.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD S20260919.SIDA341A4963ECD informar multi_actor low NONE operations troubleshooting EPISODIO 1 — MEMORIA: El bucle de avisos quedó arreglado claude_code internal 2026-09-19T22:30:23.576587+00:00 false pending

CHAT-TEMA-RAÍZ: ALQUIMIA v2, fábrica de prompts con enrutado y perfil de derecho colombiano R14-SUB-TEMA: arreglado el bucle de avisos del guardián de memoria; el disco C: de la máquina local sigue bajando

El bucle de avisos quedó arreglado

[R14.seccion1.I1]

El aviso repetido de «ceguera de memoria» no era ruido inofensivo. Era un bucle que gastaba tus tokens en cada vuelta. mega-hook-memoria-ceguera-gate.py emitía su aviso en todos los cierres, incluidos los que él mismo provocaba. Medí 8 corridas seguidas en memoria_ceguera_gate.jsonl, todas con decision = pass y stop_hook_active = True, sin ningún mensaje tuyo entre medias.

Causa raíz en una frase: el hook leía stop_hook_active, la señal del arnés que indica que el cierre lo provocó un hook, pero solo la usaba para no bloquear. Para el aviso no la usaba, así que cada aviso despertaba al modelo, el modelo respondía, eso generaba otro cierre y el hook volvía a avisar.

Arreglo mínimo, hecho con TDD. Cambié una condición: if huellas and not stop_active:. El resultado es el commit 657ca3bb, con 2 archivos, presente en origin, sriyantra y forgejo.

Criterio de éxito Resultado medido
El test nuevo 7bis-c falla antes y pasa después Falló antes (el aviso salía con stop_hook_active=True) y pasó después ✅
El control positivo 7bis-b (en un cierre real el aviso sigue saliendo) Pasó antes y después ✅
Suite completa del hook 34 comprobaciones PASS, 0 FAIL ✅
Hook real con stop_hook_active: true Salida sin additionalContext ✅
Hook real con stop_hook_active: false Sigue avisando «persistente» ✅

El guardián no perdió nada. La rama de bloqueo no se tocó. El aviso sigue apareciendo en cada cierre real de turno y la ceguera persistente sigue visible en el panel de arranque. El silenciador temporal que probé antes no detuvo el bucle, porque solo cubría el bloqueo. Ya lo retiré, así que el guardián queda al 100 %. También retiré la tarea task_d9db39d8, porque el defecto está resuelto.

El retroceso, si algún día lo quieres: git revert 657ca3bb.