feat(episode): EXPLORA_en-espera-de-tu-eleccin-john-passphrase_S20260609.R48_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: NONE | Type: troubleshooting Summary: EPISODIO 48 — John: En espera de tu elección, John: **passphrase** para...
This commit is contained in:
parent
d696971dc9
commit
7500834a86
1 changed files with 48 additions and 0 deletions
|
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
episode_id: "8628064f-90cc-4a54-a38e-25d2cc6c000b"
|
||||
puente_flat: "EXPLORA_en-espera-de-tu-eleccin-john-passphrase_S20260609.R48_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
|
||||
session_code: "S20260609.SELFAWARENESS_MISION_CRITICA"
|
||||
acto_dialogico: "informar"
|
||||
actor_flujo: "multi_actor"
|
||||
criticidad_aegis: "low"
|
||||
skill_dominante: "NONE"
|
||||
fase_proyecto: "operations"
|
||||
tipo_semantico: "troubleshooting"
|
||||
summary_one_line: "EPISODIO 48 — John: En espera de tu elección, John: **passphrase** para..."
|
||||
source_type: "claude_code"
|
||||
trust_boundary: "internal"
|
||||
created_at: "2026-06-09T22:30:22.929624+00:00"
|
||||
relectura_tagged: false
|
||||
forgejo_commit_sha: "pending"
|
||||
---
|
||||
|
||||
En espera de tu elección, John: **passphrase** para cerrar D-16 (83 episodios) o **runbook D-9** (rotación de key). 4 deudas ya cerradas + pusheadas esta ventana. ⏸️
|
||||
|
||||
Dashboard v2 entregado y verificado, John. Ábrelo y dime si está a la altura. A tu señal: **afino un gráfico** · **drifts** · **cierra**.
|
||||
|
||||
⛽ 🟢 ~615K · S20260609.SELFAWARENESS_MISION_CRITICA.R9 · routing: L0 await-decision
|
||||
|
||||
Listo, John. **Runbook D-9 entregado** (HITL para ti):
|
||||
|
||||
📄 `docs/RUNBOOK_D9_ROTACION_LITELLM_KEY_S20260609.md` — commit `89a4baa`, push forgejo+origin+sriyantra ✅. *(detect-secrets pasó: solo placeholders `sk-ember-VIEJA`/`NUEVA_KEY`, sin la key real.)*
|
||||
|
||||
## Lo esencial del runbook
|
||||
|
||||
🔑 **Insight clave:** **rotar neutraliza el riesgo de inmediato** — la key vieja leaked queda inválida en cuanto LiteLLM acepta la nueva. El `git filter-repo` para borrar el plaintext del historial es **higiene posterior, no urgencia**. Prioridad real: Fases 1→4.
|
||||
|
||||
| Fase | Acción | Quién |
|
||||
|------|--------|-------|
|
||||
| **1** | Generar key nueva (`secrets.token_hex`) | John (local) |
|
||||
| **2** | Inyectar en `stacks/litellm/config.yaml` + `.env` → `docker compose up -d` → **verificar 401 de la vieja** | John (servidor) |
|
||||
| **3** | Migrar a `.env.local` gitignored (patrón TOOLBOX) | John (local) |
|
||||
| **4** | Redactar el plaintext en `MEMORY.md` L115 | **Ember** (a tu orden, tras Fase 2) |
|
||||
| **5** | Restaurar `db: connected` (cierra D-10 de paso) | John+Ember |
|
||||
| **6** | `git filter-repo` 3-remotos (destructivo, opcional) | John explícito |
|
||||
|
||||
**Criterio de cierre D-9:** Fase 2.5 (key vieja → 401) es la prueba dura de que la rotación surtió efecto.
|
||||
|
||||
Grounding (PROCEDENCIA): rutas verificadas de `pipeline_health.py` L60/L66-73 leído este turno; el "key ausente del container" es soft_fact (verificado SSH sesión previa, no re-verificado fresh ahora).
|
||||
|
||||
—
|
||||
|
||||
**Balance de la ventana:** 4 deudas **cerradas** (D-11, D-15, D-5, D-12/13) + runbook D-9 entregado. Quedan accionables aquí: **D-16** (necesito tu passphrase) y la **Fase 4 de D-9** (puedo redactar el plaintext de MEMORY.md cuando confirmes que rotaste). ¿Cuál sigue?
|
||||
Loading…
Reference in a new issue