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

59 lines
2.0 KiB
SQL

-- 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;
-- 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;
-- 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;
-- 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;
-- name: MarkRunRunning :exec
UPDATE code_index_runs
SET status = 'running', started_at = now()
WHERE id = $1;
-- name: MarkRunCompleted :exec
UPDATE code_index_runs
SET status = 'completed', files_indexed = $2, chunks_indexed = $3,
error = NULL, finished_at = now()
WHERE id = $1;
-- name: MarkRunFailed :exec
UPDATE code_index_runs
SET status = 'failed', error = $2, finished_at = now()
WHERE id = $1;
-- name: MarkRunsStale :exec
UPDATE code_index_runs
SET status = 'stale'
WHERE workspace_id = $1 AND status IN ('pending','running','completed');
-- name: MarkStuckRunsStale :many
UPDATE code_index_runs
SET status = 'stale'
WHERE status = 'running' AND started_at < $1
RETURNING id;