Skip to content

Commit b386164

Browse files
committed
fix: use persisted reader for palette thinking level
1 parent 6fd3575 commit b386164

File tree

1 file changed

+11
-18
lines changed

1 file changed

+11
-18
lines changed

src/browser/App.tsx

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,11 @@ import { LeftSidebar } from "./components/LeftSidebar";
77
import { ProjectCreateModal } from "./components/ProjectCreateModal";
88
import { AIView } from "./components/AIView";
99
import { ErrorBoundary } from "./components/ErrorBoundary";
10-
import { usePersistedState, updatePersistedState } from "./hooks/usePersistedState";
10+
import {
11+
usePersistedState,
12+
updatePersistedState,
13+
readPersistedState,
14+
} from "./hooks/usePersistedState";
1115
import { matchesKeybind, KEYBINDS } from "./utils/ui/keybinds";
1216
import { buildSortedWorkspacesByProject } from "./utils/ui/workspaceFiltering";
1317
import { useResumeManager } from "./hooks/useResumeManager";
@@ -281,18 +285,10 @@ function AppInner() {
281285
}
282286

283287
try {
284-
// First get the model for this workspace, then get thinking level for that model
285-
const modelKey = getModelKey(workspaceId);
286-
const modelStored = window.localStorage.getItem(modelKey);
287-
const model = modelStored ? (JSON.parse(modelStored) as string) : getDefaultModel();
288-
289-
const key = getThinkingLevelKey(model);
290-
const stored = window.localStorage.getItem(key);
291-
if (!stored || stored === "undefined") {
292-
return "off";
293-
}
294-
const parsed = JSON.parse(stored) as ThinkingLevel;
295-
return THINKING_LEVELS.includes(parsed) ? parsed : "off";
288+
const model =
289+
readPersistedState<string | null>(getModelKey(workspaceId), null) ?? getDefaultModel();
290+
const storedLevel = readPersistedState<ThinkingLevel>(getThinkingLevelKey(model), "off");
291+
return THINKING_LEVELS.includes(storedLevel) ? storedLevel : "off";
296292
} catch (error) {
297293
console.warn("Failed to read thinking level", error);
298294
return "off";
@@ -304,11 +300,8 @@ function AppInner() {
304300
return;
305301
}
306302

307-
// Get the model for this workspace to set thinking level for it
308-
const modelKey = getModelKey(workspaceId);
309-
const modelStored = window.localStorage?.getItem(modelKey);
310-
const model = modelStored ? (JSON.parse(modelStored) as string) : getDefaultModel();
311-
303+
const model =
304+
readPersistedState<string | null>(getModelKey(workspaceId), null) ?? getDefaultModel();
312305
const normalized = THINKING_LEVELS.includes(level) ? level : "off";
313306
const key = getThinkingLevelKey(model);
314307

0 commit comments

Comments
 (0)