Skip to content

Architecture Decision Records

Architecture Decision Records (ADRs) capture significant design choices, the alternatives considered, and the rationale for the decision taken. They are immutable historical records — once accepted, an ADR is never edited; superseded decisions reference the newer ADR.


ADR Status Title
ADR-001 Accepted — v1.0.0 Python Namespace Package for openframe.*
ADR-002 Accepted — v1.0.0 Hexagonal Architecture as the Universal Spine
ADR-003 Accepted — v1.0.0 Async-first Port Contracts
ADR-004 Accepted — v1.0.0 Pydantic Settings for Adapter Configuration
ADR-005 Accepted — v1.0.0 Pure ASGI Middleware for Telemetry
ADR-006 Accepted — v3.0.0 Unified Port + Lifecycle Contract (supersedes port/health/plugin portions of ADR-002)

Reading Order

  • Start with ADR-002 for the overall hexagonal architecture rationale.
  • Read ADR-006 to understand what changed in v3.0.0 and why — it supersedes the port, health, and plugin sections of ADR-002.
  • ADR-001, ADR-003, ADR-004, and ADR-005 are independent and can be read in any order.