아카이브된 주제 내의 게시물은 좋아요나 이모지 반응이 불가능하다는 점을 이해하고 있습니다. 그렇다면 이 게시물 은 왜 좋아요(하트를 누를 수는 있지만, '그 반응은 너무 오래전에 생성되어 더 이상 수정하거나 삭제할 수 없습니다.'라는 오류가 발생하며, 이 오류 메시지 또한 정확하지 않음)를 받을 수 있는 것인가요?
실제로 이 주제의 다른 게시물에도 해당되는 문제입니다. 좋아요나 이모지 반응이 있는 게시물은 아예 좋아요를 받을 수 없는 것처럼 보이지만, 아무것도 없는 게시물은 aforementioned 오류가 발생하긴 하지만 좋아요를 받을 수 있는 것으로 보입니다.
이러한 일관성 없는 동작은 Contribute > Bug 게시판에 보고하는 것이 적절할 것 같다는 생각이 듭니다.
Moin
4월 1, 2026, 6:15오전
2
그건 reactions 플러그인 때문인 것 같아요. 안전 모드에서는 같은 동작을 할 수 없거든요. 그리고 제이미가 커뮤니티 관리자가었을 때, 아카이브된 게시물에 실수로 이모지 반응을 남긴 적이 있어요. 제 반응이 꽤 부적절해서 제이미가 대신 삭제해 주셨는데, 아마 앞으로 그런 일이 일어나지 않도록 뭔가 추가된 것 같아요. 다만 확실하지는 않고, 채팅 기록에서 그 부분을 찾으려면 시간이 꽤 걸릴 거예요.
1개의 좋아요
좋아요. 그러면 안전 모드에서는 버튼을 아예 누를 수 없겠네요. 그러면 아카이브된 주제에서는 숨겨져야 하는 거겠죠?
Moin
4월 1, 2026, 6:24오전
4
내 문제는 이미 좋아요가 있는 게시글에서 발생한 것 같습니다.
우리 대화 내용
이 건에 대해서는 아카이빙하기 전에 반응을 추가했나요?
제 경우 아카이빙된 상태에서는 추가와 제거 모두 차단되는 것 같습니다(예상대로).
해당 토픽의 게시글에 여전히 를 추가할 수 있습니다.
아 맞네. 불가능하다고 표시되지만 실제로는 가능하군요.
그리고 제거는 안 되고요.
흠.
아카이빙을 해제하고 남은 반응들을 정리했습니다.
보고서를 올릴게요.
이 아카이빙 + 반응 테스트 재현에서 몇 가지 이상한 현상을 겪고 있습니다.
테스트 사이트에서는 반응 메뉴가 나타나지 않아요.
만 표시됩니다.
흠
토픽 생성
답글 추가
아카이빙
테스트 사용자로 토픽을 방문하고 게시글에 반응 시도
제 Basic 호스팅 사이트에서도 시도해 봤는데, 그것도 안 됩니다.
테스트 사용자가 답글을 만들고, 제가 새로고침 없이 아카이빙하고 반응하면 반응 추가가 됩니다. 하지만 새로고침 후에는 안 됩니다.
아카이빙하기 전에 user2로 게시글에 좋아요를 누르고, 그 후 user3로 반응을 시도해 보세요.
1개의 좋아요
@NateDhaliwal & @Moin , 감사합니다. 아카이브된 주제를 처리할 때 리액션에 잘못된 로직이 있었던 것 같습니다.
main ← fix/reactions-archived-topic-like-button
merged 02:38PM - 01 Apr 26 UTC
When a post in an archived topic has no existing likes, the backend omits the li… ke entry from `actions_summary` (no count, no `can_act`, no `acted`), making `likeAction` null on the frontend.
Core's like button handles this correctly (renders as disabled), but the reactions plugin — which replaces core's like button — had guards that checked `likeAction && !(canToggle || can_undo)`. When `likeAction` was null, the guard was bypassed, allowing clicks that triggered a 403 from the backend with a misleading "too long ago" error message.
Posts with existing likes were unaffected since `likeAction` existed with `canToggle: false`, and the guard worked as intended.
This commit:
- Flips the `toggleFromButton` guard from `likeAction && ...` to `!likeAction || ...` so null likeAction blocks the interaction
- Reorders the `toggle()` condition to check `likeAction?.canToggle` first, preventing reactions via the emoji picker
- Adds an early return in `pointerOver` when `!likeAction?.canToggle` to prevent the reaction picker from opening on hover
- Adds optional chaining in the picker's `reactionInfo` getter to fix a TypeError crash on `post.likeAction.canToggle` when null
- Uses the server error message in `_extractErrors` when available instead of a hardcoded misleading string, and updates the fallback translation to a generic message
https://meta.discourse.org/t/399681
2개의 좋아요
이 주제는 마지막 답변 후 3일이 지나면 자동으로 닫힙니다. 더 이상 새 답변을 남길 수 없습니다.