The companion RuboCop extension for Constable, the opinionated Rails testing gem. Constable's second principle is that nondeterminism is caught by the linter, not discovered in CI. These seven cops are that linter: bare `sleep`, unfrozen `Time.now`, unstubbed HTTP, class-level shared state, assertions hidden behind a branch, retry and eventually helpers, and an `unsafe` block that never says why. Every cop is scoped to native `Constable::Case` files. Cold cases -- untouched RSpec or Minitest files running through `Constable::ColdCase::*` -- are exempt by design, because the whole point of the adoption story is that taking the on-ramp costs nothing. Install it alongside `constable-rails` and add `require: rubocop-constable` to `.rubocop.yml`.

Required Ruby Version

>= 3.1.0

Authors

Ray Hughes

Versions

  1. 2.0.0 September 09, 2026 (21.5 KB)
  2. 1.4.2 September 09, 2026 (21.5 KB)
  3. 1.4.1 September 09, 2026 (21.5 KB)
  4. 1.4.0 September 09, 2026 (21.5 KB)
  5. 1.3.3 September 08, 2026 (21.5 KB)
Show all versions (12 total)

SHA 256 checksum