oto/agent-task/m-runner-proto-socket-transport-hardening/05+02,03,04_socket_smoke/CODE_REVIEW-cloud-G07.md
toki 88c8ff3b07 feat: runner proto socket transport hardening and related updates
- Add runner-proto-socket-transport-hardening milestone and SDD docs
- Add runnersocket package for Go service
- Update agent config, runner, and job client (Dart)
- Update Bootstrap scripts (PowerShell, shell)
- Update Go service HTTP server handlers and routes
- Add CICD state store updates
- Update agent-ops domain rules and phase roadmap
2026-06-20 18:23:30 +09:00

9.3 KiB

Code Review Reference - API

[IMPLEMENTING AGENT — READ FIRST] Filling in this file is the mandatory final step of implementation. The task is NOT complete until every implementation-owned section below is filled in. Complete the 구현 체크리스트; the final checklist item is mandatory before saving. Fill implementation-owned sections, then stop with active files in place and report ready for review. If implementation is blocked by a selected SDD decision or selected Milestone 구현 잠금 > 결정 필요 item, fill 사용자 리뷰 요청 with linked evidence and stop with active files in place; code-review decides whether to write USER_REVIEW.md. Environment/secret/service blockers, generic scope changes, repeated failures, and evidence gaps that a follow-up agent can close are normal follow-up issues, not user-review blockers by themselves. Do not ask the user directly, present choices in chat, or call request_user_input during implementation; record only SDD/Milestone lock decisions in 사용자 리뷰 요청 and stop for code-review. Finalization (코드리뷰 결과, log rename, complete.log, archive moves, 코드리뷰 전용 체크리스트) is review-agent-only, even after compaction/resume. Follow the ownership table at the bottom of this file for which sections you own.

개요

date=2026-06-20 task=m-runner-proto-socket-transport-hardening/05+02,03,04_socket_smoke, plan=0, tag=API

Roadmap Targets

  • Milestone: agent-roadmap/phase/control-plane-product-surface/milestones/runner-proto-socket-transport-hardening.md
  • Task ids:
    • socket-smoke: local/remote smoke 기준을 socket-first runner transport evidence로 갱신한다.
  • Completion mode: check-on-pass
  • Split dependency:
    • 02+01_dispatch_state PASS complete evidence가 있어야 구현을 시작한다.
    • 03+01,02_runner_actions PASS complete evidence가 있어야 구현을 시작한다.
    • 04+01_compat_boundary PASS complete evidence가 있어야 구현을 시작한다.

Spec Targets

  • SDD: agent-roadmap/sdd/control-plane-product-surface/runner-proto-socket-transport-hardening/SDD.md
  • Acceptance scenarios:
    • S06: task=socket-smoke; evidence=agent local smoke와 runner/core smoke가 socket-first lifecycle, dispatch, action, compatibility boundary를 검증한다.
  • Completion mode: spec-check-on-pass

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

[REVIEW AGENT ONLY] 아래 종결 절차는 코드리뷰 에이전트 전용이다. 구현 에이전트는 이 섹션을 실행하지 않는다.

각 항목의 구현을 실제 소스 파일과 대조하고, 검증 결과 섹션의 출력이 코드와 일치하는지 확인하세요. 리뷰 완료는 아래 순서까지 끝난 상태를 의미합니다.

  1. 판정을 append한다.
  2. CODE_REVIEW-cloud-G07.md -> code_review_cloud_G07_N.log, PLAN-cloud-G07.md -> plan_cloud_G07_M.log로 아카이브한다.
  3. PASS이면 complete.log 작성 후 active task 디렉터리를 agent-task/archive/YYYY/MM/m-runner-proto-socket-transport-hardening/05+02,03,04_socket_smoke/로 이동한다.
  4. PASS이고 task group이 m-<milestone-slug>이면 완료 이벤트 메타데이터를 보고한다. roadmap 상태 체크와 update-roadmap 호출은 런타임 책임이다.
  5. 적용 가능한 코드리뷰 전용 체크리스트 항목을 최종 .log 위치에서 체크한 뒤 보고한다.

구현 항목별 완료 여부

항목 완료 여부
[API-1] smoke 문서와 Makefile/test grouping 갱신 [ ]
[API-2] runner socket smoke 대표성 보강 [ ]
[API-3] full local smoke 기록 [ ]

구현 체크리스트

  • 선행 02+01_dispatch_state, 03+01,02_runner_actions, 04+01_compat_boundary PASS complete evidence를 확인한다.
  • [API-1] agent-test/local/agent-smoke.md와 Makefile/test grouping을 socket-first 기준으로 갱신한다. 검증: cd apps/runner && dart analyze
  • [API-2] runner socket smoke가 lifecycle/dispatch/action/compat boundary evidence를 대표하도록 보강한다. 검증: cd apps/runner && dart test test/oto_server_connection_smoke_test.dart
  • [API-3] full local smoke 명령을 실행하고 결과를 기록한다. 검증: Go full test와 runner required test list
  • CODE_REVIEW-*-G??.md의 구현 에이전트 소유 섹션을 실제 구현 내용과 검증 출력으로 채운다. 이 항목이 완료되기 전에는 구현이 완료된 것이 아니다.

