Skill: NONE | Type: chronicle Summary: EPISODIO 2 — MNEMO_PRE_DIGEST: A — La ley se carga sola
3.7 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| d1852a45-7b6a-4c69-a3ba-c6a2c6fc966d | DEPURA_a-la-ley-se-carga-sola_S20260726.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD | S20260726.ARCO_CICLO4_AUTOMEJORA | informar | multi_actor | low | NONE | operations | chronicle | EPISODIO 2 — MNEMO_PRE_DIGEST: A — La ley se carga sola | claude_code | internal | 2026-07-27T03:23:33.402859+00:00 | false | pending |
Commit 7a1732e8, push 3/3. A y B completados.
—
A — La ley se carga sola
@rules/mini/dos-vias-memoria.md está en la línea 74 de CLAUDE.md (36 imports totales). A partir del próximo arranque, ninguna instancia tendrá que acordarse de buscarla: llega ya cargada.
Detalle que me hizo gracia: el permiso temporal caducó mientras yo cumplía otros guardrails (leer dos mapas). El TTL de 5 minutos hizo exactamente su trabajo — tuve que renovarlo y editar en el acto.
B — El muro
pre-tool-dos-vias-guard.py deniega tocar el sustrato de ingestión sin haber leído la ley en ese turno.
Qué protege: ember-outbox.service · outbox_dispatcher · qdrant_worker · crisol_run, y los comandos --only …qdrant|neo4j, systemctl …ember-outbox, INSERT …episode_outbox, UPDATE …qdrant_state.
11/11 pruebas verde, con el caso del incidente incluido:
★ Insight — por qué un muro y no una regla ───────── El árbol de decisión del ecosistema pregunta primero: "¿debe ser imposible de saltarse?". Aquí la respuesta es sí, y la prueba es incómoda: ayer la regla YA EXISTÍA, declarada en un docstring, a dos líneas del código que estaba editando. Tenía toda la información necesaria y aun así introduje un segundo escritor en producción.
Una regla depende de que yo me acuerde de leerla. Un muro no depende de mí. Eso es exactamente lo que pediste cuando dijiste "sin importar el modelo de LLM". ─────────────────────────────────────────────────
Y lo que NO hice: no lo registré en settings.json. Ese archivo es intocable sin tu GO explícito (tu directiva de julio). El muro está fabricado, probado y desactivado. Para activarlo, la línea va en el bloque PreToolUse:
(ese comando solo muestra cómo están registrados los actuales, para que decidas con el formato a la vista — no modifica nada)
—
Hice — A: la ley DV se carga en cada arranque (CLAUDE.md:74, con respaldo y presencia declarada). B: fabriqué el muro mecánico con 11 pruebas verde, tras confirmar el gap con dos fuentes del grafo de hooks (AR-AP7). Commit 7a1732e8, push 3/3.
Falta — 🔴 tu GO para registrar el muro en settings.json: hasta entonces está inerte · 🟠 ember_inner sigue esperando tu shell · 🟠 los 17 de pérdida real · ⏰ writer v1.2.
Mi consejo — activarlo. Un muro sin registrar es documentación cara: tiene todo el coste de fabricación y cero efecto. Y su diseño es conservador — fail-open absoluto, solo dispara sobre nombres inequívocos, y trae override de emergencia con caducidad. El riesgo de activarlo es bajo; el de no hacerlo ya lo medimos ayer.
Para avanzar, elige:
- 🟢 A (recomendado) — dame el GO y registro el muro en
settings.json(con respaldo y verificación) - 🟡 B — lo dejas inerte y lo revisas tú antes de decidir
- ⚪ C — cerramos aquí; hoy fue una jornada larga y todo quedó documentado
—