비스태프 사용자의 UI에서 메시지 링크가 누락됨

테스트용 TL1 사용자를 하나 만들어서 기능이나 권한 등을 테스트하고 있습니다. 그런데 오늘 이 사용자에게 “메시지” 항목이 표시되지 않는 것을 발견했습니다.

메시지를 보내거나, 알림에서 열거나, 직접 URL을 통해 접근할 수는 있지만, 다음 위치에 메시지 URL이 없습니다:

  • 내 프로필
  • 새 사이드바
  • 알림 메뉴의 “메시지” 하위 탭이 표시되지 않음

이 문제를 해결하는 방법에 대해 아는 분이 있을까요?

해당 사용자는 TL1 권한을 가지고 있으며, 이는 개인 메시지(PM) 접근 권한을 부여해야 합니다.

예: 내 프로필 페이지의 이 위치에 "메시지"가 표시되어야 합니다:

4개의 좋아요

확인할 수 있을 것 같습니다. #contribute:bug으로 넘기겠습니다. :+1:

  • personal message enabled groups가 trust_level_1으로 설정되어 있습니다.
  • TL1/2/3 사용자는 개인 메시지를 보내고 접근할 수 있지만, 사용자 메뉴나 사용자 영역에 메시지 탭이 없습니다.

여기서도 메타에서 같은 현상을 확인했습니다:

3개의 좋아요

음, 확인해 주셔서 감사합니다. 메타에서는 TL3인데, 제게는 메시지 탭이 보입니다.

1개의 좋아요

사실, Meta 테스트를 망쳤습니다… :slight_smile: 이전에 테스트 사용자를 TL0로 강등시켰다가 그 사실을 잊어버렸거든요. 그들을 TL1로 승격하니 메시지 탭이 나타났습니다. 다만, 제 테스트 사이트에서는 같은 일이 일어나지 않는 이유를 파악하는 데는 도움이 될 수도 있겠네요.

1개의 좋아요

전에 시도해 본 적이 있는데, TL1에서 TL0으로, 다시 TL1로, 심지어 TL3까지 변경해 봤지만 아무런 변화가 없었습니다.

또한 안전 모드도 제 문제점을 해결하지 못합니다.

2개의 좋아요

테스트 사이트에서 비스태프 사용자에게는 숨겨진 것으로 보입니다. 테스트 사용자의 권한을 모더레이터보다 낮은 수준으로 변경해도 표시되지 않습니다. 다만, 메타 사이트에서는 문제가 되지 않습니다. :thinking:

2개의 좋아요

방금 다른 인스턴스를 업데이트한 후 TL1 사용자로 로그인했는데, 메뉴와 프로필에서 메시지가 사라졌습니다. 여기서는 새/실험적 사이드바/알림 메뉴를 사용하지 않고 있습니다.

두 인스턴스 모두에서 정확히 같은 현상을 겪고 있습니다.

2개의 좋아요

오늘 아침에 테스트 사이트를 업데이트해서 다시 시도해 봤는데, 더 이상 해당 문제를 확인하지 못했습니다. 이제 비스태프 사용자에게 메시지 탭이 정상적인 위치에 표시됩니다. 이것이 새로운 업데이트의 결과인지(관련된 커밋을 찾지 못했습니다) 아니면 다른 문제 테스트 중에 제가 변경한 설정이나 수행한 작업 때문인지는 알 수 없습니다. :thinking:

이를 배제하기 위해 최신 버전으로 업데이트해 보시고 도움이 되는지 확인해 주시겠어요?

(참고로 다른 문제를 조사하던 중 새로운 테스트 사이트를 하나 더 스팬했는데, 그곳의 새로운 TL1 테스트 사용자도 메시지 탭이 올바른 위치에 표시되었습니다)

1개의 좋아요

지난 24시간 동안 두 번 재구축을 했지만 아직까지 문제가 해결되지 않았습니다. 이상하네요.. 원인이 무엇일지 궁금합니다. 안전 모드에서도 해결되지 않습니다..

TL1 사용자의 프로필 설정 페이지에서 다른 사용자에게 개인 메시지와 채팅 다이렉트 메시지를 보낼 수 있음 옵션도 사용할 수 없다는 것을 확인했습니다.

새로운 direct message enabled groups(그리고 기존 chat allowed groups) 플러그인 설정으로 테스트를 해보고 있었는데, 탭이 없는 시간대와 있는 시간대를 오가며 진행했습니다. 해당 설정을 변경하거나 초기화하는 것이 트리거일 가능성이 아주 낮게라도 있을 수 있을까요?

1개의 좋아요

방금 이 채팅 설정으로 시도해 봤습니다. 전에 다른 설정으로 버그가 있는지 확인하기 위해 테스트를 해본 적이 있습니다. 그래서 여전히 활성화된 오래된 설정이 있는 건가요? 확실하지 않네요..

수정: min trust to send messages(메시지 전송 최소 신뢰 등급)를 0: new user(0: 신규 사용자)로 설정하면 TL1로 승급한 사용자도 메시지를 볼 수 있습니다.


