feat(website): pace the projects cast + show table state; record cast guidelines

Projects cast review fixes:
- Pace the confirms: `save as` name and `new` now type, pause, then Enter as
  separate steps, so the viewer can read them before they execute.
- Insert `show tables` at each phase (before save / after `new` / after load),
  since the schema sidebar is hidden at 90 cols (ADR-0046) — the sequence now
  reads "books -> no tables -> books" so the round-trip is followable.

STYLE.md: new "Cast pacing & clarity" guidelines (beat-before-submit; surface
state where the sidebar would). Handoff item 2: chase these up across the
existing casts.
This commit is contained in:
claude@clouddev1
2026-06-11 10:56:46 +00:00
parent 595386e370
commit a0dd202f67
4 changed files with 298 additions and 229 deletions
+15
View File
@@ -160,6 +160,21 @@ learners, but is valuable more broadly.) Concretely:
- **Autoplay only the landing hero**; elsewhere casts are click-to-play (a
poster frame) so they don't all clamor at once. All casts re-record in one
`pnpm casts` run, so breadth stays maintainable.
### Cast pacing & clarity [DECIDED 2026-06-11]
- **Give the viewer a beat before a command is submitted.** A command that is
typed and `Enter`-ed in the same instant vanishes before the viewer can read
it. Type, **pause**, then submit — especially for **modal confirmations**
(e.g. the `save as` name prompt) and short commands (`new`): script the text
and the `Enter` as *separate* steps with a pause between (`{ type: 'x',
enter: false, after: … }` then `{ key: 'Enter', after: … }`).
- **Surface state where the schema sidebar would.** At the cast width (90 cols)
the schema sidebar is hidden (ADR-0046 hides it at ≤90 cols), so the viewer
can't see tables/relationships appear and disappear. Insert `show tables` /
`show table <T>` / `show data <T>` at the points where state **changes**, so
a sequence reads clearly (e.g. the projects cast shows `show tables` before
saving, after `new`, and after loading — table present → none → present).
- **Driver: `autocast`** (ADR-website-001 §2; chosen by the 2026-06-10
spike). `autocast`'s `!Interactive` feeds keys to the running TUI and
captures the redraw — the correct model for a full-screen crossterm app.