Why we built Shakedown
We built Shakedown because a flaky test can go green by accident, and green is all an agent checks before it stops.
What Shakedown does
Shakedown catches flaky Jest tests that an ordinary green test run can miss—before Codex says the job is done.
A test that depends on timing, randomness, or the current time can pass once by luck. Shakedown runs the selected test normally, then repeats it ten times with reproducible changes to timer delays, Math.random(), and Date.now().
If those results disagree, Shakedown blocks Codex completion and reports a failing seed with an exact replay command. Once Codex repairs the test and every check agrees, the work can finish.
Developers can run Shakedown directly from its CLI or install it as a Codex Stop hook so changed Jest tests are checked automatically at the end of an agent turn.
The developer experience
Codex changes a Jest test. The ordinary Jest run passes. Shakedown repeats the changed test under controlled variations. Mixed results block completion with a reproducible failing seed. Codex repairs the race, Shakedown verifies the repair, and the turn completes.
Shakedown is a repeatability gate—not a code reviewer or replacement for the project's normal test suite.
Built with Codex and GPT-5.6
Shakedown was built during OpenAI Build Week with Codex powered by GPT-5.6 as the primary engineering collaborator. Codex helped shape the blocking contract, implement the deterministic gate, CLI and hook adapters, create focused Jest fixtures, diagnose live Stop-hook failures, and review the resulting work.
GPT-5.6 was part of the development workflow, not a runtime dependency. Shakedown makes no model API call and requires no API key. Its seeds, scheduling, deadlines, verdicts, exit behavior, and privacy controls are deterministic TypeScript code.
Testing and privacy
The submission includes a prebuilt judge artifact, checksum, clean fixture, and exact no-rebuild verification path. The verified release platform is macOS with Node.js 18 or newer and a target project using local Jest 29+ with the Node test environment.
Shakedown stores sanitized session state under the repository's Git directory, sends no telemetry, and excludes test source, raw Jest output, prompts, transcripts, environment data, and raw session IDs from its verdict artifacts.
Built With
- codex
- gpt-5.6
- jest
- node.js
- typescript