@@ -59,6 +59,8 @@ const OWNED_PYTHON_PATTERNS: ReadonlyArray<{ name: string; regex: RegExp }> = [
5959 { name : 'DEFAULT_APPROVAL_GATE_CAP' , regex : / ^ \s * D E F A U L T _ A P P R O V A L _ G A T E _ C A P \s * (?: : \s * i n t ) ? \s * = \s * - ? \d + \b / m } ,
6060 { name : 'APPROVAL_GATE_CAP_MIN' , regex : / ^ \s * A P P R O V A L _ G A T E _ C A P _ M I N \s * (?: : \s * i n t ) ? \s * = \s * - ? \d + \b / m } ,
6161 { name : 'APPROVAL_GATE_CAP_MAX' , regex : / ^ \s * A P P R O V A L _ G A T E _ C A P _ M A X \s * (?: : \s * i n t ) ? \s * = \s * - ? \d + \b / m } ,
62+ { name : 'FLOOR_TIMEOUT_S' , regex : / ^ \s * F L O O R _ T I M E O U T _ S \s * (?: : \s * i n t ) ? \s * = \s * - ? \d + \b / m } ,
63+ { name : 'DEFAULT_TASK_TIMEOUT_S' , regex : / ^ \s * D E F A U L T _ T A S K _ T I M E O U T _ S \s * (?: : \s * i n t ) ? \s * = \s * - ? \d + \b / m } ,
6264] ;
6365
6466interface Drift {
@@ -83,7 +85,10 @@ function findDriftInPython(filePath: string): Drift[] {
8385
8486function main ( ) : number {
8587 // Sanity: confirm the JSON is parseable and shaped as expected.
86- let json : { approval_gate_cap ?: { min: number ; max: number ; default: number } } ;
88+ let json : {
89+ approval_gate_cap ?: { min: number ; max: number ; default: number } ;
90+ approval_timeout_s ?: { min : number ; max: number ; default: number } ;
91+ } ;
8792 try {
8893 json = JSON . parse ( fs . readFileSync ( CONSTANTS_JSON , 'utf-8' ) ) ;
8994 } catch ( err ) {
@@ -97,6 +102,12 @@ function main(): number {
97102 return 1 ;
98103 }
99104
105+ const ats = json . approval_timeout_s ;
106+ if ( ! ats || typeof ats . min !== 'number' || typeof ats . max !== 'number' || typeof ats . default !== 'number' ) {
107+ console . error ( `${ CONSTANTS_JSON } is missing approval_timeout_s.{min,max,default}` ) ;
108+ return 1 ;
109+ }
110+
100111 const drifts = findDriftInPython ( POLICY_PY ) ;
101112
102113 if ( drifts . length > 0 ) {
0 commit comments