@@ -2,7 +2,6 @@ import { formatTriggerUri } from "@internal/dashboard-agent-contracts";
22import { assertExhaustive } from "@trigger.dev/core/utils" ;
33import { type Prettify , type QueueItem , type RetrieveQueueParam } from "@trigger.dev/core/v3" ;
44import {
5- boundedIn ,
65 type PrismaClientOrTransaction ,
76 type TaskQueue ,
87 type TaskRunStatus ,
@@ -11,12 +10,13 @@ import {
1110} from "@trigger.dev/database" ;
1211import { type AuthenticatedEnvironment } from "~/services/apiAuth.server" ;
1312import { engine } from "~/v3/runEngine.server" ;
13+ import { runStore } from "~/v3/runStore.server" ;
1414import { BasePresenter } from "./basePresenter.server" ;
1515
16- export type SlotHolderPhase = "admitted" | "dequeued" ;
16+ type SlotHolderPhase = "admitted" | "dequeued" ;
1717export type SlotHolderConsistency = "consistent" | "mismatch" | "unresolved" ;
1818/** "not_found": a Redis slot holder with no matching TaskRun row. */
19- export type SlotHolderStatus = TaskRunStatus | "not_found" ;
19+ type SlotHolderStatus = TaskRunStatus | "not_found" ;
2020
2121/** Env-scope concurrency, alongside the queue row — the queue can show headroom while the env is saturated. */
2222export type EnvConcurrency = {
@@ -247,22 +247,20 @@ export class QueueRetrievePresenter extends BasePresenter {
247247 return unresolved ;
248248 }
249249
250- let runs : { id : string ; friendlyId : string ; status : TaskRunStatus } [ ] | undefined ;
250+ let runsById : Map < string , { friendlyId : string ; status : TaskRunStatus } > | undefined ;
251251 if ( snapshot . holders . length > 0 ) {
252252 try {
253- runs = await this . _replica . taskRun . findMany ( {
254- where : { id : { in : boundedIn ( snapshot . holders . map ( ( holder ) => holder . runId ) ) } } ,
255- select : { id : true , friendlyId : true , status : true } ,
256- } ) ;
253+ runsById = await runStore . findRunsByIds (
254+ snapshot . holders . map ( ( holder ) => holder . runId ) ,
255+ { select : { friendlyId : true , status : true } }
256+ ) ;
257257 } catch {
258- runs = undefined ;
258+ runsById = undefined ;
259259 }
260260 } else {
261- runs = [ ] ;
261+ runsById = new Map ( ) ;
262262 }
263263
264- const runsById = runs ? new Map ( runs . map ( ( run ) => [ run . id , run ] ) ) : undefined ;
265-
266264 // An empty member id can't be formatted into a URI, so it can't be reported.
267265 const slotHolders = snapshot . holders
268266 . filter ( ( holder ) => holder . runId . length > 0 )
0 commit comments