/cc-product:develop — 제품 맥락을 공통 개발 실행기에 연결
제품 파이프라인의 이슈를 run/batch에 연결해 구현·검증·PR을 처리하고 결과를 집계합니다. 기획된 이슈나 작업 묶음의 개발을 시작할 때 사용합니다.
| 항목 | 내용 |
|---|---|
| 실행 명령 | /cc-product:develop |
| 분류 | 파이프라인 |
| 난이도 | ●●● 높음 |
| MCP 서버 | zenhub |
/cc-product:develop 42
/cc-product:develop
/cc-product:develop 42 --parallel
입력과 한 번의 위임#
- 실행 연결 계약을 읽습니다.
-
명시적 이슈 번호 → 기존
--issue값 →.pipeline/{slug}.yaml에 기록된 번호 순으로 대상을 확인합니다. 서로 다른 명시적 번호는 충돌로 중단하며 없으면 필요한 입력을 알립니다. - batch의 Entry Issue Resolution을 재사용해 이슈 타입과 실제 자식을 조회합니다. 조회 실패를 자식 없음으로 읽지 않습니다.
-
leaf는 run, Epic/Project/Initiative 또는 자식이 있는
작업은 batch에 한 번 위임합니다.
dev-story로 구현을 먼저 수행하거나 이 문서에서 Story 순회 루프를 만들지 않습니다.
옵션#
- 컨테이너 기본:
batch --no-parallel.--parallel이면 이 옵션을 빼고 batch의 스폰 계획 승인을 따릅니다. -
leaf의 내부 병렬 여부는 run의 모드/승인 계약이 결정합니다. 전달할 수 없는
--parallel은 컨테이너 경로를 안내하고unsupported_option으로 중단합니다. --merge=pre-authorized,--unattended, 명시적 base는 대상 실행기가 지원하는 형태로 전달합니다.-
leaf의
--no-merge, 테스트/리뷰 생략은 run의 승인·기록 계약을 따릅니다. batch가 지원하지 않는 옵션은 실행 전에 거부하며 경고만 남기고 무시하지 않습니다. --issue는 입력 별칭일 뿐 열린 자식을 숨기는 강제 leaf 스위치가 아닙니다.
제품 상태 집계 (쓰기 소유권)#
이슈·브랜치·점유·PR·머지/Close는 실행기가 소유합니다. 이 연결 명령은 반환 후 제품 상태만 미러링합니다.
.pipeline/{slug}.yaml의 기존 키를 유지해 다음 정보를 기록합니다.
development:
completed_stories: [] # 원격으로 merged/closed 확인된 작업만
failed_stories: [] # issue, gate_check(causeKey), attempts
pending_stories: [] # PR_READY 등 아직 merged가 아닌 작업
occupied_stories: [] # 점유자와 재개 안내; 실패로 세지 않음
skipped_checks: {} # 실행기가 보고한 생략만, 임의 면제 없음
- 컨테이너 결과는 GitHub sub-issues를 전수 조회해 집계합니다. 누락/조회 실패는 unknown입니다.
- 전체 작업 집합은 completed/failed/pending/occupied의 합과 일치해야 합니다.
- 미완 원인과 재개 명령은 실행기의 이슈 코멘트/PR 결과에서 가져오며 재판정하지 않습니다.
-
failed_stories누락은 실패 0건이 아닙니다. 총수·실측·검증 상태가 모두 확인되고 completed==total, failed/pending/occupied가 빈 경우에만 개발 완료와 launch를 안내합니다. - 명시적으로 생략한 검사는
skipped_checks와 완료 문구에 남기며 전체 검증 통과라고 표시하지 않습니다.
재시도·Stall Budget·의존/점유 건너뜀·보드 반영은 batch/run 계약을 사용합니다. 재실행은 원격 재조회로 위치를 판단하고 완료한 스토리를 다시 구현하지 않습니다.