feat(episode): DEPURA_r-7-cerrado-john-la-ltima-faceta-muert_S20260712.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: 🧬 R-7 CERRADO, John — la última faceta muerta de
This commit is contained in:
Ember 2026-07-12 17:36:05 +00:00
parent a889a65366
commit c4b5e0ce31

View file

@ -0,0 +1,25 @@
---
episode_id: "f967e42b-7cf0-4cac-91e0-506f877256c0"
puente_flat: "DEPURA_r-7-cerrado-john-la-ltima-faceta-muert_S20260712.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260712.SHERPA_MISION1_LOOPWRITE"
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: 🧬 R-7 CERRADO, John — la última faceta muerta de la auditorí"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-07-12T17:36:03.065889+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
# 🧬 R-7 CERRADO, John — la última faceta muerta de la auditoría está viva
**El titular:** los aromas conductuales pasaron de **1 valor distinto en 590 filas** a **75 valores distintos de `aroma_j` y 20 de `aroma_e`** en todo el corpus. Informe: **[R7_FACETAS_MUERTAS_S20260712.md](docs/R7_FACETAS_MUERTAS_S20260712.md)** · commits `6ec4c33f` + `866f79a1` (3 remotos ✅). ## Lo que Fable encontró (el giro del diagnóstico)
**El scorer nunca estuvo roto — estaba amordazado por su propio default.** La cadena causal FORENSE: `aroma_scorer.py` en el servidor tiene lógica real (mapas de keywords por dimensión conductual), pero crisol F2b respeta el aroma que venga declarado en el metadata del episodio si es válido — y el cliente Windows **siempre** declaraba `PMCFK/SGNFD` porque su import del scorer (que solo existe en el servidor) falla y cae a un default hardcodeado. El default válido "gritaba primero" → el scorer real llevaba meses sin ejecutarse ni una vez. Por eso 590/590 constantes: no era faceta inútil, era faceta **bloqueada por diseño accidental**. ## Lo que se hizo (con evidencia en cada paso)
1. **Fix de precedencia** (3 ediciones en `tessera_pipeline.py`, TEST_PRE/TEST_POST): cuando el aroma es el default fabricado, ya NO viaja en el metadata → crisol lo ve ausente → scorea con el texto real. 2. **E2E de variabilidad probado**: 3 episodios reales de este sprint narrados con léxico contrastante → el servidor scoreó **tres huellas distintas**: troubleshooting→`CFRFQ/DGNFD`, diseño→`PMRFK/SPNFD`, crónica→`PMATK/CGNFD`. Señal genuina, no ruido. 3. **Backfill del corpus legacy** (UPDATE-only, dump previo de 5,97 MB): re-scoreó las 592 filas → **327 ganaron huella real** (327/327 aplicados, transaccional) y 265 quedaron en default *honesto* (su prosa no dispara keywords — declarado, no enmascarado).