Awesome Reviewers checks + prompts

Concurrency model checking

Explores thread interleavings systematically to find races and orderings that fail only rarely.

V1029 technique
tactic Formal verification and model checking
1 of 256 scanned repositories run it (0%)

Sub-techniques

2

IDNameDescription
V1029.001Exhaustive interleavingEnumerate all interleavings of a small test (loom).
V1029.002Randomized schedulingSample schedules with a controlled scheduler (shuttle).

Craft it

  1. Isolate the concurrent primitive behind an interface the checker can swap.
  2. Write small tests with two or three threads.
  3. Run them in a dedicated CI job with the checker's cfg flag.

Reverse engineer it

Signs that a codebase already runs this technique, and where to read how it is configured.

  • --cfg loom in RUSTFLAGS or loom::model in tests.
  • ThreadSanitizer builds in CI.

Where the scanned repositories configure it:

  • .github/workflows/*.yml in 1 repositories

Detected by the scanner as: Concurrency model checking (races and orderings that fail only under specific interleavings.)

Open-source packages

3

Tools seen in scans

by repositories that run them

ToolReposCommand seenRuns inDocs
loom 1 via loom via environment ci docs

Procedure examples

repositories that run it, most-starred first

RepositoryToolsRuns inEvidence
tokio-rs/tokio loom ci .github/workflows/ci.yml jobs.loom-compile.steps[3] (build --cfg loom)

Other techniques in Formal verification and model checking