hypercall_recovery/
quiesce.rs1use crate::lifecycle::RecoveryPhase;
2use serde::Serialize;
3
4#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize)]
6pub enum MutationSource {
7 UserCommand,
8 RfqExecution,
9 Deposit,
10 LiquidationBonus,
11 MarginMode,
12 AgentAuth,
13 NonceCheck,
14 TierUpdate,
15 HypercoreEquity,
16 MarketAction,
17 TradingMode,
18 Expiry,
19 PriceIngestion,
20 IvIngestion,
21}
22
23#[derive(Debug, Clone, Copy, PartialEq, Eq)]
25pub enum QuiesceAction {
26 Quiesce,
27 Resume,
28}
29
30#[derive(Debug, Clone, Serialize)]
32pub struct QuiesceReport {
33 pub phase: RecoveryPhase,
34 pub quiesced: bool,
35 pub last_command_id: i64,
36 pub last_l2_seq: i64,
37 pub snapshot_persisted: bool,
38 pub paused_sources: Vec<MutationSource>,
39}