db

package
v0.0.0-...-abce577 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ExperimentStatusRunning   = "RUNNING"
	ExperimentStatusCompleted = "COMPLETED"
	ExperimentStatusAborted   = "ABORTED"
)

Experiment Statuses

View Source
const (
	RunStatusQueued    = "QUEUED"
	RunStatusRunning   = "RUNNING"
	RunStatusCompleted = "COMPLETED"
	RunStatusAborted   = "ABORTED"
)

Run Statuses

View Source
const (
	ReasonSuccess          = "SUCCESS"
	ReasonFailedValidation = "FAILED (VALIDATION)"
	ReasonFailedLoop       = "FAILED (LOOP)"
	ReasonFailedError      = "FAILED (ERROR)"
	ReasonFailedTimeout    = "FAILED (TIMEOUT)"
)

Run Reasons

Variables

This section is empty.

Functions

This section is empty.

Types

type ConfigBlock

type ConfigBlock struct {
	ID      int64  `json:"id"`
	Name    string `json:"name"`
	Type    string `json:"type"` // "agent", "system_prompt", "context", "settings", "mcp_server", "extension"
	Content string `json:"content"`
}

ConfigBlock represents a reusable configuration component.

type DB

type DB struct {
	// contains filtered or unexported fields
}

func Open

func Open(path string) (*DB, error)

func (*DB) Close

func (db *DB) Close() error

func (*DB) CreateBlock

func (db *DB) CreateBlock(name, blockType, content string) (int64, error)

CreateBlock creates a new configuration block.

func (*DB) CreateExperiment

func (db *DB) CreateExperiment(exp *models.Experiment) (int64, error)

func (*DB) DeleteAllExperiments

func (db *DB) DeleteAllExperiments() error

func (*DB) DeleteBlock

func (db *DB) DeleteBlock(id int64) error

DeleteBlock deletes a configuration block by ID.

func (*DB) DeleteExperiment

func (db *DB) DeleteExperiment(id int64) error

func (*DB) DeleteMessages

func (db *DB) DeleteMessages(runID int64) error

func (*DB) DeleteToolUsage

func (db *DB) DeleteToolUsage(runID int64) error

func (*DB) GetBlock

func (db *DB) GetBlock(id int64) (*ConfigBlock, error)

GetBlock retrieves a configuration block by ID.

func (*DB) GetExperimentByID

func (db *DB) GetExperimentByID(id int64) (*models.Experiment, error)

GetExperimentByID fetches detailed experiment data and calculates real-time aggregated stats

func (*DB) GetExperimentToolCounts

func (db *DB) GetExperimentToolCounts(experimentID int64, filter string) (map[int64]map[string]int, error)

func (*DB) GetExperiments

func (db *DB) GetExperiments() ([]models.Experiment, error)

GetExperiments fetches all experiments with summary stats

func (*DB) GetGlobalStats

func (db *DB) GetGlobalStats() (map[string]interface{}, error)

GetGlobalStats returns aggregate stats across all experiments

func (*DB) GetLintResults

func (db *DB) GetLintResults(runID int64) ([]models.LintIssue, error)

func (*DB) GetMessages

func (db *DB) GetMessages(runID int64, limit, offset int) ([]models.Message, error)

func (*DB) GetRunByID

func (db *DB) GetRunByID(runID int64) (*models.RunResult, error)

GetRunByID fetches a single run result by ID

func (*DB) GetRunFiles

func (db *DB) GetRunFiles(runID int64) ([]*models.RunFile, error)

func (*DB) GetRunMetrics

func (db *DB) GetRunMetrics(runID int64) (*parser.AgentMetrics, error)

GetRunMetrics calculates aggregated metrics purely from run_events. This ensures the DB event log is the Single Source of Truth.

func (*DB) GetRunResults

func (db *DB) GetRunResults(expID int64, limit, offset int) ([]models.RunResult, error)

GetRunResults fetches a list of runs with relevant metrics

func (*DB) GetRunStdout

func (db *DB) GetRunStdout(runID int64) (string, error)

func (*DB) GetTestResults

func (db *DB) GetTestResults(runID int64) ([]models.TestResult, error)

func (*DB) GetToolStats

func (db *DB) GetToolStats(experimentID int64, filter string) ([]models.ToolStatRow, error)

func (*DB) GetToolUsage

func (db *DB) GetToolUsage(runID int64) ([]models.ToolUsage, error)

func (*DB) ListBlocks

func (db *DB) ListBlocks(blockType string) ([]ConfigBlock, error)

ListBlocks retrieves all configuration blocks, optionally filtered by type.

func (*DB) SaveLintResults

func (db *DB) SaveLintResults(results []models.LintIssue) error

func (*DB) SaveMessage

func (db *DB) SaveMessage(m *models.Message) error

func (*DB) SaveRunEvent

func (db *DB) SaveRunEvent(runID int64, evtType string, payload any) error

func (*DB) SaveRunFile

func (db *DB) SaveRunFile(f *models.RunFile) error

func (*DB) SaveRunResult

func (db *DB) SaveRunResult(r *models.RunResult) (int64, error)

func (*DB) SaveRunTelemetry

func (db *DB) SaveRunTelemetry(t *RunTelemetry) error

SaveRunTelemetry saves final run status and test/lint results. Note: Tools and Messages are now handled via run_events and views, so we don't save them here.

func (*DB) SaveTestResults

func (db *DB) SaveTestResults(results []models.TestResult) error

func (*DB) ToggleExperimentLock

func (db *DB) ToggleExperimentLock(id int64, locked bool) error

func (*DB) UpdateBlock

func (db *DB) UpdateBlock(id int64, name, blockType, content string) error

UpdateBlock updates an existing configuration block.

func (*DB) UpdateExecutionControl

func (db *DB) UpdateExecutionControl(expID int64, control string) error

func (*DB) UpdateExperimentAIAnalysis

func (db *DB) UpdateExperimentAIAnalysis(id int64, analysis string) error

func (*DB) UpdateExperimentAnnotations

func (db *DB) UpdateExperimentAnnotations(experimentID int64, annotations string) error

func (*DB) UpdateExperimentDuration

func (db *DB) UpdateExperimentDuration(experimentID int64, duration int64) error

func (*DB) UpdateExperimentError

func (db *DB) UpdateExperimentError(experimentID int64, errMsg string) error

func (*DB) UpdateExperimentProgress

func (db *DB) UpdateExperimentProgress(id int64, completed, total int) error

func (*DB) UpdateExperimentReport

func (db *DB) UpdateExperimentReport(experimentID int64, reportContent string) error

func (*DB) UpdateExperimentStatus

func (db *DB) UpdateExperimentStatus(id int64, status string) error

func (*DB) UpdateRunLogs

func (db *DB) UpdateRunLogs(runID int64, stdout, stderr string) error

func (*DB) UpdateRunStatus

func (db *DB) UpdateRunStatus(id int64, status string) error

func (*DB) UpdateRunStatusAndReason

func (db *DB) UpdateRunStatusAndReason(runID int64, status string, reason string) error

func (*DB) WithTransaction

func (db *DB) WithTransaction(fn func(tx *sql.Tx) error) error

WithTransaction executes a function within a transaction

type RunTelemetry

type RunTelemetry struct {
	Result      *models.RunResult
	TestResults []models.TestResult
	LintResults []models.LintIssue
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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