This log captures the why behind copilot-experiments' design. Each ADR is a short,
immutable record of one decision: its context, the decision itself, and the consequences.
We follow the lightweight format popularized by
Michael Nygard.
- One file per decision, numbered sequentially:
NNNN-short-title.md. - Status:
Proposed→Accepted→ (later)Superseded by ADR-XXXX/Deprecated. - ADRs are append-only. To change a decision, add a new ADR that supersedes the old one (and update the old one's status); don't rewrite history.
- Use
0000-template.mdas the starting point.
| ADR | Title | Status |
|---|---|---|
| 0001 | Record architecture decisions | Accepted |
| 0002 | The filesystem is the source of truth | Accepted; amended by ADR-0015 |
| 0003 | A derived SQLite index for cross-run queries | Superseded by ADR-0020 |
| 0004 | The Copilot session log is the primary data source | Accepted |
| 0005 | A MockInvoker keeps the harness offline-testable | Superseded by ADR-0015 for Pier runs |
| 0006 | Separate analysis data from its rendering | Accepted |
| 0007 | Ship CLI (Rich) analysis first; defer the web explorer | Accepted |
| 0008 | --dry-run is an ephemeral, validating plumbing check |
Superseded by ADR-0015 for Pier runs |
| 0009 | Copilot is always invoked with an absolute workspace path | Superseded by ADR-0015 for Pier runs |
| 0010 | Keep secrets and bulky debug logs out of stored results | Accepted |
| 0011 | Token economics from session.shutdown, costed in AIU |
Accepted |
| 0012 | A task suite is an axis of an experiment | Superseded by ADR-0015 |
| 0013 | Auth preflight, harness-failure status, and richer trial diagnostics | Accepted |
| 0014 | SWE-bench as a task source with decoupled Docker grading | Superseded by ADR-0016 |
| 0015 | Adopt Pier for sandboxed agent evaluations | Accepted |
| 0016 | Use DeepSWE for large benchmark protocols | Accepted |
| 0017 | Import DeepSWE as a Pier dataset config | Accepted |
| 0018 | Adopt pytest-cov for local coverage analysis | Accepted |
| 0019 | Use nested Pier run directories | Accepted |
| 0020 | Remove the legacy native harness | Accepted |