1
1
import { LoaderFunctionArgs } from "@remix-run/server-runtime" ;
2
2
import { prisma } from "~/db.server" ;
3
- import { requireUserId } from "~/services/session.server" ;
3
+ import { requireUser } from "~/services/session.server" ;
4
4
import { v3RunParamsSchema } from "~/utils/pathBuilder" ;
5
- import { PreparedEvent , RunPreparedEvent , eventRepository } from "~/v3/eventRepository.server" ;
5
+ import { RunPreparedEvent , eventRepository } from "~/v3/eventRepository.server" ;
6
6
import { createGzip } from "zlib" ;
7
7
import { Readable } from "stream" ;
8
8
import { formatDurationMilliseconds } from "@trigger.dev/core/v3/utils/durations" ;
9
9
import { getDateFromNanoseconds } from "~/utils/taskEvent" ;
10
10
import { getTaskEventStoreTableForRun } from "~/v3/taskEventStore.server" ;
11
+ import { TaskEventKind } from "@trigger.dev/database" ;
11
12
12
13
export async function loader ( { params, request } : LoaderFunctionArgs ) {
13
- const userId = await requireUserId ( request ) ;
14
+ const user = await requireUser ( request ) ;
14
15
const parsedParams = v3RunParamsSchema . pick ( { runParam : true } ) . parse ( params ) ;
15
16
16
17
const run = await prisma . taskRun . findFirst ( {
@@ -20,7 +21,7 @@ export async function loader({ params, request }: LoaderFunctionArgs) {
20
21
organization : {
21
22
members : {
22
23
some : {
23
- userId,
24
+ userId : user . id ,
24
25
} ,
25
26
} ,
26
27
} ,
@@ -44,6 +45,10 @@ export async function loader({ params, request }: LoaderFunctionArgs) {
44
45
read ( ) {
45
46
runEvents . forEach ( ( event ) => {
46
47
try {
48
+ if ( ! user . admin && event . kind === TaskEventKind . LOG ) {
49
+ // Only return debug logs for admins
50
+ return ;
51
+ }
47
52
this . push ( formatRunEvent ( event ) + "\n" ) ;
48
53
} catch { }
49
54
} ) ;
0 commit comments