feat(episode): TRAZA_dos-de-tres-cerradas-y-una-tercera-en-v_S20260807.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — MNEMO_PRE_DIGEST: Dos de tres cerradas — y una tercera en vuelo
This commit is contained in:
Ember 2026-08-08 03:37:52 +00:00
parent 499b6ac420
commit b1d3cfeac2

View file

@ -0,0 +1,50 @@
---
episode_id: "afc9bbd0-0211-496a-9f47-74f20e75f739"
puente_flat: "TRAZA_dos-de-tres-cerradas-y-una-tercera-en-v_S20260807.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260807.DOCS_MNEMO_FUENTE_VIVA"
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: Dos de tres cerradas — y una tercera en vuelo"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-08-08T03:37:48.975727+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Mientras el harness corre no toco nada: muta archivos temporalmente y cualquier escritura o `git add` en paralelo capturaría un mutante. Te dejo el avance verificado hasta ahora.
## Dos de tres cerradas — y una tercera en vuelo
**H-01 resultó ser un bug real, no un olvido.** Al re-anexar la evidencia como Fable indicaba, el comando **devolvió éxito con el campo todavía vacío**. Fui al código: el guardado de evidencia vivía dentro del bloque `if estado == "HECHA"`, así que en cualquier otro estado los datos se aceptaban por línea de comandos y se tiraban en silencio.
| Antes del fix | Después |
|---|---|
| `SA-4-3 evidencia: NULL` | `SA-4-3 evidencia: POBLADA` |
| `SA-4-4 evidencia: NULL` | `SA-4-4 evidencia: POBLADA` |
Separé **validación** de **persistencia**: «HECHA exige evidencia» sigue intacto; ahora cualquier estado puede guardarla. Y nació la suite del tablero: **7 tests en verde**, incluido el que fija que una tarea bloqueada pueda decir *por qué* lo está.
**H-06 estaba mal diagnosticado.** Fable pidió corregir el skill SHERPA. Fui a medirlo: el skill **ya estaba bien** — línea 566 exige el vocabulario correcto, líneas 558/581 ya declaran `AUDIT_MANIFEST` obligatorio con schema versionado. **El defecto era mío**: escribí un contrato propio en vez de copiar la plantilla. Corregido en el briefing, que vuelve a pasar el gate: **PASS, 6.090 tokens, 0 violaciones**.
`★ Insight ─────────────────────────────────────`
**El auditor cometió, en su remediación, el error que su veredicto castiga:** afirmó dónde estaba el defecto sin re-ejecutar. Por la regla ESPEJO los errores del auditor también puntúan, así que queda registrado como hallazgo contra él.
**Verificar antes de "arreglar" evitó romper lo único sano de los tres.** Si sigo la remediación al pie de la letra, habría editado un skill correcto.
`─────────────────────────────────────────────────`
**H-02 en ejecución:** el harness de mutación ya existe y está corriendo sus 3 mutaciones. Se auto-impone tres garantías: restaura verificando por huella (no confía), **denuncia si un mutante toca producción** —que es la garantía que pedía el otro hallazgo— y reporta `LITERAL_AUSENTE` si no encuentra qué romper, en vez de dar verde sin haber mutado.
**Hice** — H-01 (con bug real de fondo cazado y arreglado) y H-06 (re-diagnosticado). El harness de H-02 está corriendo.
**Falta** — el veredicto del harness. En cuanto termine, commiteo las tres juntas y te doy el número.
**Mi consejo** — ninguno pendiente ahora; sigo en cuanto el harness reporte. Nada que decidas todavía.
bug de persistencia en tablero_sn.py | H-06 --APUNTABA_AL--> lugar equivocado (el skill estaba sano) | error del auditor --SE_REGISTRA_BAJO--> ESPEJO EO-3 | harness --DA_GARANTIA_MECANICA_A--> H-03
negated_concepts: la evidencia faltante NO fue un olvido del ejecutor; el skill SHERPA NO estaba defectuoso; no se commitea mientras el harness corre
epistemic_summary: hard_fact = el bug localizado en el codigo, las dos filas ahora POBLADAS, los 7 tests verdes, el gate PASS con 6.090 tokens y las lineas exactas del skill | pendiente_de_medicion = el veredicto del harness de mutacion, que estaba en ejecucion al emitir
-->