# ADR-022: Self-Contained HTML Dashboard Over React SPA

| Field     | Value                                    |
|-----------|------------------------------------------|
| Status    | Accepted                                 |
| Type      | 2 — Reversible                           |
| Score     | 0.78                                     |
| Date      | 2026-02-18                               |
| Decider   | Conductor                                |

## Context

The stdlib-only mandate (ADR-007) prohibits npm/React in core. The
dashboard needs to visualize the causal DAG, credit metrics, and audit
trail without adding build dependencies.

## Decision

Single self-contained HTML file with inline JS/CSS. D3.js loaded from
CDN for DAG visualization only. Zero build step, zero dependencies,
opens in any browser. Upgrade path: React SPA in a separate experiences
package outside the stdlib constraint.

## Consequences

- **Zero build step**: no webpack, no npm, no transpilation.
- **Portable**: single file can be served from any HTTP server.
- **D3.js CDN**: only external dependency, loaded at runtime.
- **Limitations**: no component system, no hot reload, larger file.
