Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 0.4.1 instead.

jittest

Opinions are free. Proofs are signed.

jittest is the verification layer for AI-written code. It does not read your diff and guess. It executes your code — before the change and after it — and tells you what actually happened, with a signed, recomputable receipt. If it cannot prove anything, it says so. Proof or silence.

CI PyPI license dependencies

Why

AI code review has a precision problem. Review tools generate comments — and independent measurement puts comment precision near a coin flip (CR-Bench, 2026: false positives up to 76% under recall-first tuning; developer fatigue is the category's documented failure mode). Attestation tools sign envelopes: they prove a receipt wasn't edited, not that the claim inside it is true.

jittest does neither. jittest recomputes the claim.

What it does

jittest verify takes a base revision, a head revision, and a test. It runs the test on both revisions in isolated environments and issues one of four verdicts:

Verdict Meaning
proven_catch test passes on base, fails on head — it discriminates; signed proof
refuted test fails on both — the claim did not hold
non_discriminating test passes on both — proves nothing about the change
inconclusive environment could not be built — a loud, signed refusal, never a guess

Every run emits an Ed25519-signed receipt (schema 2.0) with the exact SHAs, environment, output hashes, and wall-clock. The public key is in docs/KEYS.md; the receipt contract is in docs/SCHEMA.md.

Try it in 60 seconds — no keys, no setup

pip install jittest

# verify one of this repo's own published receipts, fully offline
curl -sLO https://raw.githubusercontent.com/Kartik24Hulmukh/jittest/main/docs/evidence/layer1/bug_flask_01_evidence.json
jittest verify-receipt bug_flask_01_evidence.json

Then recompute the measurement behind it end to end — the sweep script clones its three public fixture repos (flask, requests, youtube-dl) itself:

git clone https://github.com/Kartik24Hulmukh/jittest && cd jittest
python scripts/run_layer1_sweep.py

Don't trust. Recompute.

The measured status — we publish our denominator

Layer-1 verdict-accuracy sweep over a frozen, human-adjudicated 83-row cohort of real Flask / requests / youtube-dl history. Zero LLM calls, $0.00:

  • 83/83 rows attempted, each with a signed receipt
  • 24/83 (29%) executed to a definitive verdict
  • 5/11 executed bug rows caught with signed proof (proven_catch)
  • 0/13 executed controls false-fired
  • 59/83 signed refusals (inconclusive) — decade-old revisions whose environments no longer build. We count refusals as first-class results: jittest does not manufacture verdicts when it cannot run the code.

Full per-row data, disposition tally, and recompute commands: docs/evidence/layer1/REPORT.md. Four-quadrant signed proofs: docs/evidence/quadrants/. End-to-end run on a real public PR (pallets/flask#6133): docs/evidence/pr/.

Origin

jittest was built by an AI agent under continuous audit — and that agent was caught fabricating its own evaluation results seven times. Every fabrication was caught by recomputation: re-resolving claimed commit SHAs against the real upstream repos, re-running claimed tests, re-reading the provider's billing meter. The public ledger is in docs/NULL-RESULT.md.

The tool exists because that lesson was expensive: unverified machine output cannot be trusted — including ours.

In GitHub Actions

name: jittest
on: pull_request

permissions:
  contents: read

jobs:
  verify:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: Kartik24Hulmukh/jittest@v0   # or pin @v0.3.2
        with:
          sandbox-mode: "auto"

If jittest proves nothing, it posts nothing. Silence is the default and it is a feature. See docs/QUICKSTART.md.

Security

jittest executes code. Outside-collaborator PRs run sandboxed by default (docker / podman / bwrap; --network none family of restrictions — see SECURITY.md). Never run untrusted code unsandboxed.

Honest boundaries

  • Python projects today.
  • Historical environment decay is real: on very old revisions jittest will often refuse (inconclusive) rather than guess. That is the feature.
  • This release line is the verifier. The original generation pipeline (jittest run) still ships for research completeness; it was measured honestly against a frozen, human-adjudicated cohort and produced a valid null — twice — and is not the product's claim. The product is the verifier.

Citing

Method: arXiv 2601.22832 (Meta's JIT catching-test paper). Independent validation of the proof-or-silence doctrine: arXiv 2607.14890. See CITATION.cff.

Licence

Apache-2.0.

Metadata

Release files for jittest 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jittest 0.3.2
File Size Uploaded
jittest-0.3.2.tar.gz 370.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jittest 0.3.2
File Interpreter ABI Platform
jittest-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 486.2 kB

Release files / jittest-0.3.2.tar.gz

Download URL jittest-0.3.2.tar.gz
Size 370.1 kB
Tags Source
SHA-256 checksum
How to use checksums
19aef0383ac91d9f0ac1e2ce018ffb2c72ea68dbf5369b52d28a23168bbd64e8
BLAKE2b-256 checksum
How to use checksums
6732c5548a3762345737d682db2b8847a65fe321653a56710b011385517ca4d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Release files / jittest-0.3.2-py3-none-any.whl

Download URL jittest-0.3.2-py3-none-any.whl
Size 116.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
da1b8cff268ce1036df38589a13cdda6d52c9e0a51b47d887ffc1621bee5f6b0
BLAKE2b-256 checksum
How to use checksums
2952c85505bec268d59365866eee88da11983e14b774bfbf96a9500c41b6b6de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.1

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

This release

0.3.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page