Relocate the fair share specs to models
- Dominant language
- Python
- Stars
- 670
- Forks
- 183
- Avg merge
- 15h 13m
- Merged PRs (30d)
- 368
Description
공정분배의 옛 spec 아홉을 v2 베이스로 옮긴다. creator 셋과 upserter 여섯이다.
복합 자연키 지원이 먼저다. 도메인, 프로젝트, 사용자 각각이 자원그룹과 짝을 이루고, 테이블에는 그 쌍에 유일 제약이 걸려 있다.
세 스코프가 같은 모양을 반복한다. 도메인, 프로젝트, 사용자 각각에 creator 하나와 upserter 둘(단건, 가중치 일괄)이 있다. 한 스코프를 옮기면 나머지 둘은 같은 변경이다.
전부 살아 있고 부르는 곳이 같은 도메인 안에 있다.
공통 완료 기준. 이 디렉터리에서 repositories.base import가 0이고, 레거시 DBOpsProvider 사용이 0이고, V2 ops를 직접 생성하는 자리가 0이고, 리포지토리가 세션이나 엔진이 아니라 V2DBOpsProvider를 받는다. 근거는 repositories/AGENTS.md다.
판별은 import 경로로 한다. repositories.base와 models.specs에 이름이 같은 클래스가 있어서 클래스명으로 세면 틀린다.
JIRA Issue: BA-7469
Contributor guide
Research direction
Start with repositories/AGENTS.md, then inspect the fair-share specs and the repositories.base and models.specs import paths. Move the nine creator and upserter specs across the three scopes, accounting for composite natural keys. Done means no repositories.base imports, legacy DBOpsProvider uses, or direct V2 ops construction remain, and repositories receive V2DBOpsProvider rather than a session or engine.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, database
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 66/100