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 onFlowSnapshot::tags. Fields that are neither FF- owned nor namespaced (unexpected shapes) are surfaced as aCorruptionerror so on-disk corruption or protocol drift fails loud.
Functions§
- build_
edge_ snapshot - Assemble an
EdgeSnapshotfrom the raw HGETALL field map. - build_
execution_ snapshot - Assemble an
ExecutionSnapshotfrom the raw HGETALL field maps. - build_
flow_ snapshot - Assemble a
FlowSnapshotfrom the raw HGETALL field map.