diff options
| author | Adam Malczewski <[email protected]> | 2026-06-07 00:21:04 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-07 00:21:04 +0900 |
| commit | 2faccf3482922385c2de47f210e48a8d2968762f (patch) | |
| tree | 215c4d6e690bc542e24b8ede2b55ea7381c3998a /src/features/chat/index.ts | |
| parent | 312ed5a9fe0d7f2660a66d61baf429b8e021ffb1 (diff) | |
| download | dispatch-web-2faccf3482922385c2de47f210e48a8d2968762f.tar.gz dispatch-web-2faccf3482922385c2de47f210e48a8d2968762f.zip | |
Slice 2 wave 2: IndexedDB cache adapter + chat feature
- adapters/idb: createIdbChunkStore implements the ConversationChunkStore port
over IndexedDB (compound [conversationId,seq] key, idempotent append, meta
store for lastAccess); 8 tests with fake-indexeddb
- features/chat: createChatStore (runes-thin over the core/chunks reducer, all
effects injected via ChatTransport/HistorySync/ConversationCache ports) +
ChatView/Composer svelte-thin UI; folds chat.delta, syncs on turn-sealed,
hydrates from cache then catches up; 25 tests
Verified green: svelte-check 0/0, vitest 202, biome clean, build ok.
Diffstat (limited to 'src/features/chat/index.ts')
| -rw-r--r-- | src/features/chat/index.ts | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/features/chat/index.ts b/src/features/chat/index.ts new file mode 100644 index 0000000..71851de --- /dev/null +++ b/src/features/chat/index.ts @@ -0,0 +1,6 @@ +export type { RenderedChunk } from "../../core/chunks"; +export type { ChatTransport, HistorySync } from "./ports"; +export type { ChatStore, ChatStoreDependencies } from "./store.svelte"; +export { createChatStore } from "./store.svelte"; +export { default as ChatView } from "./ui/ChatView.svelte"; +export { default as Composer } from "./ui/Composer.svelte"; |
