Documentation
¶
Index ¶
Constants ¶
View Source
const RunJobType = "run"
Variables ¶
Functions ¶
This section is empty.
Types ¶
type HandlerFunc ¶
type Job ¶
type Job struct {
ID string `json:"id"`
Type string `json:"type"`
RunID string `json:"run_id,omitempty"`
Payload json.RawMessage `json:"payload,omitempty"`
State JobState `json:"state"`
Attempts int `json:"attempts"`
MaxAttempts int `json:"max_attempts"`
LastError string `json:"last_error,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
AvailableAt time.Time `json:"available_at"`
LeaseWorkerID string `json:"lease_worker_id,omitempty"`
LeaseExpiresAt time.Time `json:"lease_expires_at,omitempty"`
}
type LeaseRenewer ¶
type Queue ¶
type Queue interface {
Enqueue(ctx context.Context, job Job) (Job, error)
Lease(ctx context.Context, workerID string, ttl time.Duration) (Lease, bool, error)
Load(ctx context.Context, jobID string) (Job, error)
Complete(ctx context.Context, lease Lease) error
Fail(ctx context.Context, lease Lease, cause error) error
Cancel(ctx context.Context, jobID string) error
}
type RunPayload ¶
type RunPayload struct {
RunID string `json:"run_id,omitempty"`
ScenarioID string `json:"scenario_id,omitempty"`
Scenario json.RawMessage `json:"scenario,omitempty"`
Agent string `json:"agent,omitempty"`
Prompt string `json:"prompt,omitempty"`
Context json.RawMessage `json:"context,omitempty"`
MaxAttempts int `json:"max_attempts,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
Principal identity.Principal `json:"principal,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.