0.7.30
This commit is contained in:
@@ -17,6 +17,12 @@ pub struct LocalPipelineDiagnosticSummaryDto {
|
||||
pub decoded_trade_candidate_count: i64,
|
||||
/// Total decoded DEX candle candidates.
|
||||
pub decoded_candle_candidate_count: i64,
|
||||
/// Total decoded useful non-trade events.
|
||||
pub decoded_non_trade_useful_event_count: i64,
|
||||
/// Total decoded swap-like events that are intentionally non-actionable.
|
||||
pub decoded_non_actionable_trade_event_count: i64,
|
||||
/// Total decoded events with unknown classification.
|
||||
pub decoded_unknown_event_count: i64,
|
||||
/// Whether the local persisted pipeline has no blocking diagnostic issue.
|
||||
pub diagnostics_clean: bool,
|
||||
/// Number of blocking diagnostic issues.
|
||||
@@ -69,6 +75,9 @@ pub struct LocalPipelineDiagnosticSummaryDto {
|
||||
pub pair_summaries: std::vec::Vec<crate::LocalPairDiagnosticSummaryDto>,
|
||||
/// Diagnostics grouped by decoded event kind.
|
||||
pub decoded_event_summaries: std::vec::Vec<crate::LocalDecodedEventDiagnosticSummaryDto>,
|
||||
/// Diagnostics grouped by decoded event category, lifecycle kind and actionability.
|
||||
pub event_classification_summaries:
|
||||
std::vec::Vec<crate::LocalEventClassificationDiagnosticSummaryDto>,
|
||||
/// Missing trade events grouped by diagnostic reason.
|
||||
pub missing_trade_event_reason_summaries:
|
||||
std::vec::Vec<crate::LocalMissingTradeEventReasonSummaryDto>,
|
||||
@@ -157,6 +166,12 @@ pub struct LocalDecodedEventDiagnosticSummaryDto {
|
||||
pub event_kind: std::string::String,
|
||||
/// Event category.
|
||||
pub event_category: std::option::Option<std::string::String>,
|
||||
/// Event lifecycle kind.
|
||||
pub event_lifecycle_kind: std::option::Option<std::string::String>,
|
||||
/// Event actionability class.
|
||||
pub event_actionability: std::option::Option<std::string::String>,
|
||||
/// Whether payload says this event is a useful non-trade event.
|
||||
pub non_trade_useful: std::option::Option<bool>,
|
||||
/// Whether payload says this event is a trade candidate.
|
||||
pub trade_candidate: std::option::Option<bool>,
|
||||
/// Whether payload says this event is a candle candidate.
|
||||
@@ -167,6 +182,27 @@ pub struct LocalDecodedEventDiagnosticSummaryDto {
|
||||
pub trade_event_count: i64,
|
||||
}
|
||||
|
||||
/// Local decoded-event classification summary.
|
||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||
pub struct LocalEventClassificationDiagnosticSummaryDto {
|
||||
/// Event category.
|
||||
pub event_category: std::string::String,
|
||||
/// Event lifecycle kind.
|
||||
pub event_lifecycle_kind: std::string::String,
|
||||
/// Event actionability class.
|
||||
pub event_actionability: std::string::String,
|
||||
/// Whether payload says this event is a useful non-trade event.
|
||||
pub non_trade_useful: bool,
|
||||
/// Total decoded events in this classification group.
|
||||
pub event_count: i64,
|
||||
/// Total decoded trade candidates in this classification group.
|
||||
pub decoded_trade_candidate_count: i64,
|
||||
/// Total decoded candle candidates in this classification group.
|
||||
pub decoded_candle_candidate_count: i64,
|
||||
/// Total linked trade events in this classification group.
|
||||
pub trade_event_count: i64,
|
||||
}
|
||||
|
||||
/// Missing trade event diagnostics grouped by reason.
|
||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||
pub struct LocalMissingTradeEventReasonSummaryDto {
|
||||
@@ -238,6 +274,12 @@ pub struct LocalPipelineDiagnosticCountersDto {
|
||||
pub decoded_trade_candidate_count: i64,
|
||||
/// Total decoded DEX candle candidates.
|
||||
pub decoded_candle_candidate_count: i64,
|
||||
/// Total decoded useful non-trade events.
|
||||
pub decoded_non_trade_useful_event_count: i64,
|
||||
/// Total decoded swap-like events that are intentionally non-actionable.
|
||||
pub decoded_non_actionable_trade_event_count: i64,
|
||||
/// Total decoded events with unknown classification.
|
||||
pub decoded_unknown_event_count: i64,
|
||||
/// Total decoded trade candidates without trade event, including ignored failed transactions.
|
||||
pub missing_trade_event_count: i64,
|
||||
/// Explicit alias for decoded trade candidates without linked trade event.
|
||||
@@ -289,6 +331,9 @@ pub(crate) struct LocalPipelineDiagnosticCountersRow {
|
||||
pub(crate) decoded_event_count: i64,
|
||||
pub(crate) decoded_trade_candidate_count: i64,
|
||||
pub(crate) decoded_candle_candidate_count: i64,
|
||||
pub(crate) decoded_non_trade_useful_event_count: i64,
|
||||
pub(crate) decoded_non_actionable_trade_event_count: i64,
|
||||
pub(crate) decoded_unknown_event_count: i64,
|
||||
pub(crate) missing_trade_event_count: i64,
|
||||
pub(crate) decoded_trade_candidate_without_trade_event_count: i64,
|
||||
pub(crate) decoded_trade_candidate_without_trade_event_on_ok_transaction_count: i64,
|
||||
@@ -350,12 +395,28 @@ pub(crate) struct LocalDecodedEventDiagnosticSummaryRow {
|
||||
pub(crate) protocol_name: std::string::String,
|
||||
pub(crate) event_kind: std::string::String,
|
||||
pub(crate) event_category: std::option::Option<std::string::String>,
|
||||
pub(crate) event_lifecycle_kind: std::option::Option<std::string::String>,
|
||||
pub(crate) event_actionability: std::option::Option<std::string::String>,
|
||||
pub(crate) non_trade_useful: std::option::Option<i64>,
|
||||
pub(crate) trade_candidate: std::option::Option<i64>,
|
||||
pub(crate) candle_candidate: std::option::Option<i64>,
|
||||
pub(crate) event_count: i64,
|
||||
pub(crate) trade_event_count: i64,
|
||||
}
|
||||
|
||||
/// SQL row for local decoded-event classification diagnostics.
|
||||
#[derive(Debug, Clone, sqlx::FromRow)]
|
||||
pub(crate) struct LocalEventClassificationDiagnosticSummaryRow {
|
||||
pub(crate) event_category: std::string::String,
|
||||
pub(crate) event_lifecycle_kind: std::string::String,
|
||||
pub(crate) event_actionability: std::string::String,
|
||||
pub(crate) non_trade_useful: i64,
|
||||
pub(crate) event_count: i64,
|
||||
pub(crate) decoded_trade_candidate_count: i64,
|
||||
pub(crate) decoded_candle_candidate_count: i64,
|
||||
pub(crate) trade_event_count: i64,
|
||||
}
|
||||
|
||||
/// Sample of a decoded trade candidate without linked trade event.
|
||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||
pub struct LocalMissingTradeEventDiagnosticSampleDto {
|
||||
|
||||
Reference in New Issue
Block a user