Expand CLI help to include all missing commands

누락된 명령어(overfit-check, scenario-test, refresh, web, check-duplicate,
compute-sqs, rescore-public, attach-* 5개)를 모두 추가하고,
섹션별(저널·첨부·분석·트레이딩·실험관리)로 그룹화하여 가독성 개선

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
I Luk Kim 4 months ago
parent f21caf23cb
commit 1c46569f75

@ -1093,41 +1093,123 @@ def _print_help() -> None:
padding=(0, 2),
))
table = Table(box=box.SIMPLE, show_header=True, header_style="bold yellow", padding=(0, 2))
table.add_column("Command", style="bold green", no_wrap=True)
table.add_column("Description")
table.add_column("Key Options", style="dim")
table.add_row(
def _section(title: str) -> Table:
t = Table(box=box.SIMPLE, show_header=False, padding=(0, 2), show_edge=False)
t.add_column("Command", style="bold green", no_wrap=True, min_width=32)
t.add_column("Description")
t.add_column("Key Options", style="dim")
_console.print(f" [bold yellow]{title}[/]")
return t
# ── 저널 & 리더보드 ─────────────────────────────────────────
t = _section("저널 & 리더보드")
t.add_row(
"leaderboard [dim]lb[/]",
"기본 public SQS 순위표 출력 및 LEADERBOARD.md 재생성",
"public SQS 순위표 출력 및 LEADERBOARD.md 재생성",
"-n N --sort sqs|rqs|wfqs|deployment|promotion --include-retired",
)
table.add_row(
t.add_row(
"record [dim]rec[/]",
"실험 결과를 저널에 기록",
"-e NAME -H TEXT --walk-forward-summary PATH --robustness-summary PATH --out-of-time-robustness-summary PATH",
"-e NAME -H TEXT -v better|worse|neutral --walk-forward-summary PATH",
)
table.add_row(
t.add_row(
"show [dim]s[/]",
"특정 저널 항목 상세 조회",
"ENTRY_ID --diagnostics",
)
table.add_row(
t.add_row(
"check-duplicate [dim]dup[/]",
"실험이 이미 저널에 기록됐는지 확인",
"-e NAME",
)
t.add_row(
"compute-sqs [dim]cs[/]",
"단일 항목의 SQS v9 breakdown 계산·출력",
"TARGET --save",
)
t.add_row(
"rescore-public [dim]rsp[/]",
"저장된 public 점수 일괄 재계산",
"--prefix NAME --min-version N --max-version N",
)
_console.print(t)
# ── 첨부 (attach) ───────────────────────────────────────────
t = _section("첨부 (attach)")
t.add_row(
"attach-wfv [dim]awf[/]",
"walk-forward 요약을 저널 항목에 첨부",
"TARGET --summary PATH",
)
t.add_row(
"attach-robustness [dim]arb[/]",
"robustness matrix 요약 첨부",
"TARGET --summary PATH",
)
t.add_row(
"attach-oot-robustness [dim]aoot[/]",
"out-of-time robustness 요약 첨부",
"TARGET --summary PATH",
)
t.add_row(
"attach-reset-common-window [dim]arcw[/]",
"reset common-window 요약 첨부",
"TARGET --summary PATH",
)
t.add_row(
"attach-overfit-check [dim]aoc[/]",
"overfit-check 점수 첨부 (사전 생성 리포트 또는 직접 실행)",
"TARGET --report PATH --run --quick",
)
_console.print(t)
# ── 분석 & 검증 ─────────────────────────────────────────────
t = _section("분석 & 검증")
t.add_row(
"overfit-check",
"과적합 분석 (DSR·PBO·파라미터 민감도·MC·WF Permutation)",
"--config NAME --quick --skip TESTS --output-json PATH",
)
t.add_row(
"scenario-test",
"합성 시나리오 백테스트 (Regime Robustness Score)",
"--config NAME --scenario NAME --group NAME --quick --save",
)
_console.print(t)
# ── 트레이딩 & 파이프라인 ────────────────────────────────────
t = _section("트레이딩 & 파이프라인")
t.add_row(
"paper",
"Alpaca 페이퍼 트레이딩 [dim](fithia2 paper 로 상세 확인)[/]",
"start run positions status trades ...",
"start run run-open run-close positions status trades equity auto ...",
)
table.add_row(
t.add_row(
"pipeline",
"데이터 파이프라인 실행 [dim](fithia2 pipeline 로 상세 확인)[/]",
"run [dim]--step poller|fetcher|parser|features|labels[/]",
"run --step poller|fetcher|parser|features|labels",
)
t.add_row(
"refresh [dim][snapshot_id][/]",
"Parquet 스냅샷 새로고침 (미지정 시 configs에서 자동 감지)",
"[snapshot_id]",
)
table.add_row(
t.add_row(
"web",
"웹 GUI 서버 실행",
"",
)
_console.print(t)
# ── 실험 관리 ────────────────────────────────────────────────
t = _section("실험 관리")
t.add_row(
"exp",
"실험 관리 [dim](fithia2 exp 로 상세 확인)[/]",
"create search tree info diff promote retire validate migrate",
"실험 메타데이터 관리 [dim](fithia2 exp 로 상세 확인)[/]",
"create search tree info diff promote retire validate migrate rebuild-index",
)
_console.print(table)
_console.print(t)
_console.print(
" [dim]공통 옵션:[/] [bold]--journal-dir[/] [dim](기본: journal/)[/]"
@ -1135,8 +1217,11 @@ def _print_help() -> None:
)
_console.print(" [bold]예시[/]")
_console.print(" [green]fithia2 leaderboard[/]")
_console.print(" [green]fithia2 record --experiment pead_v2 --hypothesis '...' --verdict better[/]")
_console.print(" [green]fithia2 paper[/]")
_console.print(" [green]fithia2 record -e pead_v2 -H '...' -v better[/]")
_console.print(" [green]fithia2 compute-sqs return_max_long_v7.119_composed_gld[/]")
_console.print(" [green]fithia2 overfit-check --config return_max_long_v7.119 --quick[/]")
_console.print(" [green]fithia2 paper status[/]")
_console.print(" [green]fithia2 refresh[/]")
_console.print()

Loading…
Cancel
Save