yojo-art/cherrypick

高度な検索でリプライ除外にするとエラーがでる

Closed this issue · 3 comments

💡 概要(Summary)

OpenSearchを利用した高度な検索でリプライ除外をつけるとエラーがでる

🥰 期待する動作(Expected Behavior)

検索できる

🤬 実際の動作(Actual Behavior)

高度な検索でリプライ除外にするとエラーがでる

📝 再現手順(Steps to Reproduce)

No response

💻 動作環境(Frontend Environment)

* Model and OS of the device(s):
* Browser:
* Server URL:
* CherryPick:

🛰 動作環境(サーバー管理者向け)(Backend Environment (for server admin))

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

このバグを自分で修正しますか?(Do you want to address this bug yourself?)

  • パッチを作成しプルリクエストします(Yes, I will patch the bug myself and send a pull request)

termとexists間違えてる

if (opts.excludeReply) osFilter.bool.must_not.push({ exists: { isReply: false } });

やっぱテスト必要じゃん

if (opts.excludeReply) osFilter.bool.must_not.push({ exists: { isReply: false } });
if (opts.excludeCW) osFilter.bool.must_not.push({ exists: { field: 'cw' } });
if (opts.excludeQuote) osFilter.bool.must.push({ term: { isQuote: false } });

#449 の時に巻き込んでなおしてた

}
if (opts.excludeReply) osFilter.bool.must_not.push({ exists: { field: 'replyId' } });
if (opts.excludeCW) osFilter.bool.must_not.push({ exists: { field: 'cw' } });
if (opts.excludeQuote) osFilter.bool.must.push({ term: { field: 'renoteId' } });