refactor(tui): adopt reactive first index and read-only keyed surface

- quark: Collection.first(name) is now a stable Readable<A | undefined>;
  Keyed.ReadOnly names the read surface; useSlot takes plain constant keys;
  Layout.collectionOf<Target>() replaces the content plan double cast
- BackgroundToolHint reads a backgroundRunning first index instead of
  hand-tracking structure plus tool slots
- toolDisplay moves to util/tool-display (content.ts needs it for the index)
This commit is contained in:
Kit Langton 2026-07-18 10:28:36 -04:00
commit c0ce124f8c
12 changed files with 374 additions and 98 deletions

View file

@ -9,8 +9,8 @@ import {
parseDiagnostics,
parseQuestionAnswers,
parseQuestions,
toolDisplay,
} from "../../../src/routes/session"
import { toolDisplay } from "../../../src/util/tool-display"
let testSetup: Awaited<ReturnType<typeof testRender>> | undefined