76 lines
2.2 KiB
Markdown
76 lines
2.2 KiB
Markdown
# Milestone: Change Request Abstraction
|
|
|
|
## 위치
|
|
|
|
- Roadmap: `agent-roadmap/ROADMAP.md`
|
|
- Phase: `agent-roadmap/phase/provider-change-request-integration/PHASE.md`
|
|
|
|
## 목표
|
|
|
|
GitHub PR, GitLab MR, Gitea PR을 Gito의 provider-neutral `ChangeRequest`로 묶는다. 외부 소비자는 provider별 이름을 몰라도 create, update, comment, request review, merge, close 같은 공통 action을 사용할 수 있어야 한다.
|
|
|
|
## 상태
|
|
|
|
[계획]
|
|
|
|
## 승격 조건
|
|
|
|
- 없음
|
|
|
|
## 구현 잠금
|
|
|
|
- 상태: 해제
|
|
- 결정 필요: 없음
|
|
|
|
## 범위
|
|
|
|
- ChangeRequest domain DTO
|
|
- provider-neutral action set
|
|
- provider adapter mapping
|
|
- checks/review/comment 최소 공통 shape
|
|
- provider-specific extension field 경계
|
|
|
|
## 기능
|
|
|
|
### Epic: [cr-model] ChangeRequest model
|
|
|
|
PR/MR-like 객체를 공통 domain으로 표현한다.
|
|
|
|
- [ ] [shape] source branch, target branch, title, body, draft, state, external id를 포함하는 ChangeRequest shape를 확정한다.
|
|
- [ ] [actions] create, update, comment, request review, merge, close action을 정의한다.
|
|
- [ ] [events] opened, updated, merged, closed event를 normalized event로 매핑한다.
|
|
|
|
### Epic: [adapter-map] Adapter mapping
|
|
|
|
provider별 API 차이를 adapter 안에 격리한다.
|
|
|
|
- [ ] [github-map] GitHub PR mapping 후보를 작성한다.
|
|
- [ ] [gitlab-map] GitLab MR mapping 후보를 작성한다.
|
|
- [ ] [gitea-map] Gitea PR mapping 후보를 작성한다.
|
|
- [ ] [extension] provider-specific field를 공통 DTO 밖 확장 영역에 둔다.
|
|
|
|
## 완료 리뷰
|
|
|
|
- 상태: 없음
|
|
- 요청일: 없음
|
|
- 완료 근거: 없음
|
|
- 리뷰 필요:
|
|
- [ ] 사용자가 완료 결과를 확인했다
|
|
- [ ] archive 이동을 승인했다
|
|
- 리뷰 코멘트: 없음
|
|
|
|
## 범위 제외
|
|
|
|
- provider별 완전한 API client 구현
|
|
- CI provider integration
|
|
- branch protection/permission API
|
|
- Flutter PR/MR 화면
|
|
|
|
## 작업 컨텍스트
|
|
|
|
- 관련 경로: `services/core/internal/core/`, `services/core/internal/provider/`, `packages/contracts/notes/gito-control-plane.md`
|
|
- 표준선(선택): provider-neutral interface를 먼저 정의하고 provider-specific DTO는 adapter 내부에 둔다.
|
|
- 선행 작업: Provider Adapter Foundation
|
|
- 후속 작업: Webhook Revision Reconcile
|
|
- 확인 필요: 없음
|
|
|