Repository navigation
v0.7.0 — emulator conformance + runnable failure scenarios
What's new
Emulator conformance — fidelity conform
microburst fidelity capture --endpoint-url <emulator> replays the same 28 probes against any AWS-compatible endpoint, and microburst fidelity conform --emu DIR --aws DIR diffs the captures against the committed real-AWS goldens on the fields SDKs actually read: HTTP status, parsed Error.Code, and Content-Type. Emulators (or gateways, proxies, test doubles) can gate on AWS wire similarity with zero AWS credentials.
First run against a real emulator found 21/28 divergences — systematic Content-Type drift, error codes that don't parse, and requests routed to the wrong service.
Runnable failure scenarios — examples/
Seven self-contained examples for end users, each with a chaos.yml + runnable app.py:
| Example | Failure story |
|---|---|
01-throttled-writes |
DynamoDB ProvisionedThroughputExceededException at 40% — SDK retries vs hard failure |
02-timeout-cascade |
App timeout shorter than the SDK retry budget — the sleeper bug |
03-poison-queue |
SQS receive/delete flakiness — idempotent consumers, duplicate delivery |
04-s3-slowdown-uploads |
SlowDown@503 + bandwidth cap on large uploads |
05-stream-cut |
Mid-frame event-stream truncation + terminal errors |
06-expired-token |
ExpiredTokenException bursts — does the app refresh credentials? |
07-http-dependency |
Latency/reset/timeout over arbitrary HTTP, no service matcher needed |
A test keeps every shipped config parseable against the rule DSL.
Install
pip install microburst
# or
docker run -p 9999:9999 ghcr.io/pingedbrain/microburst:v0.7.0Full changelog: CHANGELOG.md