Cedar.BenchmarkGate.Tool 0.1.0-alpha.1

This is a prerelease version of Cedar.BenchmarkGate.Tool.
dotnet tool install --global Cedar.BenchmarkGate.Tool --version 0.1.0-alpha.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Cedar.BenchmarkGate.Tool --version 0.1.0-alpha.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Cedar.BenchmarkGate.Tool&version=0.1.0-alpha.1&prerelease
                    
nuke :add-package Cedar.BenchmarkGate.Tool --version 0.1.0-alpha.1
                    

Cedar.BenchmarkGate

A local-first performance contract gate designed for BenchmarkDotNet and repository-controlled CI workflows.

Status: pre-alpha skeleton. Not yet functional. First working release is targeted as v0.1.0-alpha.1.

What this is

Cedar.BenchmarkGate turns BenchmarkDotNet output into an enforceable performance contract:

  • No SaaS account, hosted database, or network connection required to evaluate benchmarks.
  • Baselines and policies are plain, reviewable JSON files committed to your repository — a performance-budget change shows up in a pull-request diff, same as any other code change.
  • Runs identically locally and in CI.

What this is not

  • Not a benchmark execution service — BenchmarkDotNet remains the measurement engine; this tool only evaluates its output.
  • Not a hosted dashboard or continuous-benchmarking platform. If you want historical trend storage and a web UI out of the box, look at established hosted platforms instead (comparison coming once the alternatives section is written — see the roadmap).

Status / roadmap

Currently building the v0.1.0-alpha.1 vertical slice:

  • Repository skeleton, central package management, ADR-0001
  • BenchmarkDotNet JSON parsing (full-JSON exporter, single job per v0.1 — see parser XML docs)
  • Stable benchmark identity
  • Mean-time comparison against a committed baseline
  • check / capture commands
  • Console, Markdown, and JSON decision reports
  • Documented exit codes (subset used by v0.1; full table in Core.Evaluation.ExitCodes)
  • Packaged as a .NET tool, dogfooded against CedarRecon Issue #5 — Day 4

Known v0.1 simplifications (documented inline in code, revisit for v0.2):

  • Every parsed benchmark is assigned a fixed "Default" job — no multi-job disambiguation yet.
  • check takes --threshold-percent / --minimum-absolute-change-ns directly rather than a full policy.json (the master-spec policy schema).
  • Baseline schema is reduced (no provenance/environment blocks yet).

See docs/adr/ for architecture decisions as they're made.

Quick start

Not yet available — coming with the v0.1.0-alpha.1 release.

License

Apache-2.0. See LICENSE.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.1.0-alpha.1 66 7/24/2026