Skip to main content

debrief

The evidence MCP: answers agent questions from receipts — what ggufbench measured, and where the last buildwright run broke — and proposes role changes as text. It never writes.

Status: scaffolding. The harness is installed and the parent feature is pending — the spec (harness/specs/debrief/) is not written yet, so the tool list below is the plan, not the product.

The idea

  • ggufbench owns the catalog: what a model measured, under which task signature, and why rows were excluded.
  • buildwright owns the episode: one run, its gates, its failures.
  • debrief is the reader. One query surface, one shared finding type, and a proposal that cites both. Two ports that answer different questions:
Port Question Reads Tools (planned)
bench What did we measure? ggufbench artifacts bench.which_model · bench.compare · bench.why_excluded
run Where did this run break? a buildwright run log run.inspect_run · run.failures · run.tool_calls
routing.propose What would you change? findings from both prints a BW_ROLE_* diff as text

Product rules (the gates that matter in code)

  1. debrief never writes. Every tool is read-only or returns a proposal as text. No tool touches .env, BW_ROLE_*, models.yaml, or any other file.
  2. Proposals target roles, not the registry. A proposed change is a BW_ROLE_<ROLE> diff. models.yaml is the registry of what exists — not debrief's to edit.
  3. bench and run answer from their own source. run may cite bench findings; bench never reads runs.
  4. Rows never cross a task signature. Incomparable rows are refused with a reason — never averaged.

The gates (process)

The repo runs the harness SDD workflow in hybrid mode: one in-session agent plays the roles, the human gates stay mandatory. Architecture is hexagonal (docs/architecture.md); features are cut into vertical slices (docs/slicing-protocol.md) — S1 bench_query → S2 run_inspect → S3 role_propose, each demoable end-to-end.

Gate What it checks Command / artefact
Spec Gate (human) EARS trio in harness/specs/<name>/, slice map approved before any slice starts review + explicit approval
Batch gates (every 2–4 tasks) tests + lint + types, evidence saved uv run pytest tests, ruff check, mypy --strict — full output to harness/logs/<feature>/batch-<n>.log
Security audit (audit_level: standard) path traversal, input validation, secrets — run at review time bash harness/tools/audit-security.sh
Gauntlet G1–G4 (before Completion) correctness, adversarial input, maintainability, evidence bash harness/tools/gauntlet.sh --feature <name> + report in harness/progress/gauntlet_<name>.md
Completion Gate (human) traceability R<n> ↔ test, plus a recorded end-to-end demo per slice python3 harness/tools/check-traceability.py --feature <name> → harness/specs/<name>/review.md
Session verify harness files, docs, tests, state coherence harness/init.sh

Two gates are non-negotiable and human: the Spec Gate and the Completion Gate. The gauntlet filters what reaches them; it never replaces them.

Development

uv sync
uv run pytest tests

Requires Python ≥ 3.14 (uv).

Repository map

See AGENTS.md — it is the navigation map for agents (and humans). Architecture: docs/architecture.md. Decisions worth remembering: harness/decisions/.

built with harness

Metadata

Release files for debrief-mcp 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 debrief-mcp 0.1.0
File Size Uploaded Provenance Actions
debrief_mcp-0.1.0.tar.gz 14.1 kB With provenance Details for debrief_mcp-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for debrief-mcp 0.1.0
File Interpreter ABI Platform Actions
debrief_mcp-0.1.0-py3-none-any.whl Python 3 none any Details for debrief_mcp-0.1.0-py3-none-any.whl

Total release size: 31.8 kB

Release files / debrief_mcp-0.1.0.tar.gz

Download URL debrief_mcp-0.1.0.tar.gz
Size 14.1 kB
Tags Source
SHA-256 checksum
How to use checksums
8b97e9e0e0f4d6ca6ee7529b6a6b2c01276b964ac6fdf9981a041483ce8a7acc
BLAKE2b-256 checksum
How to use checksums
b46a9dbd2fc9b6a43ef86c96fffaf0968e32b0ddd9f022127bbf594c470d7dfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 4, 2026.

Transparency log

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

Download URL debrief_mcp-0.1.0-py3-none-any.whl
Size 17.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a520510495059de8ab2f82f833568a40fc7ae8b7286702bdef192fb3fcb9331b
BLAKE2b-256 checksum
How to use checksums
f3b808be296b0e680f53851d28f607a09704bca9f8496d620ddcd09543917ff4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 4, 2026.

Transparency log

Security for debrief-mcp 0.1.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for debrief_mcp-0.1.0.tar.gz

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 Nov 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

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