Skip to main content

senbonzakura-check

Read an evaluation result file and report how the number could be wrong.

pip install senbonzakura-check
senbonzakura-check results/

It installs in seconds and pulls nothing. No torch, no model, no corpus, no GPU, no network. It reads JSON and does arithmetic.

It understands result files from lm-evaluation-harness, Inspect, and senbonzakura itself, at the artefact level: it never imports those tools, so their release schedule is not your breakage.

Every finding names four things, because a finding that says only what fired sends you to the source:

  • what it detects
  • the incident that motivated it, because a finding with no citation is an opinion
  • how to fix it
  • what would make the check wrong, so you can judge it without reading the code

Three exit codes, and they mean different things

Code Meaning
0 every file was read, and nothing fired
1 at least one finding
2 at least one file could not be read at all

A file the checker cannot parse is reported unchecked, never clean. A clean report on something nobody read is indistinguishable from a clean bill of health, and a CI gate that treats the two the same goes green the day your result format changes.

For the same reason the summary says how many checks did not apply to a file: "nothing found" across checks that could not run is a different statement from "nothing found".

A clean report is not a certificate. It looks for known failure modes. It cannot tell you a number is right, and it says so in its own output.

Running it without choosing to

In GitHub Actions:

- uses: elementmerc/senbonzakura@v0.4.0      # pin it
  with:
    path: results/

As a pre-commit hook:

repos:
  - repo: https://github.com/elementmerc/senbonzakura
    rev: v0.4.0                               # pin it
    hooks:
      - id: senbonzakura-check

Adding a check

A check is a JSON file in checks/, and the engine never hardcodes one. It carries an id, what it detects, the incident behind it, the remedy, a confidence, what would make it wrong, and two controls: a document that makes it fire and one that does not. A check that cannot demonstrate firing is not merged, because a check nobody has watched fail is a check nobody has tested.

Licence

AGPL-3.0-or-later. This is part of senbonzakura; the abliterator lives in the senbonzakura distribution and brings the deep-learning stack with it. This one does not.

Metadata

Release files for senbonzakura-check 0.5.1

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

Source distribution (sdist)

Source distribution for senbonzakura-check 0.5.1
File Size Uploaded
senbonzakura_check-0.5.1.tar.gz 131.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for senbonzakura-check 0.5.1
File Interpreter ABI Platform
senbonzakura_check-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 288.6 kB

Release files / senbonzakura_check-0.5.1.tar.gz

Download URL senbonzakura_check-0.5.1.tar.gz
Size 131.3 kB
Tags Source
SHA-256 checksum
How to use checksums
ea829dc26b559fffc36b681ead9c63f6b9abe86aad9e5215870c93d0a80dc1f6
BLAKE2b-256 checksum
How to use checksums
bf0e7f5ddec71f4d0f2d0cccf6183963002c2c4aad2aebf8e5f0b00868d971e9
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 Oct 13, 2026.

Transparency log

Release files / senbonzakura_check-0.5.1-py3-none-any.whl

Download URL senbonzakura_check-0.5.1-py3-none-any.whl
Size 157.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aa740e58ef484680555ee49eba2ea2d68867e2fc39eefcfe1a3e2ab134cd8505
BLAKE2b-256 checksum
How to use checksums
8c8ad8139444e1e44c40553d02549fd1bdc4682082a6ee0cee86d00bb75ca41a
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 Oct 13, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

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