feat(refresh): make designbook-refresh orchestrator + drift-triage runbook (WHYNOT-WP-0002 T09)

scripts/designbook-refresh.mjs chains the automatable steps
(check->pull->sync->ir->adapt-lit->parity) and stops for the human drift-triage
step, propagating the adapter-contract exit codes (3=stop for triage, 4=parity
fail). Gating steps call the node scripts directly so make doesn't collapse the
3/4 codes to 2. Best-effort steps (check/pull/sync) warn and continue; --no-pull
/--no-check/--no-parity flags. Documented the loop in stack-and-commands.md and a
step-6 drift-resolution runbook in designbook/README.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 09:19:44 +02:00
parent e4e3fe069c
commit 7cf524137f
4 changed files with 130 additions and 0 deletions

View File

@@ -37,6 +37,9 @@ adapt-lit: ## Project the IR onto the Lit stack: regen tokens (full gen), scaffo
parity-lit: ## Confirm Lit elements honour the IR contract + render (browser). Exit 4 on parity failure.
$(NODE) adapters/lit/parity.mjs
designbook-refresh: ## Refresh routine: check->pull->sync->ir->adapt-lit->(drift triage)->parity. ARGS=--no-pull etc.
$(NODE) scripts/designbook-refresh.mjs $(ARGS)
recent-changes: ## Regenerate RecentChanges.md (alias of the reporter; --range supported).
$(NODE) scripts/designbook-sync.mjs $(ARGS)