Versions in this module Expand all Collapse all v0 v0.4.0 Sep 2, 2026 v0.3.0 Sep 1, 2026 Changes in this version + const ExecutionPolicyCompensating + const ExecutionPolicyFailFast + var ErrUnsupportedExtensionWorkflow = errors.New("unsupported extension workflow") + func BuildIREnvironment(typeSystem *types.TypeSystem, registry *verb.Registry) (ir.Environment, error) + func CompileChecked(ctx context.Context, sources []Source, environment ir.Environment, ...) (*ir.Checked, error) + func NewUnifiedSpec(listSpec *list.Spec, flowSpec *flow.Spec, name string) effectus.Spec + type CapabilityValidator struct + func (cv *CapabilityValidator) Validate(_ *TypeSystem, verbs map[string]*CompiledVerbSpec) ([]CompilationError, []CompilationWarning) + type CheckedFunctionProvider interface + CheckedFunctionContract func() ir.FunctionContract + CheckedFunctionDescriptor func() any + CheckedFunctionImplementation func() any + type CompilationError struct + Component string + Location string + Message string + Suggestions []string + Type string + type CompilationResult struct + CompiledUnit *CompiledUnit + Errors []CompilationError + Success bool + Warnings []CompilationWarning + type CompilationWarning struct + Location string + Message string + Type string + type CompileOptions struct + ExecutionPolicy effectusv1.ExecutionPolicy + InspectSource func(path string, file *ast.File) + Limits ir.Limits + type CompiledFunction struct + Dependencies []string + Implementation interface{} + Name string + ResolverDescriptor any + TypeSignature *TypeSignature + type CompiledSpec struct + Flow *flow.Spec + List *list.Spec + Name string + func (s *CompiledSpec) Execute(ctx context.Context, facts effectus.Facts, ex effectus.Executor) error + func (s *CompiledSpec) FlowSpec() *flow.Spec + func (s *CompiledSpec) GetName() string + func (s *CompiledSpec) ListSpec() *list.Spec + func (s *CompiledSpec) RequiredFacts() []string + type CompiledUnit struct + Capabilities []string + CheckedIR *ir.Checked + Dependencies []string + ExecutionOwnedSnapshot bool + ExecutionPlan *ExecutionPlan + ExtensionSnapshot *loader.ExtensionSnapshot + Functions map[string]*CompiledFunction + IREnvironment ir.Environment + InitialData map[string]interface{} + TypeSystem *TypeSystem + VerbSpecs map[string]*CompiledVerbSpec + type CompiledVerbSpec struct + Dependencies []string + ExecutorConfig ExecutorConfig + ExecutorDescriptor *loader.ExecutorDescriptor + ExecutorType ExecutorType + Spec *verb.Spec + TypeSignature *TypeSignature + ValidationRules []ValidationRule + type Compiler struct + func NewCompiler() *Compiler + func (c *Compiler) CompileChecked(ctx context.Context, sources []Source, environment ir.Environment, ...) (*ir.Checked, error) + func (c *Compiler) CompileFiles(filenames []string, facts effectus.Facts) (effectus.Spec, error) + func (c *Compiler) CompileProgram(filenames []string, facts effectus.Facts) (*CompiledSpec, error) + func (c *Compiler) CompileUncheckedFiles(filenames []string, facts effectus.Facts) (effectus.Spec, error) + func (c *Compiler) CompileUncheckedProgram(filenames []string, facts effectus.Facts) (*CompiledSpec, error) + func (c *Compiler) GenerateTypeReport() string + func (c *Compiler) GetTypeSystem() *types.TypeSystem + func (c *Compiler) LoadVerbSpecs(filename string) error + func (c *Compiler) ParseAndCompileFiles(filenames []string, facts effectus.Facts) (effectus.Spec, error) + func (c *Compiler) ParseAndCompileProgram(filenames []string, facts effectus.Facts) (*CompiledSpec, error) + func (c *Compiler) ParseAndTypeCheck(filename string, facts effectus.Facts) (*ast.File, error) + func (c *Compiler) ParseFile(filename string) (*ast.File, error) + func (c *Compiler) RegisterProtoTypes(protoFile string) error + type DependencyOptimizer struct + func (do *DependencyOptimizer) Optimize(plan *ExecutionPlan) *ExecutionPlan + type DependencyValidator struct + func (dv *DependencyValidator) Validate(_ *TypeSystem, verbs map[string]*CompiledVerbSpec) ([]CompilationError, []CompilationWarning) + type DescriptorExecutorConfig struct + Descriptor loader.ExecutorDescriptor + func (config *DescriptorExecutorConfig) GetType() ExecutorType + func (config *DescriptorExecutorConfig) Validate() error + type ErrorPolicy string + const ErrorPolicyCompensate + const ErrorPolicyContinue + const ErrorPolicyFail + const ErrorPolicyRetry + type ErrorReporter struct + func NewErrorReporter() *ErrorReporter + type ExecutionPhase struct + ErrorPolicy ErrorPolicy + Name string + Parallel bool + Timeout string + Verbs []string + type ExecutionPlan struct + Capabilities map[string][]string + Dependencies map[string][]string + Executors map[string]ExecutorConfig + Phases []ExecutionPhase + type ExecutionPlanOptimizer struct + func (epo *ExecutionPlanOptimizer) Optimize(plan *ExecutionPlan) *ExecutionPlan + type ExecutorConfig interface + GetType func() ExecutorType + Validate func() error + type ExecutorType string + const ExecutorExternal + const ExecutorGRPC + const ExecutorHTTP + const ExecutorLocal + const ExecutorMessage + const ExecutorMock + type ExtensionCompiler struct + func NewExtensionCompiler() *ExtensionCompiler + func (c *ExtensionCompiler) Compile(ctx context.Context, em *loader.ExtensionManager) (*CompilationResult, error) + func (c *ExtensionCompiler) CompileSnapshot(ctx context.Context, snapshot *loader.ExtensionSnapshot) (*CompilationResult, error) + type FunctionDefinition struct + InputTypes []string + Name string + OutputType string + Pure bool + type GRPCExecutorConfig struct + Address string + Insecure bool + Metadata map[string]string + Method string + RetryPolicy *RetryPolicy + RetrySafe bool + ServerName string + Timeout string + UseTLS bool + func (gec *GRPCExecutorConfig) GetType() ExecutorType + func (gec *GRPCExecutorConfig) Validate() error + type HTTPExecutorConfig struct + AllowPrivateNetwork bool + Headers map[string]string + Method string + RetryPolicy *RetryPolicy + Timeout string + URL string + func (hec *HTTPExecutorConfig) GetType() ExecutorType + func (hec *HTTPExecutorConfig) Validate() error + type LocalExecutorConfig struct + Implementation loader.VerbExecutor + func (lec *LocalExecutorConfig) GetType() ExecutorType + func (lec *LocalExecutorConfig) Validate() error + type MessageExecutorConfig struct + AllowPrivateNetwork bool + Brokers []string + Exchange string + Headers map[string]string + Publisher string + Queue string + RetryPolicy *RetryPolicy + RoutingKey string + Timeout string + Topic string + URL string + func (mec *MessageExecutorConfig) GetType() ExecutorType + func (mec *MessageExecutorConfig) Validate() error + type MockExecutorConfig struct + func (mec *MockExecutorConfig) GetType() ExecutorType + func (mec *MockExecutorConfig) Validate() error + type Optimizer interface + Optimize func(plan *ExecutionPlan) *ExecutionPlan + type RetryPolicy struct + BackoffFactor float64 + InitialDelay string + MaxDelay string + MaxRetries int + RetryableErrors []string + type SecurityValidator struct + func (sv *SecurityValidator) Validate(_ *TypeSystem, verbs map[string]*CompiledVerbSpec) ([]CompilationError, []CompilationWarning) + type Source struct + Content []byte + Data []byte + Path string + func LoadSources(paths []string) ([]Source, error) + type TypeConstraint struct + Description string + Parameter string + Type string + Values []interface{} + type TypeDefinition struct + Constraints []TypeConstraint + ElementType *TypeDefinition + Name string + Properties map[string]interface{} + Type string + UnionTypes []*TypeDefinition + type TypeSignature struct + Constraints []TypeConstraint + InputTypes map[string]string + OutputType string + type TypeSystem struct + type TypeValidator struct + func (tv *TypeValidator) Validate(ts *TypeSystem, verbs map[string]*CompiledVerbSpec) ([]CompilationError, []CompilationWarning) + type ValidationRule struct + ErrorMessage string + Expression string + Type string + type Validator interface + Validate func(typeSystem *TypeSystem, verbs map[string]*CompiledVerbSpec) ([]CompilationError, []CompilationWarning)