Skip to main content

Architecture Decision Records

This directory contains the architecture decision records (ADRs) for the Universal Agent Runtime project. ADRs document significant decisions that affect the project's structure, dependencies, or public interface.

Index​

ADRTitleDateStatus
ADR-007React is the canonical first-party frontend2026-07-11Accepted
ADR-0001Record architecture decisions2026-07-14Accepted
ADR-0002Dual-license the runtime under AGPL and the SDKs under MIT2026-07-13Superseded by ADR-0017
ADR-0003Set a 60% coverage baseline on day one2026-07-13Accepted
ADR-0004Introduce a central UarError enum2026-07-13Accepted
ADR-0005Migrate configuration to config-rs with schemars and secrecy2026-07-13Accepted
ADR-0006Adopt SLSA Level 3 and OSV/Grype for supply-chain security2026-07-13Accepted
ADR-0007Release the SDKs as 1.0.0 under MIT2026-07-13Accepted
ADR-0008Emit a RAG citation stream2026-07-13Accepted
ADR-0009Vendor @a2ui/web_core and @a2ui/react and build a UAR-owned renderer2026-07-13Accepted
ADR-0010Build the A2UI renderer on webcore with React and shadcn/ui2026-07-13Accepted
ADR-0011Host a unified docs portal with Docusaurus and add visual regression2026-07-14Accepted
ADR-0012Transport-free AG-UI adapter reachable from the embedded runtime2026-07-22Accepted
ADR-0013Embedded run-policy resolution + embedded admin surface2026-07-24Accepted
ADR-0014Backfill the effective-run-policy model route from the registry default2026-07-24Accepted
ADR-0015Embedded conversation-policy admin surface + effective-config resolver2026-07-24Accepted
ADR-0016Seed the embedded session from host-supplied conversation history2026-07-25Accepted
ADR-0017Relicense the runtime from AGPL-3.0-only to MIT2026-08-07Accepted

ADR-007 and ADR-0007 are distinct retained identifiers. The former predates the padded numbering convention and is not renamed because existing references depend on its historical filename.

Process​

  1. When a significant architectural decision is needed, draft an ADR using the template in ADR-0001.
  2. Open the ADR for review in the same PR that implements the decision.
  3. Mark the ADR as Accepted when the PR is merged.
  4. If a decision is superseded, mark the old ADR as Superseded and link to the new ADR.