Track runs as layer snapshots, derive stats from layers
Each run writes runs/TIMESTAMP.json mapping layer hashes to their
package + status (ok/fail/cascade). Layers are shared across runs
(content-addressed), runs just reference them.
Results command derives history and diffs from run files:
- Per-run counts (ok/fail/cascade)
- Fixed packages (was fail, now ok)
- Regressed packages (was ok, now fail)
- Net change
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>