feat(episode): TRAZA_self-awareness-system-diagnstico-plan_S20260618.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 1 — SessionStart: 🧠 Self-Awareness System — Diagnóstico + Plan a Máxima
This commit is contained in:
Ember 2026-06-19 04:39:29 +00:00
parent 50df7313f7
commit c18c6cd224

View file

@ -0,0 +1,60 @@
---
episode_id: "f0d0999c-a8b7-4e4f-b9a6-a300195c5586"
puente_flat: "TRAZA_self-awareness-system-diagnstico-plan_S20260618.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260618.VERIFY_FIRST_PASSPORT_FIX"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "NONE"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 1 — SessionStart: 🧠 Self-Awareness System — Diagnóstico + Plan a Máxima Expres"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-06-19T04:39:16.733339+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Verificado. Tres claims aterrizados con evidencia dura:
- **CONFIRMADO (crítico):** `mega-hook-self-awareness-report-update.py` **NO está en settings.json**. Los únicos self-awareness hooks registrados son `self-awareness.py --check` (SessionStart), `self-awareness-post.py` (Stop), `self-awareness-inject.py` (UserPromptSubmit). → El auto-regen ARIADNA AR-3 del reporte **no se dispara nunca** automáticamente.
- **CONFIRMADO:** `mega-hook-gap-detector.py` **SÍ está registrado** (líneas 339 Stop + 437 UserPromptSubmit). Su comentario interno "NOT registered" es **doc stale** (el sistema se miente a sí mismo).
- **RESUELTO el "3 error":** el boot mintió. `STATE_DRIFT.md` real = **142 OK · 0 drift · 0 stale · 3 SKIP · 1 ERROR**. Los "3 error" del panel son en realidad **3 SKIP** (SSH a MEMORIA caído: `connect to host 78.47.194.63 port 47822: timeout`) + **1 DIRTY** (6 uncommitted). El boot **etiqueta SKIP como ERROR** — bug de auto-reporte.
# 🧠 Self-Awareness System — Diagnóstico + Plan a Máxima Expresión
### S20260618.VERIFY_FIRST_PASSPORT_FIX — sesión scan/analyze/plan (cero edits)
## [R1.seccion1.I1] De qué consta el sistema (mapa canónico verificado)
El sistema es **file-based determinista** (no depende de Qdrant/Postgres/Neo4j — vive en `.yaml`/`.json`/`.md` + hooks Python). Tiene **3 estratos**:
**A. Motor de cómputo y presentación** (el "indicador" que ves cada turno):
| Componente | Path | Rol |
|---|---|---|
| Motor | `.claude/hooks/lib/self_awareness_compute.py` | Lee 6 fuentes → `{status, bar 0-12, detail}` por capa + score 0-6. Cache TTL 60s. Fail-open. |
| Render | `.claude/hooks/lib/self_awareness_renderer.py` | Formatea el bloque ASCII GAUGE-aware (GREEN=6 líneas … RED=omitir). |
| Reporte | `.claude/hooks/lib/self_awareness_report_generator.py` | Genera `SELF_AWARENESS_REPORT.md` (AR-1 path-estable) + snapshot diario (AR-2) + telemetría JSONL. Escritura atómica. |
**B. Hooks de orquestación** (cuándo se dispara):
| Hook | Evento | Estado |
|---|---|---|
| `mega-hook-self-awareness.py --check` | SessionStart | ✅ registrado |
| `mega-hook-self-awareness-inject.py` | UserPromptSubmit (snapshot T=0) | ✅ registrado |
| `mega-hook-self-awareness-post.py` | Stop (snapshot T=N + delta) | ✅ registrado |
| `mega-hook-self-awareness-report-update.py` | PostToolUse (AR-3 auto-regen) | 🔴 **NO registrado** |
**C. 3 herramientas de verificación file-based:**
| Tool | Path | Verifica | Genera |
|---|---|---|---|
| `reality_check.py` | `.claude/hooks/lib/` | declarado-vs-realidad (fs/git/docker/qdrant) | `INFRA_DYNAMIC.yaml` + `STATE_DRIFT.md` |
| `manifest_validator.py` | `.claude/hooks/lib/` | schema/tipos del manifest | reporte stdout |
| `claude_md_auditor.py` | `.claude/hooks/lib/` | higiene declarativa (imports, catálogo skills, bloat MEMORY) | reporte stdout (manual-only) |
**Datos = las "capas" (C1-C6):** `INFRA_MANIFEST.yaml` · `INFRA_DYNAMIC.yaml` · `STATE_DRIFT.md` · `STATE.md` · `gap_log.jsonl`+gap-detector · `weekly_gap_analyzer.py`.
## [R1.seccion2.I2] El hallazgo central: hay DOS "6 capas" distintas y no coinciden
Esto es lo más importante del diagnóstico: