2.6 KiB
2.6 KiB
Milestone: Repo Registry and Workspace Lease
위치
- Roadmap:
agent-roadmap/ROADMAP.md - Phase:
agent-roadmap/phase/control-plane-foundation/PHASE.md
목표
관리 대상 Git repository와 workspace slot/lease를 PostgreSQL source of truth로 저장한다. 여러 worker나 agent-shell이 같은 workspace를 동시에 잡지 않도록 lease, dirty state, credential ref 경계를 정의하고 테스트한다.
상태
[계획]
승격 조건
- 없음
구현 잠금
- 상태: 해제
- 결정 필요: 없음
범위
- repo registry model과 migration
- workspace root, slot, lease state model
- credential value가 아닌
credential_ref저장 기준 - lease acquire/release, dirty/error state 전환
- local/worker가 같은 slot을 중복 배정받지 않도록 하는 DB 기준
기능
Epic: [registry] Repository registry
Gito가 관리할 repository와 기본 branch/workspace root/credential ref를 저장한다.
- [repo-model]
Repomodel과 Postgres schema를 정리한다. 검증: migration에remote_url,default_branch,workspace_root,credential_ref가 포함된다. - [repo-store] repo create/get/list/update store boundary를 만든다. 검증: storage test가 중복 id와 필수 필드 validation을 확인한다.
- [repo-contract] proto-socket
repochannel 후보 DTO와 REST bootstrap 예외를 contracts에 기록한다.
Epic: [lease] Workspace lease
작업 slot을 안전하게 예약하고 해제하는 원장을 만든다.
- [lease-model]
WorkspaceLeasestate를available,leased,dirty,error기준으로 확정한다. - [lease-store] DB transaction으로 하나의 available slot만 lease하는 store boundary를 만든다. 검증: 동시 lease 시 같은 slot이 중복 반환되지 않는 테스트를 둔다.
- [lease-release] release, dirty, error 전환 기준을 operation 결과와 연결한다.
완료 리뷰
- 상태: 없음
- 요청일: 없음
- 완료 근거: 없음
- 리뷰 필요:
- 사용자가 완료 결과를 확인했다
- archive 이동을 승인했다
- 리뷰 코멘트: 없음
범위 제외
- 실제 Git command 실행
- agent-shell 연결
- provider adapter 구현
- Flutter UX 구현
작업 컨텍스트
- 관련 경로:
services/core/internal/core/,services/core/internal/storage/,services/core/migrations/,packages/contracts/notes/gito-control-plane.md - 표준선(선택): Postgres가 lease와 audit의 source of truth다.
- 선행 작업: Runtime Scaffold and Contract Baseline
- 후속 작업: Platformless Git Operation Engine
- 확인 필요: 없음