You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(mindrecord): 수신자 데일리질문 isDraft 를 파싱하지 않고 false 하드코딩 — draft 노출 방어가 무효 #956
수신자용 데일리질문 매퍼가 isDraft 를 파싱하지 않고 false 리터럴로 하드코딩한다 (MindRecordMapper.kt:18-19, 주석: "데일리질문 수신자 응답은 isDraft 미노출 — 서버가 draft 를 전달 대상에서 제외한다고 가정").
그런데 ReceiverMindRecordViewModel 은 "서버가 제외하기를 기대하나 방어적으로 한 번 더 거른다"며 두 목록 모두에 filterNot { it.isDraft } 를 건다 — 데일리질문 쪽은 항상 false 라 통과율 100% 인 무효 필터다. BE 가 draft 제외를 빠뜨리면(또는 이미 안 하고 있다면) 작성자가 임시저장만 해 둔 답변이 수신자에게 그대로 노출된다. 일기 쪽(ReceiverDiaryItemDto.isDraft 파싱)은 정상 동작하므로 두 목록의 방어 수준이 갈려 있다.
주석의 전제가 Swagger 로 반증된다 — 실측(2026-08-23, dev /v3/api-docs) 기준 GET /receiver-auth/daily-question 응답 항목은 발신자 목록과 같은 DailyQuestionListResponse 스키마를 재사용하며 isDraft 를 포함한다([userDailyQuestionId, title, content, createdAt, isDraft, receivers]). 즉 계약에 있는 값을 FE 가 버리고 있는 것이라, ReceiverDailyQuestionItemDto 에 isDraft 파싱을 추가하면 기존 필터가 그대로 실효화된다.
Activity
Merge pull request #1015 from Afternote/fix/956-receiver-daily-questi…