Skill: NONE | Type: troubleshooting Summary: EPISODIO 2 — BLINDADAS: Hallazgo al leer `compute.py`
2.9 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 94cc0576-0dda-45d8-9360-62b32c65b45d | TRAZA_hallazgo-al-leer-computepy_S20260621.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD | S20260621.CRONICA_SEMANAL_C15 | informar | multi_actor | low | NONE | operations | troubleshooting | EPISODIO 2 — BLINDADAS: Hallazgo al leer `compute.py` | claude_code | internal | 2026-06-21T16:53:44.005249+00:00 | false | pending |
Antes de tocar el motor, lo leí entero — y encontré algo que cambia FASE 2 (justo el valor de comprender antes de refactorizar):
Hallazgo al leer compute.py
-
C6→BLIND honesto YA ESTÁ IMPLEMENTADO. Las líneas 275-315 ya degradan honesto:
SSH_UNAVAILABLE→STALE(no fake OK), heartbeat caído→STALE,pct_stale≥80%→FROZEN. Una sesión previa (fix F3-05 + DECISION CONCILIO S20260618) ya lo hizo. No hay que rehacerlo. (Por eso el indicador ya muestraC6 FROZEN/STALE honestodesde hace turnos.) -
Los 6
_check_C*NO son clones. CRISOL/el plan los llamó "casi-clones", pero al leerlos: C1 parsea STATE_DRIFT + penaliza_metadrift; C5 parsea settings.json; C6 es una cascada de 4 condiciones de wiki. Solo C2/C3 son mtime puro. Consolidarlos en una tabla data-driven sería over-engineering riesgoso — forzar uniformidad donde hay diversidad legítima, y un error rompe el panel. Lo descarto con justificación (PROBATOR habría marcado esto).
FASE 2 real, recalibrada: queda mucho menos de lo planeado. Lo seguro y con valor: freshness-SLO (declarar cadencia esperada por fuente) + auto-reconcile drift (en reality_check) + doc CONTRACT_SDB. Y una sola pieza cambia tu panel: el indicador unificado.
EJE C — la decisión que sí cambia lo que ves (PRÓLOGO)
Reframe: lo único de FASE 2 que altera tu pantalla cada turno es si añadimos 2 indicadores binarios al panel: gap_loop ALIVE/DEAD + improve_loop ALIVE/DEAD (salud del lazo cognitivo).
Historia: el plan proponía un indicador "6 barras + 2 binarios". El glifo BLIND honesto ya existe (C6). Lo que falta es mostrar si el lazo que acabo de cablear (B1+B2) está vivo — ahora que el report-update y el analyzer-trigger corren, ver su pulso cada turno tiene sentido.
Consecuencias: añadirlos → ves de un vistazo si tu lazo de auto-mejora respira (útil tras el recableado). No añadirlos → el panel sigue idéntico (6 barras, familiar).
Mi inclinación: ligera a prepararte un PREVIEW del indicador con esos 2 binarios — pero es tu pantalla, no la cambio sin que la veas primero (PROBATOR C4: panel solo en preview hasta tu ACK).
Pregunta esencial: ¿preparo el preview del indicador +2 binarios para tu visto, o dejamos el panel como está y hago solo la parte invisible (freshness-SLO + CONTRACT_SDB)?