@@ -66,10 +66,16 @@ const checkpointCancelRequests = new Counter({
6666 registers : [ register ] ,
6767} ) ;
6868
69- const WorkloadActionParams = z . object ( {
70- runFriendlyId : z . string ( ) ,
71- snapshotFriendlyId : z . string ( ) ,
72- } ) ;
69+ const WorkloadActionParams = z . compile (
70+ z . object ( {
71+ runFriendlyId : z . string ( ) ,
72+ snapshotFriendlyId : z . string ( ) ,
73+ } )
74+ ) ;
75+ const WorkloadDebugParams = z . compile ( WorkloadActionParams . pick ( { runFriendlyId : true } ) ) ;
76+ const CompiledWorkloadRunAttemptStartRequestBody = z . compile ( WorkloadRunAttemptStartRequestBody ) ;
77+ const CompiledWorkloadHeartbeatRequestBody = z . compile ( WorkloadHeartbeatRequestBody ) ;
78+ const CompiledWorkloadDebugLogRequestBody = z . compile ( WorkloadDebugLogRequestBody ) ;
7379
7480// Workloads bundled into customer task images before CLI v4.4.4 use a strict
7581// zod enum for checkpoint type that only allows DOCKER and KUBERNETES. The
@@ -385,7 +391,7 @@ export class WorkloadServer extends EventEmitter<WorkloadServerEvents> {
385391 "POST" ,
386392 {
387393 paramsSchema : WorkloadActionParams ,
388- bodySchema : WorkloadRunAttemptStartRequestBody ,
394+ bodySchema : CompiledWorkloadRunAttemptStartRequestBody ,
389395 handler : async ( ctx ) =>
390396 this . wideRoute (
391397 ctx ,
@@ -490,7 +496,7 @@ export class WorkloadServer extends EventEmitter<WorkloadServerEvents> {
490496 "POST" ,
491497 {
492498 paramsSchema : WorkloadActionParams ,
493- bodySchema : WorkloadHeartbeatRequestBody ,
499+ bodySchema : CompiledWorkloadHeartbeatRequestBody ,
494500 handler : async ( ctx ) =>
495501 this . wideRoute (
496502 ctx ,
@@ -724,8 +730,8 @@ export class WorkloadServer extends EventEmitter<WorkloadServerEvents> {
724730
725731 if ( env . SEND_RUN_DEBUG_LOGS ) {
726732 httpServer . route ( "/api/v1/workload-actions/runs/:runFriendlyId/logs/debug" , "POST" , {
727- paramsSchema : WorkloadActionParams . pick ( { runFriendlyId : true } ) ,
728- bodySchema : WorkloadDebugLogRequestBody ,
733+ paramsSchema : WorkloadDebugParams ,
734+ bodySchema : CompiledWorkloadDebugLogRequestBody ,
729735 handler : async ( ctx ) =>
730736 this . wideRoute (
731737 ctx ,
0 commit comments