feat(episode): DEPURA_t2-de-statefact-task-06c90c89-commit-2e4_S20260927.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — MEMORIA: T2 de statefact (task 06c90c89): commit 2e4f82b0
This commit is contained in:
Ember 2026-10-05 02:12:40 +00:00
parent e61cdda102
commit c901bd5cd6

View file

@ -0,0 +1,43 @@
---
episode_id: "404e1065-9c88-4bf2-b2ca-d7aa2528fc67"
puente_flat: "DEPURA_t2-de-statefact-task-06c90c89-commit-2e4_S20260927.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260927.SIDF32B27DEFD6D"
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: T2 de statefact (task 06c90c89): commit 2e4f82b0"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-10-05T02:12:24.569475+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Terminé las dos tareas que seguían abiertas: el arreglo de T2 en el guardián de hechos-de-estado y el informe de la passphrase. Las dos están guardadas en los 3 remotos (forgejo, origin y sriyantra).
## T2 de statefact (task_06c90c89): commit `2e4f82b0`
T2 vigila los comandos de terminal y avisa cuando uno **escribe** un fichero de estado (`MEMORY.md`, `estado_vivo.json`…). Cada aviso marca el estado como «sucio» y adelanta el sondeo SSH al servidor.
| Sobre 2142 comandos reales tuyos | Antes | Ahora |
|---|---|---|
| Avisos | 1343 (63 %) | **139** |
| Escrituras reales que no veía (confirmadas por agentes) | 51 | **5** |
- **Falsos positivos:** el detector viejo avisaba con solo *nombrar* el fichero junto a algo como `2>&1`. Ahora la escritura tiene que apuntar al fichero.
- **Escrituras que se le escapaban:** casi todas eran guiones de Python que guardan la ruta en una variable (`p = 'docs/estado_vivo.json'` … `open(p,'w')`). Ahora sigue esa variable. También reconoce `patch`, `scp` y la escritura a través de un subshell.
- **Las 5 que siguen sin verse**, a propósito, porque el destino no aparece en el texto del comando: 2 `git apply`, 2 guiones invocados por nombre y 1 bucle sobre tuplas.
- **Comprobado:**
- 96 casos de prueba, cada uno en rojo antes de su arreglo;
- 154 pruebas de las baterías vecinas en verde;
- 38 de 38 mutantes detectados;
- el `data/` real no se tocó.
## Informe de la passphrase (task_6918731d): commit `00ac6011`
El revisor independiente confirmó el diagnóstico y yo apliqué sus 7 correcciones. Volví a medir lo importante: la marca de la sesión de Notepad++ coincide con la hora de modificación del secreto hasta los 100 ns. **La frase correcta sigue en la línea 1**, y alguien guardó 17 líneas debajo desde Notepad++, casi seguro. El servidor tiene su propia copia, que no se vio afectada; por eso el portón se sigue abriendo solo.
**Un incidente del revisor:** por error abrió tu Notepad++ (`notepad++.exe --version`) y lo cerró enseguida. No se creó ningún fichero y el secreto está intacto. Al cerrarse, Notepad++ reescribió su fichero de sesión. Según el revisor el contenido quedó igual; yo solo comprobé que la pestaña del secreto conserva su marca de tiempo.