fix(fishing): avoid stale no-session response on session end #9

Merged
myong merged 1 commits from myong_dev into main 2026-04-09 04:14:39 +00:00
Collaborator

개요

낚시 관련 명령에서 발생하던 응답 오류와 세션 종료 직전 레이스 조건 문제를 수정했습니다.

작업 내용

  • /fishing status, /fishing dex, /fishing ranking 에서 deferred interaction에 맞게 editReply()를 사용하도록 수정
  • 낚시 성공/실패 직후 늦게 도착한 버튼 입력이 진행중인 낚시 세션이 없습니다 로 처리되던 문제 수정
  • 세션 종료 상태에서는 버튼 입력을 조용히 비활성화 처리하도록 보완
  • 세션 삭제 시점을 UI 비활성화 렌더링 이후로 조정

원인

  • 일부 /fishing 서브커맨드는 이미 deferReply() 된 인터랙션에 다시 reply()를 호출하고 있었습니다.
  • 세션 종료 시 세션 맵에서 먼저 제거한 뒤 버튼을 비활성화하고 있어, 종료 직전 입력이 stale interaction으로 처리될 수 있었습니다.

검증

  • yarn.cmd build 성공
  • /fishing dex, /fishing ranking 응답 오류 수정
  • /fishing cast 성공 직전 입력 시 stale no-session 메시지 발생 조건 보완
## 개요 낚시 관련 명령에서 발생하던 응답 오류와 세션 종료 직전 레이스 조건 문제를 수정했습니다. ## 작업 내용 - `/fishing status`, `/fishing dex`, `/fishing ranking` 에서 deferred interaction에 맞게 `editReply()`를 사용하도록 수정 - 낚시 성공/실패 직후 늦게 도착한 버튼 입력이 `진행중인 낚시 세션이 없습니다` 로 처리되던 문제 수정 - 세션 종료 상태에서는 버튼 입력을 조용히 비활성화 처리하도록 보완 - 세션 삭제 시점을 UI 비활성화 렌더링 이후로 조정 ## 원인 - 일부 `/fishing` 서브커맨드는 이미 `deferReply()` 된 인터랙션에 다시 `reply()`를 호출하고 있었습니다. - 세션 종료 시 세션 맵에서 먼저 제거한 뒤 버튼을 비활성화하고 있어, 종료 직전 입력이 stale interaction으로 처리될 수 있었습니다. ## 검증 - `yarn.cmd build` 성공 - `/fishing dex`, `/fishing ranking` 응답 오류 수정 - `/fishing cast` 성공 직전 입력 시 stale no-session 메시지 발생 조건 보완
myong added 1 commit 2026-04-09 04:14:34 +00:00
myong merged commit d9f3e160aa into main 2026-04-09 04:14:39 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: art/Kord#9
No description provided.