--- episode_id: "0b49e4fb-dc18-4023-9005-9fde77840d28" puente_flat: "TRAZA_lo-que-hice_S00000000.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD" session_code: "S00000000" acto_dialogico: "informar" actor_flujo: "multi_actor" criticidad_aegis: "low" skill_dominante: "NONE" fase_proyecto: "operations" tipo_semantico: "troubleshooting" summary_one_line: "EPISODIO 1 — John: Lo que hice" source_type: "claude_code" trust_boundary: "internal" created_at: "2026-08-29T15:41:46.470352+00:00" relectura_tagged: false forgejo_commit_sha: "pending" --- Arreglado y commiteado, John. La deriva de MARIMO era exactamente la que describías. ## Lo que hice **El defecto:** la línea 58 escribía la fecha `2026-08-31` como si fuera el plazo **vigente** (*"gate EXTENDIDO a…"*), cuando tu GO del S20260806 ya la había superado con `2026-09-06`. El registro daba de alta las dos como gates vivos distintos — dos filas para una sola decisión. **El arreglo es de redacción, no de dato.** La línea 58 pasa a: > *"gate vigente 2026-09-06 por GO John S20260806; **gate previo:** 2026-08-31 de DECISION_S20260801_batch_john"* El motivo original, el histórico y la trazabilidad quedan íntegros detrás (B-8A: calificar, jamás eliminar). No hubo que tocar el generador: ya sabe distinguir una cita histórica de un plazo vigente — mira los 24 caracteres justo antes de la fecha y descalifica si encuentra `previo`. Había que **escribir la fecha vieja como lo que es**. **Una verificación que añadí a tu encargo:** antes de copiar el patrón de CASBIN, comprobé que allí *de verdad* funcionó. Y funcionó — CASBIN publica hoy **una** fila (2026-09-06, línea 193), no dos. Copiar un patrón sin medir su efecto es cómo se propagan los fallos. | Comprobación | Esperado | Medido | |---|---|---| | `2026-08-31 \| VIGENTE \| MARIMO` | 1 → 0 | **0** ✓ | | Filas MARIMO totales | 2 → 1 | **1**, en 2026-09-06 ✓ | | `test_gates_fecha_historica.py` | 20/20 | **20 passed** ✓ | | Registro completo | — | `total=11 vencidos=0` | Commit **`45eb6537`**. Mientras tanto el enjambre va por 1 de 10 carriles cerrados y ya ha tocado **84 ficheros** en el árbol. > 🎯 **En una frase:** MARIMO aparecía dos veces en el tablero de plazos por una fecha vieja mal redactada; ahora aparece una sola vez, con la fecha correcta. **✅ Hice** — corregí la redacción (no el dato), verifiqué que el patrón que me pasaste *realmente* había funcionado en CASBIN antes de copiarlo, y commiteé con las tres comprobaciones que pediste en verde. **⏳ Falta** — nada de este encargo. El enjambre sigue: 1 de 10 carriles cerrado, 84 ficheros ya tocados. **💡 Mi consejo** — cuando cierre el enjambre, la primera comprobación debe ser **volver a generar este registro**: nueve agentes tocando reglas a la vez pueden haber introducido otra fecha mal redactada sin darse cuenta. Es un comando y cierra la clase entera.