feat(episode): TRAZA_b-el-interruptor-existe_S20260822.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: NONE | Type: troubleshooting Summary: EPISODIO 1 — MNEMO_PRE_DIGEST: B — El interruptor existe
This commit is contained in:
parent
0c772b403e
commit
d225fedfb3
1 changed files with 44 additions and 0 deletions
|
|
@ -0,0 +1,44 @@
|
|||
---
|
||||
episode_id: "f3d02dcc-04d6-4deb-a876-7305d134ad4f"
|
||||
puente_flat: "TRAZA_b-el-interruptor-existe_S20260822.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
|
||||
session_code: "S20260822.PIPELINE_FIXES"
|
||||
acto_dialogico: "informar"
|
||||
actor_flujo: "multi_actor"
|
||||
criticidad_aegis: "low"
|
||||
skill_dominante: "NONE"
|
||||
fase_proyecto: "operations"
|
||||
tipo_semantico: "troubleshooting"
|
||||
summary_one_line: "EPISODIO 1 — MNEMO_PRE_DIGEST: B — El interruptor existe"
|
||||
source_type: "claude_code"
|
||||
trust_boundary: "internal"
|
||||
created_at: "2026-08-22T18:42:01.037032+00:00"
|
||||
relectura_tagged: false
|
||||
forgejo_commit_sha: "pending"
|
||||
---
|
||||
|
||||
Hecho: **B y C completos**, commit `37193c9b` en los tres remotos.
|
||||
|
||||
## B — El interruptor existe
|
||||
|
||||
Tu tesis —*"apagar sin borrar"*— dejó de ser una intención declarada y es una palanca que funciona:
|
||||
|
||||
| Prueba | Resultado |
|
||||
|---|---|
|
||||
| Idempotencia sobre el `settings.json` **real** | `diff --perfil frontier-full` → **0 líneas** |
|
||||
| Suite del interruptor | **5 passed, 1 xfailed** (control positivo muerde) |
|
||||
| Perfil `local-small` generado | **94 de 122 entradas sobreviven, 28 apagadas (23%)** |
|
||||
| `settings.json` vigente | **intacto, 26.900 bytes** — el generador nunca puede escribirlo (`exit 3`) |
|
||||
|
||||
Y un bug cazado en el camino que valía la pena: el `diff` mostraba **18 líneas de ruido** por reordenar `matcher` antes de `hooks`. En una herramienta cuyo propósito es que *revises qué va a cambiar antes de aplicarlo*, ese ruido esconde el cambio real. Corregido a 0.
|
||||
|
||||
**Lo que no hice a propósito:** los perfiles `frontier-opus` y `frontier-fable` nacen **vacíos**. Apagarle compensatorios a Opus "porque ya no los necesita" sería exactamente la apuesta sin datos que R-8 prohíbe. Primero SHADOW, después medición, después apagado.
|
||||
|
||||
`★ Insight ─────────────────────────────────────`
|
||||
Un hook me avisó de que mi `arnes_shadow_log.jsonl` nacería huérfano — sin lector, como los 314 de 525 que medí esta mañana. En vez de declarar un `consumed_by` y seguir, **construí el lector en el mismo acto**: `arnes_off_condition.py` cuenta las sesiones en sombra sin intervención y dicta si el componente es apagable. Eso cierra el bucle entero de tu tesis: *clasificar → sombra → medir → apagar*. El emisor y su consumidor nacieron juntos; era la única forma coherente de no fabricar el artefacto huérfano número 315 mientras documentaba la plaga.
|
||||
`─────────────────────────────────────────────────`
|
||||
|
||||
## C — El criterio, derivado y con una corrección incómoda
|
||||
|
||||
No inventé la cifra: la **derivé por análisis de potencia** — y el cálculo destapó un problema del borrador.
|
||||
|
||||
Con McNemar pareado, α=0,05 y potencia 0,80, **n=40 sólo detecta efectos de ~24 puntos o más**. El borrador proponía exigir **Δ ≥ 20 con n=40**: infrapotenciado. Habría producido un "no significativo" incapaz de distinguir *"el arnés no sirve"* de *"no había datos suficientes"* — la peor clase de resultado, porque **parece un veredicto y es una laguna**.
|
||||
Loading…
Reference in a new issue