프로젝트

일반

사용자정보

Actions

버그 #584

진행중
CP RL

[버그] 퀘스트 상태 전환 속도가 느림

버그 #584: [버그] 퀘스트 상태 전환 속도가 느림

Chris Park이(가) 약 4시간 전에 추가함.

상태:
해결
우선순위:
보통
담당자:
시작일:
2026/07/28
완료일:
진척도:

0%

추정시간:

설명

기여 시간 1시간을 도달할 경우 Axi가 Complete quest!~ 하는 텍스트를 출력

퀘스트 화면에서 Claim을 진행한 뒤에 다시 메인 화면으로 돌아오면 Axi의 대사가 Keep AXI running~로 바뀌어야 하는데 바로 바뀌지 않음

약 1분 이상의 시간이 경과한 뒤에 텍스트와 Axi의 상태가 변경


파일

20260728-123600-903.png (385 KB) 20260728-123600-903.png Chris Park, 2026/07/28 03:36
20260728-123600-903.png

HP Henry Park이(가) 3달 전에 변경 Actions #1

원인을 확인하여 앱 핫픽스 MR을 등록했습니다.

원인: 퀘스트 Claim 후 App은 refresh 신호를 올리고 있었지만, Home의 퀘스트 상태 조회 effect가 해당 신호를 구독하지 않아 다음 heartbeat까지 이전 Axi 상태와 문구가 유지되었습니다.

수정:

  • Claim 직후 Home이 Quest 상태를 즉시 재조회
  • 기존 heartbeat 갱신 유지
  • 이전 요청의 늦은 응답 차단 및 구독 cleanup 유지
  • polling 추가 없음

MR: https://git.alphea.io/Alphea-Dev/alphea-connect-app/-/merge_requests/4

검증:

  • 집중 회귀 테스트 6/6 통과
  • 전체 68 suites / 540 tests 통과
  • TypeScript typecheck 통과
  • 수정 제거 시 신규 테스트 6개 중 4개 실패 확인

MR은 아직 병합하지 않았으며 앱팀 검토/재현 확인을 기다리고 있습니다.

RL Ryan Lee이(가) 3달 전에 변경 Actions #2

  • 상태을(를) 신규에서 진행(으)로 변경되었습니다.

RL Ryan Lee이(가) 3달 전에 변경 Actions #3

  • 상태을(를) 진행에서 해결(으)로 변경되었습니다.

검토·재현 확인 완료했습니다. Henry Park 님이 등록한 MR !4 의 수정이 실제로 동작합니다.

검토 결과

원인 진단이 정확했습니다. claim -> onClaimed() -> pointsRefreshKey 증가 -> HomeScreen refreshKey 로 이어지는 신호 경로가 App 에 이미 있었고, 홈의 포인트 잔액 effect 만 그 값을 구독하고 있었습니다. 퀘스트 effect 의 의존성 배열이 비어 있어 마운트 시 1회 + heartbeat 로만 갱신되던 것이 원인입니다.

실기기 재현 확인 (Android 에뮬레이터, 기여시간 1h 02m 달성 상태)

  • 클레임 전 홈 문구: "Complete quest! Earn points"
  • 퀘스트 화면에서 1시간 퀘스트(800P) Claim -> "Claimed" 전환
  • 홈 복귀 약 2초 내 문구가 "Keep AXI running - Points are fueling up" 으로 전환, Axi 표정도 함께 변경
  • 포인트 칩 0 -> 800, 상단 "You earned 800 Points last time" 도 갱신
    기존의 "1분 이상 경과 후 변경" 증상은 재현되지 않았습니다.

자동 검증

  • 전체 68 suites / 545 tests 통과, TypeScript typecheck 통과
  • 수정을 되돌리면 신규 테스트 6개 중 4개 실패 -> MR 설명의 mutation 검증이 사실임을 확인

현재 위치 (주의)

MR !4 를 로컬 dev 에 병합해 검증했을 뿐, 아직 원격에 push 하지 않았습니다. 따라서 MR !4 는 여전히 열려 있고 origin/dev 에는 수정이 반영되지 않은 상태입니다. push 하면 MR 이 자동으로 닫힙니다.

참고 (별개 건)

검증 중 확인한 사항으로, 홈 카드의 상태 판정(dailyQuestCardState)이 'daily-foreground-' 접두어의 기여 시간 퀘스트만 대상으로 삼습니다. 그래서 Daily Check-in 보상이 수령 대기로 남아 있어도 홈은 "Keep AXI running" 만 보여줍니다. 이 이슈의 범위 밖이라 별도 판단이 필요합니다.

Actions

내보내기 PDF Atom