Files
agentic-coding-workflow/internal/codeindex/sqlc/runs.sql.go
T
2026-06-22 08:55:57 +08:00

252 lines
6.4 KiB
Go

// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.31.1
// source: runs.sql
package codeindexsqlc
import (
"context"
"github.com/jackc/pgx/v5/pgtype"
)
const getLatestCompletedRun = `-- name: GetLatestCompletedRun :one
SELECT id, workspace_id, worktree_id, branch, commit_sha, status,
embedding_endpoint_id, embedding_model, dims,
files_indexed, chunks_indexed, error, started_at, finished_at, created_at
FROM code_index_runs
WHERE workspace_id = $1 AND status = 'completed'
ORDER BY created_at DESC
LIMIT 1
`
func (q *Queries) GetLatestCompletedRun(ctx context.Context, workspaceID pgtype.UUID) (CodeIndexRun, error) {
row := q.db.QueryRow(ctx, getLatestCompletedRun, workspaceID)
var i CodeIndexRun
err := row.Scan(
&i.ID,
&i.WorkspaceID,
&i.WorktreeID,
&i.Branch,
&i.CommitSha,
&i.Status,
&i.EmbeddingEndpointID,
&i.EmbeddingModel,
&i.Dims,
&i.FilesIndexed,
&i.ChunksIndexed,
&i.Error,
&i.StartedAt,
&i.FinishedAt,
&i.CreatedAt,
)
return i, err
}
const getRun = `-- name: GetRun :one
SELECT id, workspace_id, worktree_id, branch, commit_sha, status,
embedding_endpoint_id, embedding_model, dims,
files_indexed, chunks_indexed, error, started_at, finished_at, created_at
FROM code_index_runs
WHERE id = $1
`
func (q *Queries) GetRun(ctx context.Context, id pgtype.UUID) (CodeIndexRun, error) {
row := q.db.QueryRow(ctx, getRun, id)
var i CodeIndexRun
err := row.Scan(
&i.ID,
&i.WorkspaceID,
&i.WorktreeID,
&i.Branch,
&i.CommitSha,
&i.Status,
&i.EmbeddingEndpointID,
&i.EmbeddingModel,
&i.Dims,
&i.FilesIndexed,
&i.ChunksIndexed,
&i.Error,
&i.StartedAt,
&i.FinishedAt,
&i.CreatedAt,
)
return i, err
}
const getRunByCommit = `-- name: GetRunByCommit :one
SELECT id, workspace_id, worktree_id, branch, commit_sha, status,
embedding_endpoint_id, embedding_model, dims,
files_indexed, chunks_indexed, error, started_at, finished_at, created_at
FROM code_index_runs
WHERE workspace_id = $1 AND commit_sha = $2 AND embedding_model = $3
`
type GetRunByCommitParams struct {
WorkspaceID pgtype.UUID `json:"workspace_id"`
CommitSha string `json:"commit_sha"`
EmbeddingModel string `json:"embedding_model"`
}
func (q *Queries) GetRunByCommit(ctx context.Context, arg GetRunByCommitParams) (CodeIndexRun, error) {
row := q.db.QueryRow(ctx, getRunByCommit, arg.WorkspaceID, arg.CommitSha, arg.EmbeddingModel)
var i CodeIndexRun
err := row.Scan(
&i.ID,
&i.WorkspaceID,
&i.WorktreeID,
&i.Branch,
&i.CommitSha,
&i.Status,
&i.EmbeddingEndpointID,
&i.EmbeddingModel,
&i.Dims,
&i.FilesIndexed,
&i.ChunksIndexed,
&i.Error,
&i.StartedAt,
&i.FinishedAt,
&i.CreatedAt,
)
return i, err
}
const insertRun = `-- name: InsertRun :one
INSERT INTO code_index_runs (
id, workspace_id, worktree_id, branch, commit_sha, status,
embedding_endpoint_id, embedding_model, dims
) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9)
RETURNING id, workspace_id, worktree_id, branch, commit_sha, status,
embedding_endpoint_id, embedding_model, dims,
files_indexed, chunks_indexed, error, started_at, finished_at, created_at
`
type InsertRunParams struct {
ID pgtype.UUID `json:"id"`
WorkspaceID pgtype.UUID `json:"workspace_id"`
WorktreeID pgtype.UUID `json:"worktree_id"`
Branch string `json:"branch"`
CommitSha string `json:"commit_sha"`
Status string `json:"status"`
EmbeddingEndpointID pgtype.UUID `json:"embedding_endpoint_id"`
EmbeddingModel string `json:"embedding_model"`
Dims int32 `json:"dims"`
}
func (q *Queries) InsertRun(ctx context.Context, arg InsertRunParams) (CodeIndexRun, error) {
row := q.db.QueryRow(ctx, insertRun,
arg.ID,
arg.WorkspaceID,
arg.WorktreeID,
arg.Branch,
arg.CommitSha,
arg.Status,
arg.EmbeddingEndpointID,
arg.EmbeddingModel,
arg.Dims,
)
var i CodeIndexRun
err := row.Scan(
&i.ID,
&i.WorkspaceID,
&i.WorktreeID,
&i.Branch,
&i.CommitSha,
&i.Status,
&i.EmbeddingEndpointID,
&i.EmbeddingModel,
&i.Dims,
&i.FilesIndexed,
&i.ChunksIndexed,
&i.Error,
&i.StartedAt,
&i.FinishedAt,
&i.CreatedAt,
)
return i, err
}
const markRunCompleted = `-- name: MarkRunCompleted :exec
UPDATE code_index_runs
SET status = 'completed', files_indexed = $2, chunks_indexed = $3,
error = NULL, finished_at = now()
WHERE id = $1
`
type MarkRunCompletedParams struct {
ID pgtype.UUID `json:"id"`
FilesIndexed int32 `json:"files_indexed"`
ChunksIndexed int32 `json:"chunks_indexed"`
}
func (q *Queries) MarkRunCompleted(ctx context.Context, arg MarkRunCompletedParams) error {
_, err := q.db.Exec(ctx, markRunCompleted, arg.ID, arg.FilesIndexed, arg.ChunksIndexed)
return err
}
const markRunFailed = `-- name: MarkRunFailed :exec
UPDATE code_index_runs
SET status = 'failed', error = $2, finished_at = now()
WHERE id = $1
`
type MarkRunFailedParams struct {
ID pgtype.UUID `json:"id"`
Error *string `json:"error"`
}
func (q *Queries) MarkRunFailed(ctx context.Context, arg MarkRunFailedParams) error {
_, err := q.db.Exec(ctx, markRunFailed, arg.ID, arg.Error)
return err
}
const markRunRunning = `-- name: MarkRunRunning :exec
UPDATE code_index_runs
SET status = 'running', started_at = now()
WHERE id = $1
`
func (q *Queries) MarkRunRunning(ctx context.Context, id pgtype.UUID) error {
_, err := q.db.Exec(ctx, markRunRunning, id)
return err
}
const markRunsStale = `-- name: MarkRunsStale :exec
UPDATE code_index_runs
SET status = 'stale'
WHERE workspace_id = $1 AND status IN ('pending','running','completed')
`
func (q *Queries) MarkRunsStale(ctx context.Context, workspaceID pgtype.UUID) error {
_, err := q.db.Exec(ctx, markRunsStale, workspaceID)
return err
}
const markStuckRunsStale = `-- name: MarkStuckRunsStale :many
UPDATE code_index_runs
SET status = 'stale'
WHERE status = 'running' AND started_at < $1
RETURNING id
`
func (q *Queries) MarkStuckRunsStale(ctx context.Context, startedAt pgtype.Timestamptz) ([]pgtype.UUID, error) {
rows, err := q.db.Query(ctx, markStuckRunsStale, startedAt)
if err != nil {
return nil, err
}
defer rows.Close()
var items []pgtype.UUID
for rows.Next() {
var id pgtype.UUID
if err := rows.Scan(&id); err != nil {
return nil, err
}
items = append(items, id)
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}