Expand description
Compatibility shim preserving the ff_sdk::engine_error surface.
RFC-012 Stage 1a: the EngineError enum and its sub-kinds
moved to ff_core::engine_error; the From<ScriptError> +
ScriptError-downcast helpers moved to
ff_script::engine_error_ext. This module re-exports both so
every ff_sdk::EngineError / ff_sdk::engine_error::* path used
by existing consumers (cairn-fabric, the SDK’s own call sites)
continues to compile unchanged.
The enrich_dependency_conflict helper is kept here (not moved)
because it performs a live ferriskey::Client round trip; that
dependency is ff-sdk–scoped.
Enums§
- BugKind
- FF-internal invariant-violation sub-kinds. Should not be reachable in a correctly-behaving deployment.
- Conflict
Kind - Permanent conflict sub-kinds. Caller must reconcile rather than retry.
- Contention
Kind - Contention sub-kinds (retryable per RFC-010 §10.7). Caller should re-dispatch or re-read and retry.
- Engine
Error - Typed engine-error surface. See module docs.
- State
Kind - Legal-but-surprising state sub-kinds. Per-variant semantics vary (some are benign no-ops, some are terminal). Consult the RFC-010 §10.7 classification table.
- Validation
Kind - Validation sub-kinds. 1:1 with the Lua validation codes.
Functions§
- class
- Classification of
errusing the ScriptError-aware table. - enrich_
dependency_ conflict - Upgrade a bare
From<ScriptError>translation ofdependency_already_existsinto a fully-typedConflictKind::DependencyAlreadyExistsby performing the follow-upHGETALLon the edge hash. - transport_
script - Construct a Valkey-backed
Transportfrom aScriptError. Preferred over struct-literal construction so thebackendtag stays consistent across Valkey call sites. - transport_
script_ ref - If
erris aTransportcarrying aScriptError, return a reference to the inner script error. ReturnsNonefor other variants and for Transport whose inner source is not aScriptError(e.g. a Postgres-backed transport error). - valkey_
kind - Returns the underlying ferriskey
ErrorKindiferrmaps back to a transport-level fault whose inner source is aScriptError. Postgres-backed or other non-Valkey transport errors returnNone.