alt/agent-task/m-backtest-scenario-automation/07+05_result_poll_remote/CODE_REVIEW-cloud-G06.md

4.8 KiB

Code Review Reference - TEST

[IMPLEMENTING AGENT — READ FIRST] Filling in this file is the mandatory final step of implementation. Complete implementation-owned sections and keep active files in place for code-review. Finalization is review-agent-only. Do not ask the user directly during implementation.

개요

date=2026-06-16 task=m-backtest-scenario-automation/07+05_result_poll_remote, plan=0, tag=TEST

Roadmap Targets

  • Milestone: agent-roadmap/phase/backtest-loop/milestones/backtest-scenario-automation.md
  • Task ids:
    • result-poll: backtest_result_summary.yaml이 terminal status 도달 후 result를 조회하도록 flaky 구간을 제거하고 원격 JSONL evidence를 기록한다.
  • Completion mode: check-on-pass

이 파일을 읽는 리뷰 에이전트에게

[REVIEW AGENT ONLY] 종결 절차는 코드리뷰 에이전트 전용이다.

PASS이면 active plan/review를 .log로 아카이브하고 complete.log를 작성한 뒤 agent-task/archive/YYYY/MM/m-backtest-scenario-automation/07+05_result_poll_remote/로 이동한다. PASS 완료 이벤트 메타데이터만 보고하고 roadmap은 직접 수정하지 않는다.


구현 항목별 완료 여부

항목 완료 여부
[TEST-1] Remote result summary polls before result read [ ]

구현 체크리스트

  • 05+04_runtime_startup complete.log가 있는지 확인하고 경로를 기록한다.
  • local checkout에서 backtest_result_summary.yamlstart -> poll -> result 순서인지 확인한다.
  • 원격 runner의 apps/cli에서 backtest_result_summary.yaml을 원격 API socket 대상으로 실행하고 exit code 0을 기록한다.
  • 원격 JSONL에 run_status=succeeded, starting_cash, ending_equity, total_return, trade_count가 포함되는지 실제 출력으로 기록한다.
  • 필요하면 apps/cli/testdata/operator/headless_validation.md에 result-poll remote evidence 절차를 raw 값 없이 보강한다.
  • CODE_REVIEW-*-G??.md의 구현 에이전트 소유 섹션을 실제 구현 내용과 검증 출력으로 채운다. 이 항목이 완료되기 전에는 구현이 완료된 것이 아니다.

코드리뷰 전용 체크리스트

  • 코드리뷰 결과PASS, WARN, FAIL 중 하나의 판정을 append한다.
  • active review/plan을 .log로 아카이브한다.
  • PASS이면 complete.log를 작성하고 active .md 파일을 남기지 않는다.
  • PASS이면 active task 디렉터리를 archive로 이동한다.
  • PASS이면 roadmap 수정이나 update-roadmap 직접 호출을 하지 않는다.

계획 대비 변경 사항

구현 에이전트가 계획과 다르게 구현한 부분을 이유와 함께 기록한다.

주요 설계 결정

구현 에이전트가 주요 설계 결정 사항을 기록한다.

사용자 리뷰 요청

기본값은 없음이다. 구현 중 사용자 결정, 사용자 소유 외부 환경/secret/서비스 준비, 또는 계획 범위 변경 없이는 안전하게 진행할 수 없으면 아래 항목을 실제 내용으로 교체하고, 구현을 중단한 뒤 active 파일을 그대로 둔 채 리뷰를 요청한다. 구현 에이전트는 사용자에게 직접 질문하거나 선택지를 제시하거나 request_user_input을 호출하지 않는다.

  • 상태: 없음
  • 사유 유형: 없음
  • 결정 필요: 없음
  • 차단 근거: 없음
  • 실행한 검증/명령: 없음
  • 자동 후속 불가 이유: 없음
  • 재개 조건: 없음

리뷰어를 위한 체크포인트

  • 05 predecessor complete.log가 확인됐는지 본다.
  • 원격 result summary JSONL이 poll succeeded와 result summary keys를 모두 포함하는지 본다.
  • raw endpoint/secret 값이 기록되지 않았는지 확인한다.

검증 결과

TEST-1 중간 검증

$ go test -count=1 ./apps/cli/internal/operator ./apps/cli/internal/cli

최종 검증

$ git diff --check
$ go test -count=1 ./apps/cli/internal/operator ./apps/cli/internal/cli
$ test -f agent-task/m-backtest-scenario-automation/05+04_runtime_startup/complete.log || find agent-task/archive -path '*/m-backtest-scenario-automation/05+04_runtime_startup/complete.log' -print -quit
$ rg --sort path -n "poll_backtest_run|run_status: succeeded|get_backtest_result" apps/cli/testdata/operator/backtest_result_summary.yaml apps/cli/testdata/operator/headless_validation.md
$ ssh "$ALT_REMOTE_SSH" "set -euo pipefail; cd \"$ALT_REMOTE_ALT_ROOT/apps/cli\"; go run ./cmd/alt operator scenario run --file testdata/operator/backtest_result_summary.yaml --api-url \"ws://127.0.0.1:18030/socket\" --output jsonl"

[IMPLEMENTING AGENT — BEFORE SAVING] Have you filled in every implementation-owned section?