From 41524425bcd53419fcd342c5f82cac1ab92d3e7b Mon Sep 17 00:00:00 2001 From: DarkSky <25152247+darkskygit@users.noreply.github.com> Date: Thu, 3 Jul 2025 18:31:11 +0800 Subject: [PATCH] fix(server): incorrect list condition (#13005) ## Summary by CodeRabbit * **Bug Fixes** * Improved session filtering to use the correct criteria when querying sessions, ensuring more accurate results based on the action parameter. --- .../__snapshots__/copilot-session.spec.ts.md | 18 +++++++++--------- .../copilot-session.spec.ts.snap | Bin 3633 -> 3638 bytes .../server/src/models/copilot-session.ts | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.md b/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.md index 0324d0b5a1..b77759cfbb 100644 --- a/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.md +++ b/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.md @@ -368,7 +368,7 @@ Generated by [AVA](https://avajs.dev). ], }, non_action_sessions: { - count: 5, + count: 4, sessionTypes: [ { hasMessages: false, @@ -391,13 +391,6 @@ Generated by [AVA](https://avajs.dev). messageCount: 0, type: 'doc', }, - { - hasMessages: false, - isAction: true, - isFork: false, - messageCount: 0, - type: 'doc', - }, { hasMessages: false, isAction: false, @@ -408,7 +401,7 @@ Generated by [AVA](https://avajs.dev). ], }, non_fork_sessions: { - count: 3, + count: 4, sessionTypes: [ { hasMessages: false, @@ -424,6 +417,13 @@ Generated by [AVA](https://avajs.dev). messageCount: 0, type: 'doc', }, + { + hasMessages: false, + isAction: true, + isFork: false, + messageCount: 0, + type: 'doc', + }, { hasMessages: false, isAction: false, diff --git a/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.snap b/packages/backend/server/src/__tests__/models/__snapshots__/copilot-session.spec.ts.snap index 09fa4b095b1fa40f791019495597b93fd41f2212..e57406bc5a7920ba3e1b9f4636b33986e21e35b4 100644 GIT binary patch delta 3526 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 AW&i*H delta 3527 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 B ({ action: ret })), + prompt: getNullCond(action, ret => ({ action: ret })), parentSessionId: getNullCond(fork), }, ];