docs/development/error-handling.md는 "도메인별 구체 예외는 해당 도메인에서 베이스를 상속합니다" 로 정했는데, follow 전용 예외 둘이 global/exception에 있다.
| 예외 |
성격 |
현재 위치 |
DuplicateFollowException |
follow 전용 |
global/exception |
SelfFollowNotAllowedException |
follow 전용 |
global/exception |
DeleteConfirmationRequiredException |
record·collection 공용 |
global/exception (적절) |
동작은 정상이고 유출도 없다. 규약과 코드가 말없이 다른 상태를 없애는 것이 목적이다.
선택지
| 안 |
내용 |
| (a) 코드를 옮긴다 |
앞의 둘을 domain/follow로 이동. 규약 그대로 |
| (b) 규약을 고친다 |
"ErrorCode 레지스트리가 global이라 예외도 global에 모은다" 로 error-handling.md를 수정 |
어느 쪽이든 문서와 코드가 일치하면 된다. DeleteConfirmationRequiredException은 두 도메인 공용이라 (a)를 택해도 global에 남는다.
완료 조건
참고
docs/development/error-handling.md는 "도메인별 구체 예외는 해당 도메인에서 베이스를 상속합니다" 로 정했는데, follow 전용 예외 둘이global/exception에 있다.DuplicateFollowExceptionglobal/exceptionSelfFollowNotAllowedExceptionglobal/exceptionDeleteConfirmationRequiredExceptionglobal/exception(적절)동작은 정상이고 유출도 없다. 규약과 코드가 말없이 다른 상태를 없애는 것이 목적이다.
선택지
domain/follow로 이동. 규약 그대로ErrorCode레지스트리가 global이라 예외도 global에 모은다" 로error-handling.md를 수정어느 쪽이든 문서와 코드가 일치하면 된다.
DeleteConfirmationRequiredException은 두 도메인 공용이라 (a)를 택해도global에 남는다.완료 조건
error-handling.md의 서술과 실제 패키지 배치가 일치한다code·상태)이 바뀌지 않는다./gradlew clean check --no-daemon참고