수정2: 최신 조사 결과를 종합하면, 아래에서 확인된 설정을 사용할 경우 관리자/모드 외에는 아무도 메시지를 볼 수 없습니다. min trust to send messages(메시지 전송 최소 신뢰 등급)를 0: new user(0: 신규 사용자)로 설정하면 TL0을 포함한 모든 사용자가 메시지 섹션을 볼 수 있습니다. 두 인스턴스에서 동일한 동작을 확인했습니다.

personal message enabled groups(개인 메시지 활성화 그룹)에는 일定的 효과가 있습니다. 사용자가 필요한 TL을 갖추지 못하면 사용자 페이지에서 메시지 버튼이 제거됩니다. 하지만 메시지 탭은 min trust to send messages(메시지 전송 최소 신뢰 등급)가 0: new user(0: 신규 사용자)로 설정된 경우에만 표시됩니다.

1개의 좋아요

Discourse 인스턴스를 2.9.0.beta10으로 업데이트했지만, 새 사이드바 기능을 활성화하지 않았습니다. 그런데 사용자분들이 메뉴 막대에서 우측 상단 아바타를 클릭했을 때 개인 메시지 아이콘이 사라졌다는 것을 알아채셨습니다. 관리자로서 저는 여전히 제 아이콘을 볼 수 있지만, 새 사이드바 메뉴 출시로 인해 아이콘이 제거된 것인가요? 아이콘을 다시 표시할 방법이 있을까요? 감사합니다!

관리자 메뉴 막대:

일반 사용자 메뉴 막대:

감사합니다!

3개의 좋아요

같은 문제인 것 같아서 해당 게시물을 이 토픽으로 옮겼습니다. :+1:

제가 우연히 제 문제를 해결했지만, 어떻게 해결된 건지는 아직 파악하지 못했습니다. 두 번째 보고가 이 문제를 파악하는 데 도움이 될 것이라 기대합니다. :slightly_smiling_face:

min trust to send messages 설정을 TL0로 변경한 뒤 다시 TL1로 되돌려서, 이렇게 초기화하면 도움이 되는지 확인해 볼 수 있을까요?

1개의 좋아요

아니요, 그건 도움이 되지 않습니다.

눈에 띄는 점은 다음과 같습니다: 위에서 언급한 설정을 TL0로 설정하고 저장한 뒤 페이지를 새로고침하면, 화면이 이렇게 보입니다:

저희 쪽에서도 같은 현상을 확인했습니다. 설정 변경에 대한 내용은 여전히 스태프 로그에 기록되는 것 같지만, personal_message_allowed_groups와 연결되어 있습니다. 내일 조금 더 자세히 살펴봐야겠지만, 제가 한 작업을 추적해 볼 수 있는 단서가 될 수도 있겠습니다.

1개의 좋아요

personal_messages_enabled_groups 설정을 추가한 이후라 이 문제를 살펴보고 있습니다. 현재 동작은 예상과 다릅니다:

현재 일어나는 일은 다음과 같습니다. UI에서 enable_personal_messages와 min_trust_to_send_messages 설정을 변경하면 personal_message_enabled_groups 설정도 함께 변경됩니다. enable_personal_messages의 선택을 해제하고 저장하면 personal_message_enabled_groups가 비워지며, 이는 위에서 보여준 동작을 재현합니다. 또는 min_trust_level_to_send_messages를 TL1로 설정하면 personal_message_enabled_groups가 관리자(admins)로 설정됩니다.

오늘 PR을 열어 UI에서 기존 설정들을 숨기고, override가 true로 설정되지 않았음에도 불구하고 기존 설정을 변경하려는 값으로 새 설정의 값을 무조건 설정하는 SiteSettingsController의 해당 부분을 수정할 것입니다:

먼저 기존 설정들을 숨겨서 문제를 임시로 막겠습니다. personal_message_enabled_groups를 원하는 값으로 설정하고 다른 설정들은 그대로 두신 후, 그래도 문제가 해결되지 않으면 알려주세요.

2개의 좋아요

구체적인 설정을 숨기는 PR을 병합했습니다:

4개의 좋아요

감사합니다. 재빌드를 해 봤는데 여전히 커밋이 하나 뒤처져 있고, /admin/upgrade 페이지에도 업데이트가 사용 가능하다고 표시되지 않습니다. 내일 다시 시도해 보겠습니다. 다시 한번 감사드리고, 좋은 밤 보내세요!

2개의 좋아요

방금 또 다른 수정 사항을 병합했기 때문에, UI에서 숨겨지지 않은 다른 비추천(deprecated) 설정에서는 이 문제가 발생하지 않아야 합니다. FIX: Deprecated settings should not override from UI - Pull Request #18536 - discourse/discourse - GitHub

2개의 좋아요

이전 설정은 제거된 것처럼 보이지만, 여전히 모든 TL 그룹이 무시되며, 새 설정이 "모두"로 설정된 경우에만 사용자에게 메시지 접근 권한이 부여됩니다.

1개의 좋아요