From 935d7c957bd3c9afefef058357d8d4fff636e81e Mon Sep 17 00:00:00 2001 From: fallenbagel <98979876+Fallenbagel@users.noreply.github.com> Date: Wed, 15 Apr 2026 21:33:19 +0800 Subject: [PATCH] fix(settings): persist new settings defaults to disk on startup --- server/lib/settings/index.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/server/lib/settings/index.ts b/server/lib/settings/index.ts index 70aa360efa..3288761592 100644 --- a/server/lib/settings/index.ts +++ b/server/lib/settings/index.ts @@ -811,16 +811,22 @@ class Settings { await this.save(); } + let change = false; if (data && !raw) { const parsedJson = JSON.parse(data); const migratedData = await runMigrations(parsedJson, SETTINGS_PATH); - this.data = mergeSettings(this.data, migratedData); + const merged = mergeSettings(this.data, migratedData); + + if (JSON.stringify(merged) !== JSON.stringify(migratedData)) { + change = true; + } + + this.data = merged; } else if (data) { this.data = JSON.parse(data); } // generate keys and ids if it's missing - let change = false; if (!this.data.main.apiKey) { this.data.main.apiKey = this.generateApiKey(); change = true;