Skip to content

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>.json and 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-entropy to 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-results artifact
  • 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.