Dogfood and Benchmark Baselines¶
NON-NORMATIVE. Describes how we apply the Morphism framework to this repo and how to interpret outputs.
Maturity¶
- Script: scripts/maturity_score.py
- CI threshold: 60 (enforced in .github/workflows/ci.yml and .github/workflows/drift-check.yml via
python scripts/maturity_score.py --ci --threshold 60) - Scale: 0–125 (12 categories; see script docstring for breakdown)
- Interpretation: Score must not decrease below 60 without a recorded exception (I-5 Entropy Monotonicity). Baseline: aim to maintain or improve total; track breakdown in dogfood reports.
Drift¶
- Script: scripts/drift_detector.py
- Scope: Claim–evidence (RECONCILIATION_REPORT, evidence_ledger), docs–registry (ARTIFACT_REGISTRY), validation doc, SSOT (.morphism as single registry)
- Interpretation: Exit 0 = no drift; exit 1 = merge blocked. Warnings are non-blocking but should be reviewed.
Dogfood report¶
- Script: scripts/dogfood_report.py
- Output:
.morphism/dogfood/<timestamp>.jsonand optionally.morphism/dogfood/<timestamp>.md - Contents: Maturity (total + breakdown), drift (passed, errors, warnings), optional entropy sample over docs/governance artifacts
- Run locally:
python scripts/dogfood_report.py(use--no-entropyto skip entropy sampling)
Benchmarks and experiments¶
- Benchmark suite: benchmarks/benchmarks.py — composition, functor, proof, Čech, entropy
- Results:
benchmarks/results/(e.g.benchmark_results.json,entropy_reduction_results.json,comparative_results.json) - CI: .github/workflows/benchmarks.yml runs ASV benchmarks with PR comparison and regression gate; uploads results as
benchmark-resultsartifact - Self experiment: Dogfood report has
"target": "self"and is written to.morphism/dogfood/; full description: docs/research/benchmarks-and-experiments.md
Policy¶
- Regression: Benchmark and maturity regressions should be justified (e.g. ADR or TODO) before merge; default is no regression without approval.