1.1 KiB
1.1 KiB
SOLID·리팩터링·컴포넌트화 기준
책임 경계
- Endpoint: 인증·권한·HTTP·ProblemDetails.
- Application: 유스케이스·멱등·트랜잭션·Outbox orchestration.
- Domain Policy: 순수 결정·우선순위·상태전이·경계값.
- Infrastructure: Dapper/Npgsql/외부 API/Hangfire.
- FE: Zod trust boundary, TanStack Query server state, Pinia session/UI preference.
리팩터링 순서
Characterization/Golden → 작은 동작보존 변경 → 계약 diff → 통합/실패/replay → Release Evidence 순으로 수행한다. 정책·수식 변경은 구조 리팩터링과 같은 PR에 넣지 않는다.
공통화 승격 기준
세 번 반복되었다는 이유만으로 추상화하지 않는다. 의미·변경축·오류정책이 동일하고, 소비자가 둘 이상이며, 삭제 비용보다 drift 방지 효과가 클 때만 공통 Building Block 또는 FE 컴포넌트로 승격한다.
금지
God Service, 범용 Repository, 모든 클래스 Interface화, reflection plugin framework, 전역 Pinia 서버 캐시, blind retry, 현재값 overwrite, 수동 DB 정정은 금지한다.