코드리뷰 전용 체크리스트

[REVIEW AGENT ONLY] 이 체크리스트는 코드리뷰 에이전트만 사용한다. 구현 에이전트는 이 섹션을 수정하거나 체크하지 않는다.

  • 코드리뷰 결과PASS, WARN, FAIL 중 하나의 판정을 append한다.
  • 판정과 차원별 평가, Required/Suggested/Nit 분류가 서로 일치한다.
  • active CODE_REVIEW-*-G??.mdcode_review_cloud_G07_N.log로 아카이브한다.
  • active PLAN-*-G??.mdplan_cloud_G07_M.log로 아카이브한다.
  • .gitignore의 Agent-Ops 관리 block이 agent-task/**/*.mdagent-task/**/*.log를 unignore하고 agent-roadmap/current.md를 ignore하는지 확인한다.
  • PASS이면 agent-ops/skills/common/code-review/templates/complete-log-template.md 기준으로 complete.log를 작성하고 active .md 파일을 남기지 않는다.
  • PASS이면 active task 디렉터리 agent-task/m-runner-proto-socket-transport-hardening/05+02,03,04_socket_smoke/agent-task/archive/YYYY/MM/m-runner-proto-socket-transport-hardening/05+02,03,04_socket_smoke/로 이동하고 최종 archive 경로에서 이 체크리스트를 갱신한다.
  • PASS이고 task group이 m-<milestone-slug>이면 런타임이 읽을 완료 이벤트 메타데이터를 보고하고, roadmap 수정이나 update-roadmap 직접 호출을 하지 않는다.
  • PASS split 작업이면 이동 후 빈 active parent agent-task/m-runner-proto-socket-transport-hardening/를 제거하거나, 남은 sibling/file이 있어 유지했다고 확인한다.
  • WARN/FAIL이고 user-review gate가 트리거되지 않았으면 다음 active plan/review 파일 또는 follow-up plan을 작성하고 complete.log를 작성하지 않는다.
  • USER_REVIEW이면 agent-ops/skills/common/code-review/templates/user-review-template.md 기준으로 USER_REVIEW.md를 작성하고 active PLAN-*.md, CODE_REVIEW-*.md, complete.log를 남기지 않는다.

계획 대비 변경 사항

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

주요 설계 결정

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

사용자 리뷰 요청

기본값은 없음이다. 구현 중 새 결정이 필요해 보여도 직접 질문하거나 선택지를 제시하거나 request_user_input을 호출하지 않는다. 이 섹션은 선택된 SDD 결정 또는 선택된 Milestone 구현 잠금 > 결정 필요 항목이 실구현을 차단할 때만 채운다. 외부 환경/secret/서비스 준비, 검증 증거 공백, 반복 실패, 일반 범위 조정은 사용자 리뷰 요청이 아니며 검증 결과, 계획 대비 변경 사항, 또는 code-review의 일반 follow-up plan으로 처리한다.

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

리뷰어를 위한 체크포인트

  • smoke 문서가 실제 실행 가능한 명령만 요구하는지 확인한다.
  • socket smoke가 HTTP registration/polling을 기본 evidence로 제출하지 않는지 확인한다.
  • S06 evidence가 S02-S05 선행 결과를 무리하게 중복 구현하지 않고 종합 검증으로 닫는지 확인한다.

검증 결과

구현 에이전트가 각 중간 검증 및 최종 검증 명령 실행 후 출력을 여기에 붙여 넣는다.

API-1 중간 검증

$ cd apps/runner && dart analyze
(output)

API-2 중간 검증

$ cd apps/runner && dart test test/oto_server_connection_smoke_test.dart
(output)

API-3 중간 검증

$ cd services/core && go test -count=1 ./...
(output)
$ cd apps/runner && dart analyze
(output)
$ cd apps/runner && dart test test/oto_agent_migration_plan_test.dart test/oto_agent_bootstrap_script_test.dart test/oto_agent_cli_test.dart test/oto_agent_config_test.dart test/oto_agent_registration_test.dart test/oto_server_connection_smoke_test.dart
(output)

최종 검증

$ cd services/core && go test -count=1 ./...
(output)
$ cd apps/runner && dart analyze
(output)
$ cd apps/runner && dart test test/oto_agent_migration_plan_test.dart test/oto_agent_bootstrap_script_test.dart test/oto_agent_cli_test.dart test/oto_agent_config_test.dart test/oto_agent_registration_test.dart test/oto_server_connection_smoke_test.dart
(output)

[IMPLEMENTING AGENT — BEFORE SAVING] Have you filled in every implementation-owned section: completion table, implementation checklist, changes from plan, design decisions, and verification output? If anything is blank, go back and fill it in before saving this file. Leave review-agent-only sections unchanged.