콘텐츠로 이동

v7 exp-expert

v7 실험 프로세스 재설계 — Vertical Slice Smoke Test (단계 0.5) + Fail-Fast Gates

Source: report/version7/exp-expert/v7_0419_process_redesign_with_smoke_test.md

v7 실험 프로세스 재설계 (Smoke Test + Fail-Fast)

0. 요약 (Executive Summary)

exp-critic 적대적 검토 결과 REJECT (현 6단계 그대로)단계 0.5 Vertical Slice Smoke Test 삽입 시 CONDITIONAL PASS. 본 문서는 5건의 Critical 사각지대(silent NaN, PAPE dual definition, scaler leakage, figure 비재현성, paired seed 깨짐)를 단계 0.5 + per-run fail-fast hook + 단계 1 early checkpoint 의 3-layer 안전망으로 차단한 재설계안.

추가 비용: +1.5h (총 ≈26.5h, 2~3일). 회피 시나리오: 6h 재실행 + Apt 5가구 silent leak 감지 지연 (ROI 4~10×).


v7 Peak-Aware FL — 단계 0 사전 등록 v2 (critic-revised)

Source: report/version7/exp-expert/v7_0419_stage0_preregistration_v2.md

v7 단계 0 사전 등록 v2 — critic CONDITIONAL REJECT 대응

본 보고서는 exp-critic v7_0419_stage0_preregistration_review.md의 CONDITIONAL REJECT에 대한 revision이다. 모든 P0 (C1~C3, M1~M7)를 단일 cycle에서 해소한다.

  • 실행 스크립트: experiments/federated/v7_0419_stage0_preregistration.py (v2)
  • 공용 모듈: src/peak_analysis/v7/metrics.py (신규 — critic C1/C2 대응)
  • MLflow 새 run: 4659d778c5e9460aaa1c5b928508d9a9 (v1 08716ec9…는 superseded)
  • 산출 JSON: outputs/v7_stage0/stage0_summary.json (덮어쓰기)
  • Frozen artifacts: outputs/v7_stage0/golden_tensors/{G3,G4,G5}_y_{true,pred}.npy
  • 새 정의 해시: 8be2bd2f691deed0 (v1 1c4acef8a235 폐기)

v7 Peak-Aware FL — 단계 0 사전 등록 결과

Source: report/version7/exp-expert/v7_0419_stage0_preregistration.md

v7 단계 0 사전 등록 결과 (A1, A2, A3)

본 보고서는 v7 Peak-Aware FL 발표 캠페인의 D+0 P0 산출물 3종 결과를 담는다. 단계 0.5 smoke test 진입의 사전조건이며, 본 문서에 기록된 값은 단계 1~4 전 실험의 assertion 기준선(= override 금지)이다.

  • 실행 스크립트: experiments/federated/v7_0419_stage0_preregistration.py
  • MLflow 실험: v7-stage0-preregistration (run 08716ec90ec94c5c901900bb6cc4dc10)
  • 산출 JSON: outputs/v7_stage0/stage0_summary.json
  • 산출 CSV (A2 per-run): outputs/v7_stage0/v6_loss_distribution.csv
  • 재현 명령: uv run python experiments/federated/v7_0419_stage0_preregistration.py
  • 공통 설정: RANDOM_SEED=42, SEQ_LEN=96, PRED_LEN=24, split=(0.7, 0.1, 0.2), Q=90, HR K=12
  • 정의 해시: 1c4acef8a235 (PAPE/HR 정의 drift 탐지용)

v7_runner.py MLflow Param 추가 로깅 — Engineer Contract (Stage 0.5)

Source: report/version7/exp-expert/v7_stage05_engineer_contract.md

Engineer Contract — v7_runner.py 신규 MLflow Param 로깅

본 문서는 critic C2 대응으로 v7_runner.py에 추가해야 할 MLflow param 명세다. smoke_analysis.py의 Gate 2 / Gate 6 은 이 param들을 엄격하게 요구한다 (cycle 2/2에서 soft fallback 제거 완료). 누락 시 Gate 2/6 FAIL.

맥락

  • smoke_analysis.py 측 수정은 완료: Gate 2 WARNING→FAIL, Gate 6 ERROR→FAIL.
  • v7_runner.py 측은 contract 맞추기만 하면 됨.
  • 기존 scaler_space_signature (unified) 은 backward compatibility 위해 유지 가능.

