Skip to content

Architecture decision records

Each record explains a decision that affects a stable package boundary. A record describes the context, the decision, its consequences, and the main alternative not chosen.

Record Decision Status Date
ADR-001 Use structural provider protocols. Accepted 2026-05-11
ADR-002 Keep the package at the repository root. Accepted 2026-05-11
ADR-003 Use one OpenAI-compatible provider. Accepted 2026-05-11
ADR-004 Keep the base install dependency-free. Accepted 2026-05-11
ADR-005 Require callers to supply price rates. Accepted 2026-05-22
ADR-006 Maintain a named failure-case corpus. Accepted 2026-06-08
ADR-007 Make pattern APIs async-first. Accepted 2026-05-22
ADR-008 Let callers persist workflow checkpoints. Accepted 2026-06-18
ADR-009 Make approval timeout behavior explicit. Accepted 2026-06-18
ADR-010 Probe once for optional OpenTelemetry support. Accepted 2026-06-18
ADR-011 Use a strict concurrent map phase and one reduce call. Accepted 2026-06-18
ADR-012 Ship a small stdio MCP server. Accepted 2026-07-02
ADR-013 Keep model-judged corpus review advisory. Accepted 2026-07-02
ADR-014 Keep Anthropic batches separate from live patterns. Accepted 2026-07-03
ADR-015 Enforce a bounded tool-execution contract. Accepted 2026-07-03
ADR-016 Reach a Claude subscription through the Agent SDK, in an extra. Accepted 2026-08-19

New records use the next number and the same four-section structure. Do not rewrite an old decision to hide a replacement. Mark it superseded and link to the new record.