Versions in this module Expand all Collapse all v0 v0.1.1 Oct 12, 2026 Changes in this version + const Version + var ErrCyclicPlan = errors.New("omniworkflow: plan contains a dependency cycle") + var ErrDuplicateRun = errors.New("omniworkflow: run id already exists") + var ErrDuplicateStepID = errors.New("omniworkflow: duplicate step id") + var ErrEmptyPlan = errors.New("omniworkflow: plan has no steps") + var ErrEmptyStepID = errors.New("omniworkflow: step has empty id") + var ErrRunNotFound = errors.New("omniworkflow: run not found") + var ErrSelfDependency = errors.New("omniworkflow: step depends on itself") + var ErrUnknownDependency = errors.New("omniworkflow: step depends on unknown step id") + func ApproveSignal(stepID string) string + type Plan struct + Steps []PlanStep + func (p Plan) Validate() error + type PlanStep struct + DependsOn []string + Gate bool + ID string + Input any + type Run struct + ID string + Metadata map[string]string + Output any + Status RunStatus + type RunStatus string + const StatusCancelled + const StatusFailed + const StatusRunning + const StatusSucceeded + func (s RunStatus) IsTerminal() bool + type Signal struct + Name string + Payload any + type StartRequest struct + ID string + Plan Plan + type StepExecutor interface + ExecuteStep func(ctx context.Context, runID string, step PlanStep) (output any, err error) + type Worker interface + Run func(ctx context.Context) error + type WorkflowProvider interface + Cancel func(ctx context.Context, id string) error + Get func(ctx context.Context, id string) (*Run, error) + Signal func(ctx context.Context, id string, signal Signal) error + Start func(ctx context.Context, req StartRequest) (*Run, error)