docs(adr): write runtime and architecture ADRs in ASD-STE100

TH
6h ago
+2835-2505

Summary

Rewrite 12 runtime/architecture ADRs in ASD-STE100 with frozen meaning. Delete only completed history. Review round 1 fixups restore drifted meaning per ADR, plus operative content: the ADR 0019 §8 size rule, the §6 shared-mechanics rule, the ADR 0025 physical-device gap, and the ADR 0023 comparability sentence.

Ambiguities

  • ADR 0019: Status calls the 2026-09-23 shape amendment "proposed" and puts it in "section 3". The §2 body states it as an accepted rule, and #2808/#2806 rely on it. Both are kept as base.
  • ADR 0021 "which" (adb server, or both) and ADR 0030 "its directory guard" keep the base wording.
  • ADR 0022 amendment dates (10-11 vs 10-12) are kept.

Discrepancies found, not changed

  • ADR 0023: "that count is higher than this one" (38 < 41) is stale.
  • ADR 0033: #3281 and #3294 are closed.
  • Earlier list: ADR 0019 claim-recovery path, ADR 0027 size-rule attribution, ADR 0032 parser fix, ADR 0033 48 vs 49 rows.

Older problems at base

  • ADR 0028:46 cites "ADR 0019, section 3"; the facts are in §2.
  • ADR 0033 cites "ADR 0021 §3" (now Consequences).
  • ADR 0022 Status still says "Gates enforce the classification inventory".
  • ADR 0019 glance: no body rule supports "Root src/__tests__/ owns shared install-source tests".
  • snapshot-handler.fixtures.ts:101 says "at most one bind per request"; §9 allows the --settle second bind.

Validation

  • pnpm check:affected --run --head f036ee4217: passed, exactCommit=true, 0 checks (ADR-only).
  • Review round 1 (Claude Opus): 2 high, about 20 medium; fixed. Round 2 (Codex): 10 ADRs equivalent to base; 3 medium (dropped conditions in ADR 0025 and ADR 0032) fixed in 4577385f87. No finding open.