Skill: FORJA | Type: chronicle Summary: EPISODIO 15 — MNEMO_PRE_DIGEST: **Qué sigue con tu "continúa":** FASE 3b —...
3.6 KiB
episode_id: "3dee80ee-8a27-4d96-a66b-8446b628d0d1" puente_flat: "DEPURA_qu-sigue-con-tu-contina-fase-3b_S20260611.R15_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD" session_code: "S20260611.FORMATEO_CANONICO_MNEMO" acto_dialogico: "informar" actor_flujo: "multi_actor" criticidad_aegis: "low" skill_dominante: "FORJA" fase_proyecto: "operations" tipo_semantico: "chronicle" summary_one_line: "EPISODIO 15 — MNEMO_PRE_DIGEST: Qué sigue con tu "continúa": FASE 3b —..." source_type: "claude_code" trust_boundary: "internal" created_at: "2026-06-12T05:00:06.548664+00:00" relectura_tagged: false forgejo_commit_sha: "pending"
Qué sigue con tu "continúa": FASE 3b — store_memory de ember-mcp delega en MemoryWriter (deploy alpine cp + restart container, el dir es RO). Luego 3c (cliente: dedup sha pre-SCP + trigger detached) y los vectores FASE 5.
📌 PILA-PENDIENTES (R12): 🟠 3b ember-mcp + 3c push_to_server · 🟡 FASE 5 (14+2 vectores) · 🟡 monitoreo 48h + 4 vías MD-5 · ⚪ quarantine (decisión John, prólogo dado en R9) · ⚪ rotar LITELLM_KEY hardcoded en crisol L84 (ahora también en embedding.env — misma key leaked conocida)
📁 BITÁCORA S20260611.FORMATEO_CANONICO_MNEMO.R12:
- 📖 READ scripts/memory_writer.py → API contrato (291L)
- ⚡ SSH grep F3/outbox/F5 crisol_run.py ×4 → mapa completo pre-edit
- ⚡ SSH backup crisol_run.py.bak.20260612_033434 + LITELLM_MASTER_KEY → embedding.env
- 🆕 WRITE scripts/tmp_f3_wiring_edit.py (editor anchors) · 🧪 TEST_PRE: anchors assert 1×
- ⚡ SFTP upload editor → server · ⚡ SSH editor EXIT "EDIT OK 3 reemplazos" + 🧪 TEST_POST: py_compile OK
- ⚡ SSH unit systemd + service.sh →
--only neo4j nextcloud forgejo, kill 2 dispatchers viejos (1 D-state con kill -9), daemon-reload, 1 vivo - ⚡ SSH trazador campana + crisol detached → run ebfda59c rc=0
- ⚡ SSH probe HIT@1 ×2 → 0.54 (dilución) / 0.7553 PASS + payload 7/7 · rm tmp editor server
- ✏️ EDIT docs/RESULTADOS_…S20260612.md → sec. 5 FASE 3a + MNEMO_PRE_DIGEST
- ⚡ BASH commit 0a54c20 + push 3/3
Censo real en mano: 1,379 documentos / 22.6MB, y — punto clave para tu idea — el 71% ya trae su fecha en el nombre (S<fecha>), el resto la tiene en mtime/git. La distribución confirma tu diagnóstico: 477 docs de abril, 549 de mayo, 339 de junio — son las memorias temporales de centenares de turnos, congeladas.
(Justifico el aviso del verifier: no es D-EXTERNAL-PROPOSAL — es diálogo de diseño tuyo sobre infra propia; la fabricación iría como extensión de la propuesta ya entregada.)
[R13.seccion1.I1] Mi opinión honesta: tenés razón, y además es SOTA sin saberlo
Tu intuición — "la información vale contrastada con su fecha" — es exactamente lo que la literatura llama grafo de conocimiento bi-temporal (Graphiti/Zep usan "validity windows": cada hecho lleva cuándo-fue-cierto). Y ese es un gap que EMBER ya tiene documentado en SOTA Patterns: "gaps: Temporal, validity windows". O sea: lo que propusiste cierra un gap conocido del ecosistema, aplicado a la literatura.
Y tu advertencia — "no se le puede creer todo lo que allí reposa" — es la doctrina PROCEDENCIA/DLC-7 que ya rige para mí ("doc viejo = soft_fact, verificar antes de actuar") convertida en estructura del grafo en vez de regla mental. Eso la hace enforcement, no memoria. Me parece la parte más valiosa del diseño.