Skip to main content

darkroom

Evidence capture and manifest management for autonomous software delivery.

darkroom is the evidence subsystem of the Judge-Builder framework. It provides typed records for evidence items, a producer protocol for capturing diverse evidence kinds, and manifest serialization for the handoff between Builder and Judge.

The name references the dark factory pattern -- lights-off autonomous production -- and the clean room pattern -- independent implementation from specification. A darkroom is a controlled, light-sealed environment where evidence is developed and evaluated without contamination from the implementation side.

Install

pip install darkroom-ai            # core (LogProducer, manifests, EvidenceRun)
pip install darkroom-ai[playwright] # adds ScreenshotProducer

The distribution is named darkroom-ai (the bare darkroom name is squatted on PyPI); the import name is darkroom throughout.

Usage

from darkroom import EvidenceCapture
from darkroom.run import start_run, end_run

# Start a run (typically in a pytest session hook)
run = start_run(project="my-project")

# Per-scenario capture (typically via a pytest fixture)
evidence = EvidenceCapture("login_flow")
evidence.screenshot(page, "login_page")
evidence.screenshot(page, "after_login", full_page=True)
evidence.log("api_response", {"status": 200})

# End the run -- writes manifest.json
manifest_path = end_run()

Manifest Format (v2)

{
  "schema_version": "2.0",
  "run_id": "2026-03-17T13-43-29",
  "project": "my-project",
  "timestamp": "2026-03-17T13:44:02.049178",
  "scenarios": [
    {
      "scenario": "login_flow",
      "items": [
        {
          "kind": "screenshot",
          "mime": "image/png",
          "path": "login_flow/01-login_page.png",
          "scenario": "login_flow",
          "step": "login_page",
          "captured_at": "2026-03-17T13:43:48.707534",
          "metadata": {}
        }
      ]
    }
  ]
}

All path values are relative to the manifest file's parent directory. Absolute paths (starting with /) are also accepted. v1 manifests are loaded transparently by load_manifest.

Documentation

Development

make venv       # create virtualenv and install deps
make test-unit  # run unit tests
make test       # run all tests with coverage
make help       # see all targets

Release files for darkroom-ai 0.1.0

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

Source distribution (sdist)

Source distribution for darkroom-ai 0.1.0
File Size Uploaded
darkroom_ai-0.1.0.tar.gz 58.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for darkroom-ai 0.1.0
File Interpreter ABI Platform
darkroom_ai-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 74.2 kB

Release files / darkroom_ai-0.1.0.tar.gz

Download URL darkroom_ai-0.1.0.tar.gz
Size 58.9 kB
Tags Source
SHA-256 checksum
How to use checksums
cfe34ff838b44033e3151a3529dc720bc0b4f35b62457cef83be249f697ab754
BLAKE2b-256 checksum
How to use checksums
e83a0992862bbf35dbed4288b97b53b574b00904731070aaa6084e70ffd52506
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 Sep 18, 2026.

Transparency log

Release files / darkroom_ai-0.1.0-py3-none-any.whl

Download URL darkroom_ai-0.1.0-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
21bcd38294be1c82f4828d33cd2c337e994972f75fa62c11dc316cc8624073d3
BLAKE2b-256 checksum
How to use checksums
1f7b7302c6996cf6fd5e84a275a3ab529b176b9719ecf1ef51f84124a99b92fa
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 Sep 18, 2026.

Transparency log

Release history Release notifications | RSS feed

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

This release

0.1.0 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