Challenge brought to you by Turso

Turso is rewriting SQLite in Rust
Find a bug to win $1,000

SQLite, while legendary, has remained closed to community contributions. We at Turso are changing that by building a modern SQLite alternative in Rust - one that's open source and community-driven. Our goal isn't just features, but rock-solid reliability through Deterministic Simulation Testing.

We are so confident in the long-term ability of the DST to find the rarest bugs that even at the current early stage, we are offering cash bounties for those who can find cases where a bug survived this testing. During the alpha phase of the project, we still expect some bugs to exist, and we'll offer $1,000 for any bugs that lead to data loss or data corruption. As our releases progress, we will continuously expand the scope of bugs and size of the bounty.

Background
Challenge Completed

Submissions are closed

All bounties have been awarded to the winners

How to participate

Got questions? Join us on Discord

1
Set up your environment

Follow the CONTRIBUTING.md guide to build the Turso CLI locally. You'll need Rust installed and the repo cloned.

2
Understand the DST framework

Explore the simulator directory to learn how Turso's Deterministic Simulation Testing works and what kinds of bugs it currently detects.

3
Find a data corruption bug

Improve the simulator to expose a bug that slipped through. A qualifying bug causes data loss or corruption that cannot be recovered by a future patch in features enabled by default in the latest release.

4
Submit a PR with your simulator improvements

Open a pull request adding the DST scenarios that catch the bug. Once your PR is merged, you receive an $800 reward. Experimental or gated features are not eligible.

5
Fix the bug

Patch the underlying issue you uncovered and earn an additional $200 bringing the total reward to $1,000.

Media