Versions in this module Expand all Collapse all v1 v1.0.0 Apr 18, 2026 Changes in this version + var Version = "dev" + func DecodeConfigSection(section map[string]any, out any) error + type AlertSeverity string + const AlertSeverityCritical + const AlertSeverityError + const AlertSeverityInfo + const AlertSeverityWarning + type Capability string + const CapabilityAPI + const CapabilityAudit + const CapabilityDeployer + const CapabilityMCP + const CapabilityNotifier + const CapabilityRuntimeFiles + const CapabilitySecrets + const CapabilitySystem + const CapabilityTrigger + const CapabilityUI + type ConfigProvider interface + Config func() any + type EventTypeDesc struct + Description string + Name EventTypeName + PayloadSpec map[string]PayloadField + type EventTypeName string + const EventTypeExecution + type ExecutionEventInput struct + AlertSeverity AlertSeverity + Details map[string]any + ExecutionID string + FailureClass FailureClass + FullName string + NodeID string + Owner string + Repo string + Source string + Stage ExecutionStage + Status ExecutionStatus + Trigger string + type ExecutionStage string + const ExecutionStageComplete + const ExecutionStageComposeDown + const ExecutionStageComposeUp + const ExecutionStageDiff + const ExecutionStageFetch + const ExecutionStageHooks + const ExecutionStageRequested + type ExecutionStatus string + const ExecutionStatusCancelled + const ExecutionStatusFailed + const ExecutionStatusRequested + const ExecutionStatusRunning + const ExecutionStatusSucceeded + type FailureClass string + const FailureClassDependency + const FailureClassPermanent + const FailureClassTransient + const FailureClassUnknown + const FailureClassValidation + type InternalEvent struct + Details map[string]interface{} + Message string + Repo string + Source string + Timestamp time.Time + Type EventTypeName + func NewExecutionEvent(input ExecutionEventInput) InternalEvent + type Listener func(ctx context.Context, event InternalEvent) + type Module interface + Init func(ctx context.Context, logger *slog.Logger, registry PluginRegistry) error + Name func() string + Start func(ctx context.Context) error + Stop func(ctx context.Context) error + type ModuleManager struct + func NewModuleManager(logger *slog.Logger) *ModuleManager + func (m *ModuleManager) GetConfig() map[string]map[string]any + func (m *ModuleManager) GetHTTPClient() *http.Client + func (m *ModuleManager) GetMuxServer() *http.ServeMux + func (m *ModuleManager) GetPlugin(name string) (Plugin, error) + func (m *ModuleManager) GetPluginsWithCapability(cap Capability) []Plugin + func (m *ModuleManager) Init(ctx context.Context) error + func (m *ModuleManager) ListPlugins() []Plugin + func (m *ModuleManager) LoadPlugins(dir string) error + func (m *ModuleManager) Publish(ctx context.Context, event InternalEvent) + func (m *ModuleManager) Register(mod Module) + func (m *ModuleManager) RegisterEventType(desc EventTypeDesc) error + func (m *ModuleManager) SetConfig(cfg map[string]map[string]any) + func (m *ModuleManager) SetHTTPClient(client *http.Client) + func (m *ModuleManager) Start(ctx context.Context) + func (m *ModuleManager) Stop(ctx context.Context) + func (m *ModuleManager) Subscribe(pattern string, handler Listener) + type NotificationPayload struct + AlertSeverity string + Body string + Details map[string]any + EventType EventTypeName + ExecutionID string + FailureClass string + FullName string + LastError string + Message string + Repo string + Source string + Stage string + Status string + Timestamp time.Time + Title string + func NewNotificationPayload(event InternalEvent) NotificationPayload + func (p NotificationPayload) MarshalJSON() ([]byte, error) + type PayloadField struct + Description string + Required bool + Type string + type Plugin interface + Capabilities func() []Capability + Description func() string + Execute func(ctx context.Context, action string, params map[string]interface{}) (interface{}, error) + Status func() ServiceStatus + type PluginRegistry interface + GetConfig func() map[string]map[string]any + GetHTTPClient func() *http.Client + GetMuxServer func() *http.ServeMux + GetPlugin func(name string) (Plugin, error) + GetPluginsWithCapability func(cap Capability) []Plugin + ListPlugins func() []Plugin + Publish func(ctx context.Context, event InternalEvent) + RegisterEventType func(desc EventTypeDesc) error + Subscribe func(pattern string, handler Listener) + type RuntimeFile struct + Content []byte + EnvKey string + Filename string + Mode uint32 + type Secret struct + Value string + func NewSecret(value string) Secret + func (s Secret) MarshalJSON() ([]byte, error) + func (s Secret) Redacted() string + func (s Secret) String() string + type ServiceStatus string + const StatusDegraded + const StatusHealthy + const StatusUnhealthy + const StatusUnknown