chore(tooling): make the screenshot recipe work with no setup

Two things this session depended on lived only in a scratchpad, so the next
agent would have had to reinvent them from a prose hint:

- scripts/screenshot-fonts.conf, now applied by screenshot.ts itself. Without
  it this container renders every generic font family as Fira Code and the UI
  looks monospaced in a way no user sees — a trap that nearly produced a "fix"
  for a font bug that does not exist.
- scripts/demo-data.ts, which seeds a visibly synthetic dataset. Without it
  every screenshot shows an app full of zeros, because Chrome starts from a
  fresh profile each run.

CLAUDE.md now carries the two-command recipe verbatim instead of "point
FONTCONFIG_FILE at an override", and says why --reload is mandatory. Verified
from a clean shell with no environment set.

Also flags docs/superpowers/plans/2026-09-01-budget-app.md as a historical
record: its snippets still show CURRENCIES and CURRENCY_DIGITS, which no
longer exist, and an agent reading it as current would be misled.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-09-02 16:07:09 +02:00
co-authored by Claude Opus 5
parent 151cd530f5
commit bd5a01e03e
5 changed files with 200 additions and 12 deletions
@@ -1,3 +1,10 @@
> **Historical record, not current truth.** This plan was executed and is kept
> for its reasoning. Two things in it have since changed and the code is the
> authority: allocation rules are a dated series (`Post.rules`, schema v2), and
> currencies live in `Dataset.currencies` with `roundMoney` taking a digit
> count rather than a currency code (schema v3). Snippets below still show
> `CURRENCIES` / `CURRENCY_DIGITS`, which no longer exist.
# Budget 2.0 Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.