Architecture Decision Records#

This section captures the significant architectural decisions for saia-python as Architecture Decision Records (ADRs), written in the MADR (Markdown ADR) format.

An ADR records a single decision: the context that forced it, the options considered, the option chosen, and the consequences. ADRs are append-only — if a decision is later revisited, a new ADR supersedes the old one (which is kept for history and marked as such). The CHANGELOG records what changed per release; ADRs record why a design is the way it is.

Index#

ADR

Title

Status

0000

Record architecture decisions

Accepted

0001

openai as an optional extra

Accepted

0002

Rate-limit metadata on responses

Accepted

0003

pyproject.toml as the single source of dependency truth

Accepted

0004

Non-blocking operations via Futures and dedicated Sessions

Accepted

0005

ARCANA reference parsing in the core (transport-agnostic)

Accepted

0006

Transport-policy layer for rate-limit handling

Accepted

0007

Native async transport (saia_python.aio)

Accepted