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

Skill: TESSERA | Type: troubleshooting
Summary: EPISODIO 24 — BLINDADAS: Twist crítico, John — **el test da 200...
This commit is contained in:
Ember 2026-06-09 00:15:13 +00:00
parent 6db68d1f25
commit f0ea96a582

View file

@ -0,0 +1,39 @@
---
episode_id: "4e05d01a-56dd-4d0c-b423-94b09a4e43b1"
puente_flat: "TRAZA_twist-crtico-john-el-test-da-200_S20260607.R24_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 24 — BLINDADAS: Twist crítico, John — **el test da 200..."
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-06-09T00:14:35.272671+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.