--- episode_id: "23779586-abb3-490c-a8cd-f76df2579fea" puente_flat: "TRAZA_estado-8-de-9-tems-del-ciclo-4-cerrados_S20260725.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD" session_code: "S20260725.SHERPA_FABLE_AUTOMEJORA" acto_dialogico: "informar" actor_flujo: "multi_actor" criticidad_aegis: "low" skill_dominante: "NONE" fase_proyecto: "operations" tipo_semantico: "troubleshooting" summary_one_line: "EPISODIO 1 — MNEMO_PRE_DIGEST: Estado: **8 de 9 ítems del ciclo 4 cerrados**, el noveno cor" source_type: "claude_code" trust_boundary: "internal" created_at: "2026-07-26T05:39:23.724090+00:00" relectura_tagged: false forgejo_commit_sha: "pending" --- Trabajo respaldado (`e844b08d`). Te doy el estado mientras el examen termina de generarse: ## Estado: **8 de 9 ítems del ciclo 4 cerrados**, el noveno corriendo Desde tu "continúa": cerré los dos que quedaban pendientes y aparecieron dos hallazgos que valen más que el trabajo en sí. **C4-04 — la prueba con datos reales encontró un bug que los mocks no veían.** Exporté 100 hechos auténticos del canon y corrí el writer contra ellos: **crasheó**. Causa: el campo `ref` del canon vivo es un **contador** (entero en 99 de 100 puntos), no la lista que decía la especificación. Lo grave era el modo de fallo: el error ocurre dentro de un `try/except` por hecho, así que **no habría roto nada visible — habría fallado en silencio en cada consolidación**, y los hechos multi-fuente jamás se habrían unido. Corregido de forma conservadora: los datos nuevos van a un campo aparte y `ref` no se toca nunca. Esto es exactamente lo que el auditor predijo (H-02) y por lo que valía la pena hacerlo antes de tu decisión del 28. **C4-07 — el test resultó tener dientes de verdad.** Corrí el test contra el sensor viejo: **11 fallan**; contra el arreglado: **12 pasan**. No es un test que se aprueba solo. (Mi primer intento de esa prueba fue inválido y lo dejé escrito: extraje una versión que ya tenía el fix.) **C4-02 — en curso ahora mismo:** el servidor está reescribiendo tus 109 ítems con otras palabras, usando un modelo distinto al de embeddings. Con esas paráfrasis, el examen ya no puede dar 1.0 por construcción: medirá si Ember **recuerda** o solo reconoce el texto que le indexamos. El constructor tiene 8 tests, y su oráculo me cazó a mí: dos de mis cinco expectativas calculadas a mano estaban mal y el código tenía razón. Te aviso en cuanto tenga el número del examen U-v2 — es el que de verdad responde tu mandato. ⛽ 🟡 | commits hasta `e844b08d` push 3/3 · branch `writer_v12_design` 3 commits