This commit is contained in:
2026-07-23 16:37:12 +02:00
parent 99c345f2f2
commit 0da75c1311
2159 changed files with 230833 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
// file: kb-lib/src/model/observation.rs
// version: 4
//! Shared program observation model.
use ts_rs::TS; // rust-rules: derive-import
/// Generic program observation derived from a Solana instruction.
#[derive(Clone, Debug, Eq, PartialEq, serde::Deserialize, serde::Serialize, TS)]
#[ts(
export,
export_to = "../frontend/ts/bindings/kb_model/observation/ProgramObservation.ts"
)]
pub struct ProgramObservation {
/// Transaction signature.
pub signature: crate::Signature,
/// Transaction slot.
pub slot: crate::Slot,
/// Instruction path.
pub instruction_path: crate::InstructionPath,
/// Program id.
pub program_id: crate::ProgramId,
/// Optional 8-byte discriminator in hexadecimal.
pub discriminator_8: std::option::Option<std::string::String>,
/// Raw instruction data length.
pub data_len: usize,
/// Number of instruction accounts.
pub accounts_len: usize,
/// Whether the source transaction failed.
pub failed: bool,
}