From 5d0ad18e45df877f36a6ef70be63f1e4238774ae Mon Sep 17 00:00:00 2001 From: icarus Date: Tue, 2 Dec 2025 11:16:52 +0800 Subject: [PATCH] fix(settings): fix wrong type caused by as assertion and migration Add migration step 180 to properly handle 'undefined' string values in OpenAI settings Update selector components to use value conversion helpers for summaryText and verbosity --- .../Tabs/components/OpenAISettingsGroup.tsx | 8 ++++---- src/renderer/src/store/migrate.ts | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/renderer/src/pages/home/Tabs/components/OpenAISettingsGroup.tsx b/src/renderer/src/pages/home/Tabs/components/OpenAISettingsGroup.tsx index bf3e1970d..d52ce2d24 100644 --- a/src/renderer/src/pages/home/Tabs/components/OpenAISettingsGroup.tsx +++ b/src/renderer/src/pages/home/Tabs/components/OpenAISettingsGroup.tsx @@ -203,9 +203,9 @@ const OpenAISettingsGroup: FC = ({ model, providerId, SettingGroup, Setti { - setSummaryText(value as OpenAISummaryText) + setSummaryText(toRealValue(value)) }} options={summaryTextOptions} /> @@ -222,9 +222,9 @@ const OpenAISettingsGroup: FC = ({ model, providerId, SettingGroup, Setti { - setVerbosity(value as OpenAIVerbosity) + setVerbosity(toRealValue(value)) }} options={verbosityOptions} /> diff --git a/src/renderer/src/store/migrate.ts b/src/renderer/src/store/migrate.ts index 4b2e4cef8..c1b2a47ee 100644 --- a/src/renderer/src/store/migrate.ts +++ b/src/renderer/src/store/migrate.ts @@ -2906,6 +2906,23 @@ const migrateConfig = { logger.error('migrate 179 error', error as Error) return state } + }, + '180': (state: RootState) => { + try { + // @ts-expect-error + if (state.settings.openAI.summaryText === 'undefined') { + state.settings.openAI.summaryText = undefined + } + // @ts-expect-error + if (state.settings.openAI.verbosity === 'undefined') { + state.settings.openAI.summaryText = undefined + } + logger.info('migrate 180 success') + return state + } catch (error) { + logger.error('migrate 180 error', error as Error) + return state + } } }