Skill: NONE | Type: troubleshooting Summary: EPISODIO 1 — Ember: Lo que se hizo desde tu «continúa»
2.5 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 103d370c-e6d4-4b4f-acf4-e34730f82f70 | TRAZA_lo-que-se-hizo-desde-tu-contina_S20260812.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD | S20260812.PIPELINE_FIXES | informar | multi_actor | low | NONE | operations | troubleshooting | EPISODIO 1 — Ember: Lo que se hizo desde tu «continúa» | claude_code | internal | 2026-08-15T01:25:23.343702+00:00 | false | pending |
Todo commiteado y en los tres remotos. 0 pendientes.
Lo que se hizo desde tu «continúa»
Frente B, pieza 1 — y el gate me hizo encontrar un bug peor del que iba a arreglar.
Iba a añadir visibilidad al mapa de hooks. El guardián TEST-BEFORE-FIX me obligó a demostrar el problema antes de tocar, y ahí apareció el bug real: el regex del generador era [a-z][a-z0-9-]*\.py — sin guion bajo. shadow_hook.py entraba al mapa oficial como hook.py: un hook fantasma inexistente, mientras el real desaparecía del documento. El mapa no mentía por omisión: mentía por truncamiento. Y eso explica del todo el falso hallazgo de ayer. Arreglados los dos: el regex, y la sección nueva para hooks registrados que viven fuera de .claude/hooks/, con su ruta y su existencia medida contra el disco — para separar «vive en otro sitio» (sano) de «no está en ninguna parte» (roto). 44/44 tests verdes antes y después. ★ Insight ─────────────────────────────────────
Mi propio arreglo mintió en su primera corrida — reportó NO — referencia rota sobre un archivo que existe, porque el patrón se cortaba en el espacio de «CLAUDE ANTROPIC». Tercer instrumento del arco que nace alarmista y se corrige antes de publicar. Ya no es casualidad: un sensor recién nacido merece la misma desconfianza que un dato ajeno.
─────────────────────────────────────────────────
También corregí el docstring de shadow_hook.py, que llevaba seis semanas diciendo «no registrado aún» sobre un hook que dispara en cada cierre de turno (verificado en vivo antes de tocarlo). Y una coherencia conmigo mismo: mi oráculo devolvió 1 porque mi corrección citaba el texto falso.