Skip to main content

ic_query/sns/report/model/
identity.rs

1//! Governance identity and acquisition evidence for retained neuron reports.
2use serde::{Deserialize, Serialize};
3
4///
5/// SnsInstanceContext
6///
7/// Acquisition metadata for an explicitly addressed Governance canister.
8///
9
10#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
11pub struct SnsInstanceContext {
12    /// Requested network.
13    pub network: String,
14    /// Canonical acquisition timestamp.
15    pub fetched_at: String,
16    /// Explicit endpoint.
17    pub source_endpoint: String,
18    /// Collector identity.
19    pub fetched_by: String,
20}
21
22///
23/// SnsReportContext
24///
25/// Explicit Governance target and acquisition metadata for neuron queries.
26///
27
28#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
29pub struct SnsReportContext {
30    /// Acquisition metadata, flattened in JSON.
31    #[serde(flatten)]
32    pub instance: SnsInstanceContext,
33    /// Governance canister holding the neurons.
34    pub governance_canister_id: String,
35}