Skip to main content

Module input_state

Module input_state 

Source
Expand description

§13 InputState — per-input data shell.

Canonical lifecycle truth for every input lives in the MeerkatMachine DSL (input_phases, input_run_associations, input_boundary_sequences plus the QueueAccepted / StageForRun / RecordBoundarySeq / etc. transitions). This module owns ONLY the per-input shell metadata needed for persistence/projection: a history log, timestamps, compatibility policy snapshot, durability observation, idempotency key, and the cached payload needed to rebuild queued work after recovery. Durability admission validity and recovered keep/drop behavior are emitted by generated MeerkatMachine inputs/effects.

Terminal outcome and attempt count are DSL-owned facts. Live reads go through EphemeralRuntimeDriver::input_terminal_outcome / input_attempt_count; persistence carries them on InputStateSeed. InputState holds no copy of either.

Structs§

InputState
Per-input shell data. Plain fields, no hidden state machine.
InputStateEvent
An event on an input’s state (for event sourcing).
InputStateHistoryEntry
A single entry in the input’s state history (shell bookkeeping).
InputStatePersistenceRecord
Store-write wrapper for an input-state bundle whose DSL-owned seed facts came from a generated MeerkatMachine-owned snapshot.
InputStateSeed
DSL-owned lifecycle projection for an input.
PolicySnapshot
Snapshot of the policy that was applied to this input.
StoredInputState
Persisted bundle: shell InputState plus its InputStateSeed.

Enums§

InputAbandonReason
Why an input was abandoned.
InputLifecycleState
The lifecycle state of an input — mirrors the DSL’s input_phases values.
InputTerminalOutcome
Terminal outcome for an input.
ReconstructionSource
How a derived input can be reconstructed after crash recovery.