Skip to Content
axiomOSmainDecisions (ADRs)Overview

Architecture Decisions

Relevant source files

ADRs record why major choices were made: status, context, decision, alternatives, consequences and supersession. An accepted ADR may name an implementation gap, but it is not an implementation manual or a substitute for the current architecture docs. In the repository’s authority order, accepted ADRs rank directly below the generated reference tables and above prose architecture docs.

ADRTitleStatusDateOne-line summary
0001Runtime scheduling, preemption, interrupts and lock orderingAccepted with implementation gap (reschedule IPI pending)2026-07-14Per-CPU run queues, bounded stealing, generation-checked waits, strict lock ranks, no logging in hot paths
0002Kernel error policyAccepted2026-07-14Errors classified by boundary; typed errors only; publish after fallible preparation or roll back
0003Supported target and feature matrixAccepted2026-07-14x86_64 QEMU supported; Pi 5 and RP2040 supported after HIL; virt and RISC-V experimental; signed-only production
0004BPF JIT policyAccepted2026-07-14v1.0 is interpreter-only; any future JIT needs a superseding ADR meeting six conditions

Design documents follow a separate lifecycle under docs/design/: active/ (under discussion or implementation), accepted/ (reasoning retained after implementation), rejected/. On main all three contain only their README, so no design documents are currently open, accepted or rejected there.

Last updated on