File tree Expand file tree Collapse file tree 1 file changed +24
-10
lines changed Expand file tree Collapse file tree 1 file changed +24
-10
lines changed Original file line number Diff line number Diff line change @@ -793,28 +793,42 @@ export class IntegrationService implements Disposable {
793793
794794 const results = await Promise . allSettled ( promises ) ;
795795
796+ // Collect successful results
797+ const successfulValues = [
798+ ...flatten (
799+ filterMap ( results , r =>
800+ r . status === 'fulfilled' && r . value != null && r . value ?. error == null
801+ ? r . value . value
802+ : undefined ,
803+ ) ,
804+ ) ,
805+ ] ;
806+
807+ // Collect errors
796808 const errors = [
797809 ...filterMap ( results , r =>
798810 r . status === 'fulfilled' && r . value ?. error != null ? r . value . error : undefined ,
799811 ) ,
800812 ] ;
801- if ( errors . length ) {
813+
814+ // Return successful results if we have any, even if some integrations failed
815+ if ( successfulValues . length > 0 ) {
816+ return {
817+ value : successfulValues ,
818+ duration : Date . now ( ) - start ,
819+ } ;
820+ }
821+
822+ // Only return an error if ALL integrations failed
823+ if ( errors . length > 0 ) {
802824 return {
803825 error : errors . length === 1 ? errors [ 0 ] : new AggregateError ( errors ) ,
804826 duration : Date . now ( ) - start ,
805827 } ;
806828 }
807829
808830 return {
809- value : [
810- ...flatten (
811- filterMap ( results , r =>
812- r . status === 'fulfilled' && r . value != null && r . value ?. error == null
813- ? r . value . value
814- : undefined ,
815- ) ,
816- ) ,
817- ] ,
831+ value : [ ] ,
818832 duration : Date . now ( ) - start ,
819833 } ;
820834 }
You can’t perform that action at this time.
0 commit comments