pub struct SerializableStackSpec {
pub ast_version: String,
pub stack_name: String,
pub program_ids: Vec<String>,
pub idls: Vec<IdlSnapshot>,
pub program_specs: Vec<ProgramSpecV1>,
pub entities: Vec<SerializableStreamSpec>,
pub pdas: BTreeMap<String, BTreeMap<String, PdaDefinition>>,
pub instructions: Vec<InstructionDef>,
pub content_hash: Option<String>,
}Expand description
A unified stack specification containing all entities.
Written to .arete/{StackName}.stack.json.
Fields§
§ast_version: StringAST schema version for backward compatibility Uses semver format (e.g., “0.0.1”)
stack_name: StringStack name (PascalCase, derived from module ident)
program_ids: Vec<String>Program IDs (one per IDL, in order)
idls: Vec<IdlSnapshot>IDL snapshots (one per program)
program_specs: Vec<ProgramSpecV1>Exact public program specifications, in the same order as program_ids and idls.
entities: Vec<SerializableStreamSpec>All entity specifications in this stack
pdas: BTreeMap<String, BTreeMap<String, PdaDefinition>>PDA registry - defines all PDAs for the stack, grouped by program name Outer key is program name (e.g., “ore”, “entropy”), inner key is PDA name
instructions: Vec<InstructionDef>Instruction definitions for SDK code generation
content_hash: Option<String>Deterministic content hash of the entire stack
Implementations§
Source§impl SerializableStackSpec
impl SerializableStackSpec
Sourcepub fn normalize_event_names(&mut self)
pub fn normalize_event_names(&mut self)
Normalize legacy event names emitted by older AST generators.
Sourcepub fn compute_content_hash(&self) -> String
pub fn compute_content_hash(&self) -> String
Compute deterministic content hash (SHA256 of canonical JSON).
pub fn with_content_hash(self) -> Self
Trait Implementations§
Source§impl Clone for SerializableStackSpec
impl Clone for SerializableStackSpec
Source§fn clone(&self) -> SerializableStackSpec
fn clone(&self) -> SerializableStackSpec
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more