저도 동일한 동작을 확인했고, 이 문제가 발생하는 이유를 찾은 것 같습니다(이유는 리뷰 대기열에 해당 사용자가 표시되지 않는 것이 아니라, 아예 승인되지 않은 것입니다):
제가 코드를 이해하기로는(프로그래밍 지식은 거의 없습니다)[1] ‘must_approve_users’ 설정을 활성화하면, 해당 설정이 활성화되기 전에 생성된 대부분의 사용자는 승인되어야 합니다:
대부분의 사용자에게는 이 기능이 잘 작동했지만, 일부 사용자는 승인 상태로 표시되지 않았습니다.
Data Explorer Query
SELECT
id as UserID, approved
FROM
users
ORDER BY id
| UserID | Approved |
|---|---|
| 1 | true |
| 3 | true |
| … | … |
| 8 | true |
| 10 | false |
| 11 | false |
| 12 | false |
| 13 | true |
reviewables 테이블을 살펴보면, 채팅 메시지의 target ID와 일치하는 user ID를 가진 사용자들이 승인되지 않은 것을 확인할 수 있습니다.
Data Explorer Query
SELECT id, target_id, target_type
FROM reviewables
ORDER BY target_id
| id | target_id | target_type |
|---|---|---|
| 6 | 9 | ChatMessage |
| 7 | 10 | ChatMessage |
| 8 | 11 | ChatMessage |
| 9 | 12 | ChatMessage |
| 1 | 2901 | Post |
| 2 | 2909 | Post |
| 5 | 2991 | Post |
target type이 'user’가 아닌 'user’와 일치하는 target ID가 있을 때 사용자가 승인되지 않는 것은 버그라고 생각합니다.
I have hardly any programming skills ↩︎