043d4aa46f
9 tasks: type extension → postprocess → families → sampler_v2 → generator_v2 → gates → run_store → pipeline_v2 → CLI integration. Includes structured-logging schemas/metrics and Codex review revisions.
1.8 KiB
1.8 KiB
type, node_id, title, date
| type | node_id | title | date |
|---|---|---|---|
| schema | schema:question-gen-runs | 表结构: question_gen_runs(出题批次) | 2026-07-12 |
表结构: question_gen_runs(出题批次)
出题管线 v2 的批次级运行记录。每次 tools/generate_questions.py generate 执行产生一行。
列定义
| 列名 | 类型 | 约束 | 说明 |
|---|---|---|---|
run_id |
TEXT | PK | 生成批次唯一 ID(UUID) |
git_sha |
TEXT | NOT NULL | 代码版本(HEAD commit) |
config_snapshot |
TEXT | 科研配置 YAML 快照(JSON 序列化) | |
started_at |
TEXT | NOT NULL | ISO8601 开始时间 |
finished_at |
TEXT | ISO8601 结束时间(运行中为 NULL) | |
status |
TEXT | NOT NULL | running / completed / failed |
total_slots |
INTEGER | 目标题数(默认 240) | |
accepted |
INTEGER | 过门题数 | |
rejected |
INTEGER | 最终拒绝题数 | |
heavy_sampled |
INTEGER | 重量抽检题数 |
DDL
CREATE TABLE IF NOT EXISTS question_gen_runs (
run_id TEXT PRIMARY KEY,
git_sha TEXT NOT NULL,
config_snapshot TEXT,
started_at TEXT NOT NULL,
finished_at TEXT,
status TEXT NOT NULL DEFAULT 'running',
total_slots INTEGER,
accepted INTEGER,
rejected INTEGER,
heavy_sampled INTEGER
);
埋点位置
| 代码位置 | 动作 | 时机 |
|---|---|---|
tools/generate_questions.py::generate 入口 |
INSERT(status=running) | 批次开始 |
tools/generate_questions.py::generate 结尾 |
UPDATE(finished_at/status/统计汇总) | 批次结束 |
查询模式
-- 最近一次成功运行
SELECT * FROM question_gen_runs WHERE status='completed' ORDER BY started_at DESC LIMIT 1;
-- 产能统计
SELECT accepted, rejected, heavy_sampled, total_slots FROM question_gen_runs WHERE run_id=?;