v7 단계 0.5 — 6 Critical Gates 판정 기준 (자동 평가 사양)

Source: report/version7/exp-expert/v7_stage05_gate_criteria.md

v7 Stage 0.5 — Gate 1~6 Pass/Fail 판정 기준

Design spec track_v7_design.md §3의 6 Critical Gate가 smoke 12 runs (3 cells × 2 households × 2 seeds, 또는 smoke plan 확정 후의 실제 매트릭스)에 대해 어떻게 자동 평가되는지 확정.

공통 원칙 - 데이터 소스: mlflow.search_runs() 직접 query. CSV 재사용 금지 (design §2.5). - 공용 PAPE/HR 함수: peak_analysis.v7.metrics (definition_hash() = 8be2bd2f691deed0). - atol: golden tensor 1e-6 (공용 모듈 고정). - Gate 간 판정 충돌 시 §7 우선순위 적용. - 12 runs 중 어느 하나라도 mlflow.info.status != "FINISHED"이면 Gate 평가 불가 → ERROR 상태 (FAIL 아님; 수동 개입).

v7 Stage 0.5 Gate 5 Redesign — Engineer Implementation Contract

Source: report/version7/exp-expert/v7_stage05_gate5_engineer_contract.md

v7 Gate 5 — Engineer Contract

exp-expert가 v6 n=22 back-test로 empirical cutoff를 도출하고 9-run smoke preview를 검증한 결과(보고서 v7_stage05_gate5_redesign_v2.md), Gate 5 구현을 아래 계약대로 전환해 달라.

1. 수정 대상 (1 파일)

experiments/federated/v7_stage05_smoke_analysis.py

1.1 evaluate_gate5 함수 전면 재작성

v7 Stage 0.5 Gate 5 Convergence Metric — Redesign v2 (REJECT 대응)

Source: report/version7/exp-expert/v7_stage05_gate5_redesign_v2.md

v7 Stage 0.5 Gate 5 — Redesign v2

0. 요약

항목
v6 back-test 표본 n = 22 converged runs (MIN_STEPS≥10, 14개 experiment 스캔)
기존 metric moving/initial 의 v6 false-positive rate 1.0 (22/22 FAIL — 수렴한 v6 run 전부 FAIL)
새 metric rel_decrease = (mean(val[:3]) − mean(val[-3:])) / mean(val[:3])
v6 분포 (n=22) p05 = −0.0005, p10 = 0.0017, p50 = 0.0350, p95 = 0.0949
PASS cutoff rel_decrease ≥ 0.0017 (v6 P10 → TPR 86.4%)
WARNING cutoff 0.0 ≤ rel_decrease < 0.0017 (v6 P05~P10 → TPR 90.9% 합산)
FAIL cutoff rel_decrease < 0.0 (net increase — 수렴 방향 반대)
9-run smoke 재평가 PASS 5 / WARNING 1 / FAIL 3 / ERROR 0
Stage 1 권고 HOLD (FAIL 3개 = A3 cell 전 seed 발산 신호)

v7 Stage 0.5 Smoke Infrastructure — Revision v2 (critic cycle 2/2 대응)

Source: report/version7/exp-expert/v7_stage05_smoke_infra_v2.md

v7 Stage 0.5 Smoke Infrastructure — Revision v2 Report

Critic 의 CONDITIONAL PASS 판정(C1~C5 CRITICAL + M1~M5 MAJOR)에 대한 cycle 2/2 최종 revision. 본 revision 후 hook 자동 중단되므로 모든 CRITICAL 해소가 필수였다.

Executive Summary

  • CRITICAL 5건 전부 해소 (C1, C2, C3, C4, C5).
  • C1/C3/C4/C5: expert 단독 해소 (코드 + 테스트).
  • C2: engineer 위임 contract 문서화 (orchestrator 경유 engineer 호출 필요).
  • MAJOR 5건 중 3건 해소 (M1, M3, M5).
  • pytest 19 신규 tests 전부 PASS — 기존 102 tests 회귀 없음.
  • PASS 경로 실증: 12 synthetic runs 모두 Gate 1/2/5/6 PASS + overall "ALL PASS" 반환 확인 (test_aggregate_all_pass).