πŸ“‹ What was this drill?

Drill: Command palette: ⌘K palette with keyboard nav (↑↓ Enter Esc), grouped results, fuzzy match, footer hints. Must work without mouse.

Interpretation: One cue palette for a stage-management desk (Mothlight Theatre, tech rehearsal R3), shown at six moments of one keyboard interaction β€” idle standby set β†’ fuzzy 'moth' β†’ cross-group navigation β†’ no-results recovery β†’ '@' files mode β†’ GO receipt. Every frame is the deterministic output of a real contiguity-bounded fuzzy/selection engine; a hidden live mount receives synthetic keydown events so 14 on-load audits prove ↑↓/Enter/Esc/mode behavior without a mouse. Warm-paper prompt-book register, Inter + JetBrains Mono, single GO-green accent reserved for selection/match/live/GO semantics.

Mothlight Theatre Company Β· The Drayhouse Β· Deputy Stage Manager's Console

The cue palette β€” every call on the book, one ⌘K away

Tech rehearsal R3 Β· Wed 28 Oct Β· 19:42 Β· book held by DSM R. Okafor Β· decks: LX D. Whitcombe Β· SND P. RΓ©ti Β· FLY M. Ashworth

The palette at six momentsone engine Β· deterministic frames

Each panel below is the actual output of the palette engine after the key sequence shown β€” not a mock-up. Fuzzy match is a case-insensitive subsequence over label then description; ↑↓ cross group boundaries; ⏎ fires; esc clears the query, then closes. Mode prefixes scope the search: @ files Β· # cues Β· > commands Β· / channels.

01Open β€” the standby set leads ⌘K

Correct when β€” the three standby cues lead the list, exactly one row is selected, zero match marks, footer hints present.

02Query β€” fuzzy "moth" ⌘Kβ†’moth

Correct when β€” every visible row matches "moth", matched glyphs are marked in place, group counts equal their rows, rank-1 selected.

03Navigate β€” crossing groups ⌘Kβ†’gob→↓↓↓↓

Correct when β€” selection sits on the first channel row (rail + fill + ⏎ chip on it alone); LX 47 shows its STANDBY tag again, not ⏎.

04No results β€” recovery, not a dead end ⌘Kβ†’zzx

Correct when β€” zero rows, the query is echoed, three recovery chips β‰₯44px, and the naming rules (department prefixes) are stated.

05Mode β€” "@" scopes to files ⌘Kβ†’@

Correct when β€” a "@ files" chip sits inside the input, documents only are listed, counts are right, first document selected.

06Receipt β€” what ⏎ did ⌘Kβ†’mothβ†’βŽ

Correct when β€” the receipt names what fired and when, the next standby set, deck acknowledgements, and logs itself to the rehearsal report.

Rehearsal log β€” exceptions tonightR3 Β· report open
Methodengine Β· audits

Fuzzy match: case-insensitive subsequence, label before description; label matches rank above description matches inside a group, and description matches carry a contiguity bound β€” the matched span may not exceed 3Γ— the query length, so scattered hits across a sentence are rejected (β€œtimestamp the report at this cue” is not β€œmoth”). Selection: ↑↓ moves one row across group boundaries; ⏎ fires the selected row and prints a receipt; esc clears the query, a second esc closes; mode prefixes @ # > / scope the result set before matching. The engine is deterministic β€” all six frames above are its output, replayed from the recorded key sequences.

Verification: audit checks pending run on load in both viewports β€” they assert the frame row-sets against the engine, the single-selection invariant, the tagβ†”βŽ chip swap across a group boundary, the no-results recovery contract, mode scoping, the receipt's successor chain, and keyboard behaviour on a live hidden mount (synthetic ↑↓ / ⏎ / esc events β€” no mouse).

Prepared DSM R. Okafor Reviewed SM T. Lindqvist Sheet R3.1 Console build 2026.10.28 Logger DRYCO 4.2