store

package
v0.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 24, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AgentHub

type AgentHub interface {
	Send(agentID string, msg AgentMessage) bool
	SendTo(consumerID string, agentID string, msg AgentMessage) bool
	SendToSession(sessionID string, msg AgentMessage) bool
	PickConnection(agentID string) (ConnInfo, bool)
	HasConnections(agentID string) bool
}

type AgentMessage

type AgentMessage struct {
	Type    string          `json:"type"`
	Payload json.RawMessage `json:"payload"`
}

type CheckpointStore

type CheckpointStore interface {
	Get(ctx context.Context, executionID string) (*domain.Checkpoint, bool, error)
	Save(ctx context.Context, checkpoint domain.Checkpoint) error
	Delete(ctx context.Context, executionID string) error
}

type ConnInfo

type ConnInfo struct {
	ConsumerID string
	SessionID  string
}

type EventStore

type EventStore interface {
	Append(ctx context.Context, event domain.Event) error
	AppendBatch(ctx context.Context, events []domain.Event) error
	GetByExecution(ctx context.Context, executionID string, afterSequence int64, limit int) ([]domain.Event, error)
	GetLatestSequence(ctx context.Context, executionID string) (int64, error)
	ListActiveExecutionIDs(ctx context.Context) ([]string, error)
	ListExecutions(ctx context.Context, filter domain.ExecutionFilter, cursor string, limit int) ([]domain.ExecutionSummary, string, error)
	GetExecution(ctx context.Context, executionID string) (*domain.ExecutionSummary, error)
	CreateExecution(ctx context.Context, id, agentID string) error
	UpdateExecutionStatus(ctx context.Context, executionID string, status domain.ExecutionStatus) error
	DeleteExecution(ctx context.Context, executionID string) error
	ListTerminalExecutions(ctx context.Context, olderThanSeconds int64, limit int) ([]string, error)
}

type JobQueue added in v0.1.1

type JobQueue interface {
	Enqueue(ctx context.Context, job domain.Job) error
	DequeueForTool(ctx context.Context, toolID string) (*domain.Job, error)
	All(ctx context.Context) ([]domain.Job, error)
	Remove(ctx context.Context, jobID uuid.UUID) error
}

type Locker

type Locker interface {
	Acquire(ctx context.Context, key string) (release func(), err error)
}

type RunnerConnInfo

type RunnerConnInfo struct {
	RunnerID   string
	ConsumerID string
}

type RunnerHub

type RunnerHub interface {
	Dispatch(toolID string, msg RunnerMessage) (RunnerConnInfo, bool)
	SendTo(runnerID, consumerID string, msg RunnerMessage) bool
	MarkBusy(runnerID, consumerID string)
	MarkIdle(runnerID, consumerID string)
	MarkRunnerIdle(runnerID string)
	HasCapability(toolID string) bool
	UpdateCapabilities(runnerID string, capabilities []string)
}

type RunnerMessage

type RunnerMessage struct {
	Type    string          `json:"type"`
	Payload json.RawMessage `json:"payload"`
}

type RunnerStore

type RunnerStore interface {
	Register(ctx context.Context, runner domain.Runner) error
	Get(ctx context.Context, runnerID string) (*domain.Runner, bool, error)
	List(ctx context.Context) ([]domain.Runner, error)
	UpdateHeartbeat(ctx context.Context, runnerID string) error
	Delete(ctx context.Context, runnerID string) error
}

type SessionStore

type SessionStore interface {
	Create(ctx context.Context, session domain.Session) error
	Get(ctx context.Context, sessionID string) (*domain.Session, bool, error)
	GetByExecution(ctx context.Context, executionID string) (*domain.Session, bool, error)
	Extend(ctx context.Context, sessionID string, duration time.Duration) error
	Delete(ctx context.Context, sessionID string) error
	DeleteExpired(ctx context.Context, gracePeriod time.Duration) (int, error)
}

type SignalStore

type SignalStore interface {
	Publish(ctx context.Context, executionID string, signal domain.Signal) error
	GetPending(ctx context.Context, executionID string) ([]domain.Signal, error)
	Clear(ctx context.Context, executionID string) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL