feat(episode): TRAZA_s-john-qued-claro-te-lo-devuelvo-con_S20261003.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: TESSERA | Type: troubleshooting
Summary: EPISODIO 1 — Perplexity: Sí, John: quedó claro. Te lo devuelvo con...
This commit is contained in:
Ember 2026-10-03 14:24:52 +00:00
parent 6572e0c573
commit 125b2efa05

View file

@ -0,0 +1,31 @@
---
episode_id: "dd2c1fb4-6d7d-4283-9a10-fbb4ece4cd36"
puente_flat: "TRAZA_s-john-qued-claro-te-lo-devuelvo-con_S20261003.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20261003.SID0D9930CB1FED"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "TESSERA"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 1 — Perplexity: Sí, John: quedó claro. Te lo devuelvo con..."
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-10-03T14:24:45.140191+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
**Sí, John: quedó claro.** Te lo devuelvo con mis palabras para que compruebes que entendimos lo mismo:
1. **Qué pasó.** Esta semana, sin créditos de Anthropic, avanzaste con otras IAs en un pendiente de meses: convertir PDF externos a Markdown. ChatGPT (Astra) concluyó que el mejor servicio hoy es Mistral OCR, y con Mistral construiste ayer el mecanismo en este mismo computador.
2. **Dónde vive.** En `C:\Users\Administrador\pdf2md`, a propósito **fuera de Ember**, para que trabaje sin gastar tokens de Claude.
3. **Qué hace además de convertir.** Parte cada documento en trozos (chunks), pero no "con regla" cada tantos caracteres. Un enrutador mira cómo es el documento y decide cómo cortarlo, para que cada trozo sea una idea completa. Así, cuando el trozo se convierte en números comparables (embedding), la búsqueda encuentra mejor.
4. **Para qué.** Para que ese material ya preparado entre a la memoria de Ember por una **puerta propia**: una ruta de conocimiento externo (PDF y todo lo que no nace de nuestros chats), distinta de la ruta de memoria de los chats.
5. **Qué sigue.** Me compartes la carta de Mistral y la de Perplexity (con el modelo Sol de OpenAI). Cuando tenga claro lo construido, propongo como Fable la integración. Hoy todavía no propongo nada.
**Lo que ya vi en la carpeta real** (solo lectura; no cambié nada ni abrí el `.env`):
- Es una tubería de dos pasos: `convert.py` (PDF → Markdown, guardando la respuesta cruda del OCR) y `normalize_chunk.py` (Markdown → ficha de ruteo + trozos). Esto lo deduzco de nombres, fechas y salidas; el código aún no lo abrí.
- Hay 5 PDF de prueba bien variados: un RFC, el paper *Attention*, tablas de CPI, *Alicia* escaneado de 256 páginas y una ficha técnica HP. Salieron **350 trozos**, y cada uno trae de dónde viene: página, ruta de títulos y huella digital del PDF (sha256).
- **Un matiz importante.** El enrutador toma una huella de 15 medidas por documento y *recomienda* una de tres rutas: R1 para 1 documento, R2 para 3 y R3 para 1. Pero hoy **aplicó R1 a los 5**. Las propias fichas lo explican: R2 quedó "saltada por falta de embeddings" y R3 con "lector pendiente". La decisión de ruteo ya funciona; el corte plenamente por significado está a medio camino, lo que coincide con tu "está intentando".