session kind: ChatRecord.kind teach|practice (absent = teach)

Practice sessions (owner, 2026-10-04): the marker rides the record and
the normalized summary (absent field reads as teach — pre-practice
records never migrate); POST /api/chats accepts {kind: 'practice'}.
The agent branch, tools, and UI land in the following slices.
This commit is contained in:
amosblomqvist
2026-10-04 21:36:14 +03:00
parent 814c2ad412
commit 7dcb006cf3
6 changed files with 71 additions and 4 deletions
+3 -1
View File
@@ -32,7 +32,9 @@ import type { UserSettings } from "./settings.ts";
export interface ChatStore {
/** Create a session record (persisted immediately). */
createChat(title: string): ChatRecord;
/** Create a session record; kind "practice" marks a practice session
* (absent = teach, the default). */
createChat(title: string, kind?: "practice"): ChatRecord;
/** The full record, or null if unknown id / corrupt file. */
getChat(id: string): ChatRecord | null;
/** All sessions, newest activity first (the sidebar's list view). */