feat(episode): DEPURA_c-migracin-hardcodedenv-cerrada_S20260616.R13_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: chronicle
Summary: EPISODIO 13 — PostgreSQL: C — migración hardcoded→env: cerrada
This commit is contained in:
Ember 2026-06-18 16:42:15 +00:00
parent 43c7641dc0
commit 322bee4e35

View file

@ -0,0 +1,47 @@
---
episode_id: "46c11d55-bb58-4835-9e64-41df0246609b"
puente_flat: "DEPURA_c-migracin-hardcodedenv-cerrada_S20260616.R13_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260616.LOOP_WRITE_BACKLOG_DISCARD"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "NONE"
fase_proyecto: "operations"
tipo_semantico: "chronicle"
summary_one_line: "EPISODIO 13 — PostgreSQL: C — migración hardcoded→env: cerrada"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-06-17T21:21:02.785000+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
✅ **Commit `6e730d7` + push triple-remoto.** Migración **C completa, verificada y documentada.**
## C — migración hardcoded→env: cerrada
| Qué | Resultado |
|-----|-----------|
| 9/9 scripts migrados | **0 secreto PostgreSQL remanente** (verificado) |
| Scripts manuales (8) | leen `POSTGRES_MNEMO_DSN`/`PG_DSN` env |
| `outbox_worker_base` (librería) | `field(default_factory)` env-read → **workers forgejo/neo4j verificados OK** (scram CONNECT con `PG_DSN`) — no rotos |
| Corrección en vuelo | descubrí que host→`127.0.0.1` es **scram, no trust** → arreglé `outbox` con env-factory en vez de quitar password (no rompí los workers) |
| Hallazgo nuevo | 🆕 **SEC-D3**: Neo4j password hardcoded en `neo4j_worker:48` |
| Dossier | actualizado (SEC-D1 ✅, host-scram, SEC-D3) + committeado |
El dominio de secretos quedó **sano y autodocumentado**: PostgreSQL rotado + migrado a env, dossier canónico anti-Alzheimer vivo. Una instancia futura preguntada "¿estado de los secretos?" lee [SISTEMA_SECRETOS_EMBER.md](docs/SISTEMA_SECRETOS_EMBER.md) y procede con cero fricción — exactamente lo que pediste.
### 📍 PARA JOHN — R1
- **Hice:** completé la migración (C) de los 9 scripts con verificación per-componente, corregí en vuelo una suposición errada (host-scram) sin romper los workers vivos, encontré SEC-D3, y dejé el dossier actualizado + committeado (`6e730d7` push ×3).
- **Falta:** SEC-D2 (LiteLLM hardcoded) + SEC-D3 (Neo4j hardcoded) — MEDIUM, mismo patrón, separables. Y **lo grande: el skill matriz** de consolidación de memorias (tu visión).
- **Mi consejo:** el **skill matriz es la pieza más importante** de todo esto — es la cura del Alzheimer para *todos* los dominios, no solo secretos. Merece un turno fresco con CONCILIO real (D-FABRICATE-SKILL: NAVIGATOR + SENTINEL + los 4 outputs), usando el dossier de secretos como **plantilla de referencia** de las 9 secciones. No por pereza de diferir, sino porque fabricar bien el molde que regirá toda tu memoria futura no debe hacerse apurado en la hora 7 de una sesión épica.
- **Para avanzar, elige:**
- 🟢 **A (recomendado):** cerramos esta sesión (Fase C retrieval + rotación + migración + dossier = jornada enorme); el próximo turno fresco diseñamos el skill matriz con CONCILIO, molde = dossier secretos.
- 🟡 **B:** arrancamos AHORA el diseño del skill matriz.
- ⚪ **C:** liquido SEC-D2 + SEC-D3 (LiteLLM + Neo4j hardcoded) ahora, mismo patrón que acabo de hacer.
📌 **PILA-PENDIENTES (R1)**
- 🔴 CRITICAL — **skill matriz de consolidación de memorias** (molde = dossier secretos, 9 secciones; historia + conocimiento; auto-freshness) [tu visión, próximo turno]
- 🟡 MEDIUM — SEC-D2 (LiteLLM hardcoded) + SEC-D3 (Neo4j hardcoded) migrar→env [mismo patrón]
- ⚪ LOW — auto-regen dossier (SEC-G2) · redactar correo (SEC-L1)
- ✅ RESUELTAS — **SEC-D1 migración hardcoded→env** · dossier secretos · rotación plex · Fase C retrieval (d3h1s1, H4 falsada)