summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--notes/pending-issues.md2
-rw-r--r--tasks.md19
2 files changed, 19 insertions, 2 deletions
diff --git a/notes/pending-issues.md b/notes/pending-issues.md
index 7e12332..bfbcb96 100644
--- a/notes/pending-issues.md
+++ b/notes/pending-issues.md
@@ -46,7 +46,7 @@ injecting from the cwd.
## 3. Persistent provider + model selection per chat
-**Status:** PENDING.
+**Status:** DONE (commit `f2e452b`).
**Symptom:** A chat's selected provider + model is NOT persisted per
conversation. Opening the same chat in a new browser session defaults to a
diff --git a/tasks.md b/tasks.md
index 2a34c18..2ccf91f 100644
--- a/tasks.md
+++ b/tasks.md
@@ -5,7 +5,24 @@
> Keep this lean and current; do not let it re-accrete a step-by-step changelog.
## Status (current)
-`tsc -b` EXIT 0 · biome clean · **1411 vitest** green.
+`tsc -b` EXIT 0 · biome clean · **1433 vitest** green.
+
+## Per-conversation model persistence (DONE)
+Bug: a chat's selected provider + model was NOT persisted per conversation.
+Opening the same chat in a new browser session defaulted to the server's
+default model rather than recalling the originally selected one.
+- **Wave 0 (orchestrator, contracts):** `@dispatch/transport-contract`
+ `0.19.0→0.20.0` — additive `ModelResponse` + `SetModelRequest` types for
+ `GET/PUT /conversations/:id/model`.
+- **Wave 1 — `conversation-store`:** `getModel`/`setModel` (`model:<id>` key,
+ mirrors `getReasoningEffort`/`setReasoningEffort`); `forkHistory` copies model;
+ empty string clears (idempotent). +13 tests.
+- **Wave 2 (parallel):** `session-orchestrator` (resolve model from persisted
+ store when no per-turn override → `resolveModel`; persist the resolved model
+ so it sticks; warm path parity; `resolveModelName` pure helper; +4 tests) +
+ `transport-http` (`GET/PUT /conversations/:id/model` with validation +
+ `parseModelBody` pure validator; +10 tests).
+- [x] Verified: `tsc -b` EXIT 0, biome clean, **1433 vitest** pass; all in-lane.
## System-prompt stale on cwd change (DONE)
Bug: the system-prompt service constructed the resolved prompt once on the first