Privacy-safe, read-only projection of a committed operational loop.
wait_ref exposes only the current wait id, kind, and trigger generation so
a caller can fence its reply. Progress, blocker, results, and artifacts are
independently controlled by the Definition's publication policy.
Summary
Functions
Projects a committed loop and its control plane into a flat, redacted view.
Types
@type t() :: %Spectre.Operation.View{ artifacts: term(), attempts: term(), blocker: term(), budget: term(), checkpoint: term(), cognitive: term(), context_revision: term(), control_state: term(), cycles: term(), definition: term(), definition_version: term(), id: term(), invalidations: term(), kind: term(), last_crash: term(), last_update: term(), metadata: term(), next_operation: term(), next_trigger: term(), observations: term(), operation: term(), partial_results: term(), pause_requested: term(), pending_command: term(), phase: term(), progress: term(), reconciliation: term(), retries: term(), revision: term(), status: term(), terminal_category: term(), trigger_generation: term(), updated_at: term(), wait_ref: term() }
Functions
@spec from_loop(Spectre.Operation.Loop.t(), Spectre.Operation.Control.t()) :: t()
Projects a committed loop and its control plane into a flat, redacted view.
Progress, partial results, artifacts, and blocker honor the loop's
publication policy and become :redacted when publication is disabled;
requests, updates, commands and cognitive data are reduced to safe fields.