Observation: la calidad en producción

El octavo stage del IQL responde "cómo se comporta en el mundo real?". Esta página explica qué observa, quién decide qué, con qué métricas se mide y qué parte puedes cubrir con este repo.

Late-GameL4 · Production ObservationSin skill
Stage declarado, sin skill todavía

El IQL declara Observation como parte del ciclo, pero este repo no tiene ninguna skill que lo ejecute. Nada en .agents/skills/ vigila producción, y .agents/skills/agentic-qa-core/references/stage-gates.md lo deja sin checklist de Definition of Done a propósito: un checklist vacío parecería un gate que un orquestador puede tildar. Lee esta página como el mapa de lo que el método pide para producción.

Qué es

Observation es el último stage del Late-Game, la fase en la que QA trabaja junto a DevOps y SRE. Viene después de Regression: el release ya salió y ahora importa lo que pasa con usuarios reales. Agrupa los steps 11 a 15 del IQL. El step 10 (mantenimiento continuo y regresión) pertenece al stage Regression, que sí tiene skill.

Su función en el método es cerrar el ciclo. Lo que se aprende en producción vuelve al análisis del siguiente Shift-Left, y vuelve por un mecanismo con nombre: el error budget y la escape rate. Si ningún número regresa al step 1, el último step es un final y no un retorno.

El contrato agéntico

Como todo stage, Observation declara qué hace el agente y qué firma la persona. Esta fila está en la tabla de contratos de stage-gates.md:

El agente hace Vigila las señales que el producto ya emite (objetivos de servicio, error budget, monitoreo de usuarios reales, cohortes de canary), abre ítems en el backlog cuando una señal se sale de rango y devuelve lo aprendido al siguiente Shift-Left.
La persona firma Los SLOs y la política de error budget, y la decisión de detener releases. Ningún umbral se hereda de un benchmark ajeno.
Evidencia exigida Métricas del propio producto contra los targets que ese producto declaró. Los benchmarks de la industria sirven de referencia, nunca de objetivo.
Autonomía 3 en la escala 0-5 (decide dentro de límites declarados y escala fuera de ellos)
Verificador separado No aplica todavía
Skill dueña Ninguna. La unidad operativa sería una rutina agéntica.

La rutina agéntica

Hay stages que no caben en una sesión: nadie se sienta a mirar producción todo el día. Para eso el IQL define la rutina agéntica, una corrida que arranca sola (por horario o por un disparo) y cuyo producto es evidencia con un destinatario. Tiene cuatro partes:

  1. Disparador

    Qué la despierta: un horario, un push, un umbral cruzado. Tiene que ser explícito y único. Sin disparador con nombre, es un script que alguien corre a mano.

  2. Permisos acotados

    Qué puede leer y qué puede escribir, y nada más. No hereda la confianza general del agente.

  3. Evidencia

    Qué deja al terminar, salga bien o mal: el comando, la salida, el artefacto. Sin evidencia reproducible no hay conclusión, aunque nadie la mire.

  4. Reporte

    A quién le habla y por qué canal. Una rutina que no le reporta a una persona es una alarma apagada.

Los cinco steps

El sitio oficial los marca como "panorama": se enseñan como mapa de la industria y hoja de ruta, no como práctica que se opera contra un entorno productivo real. Cada uno exige algo del entorno antes de tener sentido. El número de adopción sugerido indica en qué orden conviene incorporarlos.

Step 11: Canary release monitoring

La feature nueva sale primero para un porcentaje chico de usuarios. Se comparan las métricas de esa cohorte con las del resto y, con esos datos, se decide si se amplía el rollout o se hace rollback. El aporte de QA es definir qué señales miran la cohorte (errores, latencia, conversión del flujo nuevo) y con qué umbral se corta.

Requiere despliegue progresivo (canary o feature flags) con métricas por cohorte. Adopción sugerida: nº 4.

Step 12: A/B testing

Dos versiones de una funcionalidad conviven y se mide cuál funciona mejor con usuarios reales. El experimento necesita una hipótesis clara y una métrica de éxito definida antes de empezar, y el resultado se analiza con criterio estadístico, no a ojo.

Requiere feature flags y analítica de producto. Adopción sugerida: nº 5.

Step 13: Real User Monitoring (RUM)

Se instrumenta la aplicación para capturar el rendimiento que viven los usuarios reales: Core Web Vitals, errores del lado del cliente, diferencias por dispositivo o región. Las alertas avisan cuando algo se degrada. Es la fuente de buena parte del MTTD.

Requiere error tracking y RUM en producción. Adopción sugerida: nº 2.

Step 14: Chaos engineering

Se introducen fallas controladas (un servicio caído, latencia agregada, una dependencia que no responde) para comprobar que el sistema se recupera como se espera. Cada experimento parte de una hipótesis de resiliencia y empieza por servicios no críticos. Lo que falla se documenta como debilidad de arquitectura.

Requiere arquitectura distribuida, SLOs definidos y un equipo SRE. Adopción sugerida: nº 6, la última.

Step 15: Feedback loop

