Checklist · Chaos Engineering

AI Chaos Engineering Checklist

Run a controlled failure experiment against an AI system — hypothesis, blast radius, stop conditions, the failures worth injecting, and what "graceful" has to mean.

Markdown. No sign-up, no email.

System: _______________ Experiment: _______________ Date: _______

Not "unplug things and see". A hypothesis test with a stop condition.

1. Design the experiment#

  • [ ] Steady state defined and measured first — what normal looks like, numerically
  • [ ] Hypothesis written before running it
  • [ ] Blast radius stated: environment, traffic, data
  • [ ] Stop condition stated — what ends the experiment immediately
  • [ ] Team present and available
  • [ ] Announced — an unannounced experiment that looks like an incident wastes everyone's time
  • [ ] Off-peak
Steady state:   ____________________________________
Hypothesis:     ____________________________________
Blast radius:   ____________________________________
Stop condition: ____________________________________

2. Provider failures to inject#

  • [ ] Complete outage — sustained errors from the model API
  • [ ] Slow, not down — 30s instead of 2s. Harder and more common
  • [ ] Rate limited — sustained 429s
  • [ ] Malformed responses — truncated JSON, empty content, unexpected schema
  • [ ] Partial degradation — responses arrive but are poor. No error to catch

3. Surrounding failures#

  • [ ] Retrieval unavailable — does it refuse, or answer ungrounded from training data?
  • [ ] Retrieval returns empty — not an error. Does it say "I don't know"?
  • [ ] Tool failures (agents) — timeout, error, wrong shape
  • [ ] Stale corpus — nothing errors, answers confidently wrong
  • [ ] Spend cap reached mid-task

4. "Graceful" verified — define before testing#

  • [ ] Honest — user told something is wrong, not shown a spinner forever
  • [ ] Bounded — one slow dependency does not stall unrelated features
  • [ ] Lossless — queued work survives, or is discarded with the user informed
  • [ ] Idempotent — a retry cannot duplicate an effect
  • [ ] Recoverable — resumes without intervention when the dependency returns
  • [ ] Visible — something alerted. Silent degradation lasts longest

5. The findings people usually get#

  • [ ] Timeouts longer than intended, threads piling up
  • [ ] Retry without backoff, extending the outage
  • [ ] No user-facing message at all
  • [ ] Non-idempotent operations retried, producing duplicates
  • [ ] Queued work lost on restart

6. Afterwards#

  • [ ] Result recorded against the hypothesis — matched or not
  • [ ] Surprises recorded. These are the value
  • [ ] Findings fed into runbooks and the incident plan
  • [ ] Fixes made, then experiment re-run to verify
  • [ ] Next experiment scheduled

Record#

Hypothesis held?Yes / No / Partly
What surprised us
Actions, with owners and dates
Re-run scheduled for

Sign-off#

NameDate
Experiment lead
System owner

Back to Chaos Engineering