This repository has been archived on 2026-07-17. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
gitea-codex/migrations/0001_initial.sql
T
Space-Banane 85c0e735dc
ci / test (pull_request) Successful in 21s
ci / publish (pull_request) Has been skipped
fix. harden Go review flow
Fix runner bootstrap and auth handling, preserve queued SHAs, make event/job acceptance atomic, fence stale runs, correct retries and prompts, add fake end-to-end coverage, and fix deployment defaults.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-12 22:20:48 +02:00

58 lines
2.2 KiB
SQL

-- MariaDB baseline schema. The Go startup migrator emits equivalent SQLite SQL.
CREATE TABLE IF NOT EXISTS webhook_events (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
delivery_id VARCHAR(255) NULL UNIQUE,
event_name VARCHAR(128) NOT NULL,
repo VARCHAR(255) NOT NULL,
comment_id BIGINT NULL,
payload_sha256 VARCHAR(64) NOT NULL,
created_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
UNIQUE KEY uq_webhook_events_repo_comment (repo, comment_id)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS review_jobs (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
repo VARCHAR(255) NOT NULL,
pr_number INT NOT NULL,
head_sha VARCHAR(64) NOT NULL,
trigger_comment_id BIGINT NOT NULL,
command VARCHAR(64) NOT NULL,
command_args TEXT NULL,
requested_by VARCHAR(255) NOT NULL,
status VARCHAR(32) NOT NULL,
last_error TEXT NULL,
result_json JSON NULL,
created_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
updated_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
started_at DATETIME(6) NULL,
finished_at DATETIME(6) NULL,
UNIQUE KEY uq_review_jobs_repo_trigger_comment (repo, trigger_comment_id),
KEY ix_review_jobs_lookup (repo, pr_number, head_sha, status, created_at)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS review_runs (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
job_id BIGINT NOT NULL,
status VARCHAR(32) NOT NULL,
runner_container_id VARCHAR(128) NULL,
result_json JSON NULL,
error_message TEXT NULL,
started_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
finished_at DATETIME(6) NULL,
CONSTRAINT fk_review_runs_job FOREIGN KEY (job_id) REFERENCES review_jobs(id) ON DELETE CASCADE,
KEY ix_review_runs_job_status (job_id, status)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS bot_comments (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
repo VARCHAR(255) NOT NULL,
pr_number INT NOT NULL,
head_sha VARCHAR(64) NOT NULL,
gitea_comment_id BIGINT NOT NULL,
marker VARCHAR(255) NOT NULL,
created_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
updated_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
UNIQUE KEY uq_bot_comments_marker (repo, pr_number, marker),
KEY ix_bot_comments_repo_pr (repo, pr_number)
) ENGINE=InnoDB;