Skip to content
Owner: @lop • live

Receipts & dashboards

Teach with proof, not vibes. Use this cadence or See example receipts. Exit metric: dashboards refresh inside 30 days and decision hit rate ≥ 60%.

Tiny receipts — Learn (v2025.11)

Keep dashboards stale-free

  1. Update the manifest first — Fill in owner, guardrail, and signal IDs in ops/releases/YYYY-MM/manifest.json before touching a chart.
  2. Snapshot + log — Run pnpm run analytics:snapshot, attach the timestamp/logs to your PR, and note the delta in /signals/receipts/vYYYY.MM-learn.md.
  3. Regenerate State — After merging, run pnpm run state:build so State reflects the fresh metrics.

Map signals to decisions

  • Every metric must link decision → guardrail → signal → receipt. Missing links fail pnpm run traceability:check.
  • When a dashboard forces an exception, log the exc- entry with expiry + exit criteria in exceptions.
  • Receipts roll into the release bundle; keep owners + timestamps visible.

Text © CC BY-NC 4.0 • Code samples MIT • Views are my own.