Skip to content

Architecture decision records

Each record captures one decision: the context that forced it, the options considered, and the consequences we accepted. Records are immutable once accepted; a changed decision gets a new record that amends or supersedes the old one. The proposal behind these is lattice RFC-0003; the decisions it changed in artifactr are artifactr ADR-0071 and ADR-0072.

ADR-0001 to ADR-0003 record RFC-0003's D5, D2 and D3, ADR-0004 the app port it designs, ADR-0005 its phase 2, WordCraft headless, ADR-0006 the agent's tools of its phase 3, ADR-0007 the server side of its phase 4, and ADR-0008 what portalr's screens read of it. ADR-0009 to ADR-0012 are the groundwork for the crafting apps after WordCraft: how each is declared and run, the editor's shim, the gate each app passes, and an app for each type, whose check-ins keep their format.

This is the native files' own series, inside artifactr's section since artifactr-files became artifactr's files extra (lattice ADR-0026). Its records keep their numbers, and outside the series one is named "native files ADR-0002"; artifactr's own series is docs/artifactr/adr/.

ADR Title Status
0001 A separate distribution Superseded by lattice ADR-0026
0002 Blobs in a port of the package Accepted
0003 Check-outs and agents' edits under one lease Accepted
0004 An app is a port of stateless calls Accepted; amended by 0005
0005 WordCraft headless, pinned by checksum, and what each app declares Accepted; amended by 0009
0006 The agent's tools, behind each app's switch Accepted; amended by 0012
0007 Check-out over HTTP, and the editor on an origin of its own Accepted; amended by 0008, 0010 and 0012
0008 What portalr reads of a native file: its words, its own check-out, its limit, and a proposal Accepted
0009 Each crafting app declared once, on one of two dialects, pinned on its own Accepted
0010 A shim beside the build, on the editor's origin, and talk level 1+ Accepted
0011 A gate for each app, in place of WordCraft's two releases Accepted
0012 An app for each native type, and no format changed by a check-in Accepted

To add a record, copy lattice's ADR template to the next number and add a row above.