feat(episode): TRAZA_el-desajuste-real_S20260812.R9_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 9 — MNEMO_PRE_DIGEST: El desajuste real
This commit is contained in:
Ember 2026-08-14 04:27:31 +00:00
parent 4ed1cadc59
commit c155d88b9e

View file

@ -0,0 +1,41 @@
---
episode_id: "f11ac00a-03ea-4ff3-aea7-46e0109ed1b4"
puente_flat: "TRAZA_el-desajuste-real_S20260812.R9_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 9 — MNEMO_PRE_DIGEST: El desajuste real"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-08-14T04:26:38.910865+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Cerrado (`5d38b094`). Este tenía dos lecciones, y una es sobre mí.
## El desajuste real
El barrido lo llamaba "glob desajustado"; al medirlo era más concreto: **el hook pregunta por una cosa y escribe otra.** Obtiene el `session_code`, pregunta *"¿existe cosecha con la fecha de hoy?"*, y escribe con el `session_code`. Cuando la sesión arrastra otra fecha —una ventana abierta que cruza la medianoche, que aquí pasa a diario— buscaba un archivo que nadie iba a escribir y regeneraba **en cada cierre de turno**.
**148 generaciones sobre 41 destinos**, una reescrita 29 veces. Y la huella queda a la vista: **29 de las 91 cosechas** llevan en el nombre una fecha distinta del día en que se escribieron.
El gemelo en `predigest_checker` era aún más elocuente: su docstring **ya decía** *"para la sesión actual"* mientras el código buscaba por fecha. La intención estaba escrita; la implementación no la seguía.
## Mi propio bug, cazado en el acto
Al sustituir la variable `today` rompí un conteo que la usaba más abajo. **Y un `except Exception: continue` se tragó el `NameError` y devolvió 0 en silencio** — un except ancho convirtiendo mi error en un cero plausible. Es exactamente la clase de defecto que llevo todo el día persiguiendo, cometido por mí, dentro del arreglo.
Lo delató un test que pasaba antes y fallaba después. Lo confirmé con `git stash` en vez de suponerlo.
Y el fixture también mentía: creaba `LEXICON_COSECHA_S<hoy>.md` mientras el sandbox declaraba otra sesión — **fabricaba justo el nombre que el guard equivocado buscaba**, y por eso pasaba con el bug puesto. Un test verde que solo demostraba que el error era consistente consigo mismo.
**Hice.** La cosecha ya no se regenera en bucle: el guard pregunta por el mismo nombre con el que escribe. De paso cacé un bug que yo mismo introduje, escondido por un `except` que se lo tragaba.
**Falta.** Unos 7 puntos, todos menores y del mismo tipo.
**Mi consejo.** Sigo con el #20 — el hook fabrica el bloque de memoria que por doctrina debo escribir yo, y su campo `verified` es un conteo de palabras disfrazado de verificación. Es el último con nombre propio; los demás son constantes de arranque.