feat(episode): TRAZA_respuesta-decidido-y-no-es-lo-que-ningu_S20260801.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: TESSERA | Type: troubleshooting
Summary: EPISODIO 1 — MNEMO_PRE_DIGEST: 🎯 Respuesta: **decidido**, y no es lo que ninguno
This commit is contained in:
Ember 2026-08-02 04:12:57 +00:00
parent c9fe418983
commit d3d0b18cf6

View file

@ -0,0 +1,42 @@
---
episode_id: "c18575e7-0d30-48ea-b06f-07c3d380909f"
puente_flat: "TRAZA_respuesta-decidido-y-no-es-lo-que-ningu_S20260801.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260801.PIPELINE_FIXES"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "TESSERA"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 1 — MNEMO_PRE_DIGEST: 🎯 Respuesta: **decidido**, y no es lo que ninguno de los dos"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-08-02T04:12:55.226400+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
# 🎯 Respuesta: **decidido**, y no es lo que ninguno de los dos pensaba
El diff es inequívoco. El 18 de julio, alguien cambió una sola línea en la configuración de LiteLLM:
**Se quitó el sufijo `-preview`.** Son dos modelos distintos con el mismo apellido — y ahí se partió tu memoria.
## Por qué esto explica absolutamente todo
Descubrí de paso algo que nadie tenía documentado: **tu sistema escribe y pregunta por dos caminos diferentes.**
- **Al escribir** (`memory_writer.py`): va por LiteLLM pidiendo el alias `text-embedding-3-large`, que LiteLLM traduce al modelo real de la config.
- **Al preguntar** (`embeddings.py`, que usan el oráculo y las búsquedas): va **directo a OpenRouter** pidiendo `google/gemini-embedding-2`.
Mientras la config decía `-preview`, los dos caminos llegaban a modelos **distintos** — pero eso llevaba así desde mayo y el sistema funcionaba (0.907 el 19 de julio)... porque *ambos lados eran consistentes consigo mismos*: lo escrito con preview se buscaba con lo que hubiera, y el recall se sostenía.
El 18 de julio se quitó el `-preview`. Desde ese instante, **todo lo nuevo se escribe con `gemini-embedding-2`** (el mismo que usan las preguntas) y reproduce perfecto: coseno **1.0000**. Y todo lo anterior quedó escrito con `gemini-embedding-2-preview`: otro modelo, otro espacio, coseno **0.81**.
Esto cierra la última pieza que no me cuadraba: por qué el examen del 19 de julio a las 06:02 todavía dio 0.907. Porque el cambio afecta a la **escritura**, no a la lectura — así que el efecto no aparece cuando cambias la config, sino a medida que los episodios nuevos van entrando y los viejos se quedan solos en un espacio que ya nadie usa para escribir. Por eso es un escalón de un día y no un salto instantáneo.
## Qué significa para tu decisión
**No es el proveedor. Fue un cambio nuestro, deliberado en la intención (quitar un sufijo de un modelo preview parece un saneamiento razonable) pero con un efecto colateral que nadie previó** — y sin backup del config, por eso costó tanto encontrarlo.
Eso reordena tus opciones: