feat(episode): TRAZA_6-el-fork-y-mi-recomendacin_S20260519.R3_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: chronicle
Summary: EPISODIO 3 — BLINDADAS: 6. El fork — y mi recomendación
This commit is contained in:
Ember 2026-05-19 14:08:39 +00:00
parent 531718f2a9
commit ca55aaf604

View file

@ -0,0 +1,40 @@
---
episode_id: "72d00f7f-7aec-468f-a399-8c9a860144d0"
puente_flat: "TRAZA_6-el-fork-y-mi-recomendacin_S20260519.R3_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260519.COMMIT_MASIVO_PRESERVACION"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "NONE"
fase_proyecto: "operations"
tipo_semantico: "chronicle"
summary_one_line: "EPISODIO 3 — BLINDADAS: 6. El fork — y mi recomendación"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-05-19T14:07:23.547319+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
## 6. El fork — y mi recomendación
| Opción | Qué implica |
|---|---|
| **A — Rollout completo** | Migrar las ~19 puertas restantes a Casbin, gradual, cada una con sus tests de equivalencia (el patrón ya validado). Realiza la "constitución ejecutable". Multi-sesión. |
| **B — Rescope** | Aceptar que Casbin es para SSH-authz y ya; bajar la bandera de "constitución ejecutable". El piloto fue el entregable. |
**Mi recomendación: ni A entero ni B — un punto medio honesto.** Migrar las ~19 *por migrar* es un error: varias son puertas 🟡-triviales de una sola condición, donde Casbin añade una dependencia sin ganancia real. Lo correcto: **auditar las ~20 puertas, identificar las 🔴-ricas en reglas** (las que tienen *muchos* patrones, como tenía `mega-hook-ssh` con 13) — probablemente **solo 3-5** — y migrar **esas**. Y rebautizar con honestidad: no es *"la constitución de EMBER"*, es *"el motor de políticas para los dominios de autorización ricos en reglas"*.
Esa auditoría de las ~20 puertas **es, literalmente, el primer paso de la Fase 5 real del plan**. ¿La hago — un inventario `puerta → ¿rica en reglas? → ¿vale Casbin?` — y con eso decides el alcance? ¿O cerramos el sprint como piloto (Opción B) y la auditoría queda para un sprint futuro?
## 📌 PILA (R4) — COMPACT
🟢 Sprint Casbin = **PILOTO completo** (corrijo: no "Fase 5 completa")
🟠 T-013 [R4] inconsistencia naming reconocida — "Fase 5 completa" → "piloto completo"; STATE.md/HANDOFF deben decir esto
🟠 T-014 [R4] auditoría de las ~20 hooks-compuerta → identificar las 3-5 ricas en reglas (= Fase 5 real del plan) — pendiente decisión John
🟠 T-012 [R3] deuda Fase 5: pin `casbin==1.43.0` no hecho
🟡 T-008 commit doc Fase 6 · T-002/T-003 PASSPORT+cosecha · B-001 LOOP_WRITE 7 episodios
🟡 T-005/T-006 STATE.md + HANDOFF (D3) — OK John
❓ Q-005 [R4] ¿hago la auditoría de las ~20 puertas (alcance real Casbin), o cerramos como piloto?
✅ RESUELTAS R4: aclarada la arquitectura (Casbin = motor de políticas, ~20/149 candidatas) · 3 inconsistencias reconocidas honestamente
## 📁 BITÁCORA S20260519.INST28212.R4