@@ -12,7 +12,7 @@ import { generateSPKIFingerprint } from 'mockttp';
1212
1313import { HtkConfig } from './config' ;
1414import { reportError , addBreadcrumb } from './error-tracking' ;
15- import { buildInterceptors , Interceptor } from './interceptors' ;
15+ import { buildInterceptors , Interceptor , ActivationError } from './interceptors' ;
1616import { ALLOWED_ORIGINS } from './constants' ;
1717import { delay } from './util' ;
1818
@@ -88,6 +88,8 @@ const withFallback = <R>(p: Promise<R>, timeoutMs: number, defaultValue: R) =>
8888 delay ( timeoutMs ) . then ( ( ) => defaultValue )
8989 ] ) ;
9090
91+ const isActivationError = ( value : any ) : value is ActivationError => _ . isError ( value ) ;
92+
9193const INTERCEPTOR_TIMEOUT = 1000 ;
9294
9395const buildResolvers = (
@@ -128,9 +130,9 @@ const buildResolvers = (
128130 const result = await interceptor . activate ( proxyPort , options ) . catch ( ( e ) => e ) ;
129131 activationDone = true ;
130132
131- if ( _ . isError ( result ) ) {
132- reportError ( result ) ;
133- return { success : false } ;
133+ if ( isActivationError ( result ) ) {
134+ if ( result . reportable !== false ) reportError ( result ) ;
135+ return { success : false , metadata : result . metadata } ;
134136 } else {
135137 addBreadcrumb ( `Successfully activated ${ id } ` , { category : 'interceptor' } ) ;
136138 return { success : true , metadata : result } ;
0 commit comments