La página única del proyecto de auto-reparación 24/7 de Zymplo: qué está corriendo ahora mismo en producción, dónde ver a los agentes trabajando, qué le toca a cada humano, y qué viene después. Todo lo que dice esta página fue medido en vivo (SSH a la caja de prod, API de GitHub, endpoint /health) — nada declarado sin verificar.
Acá se ven los agentes trabajando en tiempo real: cola de issues detectados, botones Aprobar/Rechazar/Diagnosticar/Promover a PROD, diffs propuestos, y la card nueva de costo LLM con barra contra el cap diario.
agents.zymplo.com/dashboard#autofix agents.zymplo.com/dashboard#avance — funnel + costosEl documento de convergencia Carlos ⇄ DevOps con la atribución de cada idea. Sus 2 correcciones de estado fueron verificadas en vivo y resultaron exactas.
agents.zymplo.com/plan-autofixEl ritual semanal, la Fase 0 humana paso a paso, las respuestas a las 5 decisiones y el scorecard L1→L2 viven en el comando central del repo HQ.
zymplo-hq/01-comando-central/2026-07-28_AUTOFIX-MEJORA-CONTINUA.mdLa auditoría "gusano" del chat (14 bugs, la clase que el autofix no veía) y el batch mobile — el material de origen de los 7 detectores nuevos.
chat-fixes.zymplo.com mobile-fixes.zymplo.com| PR | Qué hace | Verificación en vivo |
|---|---|---|
| #2829 | Cuenta Anthropic dedicada para todo el gasto LLM del autofix (juez, proposer, diagnósticos). Fallback seguro: sin el secret en Doppler, comportamiento idéntico. | ✓ merged 16:23Z |
| #2830 | CONTIQ entra al registro de componentes fixeables (solo su módulo contiq-portal, denylist dura heredada, arranca detect-only). |
✓ merged 16:23Z |
| #2831 | Juez de IA a 2x/día (06:30 y 18:30 UTC). Antes juzgaba en cada scan de 2h = 12x/día. Mismo alcance, ~6x menos gasto. | ✓ job en scheduler prod (log 17:13Z) |
| #2834 | 7 detectores regex ($0) de "respondió bien pero dijo algo mal": template sin renderizar, doble moneda, mezcla de idioma por campo, UUID crudo, monto sin moneda, decimal US, muro de texto. Los bugs reales de ayer son los tests. | ✓ merged 17:01Z · 35 tests |
| #2836 | Contabilidad de costo + cap diario US$5: ledger en Postgres, cada call LLM registrada, batches se saltean al alcanzar el cap, card de gasto en el dashboard, y el mapa de arquitectura entra al prompt del proposer. | ✓ tabla creada en DB prod (verificado SSH) |
| #2817 | Runner de propose en CI para crm-api (de Victor/DevOps) — el proposer genera diffs donde vive la fuente del monorepo. | ✓ merged 14:39Z |
| #2808 | Mobile quick-wins: regla no-color-literals activada (estaba instalada y apagada) + 42 tests dormidos ahora corren en CI. | ✓ merged 12:53Z |
| #2832 | Release → main + deploy (incluye todo lo anterior + fixes mobile de otras sesiones). | ✓ /health = 0bd324aa (17:14Z) |
| Proceso | Cuándo corre | Costo |
|---|---|---|
| Scan determinista (regex + los 7 detectores) | cada 2h (min :15) | $0 |
| Juez de IA (Haiku · cuenta dedicada) | 06:30 y 18:30 UTC · cap 50/corrida | ~$0.005/conversación |
| Proposer (Sonnet · genera diffs) | cada 2h (min :45) · solo si hay issues · cap 5 | $0.05–0.25/issue |
| Runner "rama-lista" (tests + PR) | cada hora (min :20) · solo aprobados | $0 (CI) |
| Verificación en QA | cada 15 min | centavos |
| Promoción a prod | cada 10 min · solo tras click humano | $0 |
Techo de gasto triple: cap diario US$5 en Postgres (los batches se saltean solos) → watchdog anti-fantasma del proceso → spend limit US$25/mes en el Console de la cuenta dedicada. Envelope real esperado: US$10–40/mes.
autofix@zymplo.com) con billing propio.autofix-prod → generar API key scoped.doppler secrets set AUTOFIX_ANTHROPIC_API_KEY (config prd + qa del proyecto zymplo-langgraph).autofix LLM key: dedicated (…xxxx).judge:* — cada decisión tuya ES el dato de precisión que decide si el sampling del juez sube (ramp: cap 10 → 25 → 50, avanza solo con precisión ≥70%).| # | Decisión | Respuesta | Estado |
|---|---|---|---|
| 1 | Sampling/confianza del juez | 2x/día · ramp cap 10/conf 0.85 → 25/0.8 → 50/0.7 · avanza con precisión auditada ≥70% | ✓ en prod (#2831) |
| 2 | Categorías L2 + métrica "L1 confiable" | i18n/copy/formato-moneda · ≤40 líneas · nunca auth/pagos. Scorecard en sección 7 | definido · se mide desde hoy |
| 3 | Prioridad Fase 3 | Validadores deterministas PRIMERO ($0, cierran los bugs reales) → golden conversations después | ✓ deterministas en prod (#2834) |
| 4 | Sentry en front CONTIQ | Sí, pero SOLO browser-side del portal (backend queda en Loki, como planteó Victor — no duplicar) | Fase 2 (PR-8) |
| 5 | Key Anthropic para el CI | Cuenta NUEVA dedicada (límite $25/mes) — ni la del bot ni la org compartida | código listo (#2829) · falta Fase 0 humana |
| Criterio | Cómo se mide | Hoy |
|---|---|---|
| ≥30 días con precisión del juez >80% | issues judge aprobados ÷ (aprobados + rechazados) — sale del audit log del dashboard | arranca hoy |
| ≥20 PRs autofix mergeados con 0 reverts | un rollback post-deploy resetea el contador | 0/20 |
| Solo categoría i18n/copy/formato ≤40 líneas | gate existente autofix_high_confidence_max_lines + label | gate ya en el código |
| 30 días sin tocar el cap de gasto | ledger bot_autofix_llm_calls vs cap $5 | arranca hoy |
| Digest + ritual sostenidos 30 días | sign-off de los 3 directores | digest = Fase 2 |
Con 5/5: decisión de Carlos sobre el mecanismo de merge (GitHub bloquea que Actions apruebe PRs — la opción recomendada es una GitHub App con carve-out en CODEOWNERS solo para los paths L2; Luz conserva * para todo lo demás). L3 (auto-deploy) queda apagado hasta que L2 pruebe ser confiable.
| Pieza | Qué agrega | Esfuerzo |
|---|---|---|
| PR-6 · Copilot | Logins individuales del dashboard (carlos/victor/luz — cada acción queda firmada con el nombre real; la plomería de auditoría ya existe) + digest diario por email a los 3 (issues nuevos, pendientes de aprobar, PRs esperando review, gasto de ayer) | ~2 días |
| PR-7 · Golden conversations | Conversaciones guionadas (registrar gasto, dashboard, editar, trilingüe) corriendo solas contra QA cada noche + post-deploy — atrapa el bug ANTES de producción. Las fallas entran como issues normales al dashboard | 1–2 semanas |
| PR-8 · CONTIQ | Sentry browser-side del portal + flow-test E2E (login→cartera→detalle→operación) — la superficie de dinero/compliance de 200+ contadores | ~1 semana |
| Mobile burn-down | Limpiar las 236 violaciones de color hardcodeado → subir la regla de warn a error (bloquea CI) | 2–3 días mecánicos |
| Fase 3 · Trimestre | Mobile proposable en el registro + Maestro E2E (emulador en runner — infra Victor) + canary CONTIQ + primera receta determinista + foto-recibo en golden | 8–10 días |
El robot que busca errores, los arregla, los prueba y los sube ya corre en producción con todo lo nuevo de hoy: ahora ve los errores "silenciosos" (los que no rompen nada pero dicen algo mal), gasta 6 veces menos en el juez de IA, tiene un freno de gasto de $5 por día, y cada peso queda anotado.
Nada llega a producción sin dos clicks humanos — de Carlos, Victor o Luz. Esta página es el mapa; el trabajo en vivo se ve en agents.zymplo.com/dashboard#autofix.
Los únicos pasos pendientes son humanos y están en la sección 5 — 30 minutos en total, y nada se rompe mientras tanto.