feat(episode): TRAZA_lo-que-se-hizo-desde-tu-contina_S20260812.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — Ember: Lo que se hizo desde tu «continúa»
This commit is contained in:
Ember 2026-08-15 01:25:27 +00:00
parent 6d6c7bc30e
commit 5eafc4d77f

View file

@ -0,0 +1,29 @@
---
episode_id: "103d370c-e6d4-4b4f-acf4-e34730f82f70"
puente_flat: "TRAZA_lo-que-se-hizo-desde-tu-contina_S20260812.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260812.PIPELINE_FIXES"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "NONE"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 1 — Ember: Lo que se hizo desde tu «continúa»"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-08-15T01:25:23.343702+00:00"
relectura_tagged: false
forgejo_commit_sha: "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.