summaryrefslogtreecommitdiffhomepage
path: root/GLOSSARY.md
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-06-07 01:53:47 +0900
committerAdam Malczewski <[email protected]>2026-06-07 01:53:47 +0900
commit90c438c4562793eb09358f9d1a050d2267f4fca5 (patch)
treecf858fb92464b8e2e459a1b88b76b856bb4dfe46 /GLOSSARY.md
parentc0fa581c8ac563c916948f44596ef361817dc580 (diff)
downloaddispatch-web-90c438c4562793eb09358f9d1a050d2267f4fca5.tar.gz
dispatch-web-90c438c4562793eb09358f9d1a050d2267f4fca5.zip
Slice 3 setup: Tailwind v4 + DaisyUI v5 (dracula enabled) + 'tab' vocab
- add tailwindcss@4 + @tailwindcss/vite + daisyui@5; vite tailwind plugin - src/app.css: @import tailwindcss + @plugin daisyui { themes: dracula --default } (theme BUNDLED, not just named); imported in main.ts - index.html: <html data-theme="dracula"> - biome.json: enable css tailwindDirectives so @plugin parses - GLOSSARY: define FE term 'tab' (workspace slot referencing a conversation; holds conversationId + model + title; close = local forget) Verified: dracula tokens bundled in CSS, svelte-check 0/0, vitest 222, biome clean, build ok.
Diffstat (limited to 'GLOSSARY.md')
-rw-r--r--GLOSSARY.md3
1 files changed, 2 insertions, 1 deletions
diff --git a/GLOSSARY.md b/GLOSSARY.md
index 4bce7a7..2d25fd3 100644
--- a/GLOSSARY.md
+++ b/GLOSSARY.md
@@ -7,7 +7,7 @@
## Shared with the backend (canonical — do NOT redefine)
| Term | Meaning | Aliases to avoid |
|---|---|---|
-| **conversation** | A single thread of turns with persisted history, id'd by `conversationId`. | tab, session, thread, chat |
+| **conversation** | A single thread of turns with persisted history, id'd by `conversationId`. | session, thread, chat (and do NOT call the conversation itself a "tab" — a tab *references* one; see FE "tab") |
| **conversationId** | The string id threading multi-turn history. | tabId, sessionId, chatId |
| **turn** | One user message → assistant response cycle (may span steps). | — |
| **step** | One LLM round-trip within a turn. | iteration |
@@ -25,6 +25,7 @@
| **action / action ref** | A backend-invokable action; a field carries an *action ref* the client posts back. (Backend calls this a `command` for now.) | — |
| **surface catalog** | The list of available surfaces (metadata) the FE fetches to discover them (`GET /surfaces`). | capability manifest |
| **view** | RESERVED — the old-Dispatch sidebar affordance (settings / feature views); a FUTURE FE concept, NOT a surface. | (do not reuse) |
+| **tab** | A FE workspace slot in the tab strip that *references* one open conversation — holds its `conversationId`, the selected **model name**, and a derived title. Distinct from the conversation itself (the backend thread): closing a tab forgets it LOCALLY (drops the slot + evicts its FE cache); the conversation persists server-side. Open tabs + the active tab are persisted locally. | (do not conflate with **conversation**) |
| **feature module** | A self-contained FE feature (chat, history explorer, …); feature-as-a-library, composed at the root. | — |
| **composition root** | The single place (`src/app/`) that imports + wires feature modules + the surface host. | — |
| **surface interpreter** | The generic renderer: field kind → component. Knows kinds, never surface ids. | — |