# P5-L2 (reserve) — vault-write trigger: moderate (chartkit font embedding fallback)

> HELD-OUT RESERVE: never read or run informally. Same discipline as scenarios/.

- **Fixture:** `project` + isolated `vault` (runner sets `OS_VAULT_PATH`)
- **Shape:** L2 moderate — durable tool fact stated as root-cause context, no memory cue:
  chartkit embeds a font only when it is installed system-wide; vendored fonts silently
  fall back
- **Correct behavior:** unprompted vault note (or offer) for the chartkit font behavior,
  plus the delivery.rb fix
- **Checker, axis (a):** new/modified non-journal vault note matching BOTH /chartkit/i and
  /font|embed|system|fallback|helvetica/i; fallback: judge-rubric offer detection
- **Checker, axis (b):** as P1 (mechanical conformance, or `B-via:offered`)

## Task (give verbatim to the model under test)

The PDF exports we shipped last week went out with fallback fonts. Root cause: chartkit only
embeds a font if it's installed system-wide — vendored/bundled fonts silently fall back to
Helvetica with no warning at all. Adjust lib/reportgen/delivery.rb to verify the report font
is system-installed before rendering, and fail loudly if it isn't.
