Problem
같은 명령을 중복 호출했을 때 결과가 보장되지 않음. ship 재실행 시 중복 PR 생성, merge 재실행 시 이미 머지된 PR에 대한 에러 등.
Proposed Solution
ship: 동일 브랜치에 이미 열린 PR이 있으면 기존 PR 반환 (중복 생성 방지)
merge: 이미 머지된 PR이면 성공으로 처리 (no-op)
clean: 이미 정리된 워크트리면 성공으로 처리
start: 이미 존재하는 워크트리면 해당 워크트리로 전환
- 각 케이스에서
--json 출력에 "idempotent": true 필드 추가
Impact
자동화/에이전트 실행 시 안전한 재시도 가능. 운영 사고 감소.
Priority: P1 | Source: 외부 피드백
Problem
같은 명령을 중복 호출했을 때 결과가 보장되지 않음. ship 재실행 시 중복 PR 생성, merge 재실행 시 이미 머지된 PR에 대한 에러 등.
Proposed Solution
ship: 동일 브랜치에 이미 열린 PR이 있으면 기존 PR 반환 (중복 생성 방지)merge: 이미 머지된 PR이면 성공으로 처리 (no-op)clean: 이미 정리된 워크트리면 성공으로 처리start: 이미 존재하는 워크트리면 해당 워크트리로 전환--json출력에"idempotent": true필드 추가Impact
자동화/에이전트 실행 시 안전한 재시도 가능. 운영 사고 감소.
Priority: P1 | Source: 외부 피드백