일부 추적 중인 주제가 안 읽음으로 표시되지 않음

이 문제는 재현 단계를 명확히 알 수 없어 버그 게시판이 아닌 여기에 게시합니다. 최근 WaniKani 커뮤니티 포럼(https://community.wanikani.com/)에서 새 게시글이 올라왔음에도 제가 추적 중인 일부 토픽이 읽지 않음으로 표시되지 않는 것을 알게 되었고, 이곳에 문의하라는 안내를 받았습니다. 이 중 일부 토픽은 규칙적인 활동이 있음에도 수 주 동안 읽지 않음으로 표시되지 않고 있습니다. 최신(Latest) 개요에는 표시되지만 이미 읽은 것처럼 회색으로 처리되어 있습니다. 추가적인 세부 사항은 다음과 같습니다:

  • 읽지 않음으로 표시되지 않는 것은 항상 동일한 토픽들입니다.
  • 해당 토픽들의 추적 옵션을 변경해 보았지만 효과가 없었습니다.
  • 해당 토픽이나 그 토픽이 포함된 카테고리를 음소거(muted)로 설정하지 않았음을 확인했습니다.
  • 무시(ignore)된 사용자가 한 명은 있지만, 해당 토픽들의 최신 게시글은 보통 그 사용자의 것이 아닙니다. 또한 그 사용자가 마지막 게시글을 쓴 다른 토픽들은 읽지 않음으로 정상 표시됩니다. 따라서 이는 관련이 없을 수 있습니다.
  • 읽지 않은 토픽 수 카운터가 자주 잘못 표시됩니다(토픽 하단과 내비게이션 메뉴 모두에서). 실제로 읽지 않은 토픽보다 더 많은 수를 표시합니다. 처음에는 무시된 사용자 때문이라고 생각했지만, 자세히 보니 읽지 않음으로 표시되지 않는 스레드들이 개요에는 표시되지 않음에도 스레드 수에 포함되고 있는 것 같습니다.
  • 새로고침(소프트 또는 하드)을 하거나 로그아웃 후 다시 로그인해도 이 현상은 변하지 않습니다.

이 문제를 유발한 원인이 무엇인지, 혹은 제가 한 일과 관련이 있는지 전혀 알 수 없습니다. 하지만 검색을 해 보아도 관련 정보를 찾지 못했습니다. 이것이 어떤 원인으로 발생하는지, 그리고 어떻게 해결할 수 있는지 아는 분이 있을까요?

수정: 기술적인 원인을 짐작할 수 있을 것 같습니다. /latest.json에서 반환되는 JSON을 확인해 보니, 영향을 받는 토픽 중 하나에서

highest_post_number: 6561

이라는 값을 볼 수 있습니다.

하지만 같은 토픽에서

last_read_post_number: 8819

라는 값도 확인됩니다. 즉, 아직 작성되지 않은 게시글을 마지막으로 읽은 것으로 Discourse가 판단하고 있는 것처럼 보입니다. 해당 토픽은 또한 1만 개 게시글 제한을 초과한 이전 토픽의 자동 연속 토픽이기도 합니다. 이 두 가지 조건이 모든 영향받은 토픽에 해당되는지는 확신할 수 없지만, 계속 지켜보겠습니다.

수정 2: 다른 영향받은 토픽에서도 동일한 현상이 확인됩니다. highest_post_number: 403이고 last_read_post_number: 2334입니다. 이 토픽도 이전 토픽의 연속 토픽입니다.

세 번째 토픽도 마찬가지입니다 - highest_post_number: 1402이고 last_read_post_number: 6212입니다. 다만 이 토픽은 이전 토픽의 연속 토픽이 아닙니다.

수정 3 (지금으로서는 마지막입니다, 약속합니다): 완전성을 위해 말씀드리자면, 영향받지 않고 최신 상태를 유지 중인 토픽들의 경우 숫자(highest_post_number와 last_read_post_number)가 일치합니다. 이 불일치가 새 게시글이 읽지 않음으로 표시되지 않는 원인이 *인 것 같습니다. 하지만 물론 100% 확신할 수는 없습니다.

해당 문제는 꽤 오랫동안 해결된 상태였지만, 다시 발생했습니다. 현재까지 제가 파악한 바로는 한 개의 주제에 영향을 미치고 있으며, 해당 주제에 대한 latest.json의 JSON 응답은 다음과 같습니다:

{
        "id": 65108,
        "title": "WaniKani has officially stopped clicking my POLLs",
        "fancy_title": "WaniKani has officially stopped clicking my POLLs",
        "slug": "wanikani-has-officially-stopped-clicking-my-polls",
        "posts_count": 1867,
        "reply_count": 1577,
        "highest_post_number": 1868,
        "image_url": "https://global.discourse-cdn.com/wanikanicommunity/optimized/4X/1/7/f/17f7e88c4ebd69e1b8ea76b74625f8f8a17447ae_2_1024x482.jpeg",
        "created_at": "2024-03-02T23:27:05.198Z",
        "last_posted_at": "2024-03-11T06:12:55.262Z",
        "bumped": true,
        "bumped_at": "2024-03-11T06:12:55.262Z",
        "archetype": "regular",
        "unseen": false,
        "last_read_post_number": 4271,
        "unread": 0,
        "new_posts": 0,
        "unread_posts": 0,
        "pinned": false,
        "unpinned": null,
        "visible": true,
        "closed": false,
        "archived": false,
        "notification_level": 2,
        "bookmarked": false,
        "liked": true,
        "tags_descriptions": {
          
        },
        "views": 547,
        "like_count": 4970,
        "has_summary": true,
        "last_poster_username": "shuly",
        "category_id": 9,
        "pinned_globally": false,
        "featured_link": null,
        "has_accepted_answer": false,
        "can_vote": false,
        "posters": [
          {
            "extras": null,
            "description": "Original Poster",
            "user_id": 78576,
            "primary_group_id": 174,
            "flair_group_id": 174
          },
          {
            "extras": null,
            "description": "Frequent Poster",
            "user_id": 151896,
            "primary_group_id": 118,
            "flair_group_id": 118
          },
          {
            "extras": null,
            "description": "Frequent Poster",
            "user_id": 13491,
            "primary_group_id": 214,
            "flair_group_id": 214
          },
          {
            "extras": null,
            "description": "Frequent Poster",
            "user_id": 69207,
            "primary_group_id": 171,
            "flair_group_id": 171
          },
          {
            "extras": "latest",
            "description": "Most Recent Poster",
            "user_id": 51836,
            "primary_group_id": 204,
            "flair_group_id": null
          }
        ]
      }

지난번 이 문제가 발생했을 때는 게시글에 대한 많은 답글이 삭제되거나 이동된 경우 카운트가 일치하지 않아서 그랬던 것으로 파악했습니다. 하지만 이번에는 비교적 새로운 주제이므로 그런 경우는 아닌 것 같습니다.

참고로, 지난번에는 무시(Ignore)하고 있던 사용자를 무시 해제했을 때 문제가 스스로 해결되는 것처럼 보였고, 이번에도 사용자를 무시한 직후 바로 다시 발생했습니다. 우연일 수도 있지만, 사용자를 무시하는 것과 게시글 수 카운트가 일치하지 않는 현상이 서로 관련이 있는 것 같습니다. 또한 흥미롭게도, 해당 사용자는 문제가 발생한 스레드에서 활동 내역이 전혀 없습니다.