# Code Review Reference - JENKINS_IA_OPS > **[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 Milestone `구현 잠금 > 결정 필요` item, fill `사용자 리뷰 요청` with linked evidence and stop with active files in place; code-review decides whether to write `USER_REVIEW.md`. > Do not ask the user directly, present choices in chat, or call `request_user_input` during implementation. > Finalization is review-agent-only. ## 개요 date=2026-07-03 task=m-control-plane-jenkins-menu-ia-code-sync/03+01_executions_ops, plan=0, tag=JENKINS_IA_OPS ## Roadmap Targets - Milestone: `agent-roadmap/phase/control-plane-product-surface/milestones/control-plane-jenkins-menu-ia-code-sync.md` - Task ids: - `execution-ops-menu-sync`: executions/runners/settings 화면이 `Pipeline Overview`, `Console Output`, `Artifacts`, `Build History`, `Nodes/Agents`, `Manage OTO` 중심으로 동기화된다. - `preview-deploy`: 동기화된 Flutter web build를 원격 preview에 배포한다. - Completion mode: check-on-pass ## 이 파일을 읽는 리뷰 에이전트에게 > **[REVIEW AGENT ONLY]** 아래 종결 절차는 코드리뷰 에이전트 전용이다. 각 항목의 구현을 실제 소스 파일과 대조하고, `검증 결과` 섹션의 출력이 코드와 일치하는지 확인하세요. --- ## 구현 항목별 완료 여부 | 항목 | 완료 여부 | |------|---------| | [JENKINS_IA_OPS-1] Pipeline Graph Run Detail | [ ] | | [JENKINS_IA_OPS-2] Nodes And Agents Runners Surface | [ ] | | [JENKINS_IA_OPS-3] Manage OTO Settings | [ ] | | [JENKINS_IA_OPS-4] Preview Deployment Smoke | [ ] | ## 구현 체크리스트 - [ ] [JENKINS_IA_OPS-1] executions run detail을 Pipeline Graph View/Stage View 및 run-context left task menu 중심 구조로 개편한다. - [ ] [JENKINS_IA_OPS-2] runners를 Jenkins Nodes/Agents style 운영 목록으로 개편한다. - [ ] [JENKINS_IA_OPS-3] settings fallback을 Manage OTO category 구조로 개편한다. - [ ] [JENKINS_IA_OPS-4] console/client tests를 갱신하고 원격 preview를 재배포한다. - [ ] `cd packages/flutter/oto_console && flutter analyze && flutter test`, `cd apps/client && flutter analyze && flutter test`, `git diff --check`, preview `curl -I`를 실행한다. - [ ] CODE_REVIEW-*-G??.md의 구현 에이전트 소유 섹션을 실제 구현 내용과 검증 출력으로 채운다. 이 항목이 완료되기 전에는 구현이 완료된 것이 아니다. ## Agent UI Completion - Mode: review-pass-status-update - Agent UI docs: - `agent-ui/definition/index.md` - `agent-ui/definition/views/index.md` - `agent-ui/definition/components/index.md` - Actual code evidence: - [ ] `packages/flutter/oto_console/lib/src/oto_executions_surface.dart`: - [ ] `packages/flutter/oto_console/lib/src/oto_runners_surface.dart`: - [ ] `packages/flutter/oto_console/lib/src/oto_console_shell.dart`: - Implementation verification evidence: - [ ] `cd packages/flutter/oto_console && flutter analyze && flutter test`: - [ ] `cd apps/client && flutter analyze && flutter test`: - [ ] `curl -I http://toki-labs.com:13020/`: - Status updates requested on PASS: - [ ] `agent-ui/definition/views/index.md`: `executions`, `runners`, `settings` Jenkins IA criteria `계획` -> `구현됨` - [ ] `agent-ui/definition/components/index.md`: ops component criteria `계획` -> `구현됨` - Review finalization: - [ ] Review agent updated the listed agent-ui docs and code evidence. - [ ] Review agent ran `validate-agent-ui scope=jenkins-ia-executions-ops` after the status/evidence update. ## 코드리뷰 전용 체크리스트 > **[REVIEW AGENT ONLY]** 이 체크리스트는 코드리뷰 에이전트만 사용한다. - [ ] `코드리뷰 결과`에 `PASS`, `WARN`, `FAIL` 중 하나의 판정을 append한다. - [ ] active review/plan 파일을 `.log`로 아카이브한다. - [ ] PASS이면 `complete.log` 작성 후 `agent-task/archive/YYYY/MM/m-control-plane-jenkins-menu-ia-code-sync/03+01_executions_ops/`로 이동한다. - [ ] PASS split 작업이면 빈 active parent를 제거하거나 남은 sibling 때문에 유지했다고 확인한다. - [ ] WARN/FAIL이면 후속 active plan/review 또는 정당한 `USER_REVIEW.md`를 작성한다. ## 계획 대비 변경 사항 _구현 에이전트가 계획과 다르게 구현한 부분을 이유와 함께 기록한다._ ## 주요 설계 결정 _구현 에이전트가 주요 설계 결정 사항을 기록한다._ ## 사용자 리뷰 요청 _기본값은 `없음`이다. 구현 중 새 결정이 필요해 보여도 직접 질문하거나 선택지를 제시하거나 `request_user_input`을 호출하지 않는다. 이 섹션은 선택된 Milestone `구현 잠금 > 결정 필요` 항목이 실구현을 차단할 때만 채운다. 외부 환경/secret/서비스 준비, 검증 증거 공백, 반복 실패, 일반 범위 조정은 사용자 리뷰 요청이 아니며 `검증 결과`, `계획 대비 변경 사항`, 또는 code-review의 일반 follow-up plan으로 처리한다._ - 상태: 없음 - 사유 유형: 없음 - 연결 대상: 없음 - 결정 필요: 없음 - 차단 근거: 없음 - 실행한 검증/명령: 없음 - 자동 후속 불가 이유: 없음 - 재개 조건: 없음 ## 리뷰어를 위한 체크포인트 - `Stage summary unavailable` 단독 placeholder가 사라지고 `Stage Graph`와 run-context left task menu가 primary run detail이 되었는지 확인한다. - Runners가 generic card list가 아니라 Nodes/Agents operational list로 보이는지 확인한다. - Settings fallback이 Manage OTO category menu/surface인지 확인한다. - Preview deployment가 dirty remote checkout을 source로 사용하지 않았는지 확인한다. ## 검증 결과 ### JENKINS_IA_OPS-1 중간 검증 ```bash $ cd packages/flutter/oto_console && flutter test test/oto_console_test.dart (output) ``` ### JENKINS_IA_OPS-2 중간 검증 ```bash $ cd packages/flutter/oto_console && flutter test test/oto_console_test.dart (output) ``` ### JENKINS_IA_OPS-3 중간 검증 ```bash $ cd packages/flutter/oto_console && flutter test test/oto_console_test.dart (output) ``` ### JENKINS_IA_OPS-4 중간 검증 ```bash $ cd apps/client && flutter build web --dart-define=OTO_SERVER_HTTP_URL=http://toki-labs.com:18020 (output) $ preview_dir="/Users/toki/agent-work/oto-ui-preview-$(date -u +%Y%m%d%H%M%S)-jenkins-ia" $ ssh toki@toki-labs.com "mkdir -p '$preview_dir'" (output) $ rsync -a --delete apps/client/build/web/ "toki@toki-labs.com:$preview_dir/" (output) $ ssh toki@toki-labs.com "pkill -f 'python3 -m http.server 13020' || true; cd '$preview_dir' && nohup python3 -m http.server 13020 >/tmp/oto-ui-preview.log 2>&1 &" (output) $ curl -I http://toki-labs.com:13020/ (output) ``` ### 최종 검증 ```bash $ test -f agent-task/m-control-plane-jenkins-menu-ia-code-sync/01_definition_guardrails/complete.log (output) $ cd packages/flutter/oto_console && flutter analyze && flutter test (output) $ cd apps/client && flutter analyze && flutter test (output) $ git diff --check (output) $ cd apps/client && flutter build web --dart-define=OTO_SERVER_HTTP_URL=http://toki-labs.com:18020 (output) $ curl -I http://toki-labs.com:13020/ (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?**