nexo/agent-task/m-cicd-operations/05_deploy_pipeline/CODE_REVIEW-cloud-G07.md

12 KiB

Code Review Reference - 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 user-only decision, external environment prerequisite, or scope conflict, fill 사용자 리뷰 요청 with evidence and stop with active files in place; code-review decides whether to write USER_REVIEW.md. 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-05-30 task=m-cicd-operations/05_deploy_pipeline, plan=0, tag=OPS

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

[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-cicd-operations/05_deploy_pipeline/로 이동한다. WARN/FAIL이면 user-review gate를 확인한 뒤 다음 active plan/review 파일 또는 USER_REVIEW.md를 작성한다. USER_REVIEW.md가 사용자 결정으로 완료/PASS 해소되면 code-review가 USER_REVIEW.md를 해소 상태로 갱신하고 complete.log 작성 후 archive 이동한다.
  4. PASS이고 task group이 m-<milestone-slug>이면 완료 이벤트 메타데이터를 보고한다. roadmap 상태 체크와 update-roadmap 호출은 런타임 책임이다.
  5. 적용 가능한 코드리뷰 전용 체크리스트 항목을 최종 .log 위치에서 체크한 뒤 보고한다.

구현 항목별 완료 여부

항목 완료 여부
[OPS-1] Workspace deploy pipeline link [x]
[OPS-2] Compose deployment lanes and rollback contract [x]
[OPS-3] Milestone context cleanup [x]

구현 체크리스트

  • [OPS-1] root README와 docs index에 deploy pipeline의 공개 계약 위치와 기록 기준을 연결한다.
  • [OPS-2] core compose README에 dev/test/production-like lane, secret profile, rollback evidence 기준을 환경값 없이 정리한다.
  • [OPS-3] Milestone 컨텍스트에서 deploy-pipeline 진행 전 확인 필요 문구를 구현 표준선으로 좁힌다. 단, task 완료 체크는 code-review PASS 전까지 유지한다.
  • 정적 문서 점검 명령을 실행하고 runtime 검증 미실행 사유를 기록한다.
  • 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로 아카이브한다.
  • PASS이면 agent-ops/skills/common/code-review/templates/complete-log-template.md 기준으로 complete.log를 작성하고 active .md 파일을 남기지 않는다.
  • PASS이면 active task 디렉터리 agent-task/m-cicd-operations/05_deploy_pipeline/agent-task/archive/YYYY/MM/m-cicd-operations/05_deploy_pipeline/로 이동하고 최종 archive 경로에서 이 체크리스트를 갱신한다.
  • PASS이고 task group이 m-<milestone-slug>이면 런타임이 읽을 완료 이벤트 메타데이터를 보고하고, roadmap 수정이나 update-roadmap 직접 호출을 하지 않는다.
  • PASS split 작업이면 이동 후 빈 active parent agent-task/m-cicd-operations/를 제거하거나, 남은 sibling/file이 있어 유지했다고 확인한다.
  • WARN/FAIL이고 user-review gate가 트리거되지 않았으면 다음 active PLAN-cloud-G07.mdCODE_REVIEW-cloud-G07.md를 작성하고 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를 남기지 않는다.
  • USER_REVIEW가 사용자 결정으로 완료/PASS 해소되면 USER_REVIEW.md를 해소 상태로 갱신하고 complete.log를 작성한 뒤 task directory를 archive로 이동한다.

계획 대비 변경 사항

없음.

주요 설계 결정

  • 배포 표준선은 tracked 문서에 실제 환경값을 쓰지 않는 공개 계약으로 제한했다.
  • production-like는 별도 공개 target이 아니라 private/internal compose lane의 release rehearsal로 정의했다.
  • rollback evidence는 private run log 참조와 release note/follow-up issue의 sanitized 판정으로 나누어 기록하도록 정리했다.
  • docker-compose.yml, .env.example, runtime image evidence 문서는 변경하지 않았다.

사용자 리뷰 요청

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

리뷰어를 위한 체크포인트

  • tracked 문서와 task/review 로그에 실제 환경값, raw credential, private endpoint가 추가되지 않았는지 확인한다.
  • services/core/compose/README.md의 lane/secret/rollback 계약이 기존 smoke와 remote parity 설명을 깨지 않는지 확인한다.
  • Milestone의 [deploy-pipeline] 체크박스가 code-review PASS 전까지 미완료로 유지됐는지 확인한다.
  • runtime smoke를 실행하지 않은 사유가 local rule과 일치하는지 확인한다.

검증 결과

필수 규칙:

  • 검증 명령은 고정된 계약이다. 임의로 대체하지 않는다.
  • 대체가 필요하면 계획 대비 변경 사항에 이유와 대체 명령을 기록한다.
  • 검증 결과에는 실제 stdout/stderr를 붙여 넣는다.
  • 사용자 리뷰 요청으로 명령을 끝까지 실행하지 못했다면 사용자 리뷰 요청에 실행한 명령, 실제 출력, 미실행 명령의 사유를 기록한다.

OPS-1 중간 검증

$ rg --sort path -n "운영 업데이트/배포 흐름|deploy loop|rollback evidence|secret profile" README.md docs/README.md services/core/compose/README.md
README.md:108:## 운영 업데이트/배포 흐름
README.md:114:3. secret profile label과 주입 방식. 실제 값, credential, host, port는 tracked 문서와 task/review log에 쓰지 않는다.
README.md:116:5. rollback ref와 rollback evidence 위치. 공개 기록에는 private run log 참조와 판정만 남긴다.
docs/README.md:11:- Core compose runtime, deploy loop, smoke checks, remote parity, and secret boundary:
services/core/compose/README.md:89:| `production-like` | Internal release rehearsal before a stable pointer is treated as deployable. | Image refs, compose input hashes, secret profile label, smoke evidence, and rollback ref are recorded together. |
services/core/compose/README.md:98:git. A tracked report may name the secret profile label and rotation decision,
services/core/compose/README.md:109:hashes, secret profile label, and data snapshot reference in the private run log.
services/core/compose/README.md:113:A rollback restores the previous image refs and secret profile, starts the same

OPS-2 중간 검증

$ rg --sort path -n 'Deployment Lanes|Secret Injection|Rollback Contract|`dev`|`test`|`production-like`' services/core/compose/README.md
83:### Deployment Lanes
87:| `dev` | Disposable runtime for local feature checks and compose iteration. | Compose config renders, services start, and the smoke checks above pass. |
88:| `test` | Shared validation lane for upstream baseline or image updates before release notes. | Compose inputs match the candidate branch, images pull by immutable tag or digest, smoke passes, and failures are classified. |
89:| `production-like` | Internal release rehearsal before a stable pointer is treated as deployable. | Image refs, compose input hashes, secret profile label, smoke evidence, and rollback ref are recorded together. |
91:Use immutable tags or digests for `test` and `production-like` candidates.
95:### Secret Injection
106:### Rollback Contract

OPS-3 중간 검증

$ rg --sort path -n "deploy-pipeline|private/internal compose lane|확인 완료" agent-roadmap/phase/upstream-runtime/milestones/cicd-operations.md
28:  - [x] 2026-05-30: CI 검증 기준은 workspace helper, optional gate, compose smoke, SDK optional check로 정리했고, 남은 결정은 마일스톤 전체 잠금이 아니라 `deploy-pipeline` 구현 컨텍스트로 좁힌다.
29:  - [x] 2026-05-30: `deploy-pipeline` 표준선은 private/internal compose lane, ignored secret profile, release note/follow-up issue의 sanitized rollback evidence로 정한다.
55:- [ ] [deploy-pipeline] dev/test/production-like compose 배포, secret 주입, rollback 절차를 정리한다.
81:- 확인 완료: `deploy-pipeline`은 private/internal compose lane을 production-like 기준으로 삼고, secret은 ignored profile과 runtime data에 주입하며, rollback evidence는 private run log 참조와 release note/follow-up issue의 sanitized 판정으로 남긴다.

최종 검증

$ rg --sort path -n "운영 업데이트/배포 흐름|Deployment Lanes|Secret Injection|Rollback Contract|private/internal compose lane|rollback evidence" README.md docs/README.md services/core/compose/README.md agent-roadmap/phase/upstream-runtime/milestones/cicd-operations.md
README.md:108:## 운영 업데이트/배포 흐름
README.md:116:5. rollback ref와 rollback evidence 위치. 공개 기록에는 private run log 참조와 판정만 남긴다.
services/core/compose/README.md:83:### Deployment Lanes
services/core/compose/README.md:95:### Secret Injection
services/core/compose/README.md:106:### Rollback Contract
agent-roadmap/phase/upstream-runtime/milestones/cicd-operations.md:29:  - [x] 2026-05-30: `deploy-pipeline` 표준선은 private/internal compose lane, ignored secret profile, release note/follow-up issue의 sanitized rollback evidence로 정한다.
agent-roadmap/phase/upstream-runtime/milestones/cicd-operations.md:81:- 확인 완료: `deploy-pipeline`은 private/internal compose lane을 production-like 기준으로 삼고, secret은 ignored profile과 runtime data에 주입하며, rollback evidence는 private run log 참조와 release note/follow-up issue의 sanitized 판정으로 남긴다.

$ git diff --check -- README.md docs/README.md services/core/compose/README.md agent-roadmap/phase/upstream-runtime/milestones/cicd-operations.md agent-task/m-cicd-operations/05_deploy_pipeline/PLAN-cloud-G07.md agent-task/m-cicd-operations/05_deploy_pipeline/CODE_REVIEW-cloud-G07.md
# stdout/stderr: no output

Runtime smoke, compose execution, remote deployment, and secret-profile validation were not run. agent-test/local/rules.md prohibits local tests/verification, and this implementation only changed tracked documentation/roadmap/task files.


[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.