Skill: TESSERA | Type: troubleshooting Summary: EPISODIO 35 — BLINDADAS: Fix aplicado — guard de turnos triviales (con sumo cuid
3.2 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 57792281-9358-4d15-869f-73ef78cffdab | DEPURA_fix-aplicado-guard-de-turnos-triviales_S20260607.R35_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD | S20260607.MNEMO_BUG_FORENSE_MAP | informar | multi_actor | low | TESSERA | operations | troubleshooting | EPISODIO 35 — BLINDADAS: Fix aplicado — guard de turnos triviales (con sumo cuidado, | claude_code | internal | 2026-06-09T03:00:06.959222+00:00 | false | pending |
✅ Push a los 3 remotos (d920cdc..1c2d0de). BLINDADA-29 ✅. Guard acotado completado.
Fix aplicado — guard de turnos triviales (con sumo cuidado, como pediste)
★ Insight ─────────────────────────────────────
El fix es quirúrgico y additivo: una sola guard-clause que envuelve push_pending_to_server(). NO toca la lógica de memoria (ya se saltaba en triviales), ni CODEX, ni GAUGE, ni self-awareness — esos siguen emitiéndose normal. Solo evita la llamada de red (SCP/push) en turnos vacíos ("No response requested." <60 chars). Verificado sin daño: py_compile PASS + cambio reversible (backup listo).
─────────────────────────────────────────────────
Qué hace ahora stop-enricher.py en un turno trivial (ack <60 chars):
- Memoria (TESSERA
process_turn_to_memory): ya se saltaba (payloads=[], L412 — fix de ayer). - Push al servidor (
push_pending_to_server): ahora también se salta (guard nuevo, L446). - CODEX / GAUGE / self-awareness / BITÁCORA: siguen normales (no los toqué — son baratos + el sistema los espera).
Resultado: los cientos de turnos vacíos ya no episode-ifican (anti-dilución) NI golpean el servidor (anti-hammer). Las dos fugas cerradas.
Protocolo de seguridad cumplido: bug confirmado (ast.parse + push incondicional L446) → backup .bak.S20260607_TRIVIALGUARD → LEY ZERO override (tu autorización explícita) + presencia declarada en hooks-y-state/ACTIVO.md → edit guard-clause → py_compile PASS → commit 1c2d0de triple-remoto.
Recordatorio honesto: la causa raíz última (el harness generando turnos vacíos) sigue siendo del lado del uso/sesión — este guard mitiga el COSTO de esos turnos, pero lo ideal es no encadenar "continua" vacíos. Y el override LEY ZERO auto-expira en 10 min.
📌 PILA-PENDIENTES (R91) — COMPACT
🟢 Z-GUARD [R91] guard skip-push turnos triviales aplicado+verificado+pusheado 1c2d0de ✅
🟢 Z-DILUTION [previo] filtro <60 memoria (ayer) + guard push (hoy) = ambas fugas de turnos-vacíos cerradas ✅
🔴 T-PURGE [R28] purgar acks-basura ya en Qdrant — BLOQUEADO (servidor MCP inestable); spec listo [hard]
🟡 T-FIX2/3/5 [R1] reconciler + F-entity + dual-path — pendientes server [hard]
⚪ T-EMPTY-ROOT [R91] causa raíz turnos vacíos = harness auto-continue (lado uso, no hook) [inf]
❓ — (0 preguntas abiertas)