pub enum StateParse {
Ok(DeserializedState),
NotAnEnvelope,
UnknownVersion(u32),
WrongPlugin {
found: u64,
state: DeserializedState,
},
Corrupt,
}Expand description
Outcome of parse_state: what the bytes turned out to be.
Splits the causes deserialize_state collapses into one None
so callers can route each one differently (fail the load, offer
the bytes to the plugin’s migrate_state hook, …).
Variants§
Ok(DeserializedState)
NotAnEnvelope
Wrong magic / too short to carry the header: not a truce envelope at all. Candidate for legacy-state migration.
UnknownVersion(u32)
Valid magic, version field newer than this build understands.
Reserved for truce-side envelope evolution: never handed to
the plugin, the load fails with a distinct log line.
WrongPlugin
Structurally valid envelope whose plugin_id_hash isn’t the
expected one - a renamed / re-identified plugin. Params and
extra are already decoded; the caller decides whether to
offer them to the plugin.
Corrupt
Magic + version matched but the param / extra blocks are truncated or inconsistent. Never migrated, the load fails.