feat(episode): TRAZA_twist-crtico-john-el-test-da-200_S20260607.R29_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: TESSERA | Type: troubleshooting
Summary: EPISODIO 29 — BLINDADAS: Twist crítico, John — **el test da 200...
This commit is contained in:
Ember 2026-06-08 17:51:00 +00:00
parent f13dd2ef5f
commit 4dd2f2bd24

View file

@ -0,0 +1,39 @@
---
episode_id: "918b59ad-3ad9-4cc5-a5d2-0f30a2d1abdf"
puente_flat: "TRAZA_twist-crtico-john-el-test-da-200_S20260607.R29_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260607.MNEMO_BUG_FORENSE_MAP"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "TESSERA"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 29 — BLINDADAS: Twist crítico, John — **el test da 200..."
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-06-08T17:49:28.546641+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Twist crítico, John — **el test da 200 dim=3072, pero es una señal de éxito ENGAÑOSA.** Te cuento la historia (PRÓLOGO):
**Reframe:** "los embeddings funcionan" NO significa "la rotación está hecha". Significa lo contrario: **litellm sigue corriendo con la key VIEJA en memoria** (Up 17h, NO se recreó) y esa key vieja **respondió 200** → o no se revocó, o la revocación no propagó en OpenRouter.
**Evidencia (hard_fact):**
- `litellm Up 17 hours` → cargó su config hace 17h, cuando el `api_key` estaba **hardcodeado con la key vieja** `sk-or-v1-6ea27f5c`. Esa es la que tiene en memoria y la que acaba de usar.
- `config.yaml` ahora dice `api_key: os.environ/OPENROUTER_API_KEY` (mi refactor) — pero **NO está cargado** (litellm no reinició).
- **`.env` NO existe** (ni con sudo). Tu "listo" no creó el archivo (el `sudo tee`/`compose up` no corrió, o la key no se pegó).
- El 200 con key vieja ⇒ **la key vieja sigue viva** (contradice "desactivé la vieja").
**Consecuencias por camino:**
- **Si recreo litellm AHORA** (para aplicar `os.environ`) **sin `.env`** → `OPENROUTER_API_KEY` indefinida → **embeddings se ROMPEN**. Por eso NO reinicié.
- **Si la key vieja sigue viva de verdad** → el hueco de seguridad sigue abierto pese a la rotación.
**Mi inclinación:** dos acciones tuyas, luego yo aplico+verifico:
1. **Confirma en el dashboard de OpenRouter** que la key vieja `…6ea27f5c` está realmente revocada (el 200 sugiere que no lo está, o tarda en propagar).
2. **Crea el `.env`** (tu primer intento no dejó archivo) — re-pega el one-liner reemplazando `PEGA_AQUI_TU_KEY_NUEVA`:
Cuando confirmes que `.env` quedó (verás "ENV OK: N bytes"), **yo recreo litellm + verifico que el embedding use la key NUEVA** (no la vieja en memoria).
**La pregunta esencial (solo tú):** ¿la revocación de la key vieja en OpenRouter realmente se aplicó? Porque empíricamente sigue respondiendo 200.