9.1 Online Evaluation & Drift Monitoring
How to keep grading a shipped agent’s real production traffic after the test suite has already passed, and get flagged automatically when its behavior drifts.
Testing Doesn’t Stop at the Merge
Section titled “Testing Doesn’t Stop at the Merge”A test suite (Surface 1) tells you an agent behaved correctly against the scenarios you thought to write. An online evaluation policy keeps checking a sample of its live production traces against the same kind of deterministic matcher used by ASSERT_OUTPUT – contains, notContains, regex, notRegex, jsonPath+equals – against the agent’s recorded OpenTelemetry GenAI trace, so a behavior change that only shows up in real traffic (a prompt change upstream, a model swap, a tool that started returning a slightly different shape) gets caught between test runs, not at the next release.
Drift Alerts
Section titled “Drift Alerts”Each policy can also watch its own pass rate over time: a trailing 7-day baseline compared against a trailing 24-hour current window, using a two-sided statistical significance test (the same kind of test used for run-over-run case comparisons – see “Run-over-Run Significance” in the flaky-quarantine playbook) so a noisy day doesn’t read as drift. A statistically significant drop opens a drift alert, visible on the policy’s dashboard and acknowledgeable once investigated; a per-policy cooldown keeps one ongoing drift from paging the same alert repeatedly.