misskey-dev / misskey

🌎 An interplanetary microblogging platform 🚀
https://misskey-hub.net/
GNU Affero General Public License v3.0
9.63k stars 1.28k forks source link

ノート詳細画面から上矢印を押した時の挙動に違和感がある #14000

Closed setaria430 closed 4 days ago

setaria430 commented 1 week ago

💡 Summary

古いノートの詳細画面から上矢印を押すと、直後のノートが取得できない (ノートの前後関係を把握したい時に、その目的が達成されない)

例えば以下のスクリーンショットは1年前のノートから上矢印を押した時だが、期待に反して1週間前のノートが直後のノートとして表示される image

参考にしたノート https://misskey.io/notes/9dmog35771 関係があるかもしれない過去のIssue https://github.com/misskey-dev/misskey/pull/13837

🥰 Expected Behavior

ノート詳細画面から上矢印を押すと、その直後のノートが表示される

🤬 Actual Behavior

ある程度最近のノートが、直後のノートとして表示される

📝 Steps to Reproduce

  1. たくさんノートしてそうな人を探す
  2. 昔のノートの詳細画面から上矢印を押す

💻 Frontend Environment

* Model and OS of the device(s): Windows 10 pro
* Browser: Chrome バージョン: 125.0.6422.176
* Server URL: misskey.io
* Misskey: 2024.5.0-io.1a

🛰 Backend Environment (for server admin)

* Installation Method or Hosting Service:
* Misskey:
* Node:
* PostgreSQL:
* Redis:
* OS and Architecture:

Do you want to address this bug yourself?

zyoshoka commented 1 week ago

基準とするノート(A)が、FTT のキャッシュに入っている最古のノート(B)よりも古い場合、A と B の間に投稿されたノートが帰ってこなくなっていてこの問題が生じているように見えます。

https://github.com/misskey-dev/misskey/blob/9bddb81efca3b2c5821383709cf30cd63ad21371/packages/backend/src/core/FanoutTimelineEndpointService.ts#L75

具体的にはこのロジックを書き換えて、キャッシュから取ってきた noteIds にキャッシュ内で最古のノートが含まれていたら DB にフォールバックするようにすれば良さそうと思いました

Related to #12842