Skip to content

Decision log

Decision log

Architecture Decision Records: each captures a single real design decision, the context that led to it, and its honest trade-offs, so nobody has to reconstruct "why did we do it this way?" from git blame later. See adr.github.io for the convention this follows. Numbers are sequential and never reused, even for a rejected or superseded decision.

An ADR is a record of a decision already made, kept accurate after the fact (superseded by a new ADR when circumstances change, never rewritten in place). The first eleven were written down once the design had settled, from the decisions made while building it.

# Decision Status
0001 One Buck2 target per Buildroot package accepted
0002 Wrapped packages run Buildroot's own make accepted
0003 Enforced input views instead of declared inputs alone accepted
0004 Fixed-path mount namespace accepted
0005 Config slices by symbol ownership accepted
0006 Golden build and manifest comparison accepted
0007 Vendored sources accepted
0008 Buildbarn as the remote backend accepted
0009 Dev mode versus strict mode accepted
0010 A cache salt per measured cell accepted
0011 project.json is the only project input accepted
0012 The toolchain tuple comes from Buildroot accepted
0013 The worker image is the tool baseline accepted
0014 Every view entry is a declared input, and remote execution proves it accepted
0015 Buildbarn on a dedicated Kubernetes cluster with autoscaled worker pools accepted
0016 One node pool, one server type, no taints accepted
0017 A project names the tool baseline of its era accepted
0018 Every make of a build runs with --no-print-directory accepted