feat(episode): TRAZA_para-john-r23_S20260705.R21_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: NONE | Type: chronicle
Summary: EPISODIO 21 — Prompt Injection: 📍 PARA JOHN — R23
This commit is contained in:
parent
ef6c0f89e6
commit
09446a0054
1 changed files with 40 additions and 0 deletions
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
episode_id: "e42aceba-473f-46f6-bacb-87ce62742454"
|
||||
puente_flat: "TRAZA_para-john-r23_S20260705.R21_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
|
||||
session_code: "S20260705.EVAL_INSTRUMENT_FORGE_SKILL"
|
||||
acto_dialogico: "informar"
|
||||
actor_flujo: "multi_actor"
|
||||
criticidad_aegis: "low"
|
||||
skill_dominante: "NONE"
|
||||
fase_proyecto: "operations"
|
||||
tipo_semantico: "chronicle"
|
||||
summary_one_line: "EPISODIO 21 — Prompt Injection: 📍 PARA JOHN — R23"
|
||||
source_type: "claude_code"
|
||||
trust_boundary: "internal"
|
||||
created_at: "2026-07-06T04:56:35.807626+00:00"
|
||||
relectura_tagged: false
|
||||
forgejo_commit_sha: "pending"
|
||||
---
|
||||
|
||||
**Tarea completa** — el hook D3 ya es path-aware, verificado empíricamente. Resumen del arreglo:
|
||||
|
||||
| Fase FORENSE | Resultado |
|
||||
|---|---|
|
||||
| **Causa raíz** | `norm.startswith("skills/")` era cwd-dependiente; con path absoluto + cwd-mismatch (short-name Windows) el strip fallaba → BLOCK falso |
|
||||
| **Repro** | `cwd=C:/ skills abs → block=True` (bug) vs `cwd=repo → False` |
|
||||
| **Fix** | match por **segmento de path** (`"skills"/"rules" in ancestors`), robusto al cwd, + añadido `rules/` |
|
||||
| **Tests** | +2 nuevos (path absoluto + rules) → **36 PASS / 0 FAIL** |
|
||||
| **Post-fix** | `cwd=C:/ skills abs → block=False` ✅ · `root abs → block=True` ✅ (raíz protegida) |
|
||||
| **Backup** | `.bak.S20260705_D3_PATHAWARE` (rollback listo) |
|
||||
|
||||
Entregado: [docs/DECISION_S20260705_ley_zero_d3_pathaware.md](docs/DECISION_S20260705_ley_zero_d3_pathaware.md) con causa raíz + evidencia + panel condensado + PROBATOR.
|
||||
|
||||
**PROBATOR: PASSES** — 4 hipótesis adversariales falsadas (el raíz sigue bloqueado, segment-match no admite `skills-evil`, el bug ES cwd-dependiente, no rompo D1/D2/D4/D5). Riesgos residuales de bajo blast radius, aceptados.
|
||||
|
||||
**Efecto colateral bueno:** ahora crear el `CLAUDE.md` de cualquier skill nuevo ya no se bloquea falsamente (el `eval-instrument-forge` funciona con `SKILL.md`; si quisieras, ya podría añadir también su `CLAUDE.md`, pero no hace falta).
|
||||
|
||||
### 📍 PARA JOHN — R23
|
||||
- **Hice:** diagnostiqué (FORENSE, repro empírico), **corregí** el hook LEY-ZERO D3 para que sea path-aware (segment-based, cwd-independent, + `rules/`), **extendí los tests** (+2, la regresión real del path absoluto) → 36/36 verde, y documenté con PROBATOR PASSES. Backup + rollback listos.
|
||||
- **Falta:** asegurar todo el trabajo de la sesión con un commit (BLINDADA-29: skill EVAL_INSTRUMENT_FORGE + doc SOTA + fix del hook + DECISION + carta, todo sin commitear).
|
||||
- **Mi consejo:** hacer **commit + push triple-remoto ahora** — es bastante trabajo acumulado (skill nuevo + 2 docs + fix de hook con tests) y BLINDADA-29 lo pide; así nada se pierde si reinicias.
|
||||
- **Para avanzar, elige:** 🟢 **A** *(recomendado)* — commit + push triple-remoto de toda la sesión. 🟡 **B** — cerrar aquí; el fix quedó verde y documentado. ⚪ **C** — además añadir `skills/eval-instrument-forge/CLAUDE.md` (ahora que el guard lo permite) junto al `SKILL.md`.
|
||||
Loading…
Reference in a new issue