ppad-censor: Anytime-valid sequential constant-time testing.

[ library, mit, testing ] [ Propose Tags ] [ Report a vulnerability ]

A pure Haskell framework for sequential constant-time testing via anytime-valid e-processes.

Declare a constant-time hypothesis (an IO action plus two input samplers); the driver times the action on paired inputs from the two classes, in random order, and tests them with a hedged mixture of ppad-eproc e-processes, halting as soon as the evidence suffices.

Provides dudect-style fix-vs-random hypotheses, A/A and B/B negative controls, wall-clock and Linux hardware-counter meters, foreign targets via FFI or a dlopen CLI, and anytime-valid p-values and effect-size intervals.

Flags

Manual Flags

NameDescriptionDefault
llvm

Use GHC's LLVM backend.

Disabled
validate

Build the censor-validate executable, which runs the empirical calibration battery (synthetic-meter false- positive sweep + power table) and the host power-gain probe.

Disabled
run

Build the censor executable, a dlopen-based runner that drives a constant-time hypothesis against a foreign target resolved from a shared library.

Disabled
integration

Build the censor-integration test suite, which drives a compiled C shim through Censor.Runner.DL end-to-end. Requires a working C compiler on PATH; not available on Windows.

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.5.1, 0.5.2
Change log CHANGELOG
Dependencies base (>=4.9 && <5), bytestring (>=0.9 && <0.13), ppad-eproc (>=0.5 && <0.6), primitive (>=0.8 && <0.10) [details]
Tested with ghc ==9.8.4 || ==9.10.3
License MIT
Author Jared Tobin
Maintainer jared@ppad.tech
Uploaded by JaredTobin at 2026-10-11T07:50:06Z
Category Testing
Source repo head: git clone git.ppad.tech/censor.git
Distributions
Executables censor, censor-validate
Downloads 7 total (7 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2026-10-11 [all 1 reports]