From e7dbae32e543ea13bf14353d52442d9a34ea7463 Mon Sep 17 00:00:00 2001 From: Danny Avila Date: Fri, 8 May 2026 10:34:27 -0400 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A6=20fix:=20Preserve=20URL=20Auto-Sub?= =?UTF-8?q?mit=20Startup=20Config=20(#13017)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: Preserve URL auto-submit startup config * test: Cover URL auto-submit interface defaults --- .../data-schemas/src/app/interface.spec.ts | 39 +++++++++++++++++++ packages/data-schemas/src/app/interface.ts | 1 + 2 files changed, 40 insertions(+) diff --git a/packages/data-schemas/src/app/interface.spec.ts b/packages/data-schemas/src/app/interface.spec.ts index 3d59f394a5..9e289d289b 100644 --- a/packages/data-schemas/src/app/interface.spec.ts +++ b/packages/data-schemas/src/app/interface.spec.ts @@ -3,6 +3,45 @@ import type { TCustomConfig } from 'librechat-data-provider'; import { loadDefaultInterface } from './interface'; describe('loadDefaultInterface', () => { + it('uses the schema default for URL auto-submit when not configured', async () => { + const interfaceConfig = await loadDefaultInterface({ + config: {}, + configDefaults: getConfigDefaults(), + }); + + expect(interfaceConfig?.autoSubmitFromUrl).toBe(true); + }); + + it('preserves disabled URL auto-submit config', async () => { + const config: Partial = { + interface: { + autoSubmitFromUrl: false, + }, + }; + + const interfaceConfig = await loadDefaultInterface({ + config, + configDefaults: getConfigDefaults(), + }); + + expect(interfaceConfig?.autoSubmitFromUrl).toBe(false); + }); + + it('preserves enabled URL auto-submit config', async () => { + const config: Partial = { + interface: { + autoSubmitFromUrl: true, + }, + }; + + const interfaceConfig = await loadDefaultInterface({ + config, + configDefaults: getConfigDefaults(), + }); + + expect(interfaceConfig?.autoSubmitFromUrl).toBe(true); + }); + it('preserves the configured temporary chat retention period', async () => { const config: Partial = { interface: { diff --git a/packages/data-schemas/src/app/interface.ts b/packages/data-schemas/src/app/interface.ts index f5ea50fb25..4e719e8ac5 100644 --- a/packages/data-schemas/src/app/interface.ts +++ b/packages/data-schemas/src/app/interface.ts @@ -38,6 +38,7 @@ export async function loadDefaultInterface({ termsOfService: interfaceConfig?.termsOfService ?? defaults.termsOfService, mcpServers: interfaceConfig?.mcpServers ?? defaults.mcpServers, customWelcome: interfaceConfig?.customWelcome ?? defaults.customWelcome, + autoSubmitFromUrl: interfaceConfig?.autoSubmitFromUrl ?? defaults.autoSubmitFromUrl, // Permissions and related settings - only include if explicitly configured bookmarks: interfaceConfig?.bookmarks,