① 각 테이블의 컬럼이 워크플로우의 어느 국면(phase)에서 저장되는지 ② live DB에 실제 존재하는 평가 배치 전수. 수치는 eval_ph1 DB 실측(기준 2026-07-08 15:17 KST).
핵심 구분: 시작 시 박는 "조건" · 스트리밍 중 쌓는 "흔적" · 끝난 뒤 계산해 덮는 "결과" · 사후 별도 명령 · 안 채움.
| phase | 트리거 | 테이블 → 채워지는 것 | 코드 |
|---|---|---|---|
| 0 | init-db | _schema_migrations · message_types(seed) | migrations/001 |
| 1 | load-gaia 등 | tasks 전 컬럼(question·gold_answer·file_name·requires_web·annotator_meta) | gaia/loader |
| 2 | run 시작(배치당 1회) | teams(team_id·agents·topology·prompt_bundle_hash·config_full) | registry.ensure_team_record |
| 3 | run(task별 직전) | runs INSERT — status=running + 실행 "조건" | runner.py:208 |
| 4 | run_stream 소비 중 | events 전 행(이벤트 1개당 1+행) | TraceLogger.log_stream |
| 5 | 스트림 종료 직후 | runs UPDATE — completed/crashed + 집계·채점 결과 | runner.py:283 / _mark_crashed |
| 6 | 배치 종료 | materialized views REFRESH(mv_batch_summary 등) | db.refresh_views |
| 7 | 사후 별도 명령 | research_grounding·cppx_grounding·experiments | grounding-score / propose 등 |
이게 "run할 때 저장 vs 수행 후 계산"의 핵심. INSERT(시작)와 UPDATE(종료)가 컬럼을 양분한다.
| 컬럼 | 언제 | 성격 |
|---|---|---|
| run_id·team_id·task_id·attempt·batch_id | 3 INSERT | 식별자 |
| model_name·temperature·seed·max_messages | 3 INSERT | 실행 "조건" 스냅샷 — settings에서 박음(재현성 비교용) |
| status='running'·started_at | 3 INSERT | 시작 표시 |
| total_turns·total_tokens·input/output_tokens·latency_ms | 5 UPDATE | logger가 스트리밍 중 누산 → 종료 시 한 번에 기록(계산=during, 저장=after) |
| overhead_tokens (020, 신규 run) | 5 UPDATE | client.total_usage()−events합산 = selector 등 events 미포함 모델 비용. 구버전 run은 NULL |
| terminated_by | 5 UPDATE | TaskResult.stop_reason → approve/max_messages/error |
| final_answer | 5 UPDATE | logger가 뽑은 답 |
| success·format_valid | 5 UPDATE | 스트림 종료 후 scorer가 별도 계산 ← "수행 후 따로 계산"의 대표 |
| ended_at | 5 UPDATE | now() |
_mark_crashed)는 status='crashed', terminated_by='error', ended_at만 쓰고 success는 NULL로 남긴다 → CHECK(status='completed' OR success IS NOT NULL)을 위반하지 않음.이벤트가 도착할 때마다 즉시 INSERT. ts는 DB 기본값이 아니라 logger가 도착 시각을 박고, latency_ms도 그 자리에서(직전 대비) 계산.
| message_type | 채워지는 컬럼 |
|---|---|
agent_message | content·content_truncated·tokens·input/output_tokens·latency_ms |
tool_call | tool_call_id·tool_name·tool_args·tokens… |
tool_result | tool_call_id·tool_name·tool_result·tool_result_hash |
tool_error | tool_call_id·tool_name·tool_error |
selector_decision | selected_next_agent·selector_reason |
final_answer | content (agent_name=NULL) |
evaluator_score | content·eval_meta (FabricMAS xverify 팀만) |
공통: event_id(BIGSERIAL)·run_id·seq·agent_name·ts. 자세한 행 단위 변환은 런타임 해부 §E.
코드에 쓰는 곳이 0곳임을 grep으로 확인(SPEC §0.3: 자동 라벨링·LLM-judge 구현 금지).
runs.failure_stage · runs.root_cause · runs.judge_meta — 항상 NULLevents.agent_role — 스키마엔 있으나 logger가 안 씀 → 항상 NULLclaims · evidence 테이블 — 플레이스홀더, writer 없음failure_stages · root_causes 룩업 — 존재하나 미사용--batch로 넣는 값은 별도 엔티티가 아니라 runs 행에 붙는 자유 텍스트 컬럼 하나.
runs.batch_id TEXT NOT NULL # FK 아님, 카탈로그 없음, 아무 문자열이나 허용 UNIQUE (batch_id, task_id, attempt) # ← 재개(resume)의 키 CREATE INDEX idx_runs_batch ON runs(batch_id);
batch_id를 공유하는 runs 행들의 집합. 그 이상의 실체가 없다(시작시각·설명은 각 run 행에 중복 기록).--batch로 다시 돌리면 완료분 skip, 나머지만 채움. 그래서 새 실험은 의미를 담아 유일하게(예: gaia_l1_v5_20260624).experiments.batch_before/after도 FK 아닌 TEXT(규약).report --batch / compare --batches / failures --batch · 뷰 mv_batch_summary · SELECT DISTINCT batch_id FROM runs · Grafana.live DB runs를 batch_id로 묶은 전수(기준 2026-07-08 15:17 KST). test-runner-*(97) · test-resume-*(97) 단발 CI 픽스처는 제외. n=run · ok=성공 · p@1=완료분 pass@1 · cr=크래시.
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-10 | m6_dev | v1-baseline | 15 | 3 | 0.20 | 0 |
| 06-10 | m6_dev_smoke_20260610T212837 | v1-baseline | 5 | 1 | 0.20 | 0 |
| 06-10 | m6_dev_smoke_20260610T213009 | v1-baseline | 5 | 1 | 0.20 | 0 |
| 06-10 | m6_dev_smoke_20260610T213114 | v1-baseline | 5 | 1 | 0.20 | 0 |
| 06-10 | m6_real_20260610T214855 | v1-baseline | 5 | 1 | 0.20 | 0 |
| 06-10 | m6_real_20260610T215356 | v1-baseline | 31 | 20 | 0.65 | 0 |
| 06-10 | m6_real_20260610T220800 | v1-baseline | 33 | 22 | 0.67 | 0 |
| 06-10 | m6_final_20260610T222108 | v1-baseline | 33 | 24 | 0.73 | 0 |
| 06-10 | m6_clean_20260610T223541 | v1-baseline | 15 | 14 | 0.93 | 0 |
| 06-10 | m6_clean_20260610T224342 | v1-baseline | 15 | 15 | 1.00 | 0 |
| 06-10 | gaia_l1_real_20260610 | v1-baseline | 27 | 9 | 0.36 | 2 |
| 06-11 | gaia_l1_v3_20260611 | v3-prompt-fix | 25 | 9 | 0.39 | 2 |
| 06-11 | gaia_v2_attach_20260611 | v2-attach-path | 27 | 11 | 0.44 | 2 |
| 06-11 | gaia_l1_t0_v1_20260611 | v1-baseline | 27 | 11 | 0.42 | 1 |
| 06-11 | gaia_l1_v4_20260611 | v4-prompt-fix | 25 | 10 | 0.43 | 2 |
| 06-11 | gaia_l1_t0_v2_20260611 | v2-attach-path | 27 | 12 | 0.48 | 2 |
| 06-11 | ab_v5_l1_20260611 | v5-multitool | 27 | 15 | 0.58 | 1 |
| 06-11 | ab_v4ctl_l1_20260611 | v4-prompt-fix | 27 | 13 | 0.52 | 2 |
| 06-11 | v5_l2_20260611 | v5-multitool | 16 | 6 | 0.43 | 2 |
| 06-11 | v5_l1_k3_20260611 | v5-multitool | 81 | 42 | 0.58 | 9 |
| 06-11 | v5_mm16_20260611 | v5-multitool | 24 | 13 | 0.54 | 0 |
| 06-15 | gaia_l2_slice_20260615 | v1-baseline | 4 | 1 | 0.25 | 0 |
| 06-15 | gaia_l2_base_20260615 | v1-baseline | 35 | 5 | 0.20 | 6 |
| 06-15 | exp_b_v1 | v1-baseline | 20 | 7 | 0.35 | 0 |
| 06-15 | gaia_l2_web_20260615 | v2-gaia-web | 86 | 1 | 0.33 | 83 |
| 06-15 | exp_b_v6 | v6-verify-gate | 20 | 8 | 0.40 | 0 |
| 06-15 | gaia_l2_webdiag_20260615 | v2-gaia-web | 4 | 0 | 0.00 | 1 |
| 06-15 | gaia_l2_webclean_20260615 | v2-gaia-web | 25 | 5 | 0.20 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-12 | research_smoke_20260612 | v1-research-pipeline | 2 | 2 | 1.00 | 0 |
| 06-12 | research_base_20260612 | v1-research-pipeline | 30 | 29 | 0.97 | 0 |
| 06-12 | research_grounded_20260612 | v2-research-grounded | 30 | 29 | 0.97 | 0 |
| 06-12 | research_fast_20260612 | v2-research-fast | 30 | 2 | 0.07 | 0 |
| 06-12 | research_hard_base_20260612 | v1-research-pipeline | 30 | 24 | 0.80 | 0 |
| 06-12 | research_hard_disambig_20260612 | v2-research-disambig | 30 | 8 | 0.27 | 0 |
| 06-12 | research_hard_cleanret_20260612 | v2-research-cleanret | 30 | 26 | 0.87 | 0 |
| 06-13 | research_decoy_v1k3_20260613 | v1-research-pipeline | 30 | 28 | 0.93 | 0 |
| 06-13 | research_decoy_v2k3_20260613 | v2-research-cleanret | 30 | 29 | 0.97 | 0 |
| 06-13 | xverify_smoke | research-xverify-observe | 1 | 1 | 1.00 | 0 |
| 06-13 | ab_base | v2-research-grounded | 5 | 5 | 1.00 | 0 |
| 06-14 | ab_observe | research-xverify-observe | 5 | 5 | 1.00 | 0 |
| 06-14 | ab_gate | research-xverify-gate | 5 | 5 | 1.00 | 0 |
| 06-14 | abh_base | v2-research-grounded | 5 | 4 | 0.80 | 0 |
| 06-14 | abh_observe | research-xverify-observe | 5 | 4 | 0.80 | 0 |
| 06-14 | abh_gate | research-xverify-gate | 5 | 5 | 1.00 | 0 |
| 06-14 | flk_base | v2-research-grounded | 3 | 2 | 0.67 | 0 |
| 06-14 | flk_observe | research-xverify-observe | 2 | 1 | 1.00 | 0 |
| 06-30 | ab_baseline_v6 | v6-analyst-web | 5 | 5 | 1.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-13 | analysis_stale_20260613 | v2-analyst-deep | 3 | 3 | 1.00 | 0 |
| 06-13 | analysis_grounded_20260613 | v3-analyst-web | 3 | 3 | 1.00 | 0 |
| 06-13 | analysis_lite_20260613 | v4-analyst-web | 3 | 3 | 1.00 | 0 |
| 06-13 | analysis_cited_20260613 | v5-analyst-web | 3 | 3 | 1.00 | 0 |
| 06-13 | analysis_dedup_20260613 | v6-analyst-web | 3 | 3 | 1.00 | 0 |
| 06-13 | analysis_v6_k3_20260613 | v6-analyst-web | 9 | 8 | 0.89 | 0 |
| 06-14 | remeasure_base_20260614 | v2-analyst-deep | 9 | 9 | 1.00 | 0 |
| 06-14 | remeasure_web_20260614 | v3-analyst-web | 9 | 9 | 1.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-14 | tvq_s1_solo | cppx-solo | 1 | 1 | 1.00 | 0 |
| 06-14 | tvq_s2_panel | cppx-panel | 1 | 1 | 1.00 | 0 |
| 06-14 | cppx_all_solo | cppx-solo | 39 | 39 | 1.00 | 0 |
| 06-14 | cppx_all_panel | cppx-panel | 39 | 39 | 1.00 | 0 |
| 06-14 | cppx_all_panel_v2 | cppx-panel-v2 | 39 | 39 | 1.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-15 | extract_base_20260615 | v1-extract-solo | 8 | 3 | 0.38 | 0 |
| 06-15 | extract_v2_20260615 | v2-extract-validated | 8 | 5 | 0.62 | 0 |
| 06-15 | sql_base_20260615 | v1-sql-solo | 10 | 8 | 0.80 | 0 |
| 06-15 | sql_v2_20260615 | v2-sql-executed | 10 | 9 | 1.00 | 1 |
| 06-15 | sql_v2b_20260615 | v2-sql-executed | 10 | 9 | 0.90 | 0 |
| 06-15 | sql_v3_20260615 | v3-sql-grounded | 10 | 8 | 0.80 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-16 | role_meeting_base_20260616 | role-meeting | 6 | 6 | 1.00 | 0 |
| 06-16 | role_ocr_base_20260616 | role-ocr | 6 | 6 | 1.00 | 0 |
| 06-16 | role_research_base_20260616 | role-research | 3 | 0 | 0.00 | 0 |
| 06-16 | role_research_v2_20260616 | role-research-v2 | 3 | 2 | 0.67 | 0 |
| 06-16 | role_meeting_hard_base_20260616 | role-meeting | 5 | 5 | 1.00 | 0 |
| 06-16 | role_meeting_hard_v2_20260616 | role-meeting-v2 | 5 | 5 | 1.00 | 0 |
| 06-16 | role_ocr_hard_base_20260616 | role-ocr | 6 | 5 | 0.83 | 0 |
| 06-16 | role_ocr_hard_v2_20260616 | role-ocr-v2 | 6 | 5 | 0.83 | 0 |
| 06-16 | role_ocr_hard_v3_20260616 | role-ocr-v3 | 12 | 11 | 0.92 | 0 |
| 06-16 | role_coding_base_20260616 | role-coding | 5 | 5 | 1.00 | 0 |
| 06-16 | role_codetest_base_20260616 | role-codetest | 5 | 2 | 0.40 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-16 | hq_research_k3_20260616 | hq-research-v1 | 9 | 9 | 1.00 | 0 |
| 06-16 | hq_research_v2_k3_20260616 | hq-research-v2 | 9 | 7 | 1.00 | 2 |
| 06-16 | hq_coding_k2_20260616 | hq-coding-v1 | 10 | 7 | 0.70 | 0 |
| 06-16 | hq_content_k2_20260616 | hq-content-v1 | 6 | 0 | 0.00 | 0 |
| 06-16 | hq_invest_k2_20260616 | hq-invest-v1 | 6 | 6 | 1.00 | 0 |
| 06-16 | hq_content_v2_k2_20260616 | hq-content-v2 | 6 | 6 | 1.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-15 | metric_fmt_base_20260615 | gaia-raw-solo | 10 | 0 | 0.00 | 0 |
| 06-15 | metric_fmt_fix_20260615 | gaia-fmt-solo | 10 | 1 | 0.10 | 0 |
| 06-15 | metric_loop_base_20260615 | gaia-loop-base | 10 | 0 | 0.00 | 0 |
| 06-15 | metric_loop_stop_20260615 | gaia-loop-stop | 10 | 2 | 0.20 | 0 |
| 06-15 | metric_grounding_web_20260615 | gaia-web-solo | 10 | 3 | 0.30 | 0 |
| 06-15 | metric_ma_20260615 | gaia-retrieve-answer | 10 | 0 | 0.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-18 | perf_learn_solo_v1 | learn-algo-tutor-solo | 8 | 6 | 0.75 | 0 |
| 06-18 | perf_learn-algo-tutor-solo | learn-algo-tutor-solo | 8 | 7 | 0.88 | 0 |
| 06-18 | perf_learn-algo-tutor-xexam | learn-algo-tutor-xexam | 8 | 7 | 0.88 | 0 |
| 06-18 | perf_v1-extract-solo | v1-extract-solo | 8 | 3 | 0.38 | 0 |
| 06-18 | perf_v2-extract-validated | v2-extract-validated | 8 | 5 | 0.62 | 0 |
| 06-18 | perf_role-codetest | role-codetest | 5 | 4 | 0.80 | 0 |
| 06-18 | perf_hq-coding-v1 | hq-coding-v1 | 5 | 4 | 0.80 | 0 |
| 06-18 | perf_role-coding | role-coding | 5 | 5 | 1.00 | 0 |
| 06-18 | perf_v1-sql-solo | v1-sql-solo | 10 | 8 | 0.80 | 0 |
| 06-18 | perf_v2-sql-executed | v2-sql-executed | 10 | 10 | 1.00 | 0 |
| 06-18 | perf_v3-sql-grounded | v3-sql-grounded | 10 | 10 | 1.00 | 0 |
| 06-18 | perf_role-meeting | role-meeting | 11 | 11 | 1.00 | 0 |
| 06-18 | perf_role-meeting-v2 | role-meeting-v2 | 11 | 11 | 1.00 | 0 |
| 06-18 | perf_role-ocr | role-ocr | 12 | 10 | 0.83 | 0 |
| 06-18 | perf_role-ocr-v2 | role-ocr-v2 | 12 | 12 | 1.00 | 0 |
| 06-18 | perf_role-ocr-v3 | role-ocr-v3 | 12 | 11 | 0.92 | 0 |
| 06-18 | perf_hq-content-v1 | hq-content-v1 | 9 | 0 | 0.00 | 0 |
| 06-18 | perf_hq-content-v2 | hq-content-v2 | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_hq-invest-v1 | hq-invest-v1 | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_hq-research-v1 | hq-research-v1 | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_hq-research-v2 | hq-research-v2 | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_role-research | role-research | 9 | 0 | 0.00 | 0 |
| 06-18 | perf_role-research-v2 | role-research-v2 | 9 | 3 | 0.33 | 0 |
| 06-18 | perf_v1-analyst-solo | v1-analyst-solo | 9 | 0 | 0.00 | 0 |
| 06-18 | perf_v2-analyst-deep | v2-analyst-deep | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_v3-analyst-web | v3-analyst-web | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_v4-analyst-web | v4-analyst-web | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_v5-analyst-web | v5-analyst-web | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_v6-analyst-web | v6-analyst-web | 9 | 9 | 1.00 | 0 |
| 06-18 | perf_brain-digest-corpus-observe | brain-digest-corpus-observe | 30 | 30 | 1.00 | 0 |
| 06-18 | perf_research-xverify-gate | research-xverify-gate | 30 | 30 | 1.00 | 0 |
| 06-18 | perf_research-xverify-observe | research-xverify-observe | 30 | 30 | 1.00 | 0 |
| 06-18 | perf_v1-research-pipeline | v1-research-pipeline | 30 | 30 | 1.00 | 0 |
| 06-18 | perf_v2-research-cleanret | v2-research-cleanret | 30 | 30 | 1.00 | 0 |
| 06-18 | perf_v2-research-disambig | v2-research-disambig | 30 | 13 | 0.43 | 0 |
| 06-19 | perf_v2-research-fast | v2-research-fast | 30 | 8 | 0.27 | 0 |
| 06-19 | perf_v2-research-grounded | v2-research-grounded | 30 | 30 | 1.00 | 0 |
| 06-19 | perf_cppx-panel | cppx-panel | 39 | 39 | 1.00 | 0 |
| 06-19 | perf_cppx-panel-v2 | cppx-panel-v2 | 39 | 39 | 1.00 | 0 |
| 06-19 | perf_cppx-solo | cppx-solo | 39 | 39 | 1.00 | 0 |
| 06-19 | perf_gaia-fmt-solo | gaia-fmt-solo | 165 | 40 | 0.24 | 2 |
| 06-19 | perf_gaia-loop-base | gaia-loop-base | 165 | 45 | 0.29 | 10 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-18 | learn_smoke_solo | learn-algo-tutor-solo | 1 | 1 | 1.00 | 0 |
| 06-18 | learn_smoke_glm52 | learn-algo-tutor-solo | 1 | 1 | 1.00 | 0 |
| 06-18 | learn_smoke_xexam | learn-algo-tutor-xexam | 1 | 1 | 1.00 | 0 |
| 06-18 | brain_smoke | brain-digest-corpus-observe | 1 | 1 | 1.00 | 0 |
| 날짜 | batch_id | team(s) | n | ok | p@1 | cr |
|---|---|---|---|---|---|---|
| 06-13 | fresh_demo_20260613 | v1-baseline,v1-research-pipeline,v | 3 | 2 | 0.67 | 0 |
| 06-13 | fresh_v5gaia_20260613 | v5-multitool | 1 | 1 | 1.00 | 0 |
| 06-13 | fresh_v2res_20260613 | v2-research-cleanret | 1 | 1 | 1.00 | 0 |
| 06-13 | fresh_v6anl_20260613 | v6-analyst-web | 1 | 1 | 1.00 | 0 |
| 06-13 | fresh_v6anl2_20260613 | v6-analyst-web | 1 | 1 | 1.00 | 0 |
| 06-15 | test_semi_v6_20260615 | v6-analyst-web | 1 | 1 | 1.00 | 0 |
| 06-15 | test_semi_v6_fc_20260615 | v6-analyst-web | 1 | 1 | 1.00 | 0 |
| 06-24 | smoke_s1 | learn-algo-tutor-xexam | 1 | 1 | 1.00 | 0 |
| 06-24 | eval_s1_solo | learn-algo-tutor-solo | 8 | 6 | 0.75 | 0 |
| 06-24 | eval_s1_xexam | learn-algo-tutor-xexam | 8 | 7 | 0.88 | 0 |
| 06-24 | eval_s2_brain | brain-digest-corpus-observe | 5 | 5 | 1.00 | 0 |
| 06-24 | eval_s2_brain_2hop | brain-digest-corpus-observe | 4 | 4 | 1.00 | 0 |
| 06-24 | eval_s2_brain_2hop_v2 | brain-digest-corpus-observe-v2 | 4 | 4 | 1.00 | 0 |
| 06-24 | eval_s2_brain_2hop_v3 | brain-digest-corpus-observe-v3 | 4 | 3 | 1.00 | 1 |
| 06-24 | verify_cited | brain-digest-corpus-observe-v3 | 1 | 1 | 1.00 | 0 |
| 06-25 | test-v7-3ca98888 | v7-deep-verify | 1 | 1 | 1.00 | 0 |
| 06-25 | exp_fm33_v5_20260625 | v5-multitool | 24 | 17 | 0.71 | 0 |
| 06-25 | exp_fm33_v7_20260625 | v7-deep-verify | 24 | 16 | 0.67 | 0 |
| 06-29 | dr_m1_probe | v1-deep-research | 5 | 5 | 1.00 | 0 |
| 06-30 | dr_m3_probe | v1-deep-research-xverify | 3 | 3 | 1.00 | 0 |
| 06-30 | hotpot_grounded | v2-research-grounded | 12 | 8 | 0.67 | 0 |
| 06-30 | hotpot_validate | v2-research-grounded | 1 | 1 | 1.00 | 0 |
| 06-30 | hotpot_ab_v1 | v1-research-pipeline | 30 | 22 | 0.73 | 0 |
| 06-30 | hotpot_ab_v2 | v2-research-grounded | 30 | 21 | 0.70 | 0 |
| 07-01 | hotpot_full_v1 | v1-research-pipeline | 100 | 67 | 0.68 | 1 |
| 07-01 | hotpot_full_v2 | v2-research-grounded | 100 | 69 | 0.70 | 1 |
| 07-02 | tooldoc_smoke_20260702 | tooldoc-rich | 1 | 1 | 1.00 | 0 |
| 07-02 | tooldoc_sparse_20260702 | tooldoc-sparse | 10 | 6 | 0.60 | 0 |
| 07-02 | tooldoc_rich_20260702 | tooldoc-rich | 10 | 10 | 1.00 | 0 |
# 데이터가 늘면 이 스크립트를 다시 돌려 최신화(정적 서빙, 무재시작) cd /home/hm/eval_ph1 && .venv/bin/python /home/hm/vps-srv/apps/eval-codemap/_gen_catalog.py # 직접 조회 SELECT DISTINCT batch_id FROM runs ORDER BY batch_id;