feat: Sprint 1 — IPA hardening, regression framework, ground-truth review
Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 28s
CI / test-go-edu-search (push) Successful in 27s
CI / test-python-klausur (push) Failing after 1m55s
CI / test-python-agent-core (push) Successful in 16s
CI / test-nodejs-website (push) Successful in 19s
Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 28s
CI / test-go-edu-search (push) Successful in 27s
CI / test-python-klausur (push) Failing after 1m55s
CI / test-python-agent-core (push) Successful in 16s
CI / test-nodejs-website (push) Successful in 19s
Track A (Backend): - Compound word IPA decomposition (schoolbag→school+bag) - Trailing garbled IPA fragment removal after brackets (R21 fix) - Regression runner with DB persistence, history endpoints - Page crop determinism verified with tests Track B (Frontend): - OCR Regression dashboard (/ai/ocr-regression) - Ground Truth Review workflow (/ai/ocr-ground-truth) with split-view, confidence highlighting, inline edit, batch mark, progress tracking Track C (Docs): - OCR-Pipeline.md v5.0 (Steps 5e-5h) - Regression testing guide - mkdocs.yml nav update Track D (Infra): - TrOCR baseline benchmark script - run-regression.sh shell script - Migration 008: regression_runs table Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
18
klausur-service/backend/migrations/008_regression_runs.sql
Normal file
18
klausur-service/backend/migrations/008_regression_runs.sql
Normal file
@@ -0,0 +1,18 @@
|
||||
-- Migration 008: Regression test run history
|
||||
-- Stores results of regression test runs for trend analysis.
|
||||
|
||||
CREATE TABLE IF NOT EXISTS regression_runs (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
run_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
status VARCHAR(20) NOT NULL, -- 'pass', 'fail', 'error'
|
||||
total INT NOT NULL DEFAULT 0,
|
||||
passed INT NOT NULL DEFAULT 0,
|
||||
failed INT NOT NULL DEFAULT 0,
|
||||
errors INT NOT NULL DEFAULT 0,
|
||||
duration_ms INT,
|
||||
results JSONB NOT NULL DEFAULT '[]',
|
||||
triggered_by VARCHAR(50) DEFAULT 'manual' -- 'manual', 'script', 'ci'
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_regression_runs_run_at
|
||||
ON regression_runs (run_at DESC);
|
||||
Reference in New Issue
Block a user