feat(episode): DEPURA_el-frente-que-elegiste-queda-cerrado-el_S20260827.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — MEMORIA: El frente que elegiste queda cerrado. El sensor...
This commit is contained in:
Ember 2026-08-27 18:46:10 +00:00
parent a96c10802d
commit 3a6d562583

View file

@ -0,0 +1,40 @@
---
episode_id: "14fba38d-ae20-4385-b0c4-ff0f97da281a"
puente_flat: "DEPURA_el-frente-que-elegiste-queda-cerrado-el_S20260827.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260827.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 — MEMORIA: El frente que elegiste queda cerrado. El sensor..."
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-08-27T18:46:07.556224+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
El frente que elegiste queda cerrado. El sensor que llevaba meses declarando **±46 de margen** ya no adivina: mide.
La raíz era la de siempre: **adivinaba leyendo el código fuente** —"¿el fichero menciona `additionalContext`?"— que declara una *intención*, no un *suceso*. Su propio comentario ya confesaba lo peor: los dos proxies daban el mismo total coincidiendo solo en 23 de 62 casos. Cuadraban por casualidad, con dos errores compensándose.
Y casi entrego una regresión grave: ese módulo corre en **cada cierre de turno**, y mi primera versión barría 103 transcripts — **27,6 segundos y 792 MB por turno**. Medirlo antes de entregarlo fue la diferencia entre una mejora y un desastre. Ahora lee solo la sesión en curso: 0,04 s, y la historia completa queda disponible bajo demanda.
`★ Insight ─────────────────────────────────────`
- Los dos proxies **no se retiran**: cubren a los hooks que nunca llegaron a dispararse, que el transcript no puede ver. Cada señal tapa el punto ciego de la otra.
- Los 53 no observados se cuentan como `sin_observar`, **no como culpables**: con este dato no se puede distinguir "mudo" de "nunca se disparó", así que no se finge que sí.
- Mis propios tests cazaron dos errores míos: llamé `hecho` a un parámetro cuando `hecho` ya era una variable del bucle, y tras mudar el código el control positivo apuntaba al sitio equivocado — *un control positivo mal apuntado se lee como verde*.
`─────────────────────────────────────────────────`
> 🎯 **En una frase:** el aviso del arranque que llevaba meses diciendo "±46 de margen" ahora te da un número real medido, y de paso descubrí que casi le meto medio minuto de retraso a cada respuesta tuya.
**✅ Hice**
- **17 commits** hoy, los tres remotos sincronizados, **75 tests** de la sesión en verde.
- El agregador se queda hablando, como elegiste — con freno de una sola voz.
- El sensor de directivas **mide** en vez de suponer, y el dato **llega hasta la línea que lees** (antes se quedaba en un fichero: un sensor cuyo dato no llega a nadie es un log, no un sensor).
- Coste del cierre de turno medido y acotado: **1,4 s** en total.
- El único drift que queda es el del servidor sin cortafuegos, que **no se toca a propósito**.