Skip to content

fix(core): 업로드 파일 크기 초과(1803)를 도메인 실패 타입으로 번역한다 (#1868 분리) #2089

Closed

Description

@OnlyReadOneBook

작업 유형

bug — 버그·오동작

주 담당 모듈

core — 코어

개요

#1868 의 core 번역 몫이다. 서버는 10 MiB 를 넘는 업로드를 POST /api/v1/files/presigned-url 에서 400 code 1803 으로 거절하는데 FE 에는 그 코드를 받을 자리가 없다. 저장소 전체에서 1803 검색 결과가 0건이라 소비처가 사유를 확인하지 못한 실패와 똑같이 받고, 파일 크기가 그대로인 한 통하지 않는 재시도를 권한다.

이 몫만 떼는 이유는 둘이다. #1868 의 완료 조건에 애프터노트 에디터 표시 연결이 남아 있고 그 표시는 시안 정본 대조가 선행이다. 그리고 #1868 이 문구 결정 이슈 #446 을 blocked_by 로 달고 있어 merge-order-guard 가 Closes #1868 을 건 PR 을 잠근다.

타입 계약은 문구를 정하지 않으므로 #446 의 결정을 기다리지 않는다. #446 이 PM 에게 묻는 것은 "무슨 문구를 어떤 액션과 함께 어느 표시 채널로 띄울지" 이고, 이 이슈는 실패에 이름을 붙일 뿐 화면에 아무것도 쓰지 않는다. #446 본문도 "확정된 오류 계약을 유지하는 내부 매핑·결함 수정은 별도 판단한다" 로 그 경계를 적어 두었다.

기준 리비전은 origin/develop 7d87aa3f4 다.

완료 조건

  • core:domain 에 업로드 실패 루트 타입과 크기 초과 하위 타입을 둔다. 사진과 영상이 같은 presigned 엔드포인트에 원본 크기를 그대로 실어 보내 같은 코드를 맞으므로 매체별로 가르지 않는다.
  • core:data 가 ApiException.code 1803 만 그 타입으로 치환한다. 사유를 확인하지 못한 실패는 원본 그대로 흘린다. 전송 실패와 S3 PUT 실패는 재시도가 실제로 통하는 경로라 건드리지 않는다.
  • PhotoUploadRepositoryImpl 과 VideoUploadRepositoryImpl 이 그 번역을 체인한다.
  • 소비처가 core:network 의 ApiException 이나 1803 이라는 숫자를 직접 보지 않고 타입만으로 가를 수 있다.
  • 번역 분기를 양쪽에서 잠그는 단위 테스트가 붙는다. 1803 번역, 그 외 code 원본 유지, 비 ApiException 원본 유지, 취소 재던짐, 성공 통과 다섯이다.
  • core:data 와 core:domain 의 유닛 테스트와 ktlint 를 통과한다.

표시 문구는 이 범위가 아니다. 서버 message 도 화면으로 옮기지 않는다. 각 화면이 자기 리소스로 갖는다.

참고

Activity

  1. added
    bugSomething isn't working
    area:core공용 코어·네트워크 기능 영역
    on Sep 13, 2026
  2. github-actions commented on Sep 13, 2026

    @github-actions
    Contributor

    bug 이슈는 사이드바 Fields > Priority 로 심각도를 지정해야 합니다. 판정 기준:

    • Urgent: 치명 — 크래시·데이터 소실·보안 무력화·핵심 경로 차단·가짜 성공
    • High: 심각 — 실패·틀린 값의 정상 위장, 핵심 기능 무동작
    • Medium: 불편 — 우회로가 있는 오동작·틀린 표시, 핵심 흐름은 유지
    • Low: 경미 — 문구·정렬·마감 품질 흠, 기능 영향 없음

    값이 비어 있어도 이슈를 닫지는 않습니다. 이 안내는 이슈당 한 번만 답니다.

  3. added
    pr-open이 이슈를 구현하는 PR 이 열려 있다 — base 가 기본 브랜치가 아니어도 드러낸다
    on Sep 13, 2026
  4. removed
    pr-open이 이슈를 구현하는 PR 이 열려 있다 — base 가 기본 브랜치가 아니어도 드러낸다
    on Sep 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

area:core공용 코어·네트워크 기능 영역bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions