Skip to content

Benchmarks and Experiments

NON-NORMATIVE. What runs where, how to run locally, and where to find results.

What runs in CI

Workflow What runs Results / artifacts
.github/workflows/benchmarks.yml ASV benchmarks with PR comparison, regression gate, and PR comment reporting benchmarks/results/; artifact benchmark-results
  • Regression policy: A benchmark is considered regressed if PR is >10% slower than main. The workflow fails the job if any benchmark regresses. Regressions require justification (e.g. ADR or documented exception) before merge.

Benchmark suite (local)

Script / module Description Output
benchmarks/benchmarks.py Composition, functor, proof, Čech coboundary/H¹, entropy measurement In-memory or benchmarks/results/ via run_benchmark_suite()
benchmarks/entropy_reduction.py Entropy reduction convergence from random governance states benchmarks/results/entropy_reduction_results.json
benchmarks/comparative.py Comparative runs: categorical vs manual governance at different scales benchmarks/results/comparative_results.json

Run locally:

# From repo root (with morphism installed: pip install -e .[dev])
python benchmarks/benchmarks.py
python benchmarks/entropy_reduction.py
python benchmarks/comparative.py

Self (dogfood) experiment

The repo is used as the target of governance metrics and optional entropy sampling:

Script Description Output
scripts/dogfood_report.py Maturity score, drift check, optional entropy sample over docs/governance .morphism/dogfood/<timestamp>.json, optionally .md

Run locally:

python scripts/dogfood_report.py
python scripts/dogfood_report.py --no-entropy   # skip entropy sampling

Interpretation and baselines: docs/governance/dogfood-baselines.md.

Research scripts

Experiments under scripts/research/ (see research/quick-start.md) write under experiments/ (e.g. experiments/synthetic_repos, experiments/convergence/results.json). These are not required for CI; run on demand.