feat: initial scaffold of agent_runner_api service Go :8486
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
CREATE TABLE IF NOT EXISTS workflows (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
prompt_template TEXT NOT NULL DEFAULT '',
|
||||
dod_schema_json TEXT NOT NULL DEFAULT '[]',
|
||||
created_at INTEGER NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_workflows_name ON workflows(name);
|
||||
@@ -0,0 +1,23 @@
|
||||
CREATE TABLE IF NOT EXISTS runs (
|
||||
id TEXT PRIMARY KEY,
|
||||
workflow_id TEXT,
|
||||
issue_id TEXT,
|
||||
card_id TEXT,
|
||||
kanban_app TEXT,
|
||||
mode TEXT NOT NULL DEFAULT 'agent',
|
||||
branch TEXT NOT NULL DEFAULT '',
|
||||
worktree_path TEXT NOT NULL DEFAULT '',
|
||||
status TEXT NOT NULL DEFAULT 'pending',
|
||||
started_at INTEGER NOT NULL,
|
||||
finished_at INTEGER,
|
||||
agent_pid INTEGER,
|
||||
agent_log_path TEXT,
|
||||
error TEXT,
|
||||
FOREIGN KEY (workflow_id) REFERENCES workflows(id)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_runs_status ON runs(status);
|
||||
CREATE INDEX IF NOT EXISTS idx_runs_issue ON runs(issue_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_runs_card ON runs(card_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_runs_kanban_app ON runs(kanban_app);
|
||||
CREATE INDEX IF NOT EXISTS idx_runs_started ON runs(started_at DESC);
|
||||
@@ -0,0 +1,11 @@
|
||||
CREATE TABLE IF NOT EXISTS worktrees (
|
||||
id TEXT PRIMARY KEY,
|
||||
run_id TEXT NOT NULL,
|
||||
path TEXT NOT NULL,
|
||||
branch TEXT NOT NULL,
|
||||
created_at INTEGER NOT NULL,
|
||||
removed_at INTEGER,
|
||||
FOREIGN KEY (run_id) REFERENCES runs(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_worktrees_run ON worktrees(run_id);
|
||||
@@ -0,0 +1,14 @@
|
||||
CREATE TABLE IF NOT EXISTS dod_items (
|
||||
id TEXT PRIMARY KEY,
|
||||
run_id TEXT NOT NULL,
|
||||
item_key TEXT NOT NULL,
|
||||
kind TEXT NOT NULL DEFAULT 'manual',
|
||||
expected TEXT NOT NULL DEFAULT '',
|
||||
required INTEGER NOT NULL DEFAULT 1,
|
||||
status TEXT NOT NULL DEFAULT 'pending',
|
||||
created_at INTEGER NOT NULL,
|
||||
FOREIGN KEY (run_id) REFERENCES runs(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_dod_items_run ON dod_items(run_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_dod_items_status ON dod_items(status);
|
||||
@@ -0,0 +1,14 @@
|
||||
CREATE TABLE IF NOT EXISTS dod_evidence (
|
||||
id TEXT PRIMARY KEY,
|
||||
dod_item_id TEXT NOT NULL,
|
||||
kind TEXT NOT NULL DEFAULT 'text',
|
||||
payload_path TEXT,
|
||||
payload_url TEXT,
|
||||
payload_text TEXT,
|
||||
attached_at INTEGER NOT NULL,
|
||||
validated_at INTEGER,
|
||||
validated_by TEXT,
|
||||
FOREIGN KEY (dod_item_id) REFERENCES dod_items(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_dod_evidence_item ON dod_evidence(dod_item_id);
|
||||
Reference in New Issue
Block a user