feat(episode): TRAZA_diagnstico-ssh-cx43-veredicto_S20260607.R19_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD

Skill: NONE | Type: troubleshooting
Summary: EPISODIO 19 — MNEMO Pipeline: Diagnóstico SSH cx43 — veredicto
This commit is contained in:
Ember 2026-06-08 18:29:53 +00:00
parent c5e8580061
commit 95acb2db72

View file

@ -0,0 +1,45 @@
---
episode_id: "b8fa1303-a274-41a4-8b37-ebbd7d3f84f1"
puente_flat: "TRAZA_diagnstico-ssh-cx43-veredicto_S20260607.R19_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD"
session_code: "S20260607.MNEMO_BUG_FORENSE_MAP"
acto_dialogico: "informar"
actor_flujo: "multi_actor"
criticidad_aegis: "low"
skill_dominante: "NONE"
fase_proyecto: "operations"
tipo_semantico: "troubleshooting"
summary_one_line: "EPISODIO 19 — MNEMO Pipeline: Diagnóstico SSH cx43 — veredicto"
source_type: "claude_code"
trust_boundary: "internal"
created_at: "2026-06-08T18:28:56.504575+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
FORENSE cerrado y entregado, John.
## Diagnóstico SSH cx43 — veredicto
**El box NO está muerto. sshd está saturado/colgado: acepta el TCP y resetea (~20s) antes de mandar el banner.**
Evidencia dura: TCP handshake **completa** (`Connection established`) → luego **RST** del peer a los ~20s. Eso solo es posible con el kernel/red vivos. La falla es de capa de aplicación (sshd), no de red ni de box caído. El HTTP 200 de `git.brasaluz.com` NO contaba como prueba de vida del box — está detrás de Cloudflare.
**Causa raíz (ranked):** H1 sshd saturado/MaxStartups (0.45) · H2 recursos del box OOM/disco (0.30) · H3 fail2ban por mis reintentos (0.15) · H4 mitigación DDoS Hetzner (0.10).
**Límite honesto:** la causa vive dentro del box y la vía de diagnóstico (SSH) es justo lo roto. No puedo arreglarlo desde aquí — **requiere tu consola Hetzner (VNC)**. El informe trae los comandos exactos (`uptime`, `df -h`, `free -h`, `systemctl status sshd`, `fail2ban-client status sshd`) + remediación por hipótesis (restart sshd / liberar disco / unban / reboot último recurso).
**Entregado + pusheado (commit `2e99fcb`, 3 remotos):** `docs/FORENSE_SSH_CX43_DOWN_S20260607.md`.
## Estado consolidado de la sesión
| Tarea | Estado |
|---|---|
| Grafo determinista 304/280 | ✅ commit, 3 remotos |
| Backbone SVG + Mermaid | ✅ commit, 3 remotos |
| Notebook marimo navegable | ✅ construido+validado, commit — deploy ⏸️ espera SSH |
| FORENSE SSH cx43 | ✅ diagnosticado + informe entregado |
**Pila pendiente (esperan tu acción):**
1. 🔴 **Consola Hetzner** → revivir sshd cx43 (bloquea deploy notebook + pipeline MNEMO + MCP ember-memory).
2. 🟠 Rotar key OpenRouter leaked (deuda abierta desde la corrida graphify).
¿Entras a la consola Hetzner a revivir el sshd, o lo dejamos anclado y seguimos con otra cosa local mientras el servidor está caído?