# Architecture Decision Records ADRs record consequential decisions and the tradeoffs behind them. They explain why a boundary exists; current architecture and code describe how it is implemented now. - [ADR 0001: Codex app-server codegen approach](./0001-codex-appserver-codegen-approach.md) - [ADR 0002: Codexproto pinning and source drift](./0002-codexproto-pinning-source-drift.md) - [ADR 0003: Thread registry and sub-agent routing](./0003-step3-thread-registry-subagent-routing.md) - [ADR 0004: Hydration monotonic cursor](./0004-step4-hydration-monotonic-cursor.md) - [ADR 0005: Turn lifecycle projection](./0005-turn-lifecycle-optimal-projection.md) - [ADR 0006: Durable approval resolver projection](./0006-step6-approval-resolver-durable-projection.md) - [ADR 0007: Sub-agent lane ownership (superseded)](./0007-subagent-lane-owner-callid.md) - [ADR 0008: Turn lifecycle snapshot authority](./0008-turn-lifecycle-snapshot-authority.md) - [ADR 0009: Cross-product Workbench host kernel](./0009-cross-product-workbench-host-kernel.md) - [ADR 0010: Agent Session Replay boundary](./0010-agent-session-replay-boundary.md) - [Codex App-Server Refactor Glossary](./glossary.md) New ADRs should state `Proposed`, `Accepted`, `Superseded`, or `Rejected` near the title and link any ADR they replace.