From 40b8e3d2ef9d05ca9d85a4d66880eeb103c494a1 Mon Sep 17 00:00:00 2001 From: Marco Beretta <81851188+berry-13@users.noreply.github.com> Date: Sat, 20 Jun 2026 16:32:01 +0200 Subject: [PATCH] fix: thread retention config through conversation pin route --- api/server/routes/__tests__/convos.spec.js | 4 ++-- api/server/routes/convos.js | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/api/server/routes/__tests__/convos.spec.js b/api/server/routes/__tests__/convos.spec.js index 9c760f5057..36e38bc5cd 100644 --- a/api/server/routes/__tests__/convos.spec.js +++ b/api/server/routes/__tests__/convos.spec.js @@ -574,7 +574,7 @@ describe('Convos Routes', () => { expect(response.status).toBe(200); expect(response.body).toEqual(mockPinnedConvo); expect(saveConvo).toHaveBeenCalledWith( - { userId: 'test-user-123' }, + expect.objectContaining({ userId: 'test-user-123' }), { conversationId: mockConversationId, pinned: true }, { context: `POST /api/convos/pin ${mockConversationId}` }, ); @@ -589,7 +589,7 @@ describe('Convos Routes', () => { expect(response.status).toBe(200); expect(response.body).toEqual(mockUnpinnedConvo); expect(saveConvo).toHaveBeenCalledWith( - { userId: 'test-user-123' }, + expect.objectContaining({ userId: 'test-user-123' }), { conversationId: mockConversationId, pinned: false }, { context: `POST /api/convos/pin ${mockConversationId}` }, ); diff --git a/api/server/routes/convos.js b/api/server/routes/convos.js index b3dbad3bf4..44a5eaacf1 100644 --- a/api/server/routes/convos.js +++ b/api/server/routes/convos.js @@ -202,7 +202,7 @@ router.post('/archive', validateConvoAccess, configMiddleware, async (req, res) } }); -router.post('/pin', validateConvoAccess, async (req, res) => { +router.post('/pin', validateConvoAccess, configMiddleware, async (req, res) => { const { conversationId, pinned } = req.body?.arg ?? {}; if (!conversationId) { @@ -219,7 +219,11 @@ router.post('/pin', validateConvoAccess, async (req, res) => { try { const dbResponse = await db.saveConvo( - { userId: req.user.id }, + { + userId: req.user.id, + isTemporary: req?.body?.isTemporary, + interfaceConfig: req?.config?.interfaceConfig, + }, { conversationId, pinned }, { context: `POST /api/convos/pin ${conversationId}` }, );