pub struct PackDef {
pub name: SmolStr,
pub version: PackVersion,
pub kernel_min: PackVersion,
pub memory_type_names: Vec<SmolStr>,
pub entity_type_names: Vec<SmolStr>,
pub kinds: Vec<RelMeta>,
pub type_triples: Vec<TypeTriple>,
pub rule_ids: Vec<SmolStr>,
pub actions: Vec<PackActionDef>,
pub functions: Vec<PackFunctionDef>,
pub guidance: Vec<GuidanceEntry>,
}Expand description
Compiled result of a pack! invocation. Registered with inventory::submit!.
Fields§
§name: SmolStrUnique pack name (R-Pk1).
version: PackVersionPack version.
kernel_min: PackVersionMinimum kernel version the pack supports.
memory_type_names: Vec<SmolStr>Memory type names in declaration order.
entity_type_names: Vec<SmolStr>Entity type names in declaration order.
kinds: Vec<RelMeta>All registered kinds — authored kinds plus auto-registered inverse companions (R-T4).
type_triples: Vec<TypeTriple>Type-triple rules (R-T17).
rule_ids: Vec<SmolStr>Rule ids for fingerprinting.
actions: Vec<PackActionDef>Pack-registered Actions (PX2 §4.1): signature level only — name,
ceiling, typed input/output names. Bodies live in the inventory
registrations, never here, so patching a body moves neither
fingerprint level.
functions: Vec<PackFunctionDef>Pack-registered Functions (PX2 §4.1): signature level plus budgets. Body sources live in the registrations only.
guidance: Vec<GuidanceEntry>Structured agent guidance (PX2 §4.2). Excluded from the compatibility summary (instructions, not stored meaning); covered by the build fingerprint.