ADR Index¶
This page lists every Architecture Decision Record in Moodle Playground. See
Architecture Decision Records for the policy and
ADR-0000-template.md for the starting point.
The index is maintained by hand. When an ADR is added, superseded, or changes status, update the table.
ADR-0001 through ADR-0023 were migrated from the former docs/decisions/
folder and keep their original lightweight format (see
Legacy ADRs).
| ID | Title | Status | Date |
|---|---|---|---|
| ADR-0000 | Template | Template | — |
| ADR-0001 | Service Worker-level caching for scoped static assets | Accepted | 2026-03-27 |
| ADR-0002 | Plugin type and name auto-detection from GitHub URLs | Accepted | 2026-03-27 |
| ADR-0003 | Direct database inserts for course module addition (WASM SQLite compat) | Accepted | 2026-03-27 |
| ADR-0004 | OPcache tuning and runtime UX defaults for WASM (amended by ADR-0011) | Accepted | 2026-03-27 |
| ADR-0005 | Resilient blueprint step execution with graceful error handling | Accepted | 2026-03-27 |
| ADR-0006 | Language pack installation via the CORS proxy and Moodle's lang_installer | Accepted | 2026-06-08 |
| ADR-0007 | Course backup (.mbz) restore blueprint step | Accepted | 2026-06-08 |
| ADR-0008 | Blueprint provisioning for roles, scales and cohorts | Accepted | 2026-06-08 |
| ADR-0009 | File-backed Moodle configuration settings in blueprints | Accepted | 2026-06-08 |
| ADR-0010 | Build-time localcache seed (theme CSS + DI container) | Accepted | 2026-06 |
| ADR-0011 | Bundle content trim and php.ini / runtime tuning (amends ADR-0004) | Accepted | 2026-06 |
| ADR-0012 | Static-file fast path bypassing the serial PHP request queue | Accepted | 2026-06 |
| ADR-0013 | Build-time RequireJS combined-bundle seed (re-enable cachejs) | Accepted | 2026-06 |
| ADR-0014 | Patch production code that require_once()s files under tests/ | Accepted | 2026-06 |
| ADR-0015 | Buffer the request body synchronously for Firefox (SW fetch handler) | Accepted | 2026-06 |
| ADR-0016 | Runtime PR file overlay for Moodle core PR previews (applyPrOverlay) |
Accepted | 2026-06-28 |
| ADR-0017 | Explicit Moodle Playground scenario blocks in tracker issues | Accepted | 2026-07-01 |
| ADR-0018 | Solid compression for core bundles (tar.zst) — experiment that led to adoption | Accepted | 2026-07-05 |
| ADR-0019 | Streaming (bounded-memory) extraction for tar.zst core bundles (amended by ADR-0020) | Accepted | 2026-07-05 |
| ADR-0020 | Preserve empty plugin-type-root directories in the tar.zst bundle | Accepted | 2026-07-06 |
| ADR-0021 | Blueprint per-step timing instrumentation + [blueprint-perf] diagnostics channel |
Accepted | 2026-07-08 |
| ADR-0022 | Browser-side course backup (.mbz) download with progress | Accepted | 2026-07-08 |
| ADR-0023 | Resilient resource fetching + non-fatal-by-default blueprint steps | Accepted | 2026-07-08 |
| ADR-0024 | Lower base PHP memory_limit and Emscripten INITIAL_MEMORY for browser WASM environments | Proposed | 2026-07-12 |
| ADR-0025 | Boot-time asset delivery overlap, static fast-paths, and long-lived runtime diagnostics | Proposed | 2026-07-12 |
| ADR-0026 | Playground-specific minimization of Moodle configuration and features for memory and simplicity | Proposed | 2026-07-12 |
| ADR-0027 | Coherent selective crash recovery checkpoints | Proposed | 2026-07-12 |