Se juntan el feedback de soporte, las reseñas y las métricas de producción, y se convierten en trabajo: ACs actualizados, ítems nuevos en el backlog, riesgos que el siguiente Shift-Left tiene que mirar. Es el step que convierte el ciclo en bucle.

Requiere al menos una fuente de producción (RUM o alertas) y un ritual que devuelva lo aprendido al step 1. Adopción sugerida: nº 3.

SLO y error budget

SLO (Service Level Objective)
El objetivo de servicio que el equipo se compromete a cumplir, por ejemplo "99.9% de las requests responden sin error en el mes". Lo define la persona, no el agente, y se elige según la criticidad del producto: un banco y una app interna de RRHH no necesitan el mismo.
Error budget
Lo que el SLO deja de margen. Con un SLO de 99.9%, el presupuesto es el 0.1% restante. Mientras quede presupuesto, el equipo puede seguir liberando; cuando se consume, la política de error budget dice qué pasa (por ejemplo, frenar releases hasta estabilizar). Esa política también la firma una persona.
Escape rate
Bugs encontrados en producción sobre el total de bugs del período. Mide lo que el método promete: que el defecto se encuentre antes de llegar al usuario.

Juntos, error budget y escape rate son el mecanismo de retorno: le dicen al siguiente ciclo dónde tiene que invertir análisis.

Métricas

Las fases anteriores se evalúan por lo que producen: un plan, un caso, un PR. Esta se evalúa por lo que pasa en producción cuando nadie está mirando. Los valores de la tabla son benchmarks de referencia del sitio oficial, no objetivos universales: cada producto declara los suyos según criticidad, baseline, arquitectura y negocio.

Métrica Qué mide Benchmark de referencia
MTTD (Mean Time To Detect) Cuánto tarda el equipo en enterarse de que algo se rompió en producción < 5 minutos
MTTR (Mean Time To Resolution) Cuánto tarda en resolverse una vez detectado < 30 minutos
Error rate Porcentaje de requests que terminan en error (5xx) < 0.1%
CSAT Satisfacción declarada por los usuarios; mide la percepción, no el sistema > 4.5/5
SLO compliance Porción del tiempo en que se cumplen los objetivos de servicio > 99.9%
Performance score Rendimiento percibido según Core Web Vitals > 90/100

El IQL suma métricas que miden al propio método:

Métrica Qué dice
Change failure rate Porcentaje de despliegues que terminan en incidente, rollback o hotfix (métrica DORA)
Escape rate Bugs de producción sobre el total de bugs del período
Ratio Deferred Qué porción de escenarios deja fuera de la regresión el gate de ROI. Si más de la mitad cae en Candidate o Manual, el filtro no se aplicó.
Flaky rate Tests que cambian de resultado sin que cambie el código, sobre el total de la suite
Lead time AC → ATP (opcional) Tiempo entre el criterio de aceptación y su plan escrito; mide si el Shift-Left llega a tiempo

Hasta dónde llegar

Esta fase no se adopta entera. Cada nivel de madurez pide algo del entorno, y Observation es el último:

Nivel Steps Requiere Resultado
L1 · Prevention 1, 2 Backlog en un tracker y QA en el refinamiento Historias mejor definidas
L2 · Early Detection 3, 4 Un ambiente de prueba antes del merge Feedback antes del PR
L3 · Continuous Detection 5 a 10 Repositorio con PRs y CI en cada PR Regresión confiable en CI
L4 · Production Observation 11 a 15 Observabilidad en producción; despliegue progresivo para canary y A/B; SLOs y cultura SRE para chaos Producción alimentando la estrategia

Herramientas

El IQL define qué observar; la herramienta la pone el entorno. Casi todo en esta fase lo trae el cliente, y se trabaja con lo que ya tiene:

Necesidad Ejemplos
Error tracking y tableros de métricas Sentry, Grafana, Datadog
Despliegue progresivo Feature flags, rollout por porcentaje
Carga y rendimiento contra el sistema real k6 (solo cuando performance entra como riesgo desde el análisis)
Disponibilidad medida desde afuera UptimeRobot o cualquier monitor de uptime
Chaos Gremlin, Litmus, scripts propios
Feedback loop El tracker del equipo (Jira), Slack o Teams

Qué puedes hacer con este repo

No hay skill de Observation, pero sí hay piezas del ciclo que ya conectan con producción:

Lo que falta es la rutina que vigile las señales por su cuenta. Hasta que exista, esa vigilancia es trabajo humano con las herramientas del equipo.

El transporte para una rutina así ya está en el repo: el modo AUTOMATION de /orca-orchestration corre un prompt versionado con un disparador tipo cron, sin una persona del otro lado. Cumple las cuatro partes de arriba a su manera: despacha workers y no produce nada por sí mismo, no publica ni aprueba, lo ambiguo lo reporta en vez de adivinarlo y su reporte siempre dice cuánto costó la corrida en tokens. Sus recetas, como el triage nocturno de una corrida de regresión, están en .agents/skills/orca-orchestration/references/automations.md. Ninguna vigila producción: la rutina de Observation es la que sigue sin escribirse, y sería una receta más sobre ese mismo transporte.