Skip to content

Commit 3a76b26

Browse files
committed
add aggregator verification address to config
1 parent 4eddb89 commit 3a76b26

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/config/clementine.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -347,6 +347,12 @@ pub struct ClementineConfig<E: Debug + Clone + ClementineEntityConfig> {
347347
/// Security council.
348348
pub security_council: SecurityCouncil,
349349

350+
/// The ECDSA address of the citrea/aggregator that will sign the withdrawal params
351+
/// after manual verification of the optimistic payout and operator's withdrawal.
352+
/// Used for both an extra verification of aggregator's identity and to force citrea
353+
/// to check withdrawal params manually during some time after launch.
354+
pub aggregator_verification_address: Option<alloy_primitives::Address>,
355+
350356
/// The X25519 public key that will be used to encrypt the emergency stop message.
351357
pub emergency_stop_encryption_public_key: Option<[u8; 32]>,
352358

@@ -450,6 +456,9 @@ impl<E: ClementineEntityConfig> Default for ClementineConfig<E> {
450456

451457
telemetry: Some(TelemetryConfig::default()),
452458

459+
// This defaults to a fixed key in Clementine
460+
aggregator_verification_address: None,
461+
453462
entity_config: E::default(),
454463

455464
log_dir: TempDir::new()
@@ -466,6 +475,11 @@ impl<E: ClementineEntityConfig> Default for ClementineConfig<E> {
466475
}
467476

468477
impl<E: ClementineEntityConfig + 'static> ClementineConfig<E> {
478+
pub fn with_aggregator_verification(mut self, address: alloy_primitives::Address) -> Self {
479+
self.aggregator_verification_address = Some(address);
480+
self
481+
}
482+
469483
/// Uses other configs to generate a ClementineConfig for the given entity type.
470484
///
471485
/// Matches the AggregatorConfig type to determine if the entity is an

0 commit comments

Comments
 (0)