2.5 KiB
2.5 KiB
Milestone: Platformless Git Operation Engine
위치
- Roadmap:
agent-roadmap/ROADMAP.md - Phase:
agent-roadmap/phase/control-plane-foundation/PHASE.md
목표
GitHub/GitLab/Gitea 같은 플랫폼 API 없이 Git CLI와 local bare repository만으로 Git operation을 실행하고 검증한다. 이 Milestone은 Gito의 모든 provider adapter가 의존할 platformless Git 기준선을 만든다.
상태
[진행중]
승격 조건
- 없음
구현 잠금
- 상태: 해제
- 결정 필요: 없음
범위
- clone, fetch, pull, checkout, status, diff, commit, push operation
- revision cursor와 changed file scan
- operation input/output DTO
- command timeout과 stderr/stdout capture boundary
- local bare repo 기반 integration test
기능
Epic: [ops] Git operations
Provider API에 의존하지 않는 Git command 기능을 만든다.
- [clone-fetch] clone/fetch operation을 구현한다. 검증: local bare repo를 remote로 사용해 fetch 후 revision을 확인한다.
- [status-diff] status/diff operation을 구현한다. 검증: staged/unstaged/clean workspace 상태를 테스트한다.
- [commit-push] commit/push operation을 구현한다. 검증: local bare repo에 push한 revision이 remote branch에 반영된다.
- [branch-checkout] branch checkout과 source branch 기준을 구현한다. 검증: branch 변경 후 worktree revision을 확인한다.
Epic: [scan] Revision scan
branch revision 변화와 changed file을 normalized event 입력으로 만든다.
- [cursor] repo/branch별 last seen revision cursor를 저장한다.
- [changed-files]
before..afterchanged file scan을 구현한다. 검증: 여러 commit 사이 변경 파일 목록이 기대와 일치한다. - [event-input] scan 결과를
RevisionEvent후보로 변환한다.
완료 리뷰
- 상태: 없음
- 요청일: 없음
- 완료 근거: 없음
- 리뷰 필요:
- 사용자가 완료 결과를 확인했다
- archive 이동을 승인했다
- 리뷰 코멘트: 없음
범위 제외
- PR/MR 생성
- provider webhook 처리
- IOP CLI 실행
- Flutter 표시
작업 컨텍스트
- 관련 경로:
services/core/internal/gitengine/,services/core/internal/core/,services/core/internal/storage/ - 표준선(선택): webhook 없이도
fetch + revision diff + scan만으로 변경을 확인할 수 있어야 한다. - 선행 작업: Repo Registry and Workspace Lease
- 후속 작업: Operation Event Outbox
- 확인 필요: 없음