diff --git a/episodes/TRAZA_qu-qued-hecho_S20260923.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md b/episodes/TRAZA_qu-qued-hecho_S20260923.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md new file mode 100644 index 00000000..eda70815 --- /dev/null +++ b/episodes/TRAZA_qu-qued-hecho_S20260923.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md @@ -0,0 +1,60 @@ +--- +episode_id: "d38bcc2f-eebf-4ad3-bf09-d860a9713c02" +puente_flat: "TRAZA_qu-qued-hecho_S20260923.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD" +session_code: "S20260923.SIDC61B58AF8BC4" +acto_dialogico: "informar" +actor_flujo: "multi_actor" +criticidad_aegis: "low" +skill_dominante: "NONE" +fase_proyecto: "operations" +tipo_semantico: "troubleshooting" +summary_one_line: "EPISODIO 1 — PHAROS: Qué quedó hecho" +source_type: "claude_code" +trust_boundary: "internal" +created_at: "2026-09-23T22:33:32.674193+00:00" +relectura_tagged: false +forgejo_commit_sha: "pending" +--- + +No hay `.bak` en la carpeta de memoria: ATOMIC guarda sus respaldos en otro lugar. No había nada que mover. + +## Qué quedó hecho + +**1. T-07: solo el lector aislado puede leer un repo externo** (`00b1d48d`) +- Un nuevo guardián niega que yo lea, busque o liste archivos de la cuarentena. Solo pasa `repo-digestor`, que no tiene shell ni escritura. +- Cerré también la puerta trasera: `cat`, `grep`, `Get-Content` y `git log/show` sobre el clon también se niegan en la shell. +- **Lo probé en vivo:** + - Mi `Glob` y mi `cat` salieron negados. + - El digestor leyó sin problema. + - El registro confirma que el sistema identifica al digestor en cada llamada. +- En el historial real de 16.500 comandos, la regla no bloqueó ninguno legítimo. + +**2. Segunda pasada a ECC y D7 endurecido** (`945fe6b8`) +- Medí 10 trucos de evasión que la ficha de ECC sugería: los **10 pasaban** nuestro guardián. +- Ahora se niegan todos: + - comandos codificados en base64 (`-EncodedCommand`); + - letras disfrazadas con backtick o caret (`g`it`); + - "descargar y ejecutar" (`irm … | iex`); + - concatenaciones hacia `iex`; + - alias hacia `git`. +- Probado en vivo: 7 de 7 negados, y los comandos normales siguen pasando. +- **Decidí no copiar dos cosas de ECC:** que el guardián deje pasar al segundo intento, y que sus mensajes le expliquen al agente cómo apagarlo. + +**3. La lista que me compartiste** (`quemsah/awesome-claude-plugins`) +- Recorre **40.958 repos**. Saqué un top 15 para Ember: seguridad, orquestación, skills, memoria, evaluación y observabilidad. +- **No tiene licencia**, así que solo tomé ideas y datos. +- Arreglé de paso el escáner: confundía los hashes de los archivos de dependencias con mensajes ocultos (410 falsas alarmas → 0). +- Ficha: [FICHA_DIGESTION_S20260923_awesome_claude_plugins.md](docs/FICHA_DIGESTION_S20260923_awesome_claude_plugins.md) + +**4. Plan de las ideas #1, #2, #4 y #5** (`66698f62`) +- [PLAN_S20260923_patrones_ecc_1_2_4_5.md](docs/PLAN_S20260923_patrones_ecc_1_2_4_5.md) +- Antes de diseñar medí qué ya teníamos: + - #2 ya existe a medias. + - #5 existe casi completo. + - #4 no existe. + - #1 se hace hoy a mano. +- Orden propuesto con fechas: #1 → #4 → #2 → #5. + +**5. Clon de ECC borrado.** Agregué `limpiar --nombre` para borrar solo ese clon. + +**Pruebas:** 295 en verde.