@@ -15,7 +15,17 @@ const PAYMENT_TIMEOUT_MS = 90_000;
1515const WALLET_SYNC_TIMEOUT_MS = 90_000 ;
1616const APP_STATUS_ROW_TIMEOUT_MS = 90_000 ;
1717const SCREEN_TRANSITION_TIMEOUT_MS = 30_000 ;
18- const LN_STABILIZE_DELAY_MS = 10_000 ;
18+
19+ function resolveLnStabilizeDelayMs ( ) : number {
20+ const fromEnv = process . env . LN_STABILIZE_DELAY_MS ;
21+ if ( fromEnv ) {
22+ const parsed = Number . parseInt ( fromEnv , 10 ) ;
23+ if ( Number . isFinite ( parsed ) && parsed >= 0 ) {
24+ return parsed ;
25+ }
26+ }
27+ return process . env . CI ? 45_000 : 10_000 ;
28+ }
1929
2030const ERROR_TOASTS = [ 'PaymentFailedToast' , 'ExpiredLightningToast' , 'InsufficientSpendingToast' ] ;
2131
@@ -65,8 +75,9 @@ function resolveMainnetLnReceiver(config: MainnetLnSuiteConfig): MainnetLnReceiv
6575async function waitForWalletReady ( ) : Promise < void > {
6676 console . info ( '→ [LN] Waiting for wallet home screen...' ) ;
6777 await elementById ( 'TotalBalance-primary' ) . waitForDisplayed ( { timeout : WALLET_SYNC_TIMEOUT_MS } ) ;
68- console . info ( '→ [LN] Home screen ready, letting LN node stabilize...' ) ;
69- await sleep ( LN_STABILIZE_DELAY_MS ) ;
78+ const stabilizeMs = resolveLnStabilizeDelayMs ( ) ;
79+ console . info ( `→ [LN] Home screen ready, letting LN node stabilize (${ stabilizeMs / 1000 } s)...` ) ;
80+ await sleep ( stabilizeMs ) ;
7081 console . info ( '→ [LN] Verify app status is ready' ) ;
7182 await tap ( 'HeaderMenu' ) ;
7283 await tap ( 'DrawerAppStatus' ) ;
0 commit comments