@@ -1476,6 +1476,8 @@ export class RunAttemptSystem {
1476
1476
return startSpan ( this . $ . tracer , "permanentlyFailRun" , async ( span ) => {
1477
1477
const status = runStatusFromError ( error , latestSnapshot . environmentType ) ;
1478
1478
1479
+ const truncatedError = this . #truncateTaskRunError( error ) ;
1480
+
1479
1481
//run permanently failed
1480
1482
const run = await prisma . taskRun . update ( {
1481
1483
where : {
@@ -1484,7 +1486,7 @@ export class RunAttemptSystem {
1484
1486
data : {
1485
1487
status,
1486
1488
completedAt : failedAt ,
1487
- error,
1489
+ error : truncatedError ,
1488
1490
} ,
1489
1491
select : {
1490
1492
id : true ,
@@ -1546,7 +1548,7 @@ export class RunAttemptSystem {
1546
1548
1547
1549
await this . waitpointSystem . completeWaitpoint ( {
1548
1550
id : run . associatedWaitpoint . id ,
1549
- output : { value : JSON . stringify ( error ) , isError : true } ,
1551
+ output : { value : JSON . stringify ( truncatedError ) , isError : true } ,
1550
1552
} ) ;
1551
1553
1552
1554
this . $ . eventBus . emit ( "runFailed" , {
@@ -1892,6 +1894,19 @@ export class RunAttemptSystem {
1892
1894
} ) ;
1893
1895
}
1894
1896
}
1897
+
1898
+ #truncateTaskRunError( error : TaskRunError ) : TaskRunError {
1899
+ if ( error . type !== "BUILT_IN_ERROR" ) {
1900
+ return error ;
1901
+ }
1902
+
1903
+ return {
1904
+ type : "BUILT_IN_ERROR" ,
1905
+ name : truncateString ( error . name , 1024 ) ,
1906
+ message : truncateString ( error . message , 1024 * 16 ) , // 16kb
1907
+ stackTrace : truncateString ( error . stackTrace , 1024 * 16 ) , // 16kb
1908
+ } ;
1909
+ }
1895
1910
}
1896
1911
1897
1912
export function safeParseGitMeta ( git : unknown ) : GitMeta | undefined {
@@ -1901,3 +1916,11 @@ export function safeParseGitMeta(git: unknown): GitMeta | undefined {
1901
1916
}
1902
1917
return undefined ;
1903
1918
}
1919
+
1920
+ function truncateString ( str : string | undefined , maxLength : number ) : string {
1921
+ if ( ! str ) {
1922
+ return "" ;
1923
+ }
1924
+
1925
+ return str . slice ( 0 , maxLength ) ;
1926
+ }
0 commit comments