ember-memory-test/episodes/DEPURA_para-john_S20260705.R99_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md
Ember 362312e91b feat(episode): DEPURA_para-john_S20260705.R99_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: NONE | Type: troubleshooting
Summary: EPISODIO 144 — MNEMO_PRE_DIGEST: 📍 PARA JOHN
2026-07-12 16:23:20 +00:00

2.1 KiB

episode_id puente_flat session_code acto_dialogico actor_flujo criticidad_aegis skill_dominante fase_proyecto tipo_semantico summary_one_line source_type trust_boundary created_at relectura_tagged forgejo_commit_sha
8df44259-dd1d-4c9a-971b-32444df431b1 DEPURA_para-john_S20260705.R99_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD S20260705.EVAL_INSTRUMENT_FORGE_SKILL informar multi_actor low NONE operations troubleshooting EPISODIO 144 — MNEMO_PRE_DIGEST: 📍 PARA JOHN claude_code internal 2026-07-12T16:17:05.961936+00:00 false pending

Y el cierre honesto: mi error de medición (fuzz sin inf/nan) fue el mismo tipo de fallo de cobertura que RELOJERO cometió. Ni la ceremonia advisory (yo) ni RELOJERO (el brazo C) evitamos el punto ciego. Solo el oráculo lo reveló. Corregí el registro con AVISO DLC-2 en el veredicto, declaré los confounds (B tuvo cómputo anómalo; inf/nan no estaban destacados en la spec), y parché el fuzz. Detalle: docs/CORRECCION_CASO_04_INFNAN_S20260705.md.

Listo. Todo verde — Fase 7 cerrada. El interruptor funciona y ya está apagado.

🔇 Sonidos de voz: silenciados (sin borrar nada)

Encontré el sistema — se llaman "voice hooks". Un solo script (safe_voice_hook.py) registrado en los 30 eventos de Claude Code reproduce un .wav por cada uno ("Claude está a punto de usar una herramienta", "La herramienta terminó correctamente", etc.).

Qué hice: le añadí un interruptor maestro — antes no existía; la única forma de apagar era borrar listas. Ahora es un solo valor:

Archivo Cambio Efecto
voice_hooks_config.json "enabled": false 🔇 silencio total (activo ahora)
safe_voice_hook.py:80 guard clause 3 líneas lee el switch; ausente/true→suena, false→calla

Nada se borró: el manifest (30 sonidos + textos), la doble allowlist y el registro en settings.local.json quedan intactos. Es reversible con un flip.