Cómo manejamos producción
6 runbooks operacionales públicos · cómo manejamos deploys · incidents P0 · rotación secrets · backups · escalation Enterprise · onboarding. MTTR <15min crítico · cultura SRE explícita · zero black box.
6 runbooks canónicos
Deploy a producción
- 1.Pre-check: typecheck + tests + claims-policy (CI gate)
- 2.wrangler deploy --dry-run (verifica tamaño bundle <10MB)
- 3.Deploy a worker production (Cloudflare Workers)
- 4.Smoke test: /health endpoint 200 + 5 test requests
- 5.Si fail cualquier paso → rollback inmediato + notify Sentry
- 6.Si OK → update changelog + notify Slack founder
Incident response P0 (todo down)
- 1.Trigger: alerta inmediata Slack + email + SMS founder
- 2.Reconocer alerta < 5min (acknowledge en UptimeRobot)
- 3.Status page update: 'Investigating' + post Slack clientes pago
- 4.Diagnóstico: Cloudflare logs tail + Sentry recent + Supabase queries
- 5.Mitigar: rollback si reciente deploy · escalation Cloudflare support si CF · Supabase status si DB
- 6.Validar fix: health endpoint 2 polls verdes + sample requests OK
- 7.Status update: 'Resolved' + comms internas
- 8.Postmortem started en <48h (ver /incident-postmortems)
Rotación secret (cualquier API key)
- 1.Generar nuevo secret en vendor (e.g., OpenAI dashboard)
- 2.Blue-green pattern: wrangler secret put NEW_KEY (NUEVO nombre temporal)
- 3.Deploy con código que usa NEW_KEY o falls back a OLD_KEY
- 4.Validar producción con NEW_KEY (smoke test)
- 5.Revoke OLD_KEY en vendor dashboard
- 6.Update código para usar NEW_KEY canonical name
- 7.Deploy final · sin OLD_KEY referenced
- 8.Audit log: registro rotación en docs/security/SECRET_ROTATION_LOG.md
Backup verify (Supabase mensual)
- 1.Supabase dashboard → Backups → seleccionar latest point-in-time
- 2.Crear branch de prueba 'restore-test-YYYY-MM' (Supabase branching)
- 3.Restore backup a branch (no toca prod)
- 4.Validar: COUNT(*) tables principales vs prod numbers
- 5.Validar: random sample 10 pacientes con datos completos
- 6.Validar: RLS policies activas (no cross-tenant leak en branch)
- 7.Cleanup: delete branch test
- 8.Audit log: backup_verify_log.md update
Escalation cliente Enterprise crítico
- 1.Acknowledge inmediato (no auto-response · founder real)
- 2.Triage: replicar issue (si posible) en staging · gather logs
- 3.Comunicación honest: si causa identificada → comparir · si no → 'investigando'
- 4.Updates cada 30min vía Slack/WhatsApp (no email · velocidad)
- 5.Fix: hotfix patch + deploy URGENT (skip standard CI gates si crítico patient-facing)
- 6.Validar fix con cliente (no auto-confirm · cliente verifica)
- 7.Postmortem público en <48h (ver /incident-postmortems)
- 8.Si SLA breach → credit automático en próxima invoice (ver /sla)
Onboarding clínica nueva (semana 1)
- 1.Kickoff call 60min (grabada · transcripción)
- 2.Audit técnico stack actual cliente (PMS · WhatsApp · Cal · Stripe)
- 3.Provisionar tenant staging Supabase (RLS · secrets)
- 4.Setup WhatsApp Business número (template approval Meta)
- 5.Configurar Cal.com event types (sync with PMS si aplica)
- 6.Cargar Knowledge Base (precios · tratamientos · FAQ · staff)
- 7.Smoke test 10 mensajes en staging
- 8.Sign-off owner para semana 2 (training + UAT) · ver /onboarding-process
6 principios cultura SRE
Inspirados en Google SRE Book + Stripe engineering culture + Linear incident response. Aplicados desde el primer commit · no añadidos post-incidente.
Los runbooks no son docs estáticos. Cada uno tiene su slash command ejecutable en repo (Claude Code agentic operating system):
- ·
/deploy-safe· runbook deploy completo - ·
/incident-rca· runbook incident response P0 - ·
/rotate-secret <NAME>· runbook rotación - ·
/backup-verify· runbook backup verify mensual - ·
/smoke-test· runbook end-to-end test - ·
/onboard-clinic· runbook onboarding cliente
Cada slash command está documentado en `.claude/commands/` repo público. Auditable · reproducible · sin tribal knowledge.
¿Tu ops/SRE team quiere revisión técnica?
Si tu compliance/ops team necesita ver runbooks específicos en acción · arquitectura monitoring · escalation paths · reservamos 60min sesión técnica directa founder. Útil para DSO/Enterprise compliance review pre-firma.