iop/agent-task/m-edge-model-group-queue-scheduling/03+01_node_queue_simplify/CODE_REVIEW-cloud-G07.md
toki dba289d0fa feat(edge): 모델 그룹 큐 스케줄링 구현
- 모델 그룹별 큐 기반 디스패팅 로직 추가
- ModelQueue 관리자로 모델 인스턴스 큐 처리
- OpenAPI chat 및 responses 핸들러 업데이트
- edge 서비스 테스트 코드 개선
2026-06-16 10:16:05 +09:00

5.3 KiB

Code Review Reference - REFACTOR

[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, user-owned 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. Do not ask the user directly, present choices in chat, or call request_user_input during implementation.

개요

date=2026-06-16 task=m-edge-model-group-queue-scheduling/03+01_node_queue_simplify, plan=0, tag=REFACTOR

Roadmap Targets

  • Milestone: agent-roadmap/phase/inference-provider-extension/milestones/edge-model-group-queue-scheduling.md
  • Task ids:
    • node-simplify: Node-local provider FIFO queue가 제거되거나 Edge dispatch 이후의 실행 안전장치로 축소되어, 각 Node가 queue owner가 되지 않는다.
  • Completion mode: check-on-pass

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

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

각 항목의 구현을 실제 소스 파일과 대조하고, 검증 결과 출력이 코드와 일치하는지 확인하세요.


구현 항목별 완료 여부

항목 완료 여부
[REFACTOR-1] OnRunRequest Queue Ownership 제거 [ ]
[REFACTOR-2] Capability Snapshot 정리 [ ]
[REFACTOR-3] Admission Queue Test 전환 [ ]

구현 체크리스트

  • Node OnRunRequest에서 FIFO queue ownership을 제거하고 dispatch된 run을 즉시 실행 또는 safety reject로 처리한다.
  • Node capability snapshot의 queued/in-flight 의미를 Edge-owned queue와 충돌하지 않게 정리한다.
  • Node admission queue tests를 삭제/전환하고 over-dispatch safety, cancel, background, store lifecycle 테스트를 남긴다.
  • go test -count=1 ./apps/node/internal/node가 통과한다.
  • 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을 확인한다.
  • PASS이면 complete.log를 작성하고 active .md 파일을 남기지 않는다.
  • PASS이면 active task 디렉터리를 archive로 이동한다.
  • PASS split 작업이면 parent directory 유지/정리를 확인한다.
  • WARN/FAIL이면 다음 active plan/review 또는 USER_REVIEW 경로를 처리한다.

계획 대비 변경 사항

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

주요 설계 결정

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

사용자 리뷰 요청

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

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

리뷰어를 위한 체크포인트

  • Node가 FIFO queue owner로 남지 않았는지 확인한다.
  • Node queued snapshot이 Edge-owned queued 의미와 충돌하지 않는지 확인한다.
  • cancel/background/store lifecycle 회귀가 남아 있는지 확인한다.

검증 결과

REFACTOR-1 중간 검증

$ go test -count=1 ./apps/node/internal/node -run 'TestOnRunRequest'
(output)

REFACTOR-2 중간 검증

$ go test -count=1 ./apps/node/internal/node -run 'TestOnCommandRequest_Capabilities'
(output)

REFACTOR-3 중간 검증

$ go test -count=1 ./apps/node/internal/node -run 'Test(AdmissionQueue|ConcurrencyLimit|QueueOverflow|OnRunRequest|OnCommandRequest_Capabilities)'
(output)

최종 검증

$ go test -count=1 ./apps/node/internal/node
(output)

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