Actions
버그 #600
진행중
RL
HP
GetReferralRewards 가 cards 를 빈 배열로 반환해 Referral 레벨 카드가 표시되지 않음
버그 #600:
GetReferralRewards 가 cards 를 빈 배열로 반환해 Referral 레벨 카드가 표시되지 않음
시작일:
2026/08/10
완료일:
진척도:
0%
추정시간:
설명
Referral 화면의 레벨 카드 스택이 한 장도 표시되지 않습니다. GetReferralRewards 가 cards 를 빈 배열로 내려주는 것이 원인으로 확인돼 서버 측 확인을 요청드립니다.
현상¶
Referral 탭에서 'Referral rewards' 헤더와 초대 코드 안내 카드만 남고, 그 아래 레벨 카드 영역이 통째로 비어 있습니다.
재현 환경¶
- staging (
https://edge.alphea.dev), dev 빌드 - 확인 일시: 2026-08-10
- 계정: Active today 0 / 총 초대 0, 클레임 이력 없음
실제 서버 응답¶
POST /alphea.connect.v1.ReferralService/GetReferralRewards · Request {}
{
"activeInvitees": "0",
"claimedCount": 0,
"earnedToday": { "micros": "0" },
"cards": [], ← 비어 있음
"completionState": "COMPLETION_BONUS_STATE_LOCKED",
"completionGoal": "100",
"completionReward": { "micros": "0" },
"resetAt": "2026-08-11T00:00:00Z",
"serverTime": "2026-08-10T09:39:44Z",
"questDisplayNames": {}
}
응답은 HTTP 200 이고 cards 를 제외한 나머지 필드(activeInvitees·completionGoal·resetAt)는 정상적으로 내려옵니다.
정황 — 카탈로그는 서버에 존재합니다¶
같은 서버의 QuestService/ListQuests 에는 레벨 카탈로그가 그대로 있습니다.
referral-level-1 metric=QUEST_METRIC_ACTIVE_INVITEE_COUNT targetValue=1 reward.micros=0 referral-level-5 metric=QUEST_METRIC_ACTIVE_INVITEE_COUNT targetValue=5 reward.micros=0 referral-level-10 metric=QUEST_METRIC_ACTIVE_INVITEE_COUNT targetValue=10 reward.micros=0 referral-level-25 metric=QUEST_METRIC_ACTIVE_INVITEE_COUNT targetValue=25 reward.micros=0
connect-rpc-api.md §10.6 도 "레벨 정의는 진행률 확인을 위해 일반 QuestService 카탈로그에도 노출되지만, 클레임은 오직 ClaimReferralReward 로만 가능하다"고 명시하고 있습니다. 즉 카탈로그 자체는 있는데 ReferralService 쪽 cards 만 비어 있는 상태로 보입니다.
또한 referral-level-* 의 reward.micros 가 모두 0 이고 completionReward.micros 도 0 입니다 — 보상 값이 미설정인지 함께 확인 부탁드립니다.
확인 요청 사항¶
-
GetReferralRewards.cards가LOCKED상태를 포함한 카탈로그 전체를 반환하는 것이 맞는지
(§10.6 응답 예시에는 미달 레벨이 포함돼 있고, "카드 수·레벨·임계값·보상은 모두 서버가 정한다"고 기술돼 있습니다) - 현재 빈 배열이 내려오는 조건이 무엇인지 — 활성 초대 인원 0 이면 제외하는 의도된 동작인지, 카탈로그 조회 누락인지
-
referral-level-*및 완주 보너스의 보상micros가 모두0인 것이 스테이징 미설정 때문인지 - 프로덕션(
edge.alphea.ai)에서도 동일하게 빈 배열이 내려오는지
클라이언트 현황¶
- 클라이언트는 응답의
cards를 그대로 표시합니다. 레벨 재번호·임계값 재계산·개수 가정·재정렬을 하지 않습니다 (src/services/referralService.ts). - 이 구조는 #594 (
fix/redmine-594-referral-rewards-authority) 에서 레벨 카드의 권한을GetReferralRewards로 확정하며 정해진 계약입니다. 이전에 쓰던QuestService카탈로그 기반 카드 생성 경로는 그때 제거했습니다. - 따라서 클라이언트가 카드를 합성해 표시하는 방식은 계약 위반이라 적용하지 않았고, 서버가
cards를 채워주면 별도 앱 수정 없이 정상 동작합니다.
Actions