Skip to main content

Module decode

Module decode 

Source
Expand description

Canonical decoders for engine-owned hash shapes.

RFC-012 Stage 1c (T2): the edge-hash decoder lives here so every EngineBackend implementation — not just ff-backend-valkey — shares one strict-parse posture and one error surface (EngineError::Validation { kind: Corruption, .. }). ff-sdk’s snapshot module historically owned this code and surfaced SdkError::Config; the pre-migration wrapper still maps to that shape so public ff-sdk callers see no behavior change while the engine-side decoder moves.

Stage 1c T3 adds build_execution_snapshot and build_flow_snapshot alongside the edge decoder: every engine-owned hash shape now parses through one canonical strict-parse surface, freeing ff-backend-valkey to implement describe_execution / describe_flow against the trait and letting ff-sdk collapse its snapshot module into thin trait forwarders.

Constants§

EDGE_KNOWN_FIELDS
FF-owned fields on the flow-scoped edge:<edge_id> hash.
FLOW_CORE_KNOWN_FIELDS
FF-owned snake_case fields on flow_core. Any HGETALL field NOT in this set AND matching the ^[a-z][a-z0-9_]*\. namespaced-tag shape is surfaced on FlowSnapshot::tags. Fields that are neither FF- owned nor namespaced (unexpected shapes) are surfaced as a Corruption error so on-disk corruption or protocol drift fails loud.

Functions§

build_edge_snapshot
Assemble an EdgeSnapshot from the raw HGETALL field map.
build_execution_snapshot
Assemble an ExecutionSnapshot from the raw HGETALL field maps.
build_flow_snapshot
Assemble a FlowSnapshot from the raw HGETALL field map.