@@ -49,6 +49,8 @@ use apollo_node_config::component_execution_config::{
4949 ReactiveComponentExecutionMode ,
5050} ;
5151use apollo_node_config:: node_config:: SequencerNodeConfig ;
52+ use apollo_proof_manager:: communication:: { LocalProofManagerServer , RemoteProofManagerServer } ;
53+ use apollo_proof_manager:: metrics:: PROOF_MANAGER_INFRA_METRICS ;
5254use apollo_signature_manager:: communication:: {
5355 LocalSignatureManagerServer ,
5456 RemoteSignatureManagerServer ,
@@ -79,6 +81,7 @@ struct LocalServers {
7981 pub ( crate ) l1_gas_price_provider : Option < Box < LocalL1GasPriceServer > > ,
8082 pub ( crate ) mempool : Option < Box < LocalMempoolServer > > ,
8183 pub ( crate ) mempool_p2p_propagator : Option < Box < LocalMempoolP2pPropagatorServer > > ,
84+ pub ( crate ) proof_manager : Option < Box < LocalProofManagerServer > > ,
8285 pub ( crate ) sierra_compiler : Option < Box < LocalSierraCompilerServer > > ,
8386 pub ( crate ) signature_manager : Option < Box < LocalSignatureManagerServer > > ,
8487 pub ( crate ) state_sync : Option < Box < LocalStateSyncServer > > ,
@@ -110,6 +113,7 @@ pub struct RemoteServers {
110113 pub l1_gas_price_provider : Option < Box < RemoteL1GasPriceServer > > ,
111114 pub mempool : Option < Box < RemoteMempoolServer > > ,
112115 pub mempool_p2p_propagator : Option < Box < RemoteMempoolP2pPropagatorServer > > ,
116+ pub proof_manager : Option < Box < RemoteProofManagerServer > > ,
113117 pub sierra_compiler : Option < Box < RemoteSierraCompilerServer > > ,
114118 pub signature_manager : Option < Box < RemoteSignatureManagerServer > > ,
115119 pub state_sync : Option < Box < RemoteStateSyncServer > > ,
@@ -402,6 +406,21 @@ fn create_local_servers(
402406 & MEMPOOL_P2P_INFRA_METRICS . get_local_server_metrics( )
403407 ) ;
404408
409+ let proof_manager_server = create_local_server ! (
410+ CONCURRENT_LOCAL_SERVER ,
411+ & config. components. proof_manager. execution_mode,
412+ & mut components. proof_manager,
413+ & config
414+ . components
415+ . proof_manager
416+ . local_server_config
417+ . as_ref( )
418+ . expect( "Proof manager local server config should be available." ) ,
419+ communication. take_proof_manager_rx( ) ,
420+ & PROOF_MANAGER_INFRA_METRICS . get_local_server_metrics( ) ,
421+ config. components. proof_manager. max_concurrency
422+ ) ;
423+
405424 let sierra_compiler_server = create_local_server ! (
406425 CONCURRENT_LOCAL_SERVER ,
407426 & config. components. sierra_compiler. execution_mode,
@@ -454,6 +473,7 @@ fn create_local_servers(
454473 gateway : gateway_server,
455474 l1_provider : l1_provider_server,
456475 l1_gas_price_provider : l1_gas_price_provider_server,
476+ proof_manager : proof_manager_server,
457477 mempool : mempool_server,
458478 mempool_p2p_propagator : mempool_p2p_propagator_server,
459479 sierra_compiler : sierra_compiler_server,
@@ -483,6 +503,7 @@ impl LocalServers {
483503 server_future_and_label( self . l1_gas_price_provider, "Local L1 Gas Price Provider" ) ,
484504 server_future_and_label( self . mempool, "Local Mempool" ) ,
485505 server_future_and_label( self . mempool_p2p_propagator, "Local Mempool P2p Propagator" ) ,
506+ server_future_and_label( self . proof_manager, "Local Proof Manager" ) ,
486507 server_future_and_label( self . sierra_compiler, "Concurrent Local Sierra Compiler" ) ,
487508 server_future_and_label( self . signature_manager, "Concurrent Local Signature Manager" ) ,
488509 server_future_and_label( self . state_sync, "Local State Sync" ) ,
@@ -558,6 +579,15 @@ pub fn create_remote_servers(
558579 MEMPOOL_P2P_INFRA_METRICS . get_remote_server_metrics( )
559580 ) ;
560581
582+ let proof_manager_server = create_remote_server ! (
583+ & config. components. proof_manager. execution_mode,
584+ || { clients. get_proof_manager_local_client( ) } ,
585+ config. components. proof_manager. remote_server_config,
586+ config. components. proof_manager. port,
587+ config. components. proof_manager. max_concurrency,
588+ PROOF_MANAGER_INFRA_METRICS . get_remote_server_metrics( )
589+ ) ;
590+
561591 let sierra_compiler_server = create_remote_server ! (
562592 & config. components. sierra_compiler. execution_mode,
563593 || { clients. get_sierra_compiler_local_client( ) } ,
@@ -593,6 +623,7 @@ pub fn create_remote_servers(
593623 l1_gas_price_provider : l1_gas_price_provider_server,
594624 mempool : mempool_server,
595625 mempool_p2p_propagator : mempool_p2p_propagator_server,
626+ proof_manager : proof_manager_server,
596627 sierra_compiler : sierra_compiler_server,
597628 signature_manager : signature_manager_server,
598629 state_sync : state_sync_server,
@@ -609,6 +640,7 @@ impl RemoteServers {
609640 server_future_and_label( self . l1_gas_price_provider, "Remote L1 Gas Price Provider" ) ,
610641 server_future_and_label( self . mempool, "Remote Mempool" ) ,
611642 server_future_and_label( self . mempool_p2p_propagator, "Remote Mempool P2p Propagator" ) ,
643+ server_future_and_label( self . proof_manager, "Remote Proof Manager" ) ,
612644 server_future_and_label( self . sierra_compiler, "Remote Sierra Compiler" ) ,
613645 server_future_and_label( self . signature_manager, "Remote Signature Manager" ) ,
614646 server_future_and_label( self . state_sync, "Remote State Sync" ) ,
0 commit comments