RSSポーリング: 変更のないフィード項目が #43645 以降「既存のトピックを更新しました」として報告される

RSS Polling may take 20 minutes and more to process a feed および、ポーリングジョブを post.previously_new_record? に切り替えることで変更のないアイテムがインポート済みとしてカウントされなくなった #43645 に関する続報です(poll_feed.rb#L132)。

この修正により、ステータスのもう半分が問題を残しています。すでにインポート済みで変更のないアイテムは、TopicEmbed.import が内容を変更したかどうかに関わらず既存のポストを返すため、ポーリングのたびに「Updated the existing topic」として報告されます。ステータスは previously_new_record? ? :imported : :updated で決定されます。

2026.7.3 ESR でも同じラベルを確認しています(ここでは古いチェックと rss_polling_use_pubdate が原因です)。また、6ba633db 時点の main を読み取った限り、この問題は main にも残っているようです。main を実行して確認したわけではありません。

再現手順

  1. フィードを追加し、一度ポーリングしてアイテムをインポートします。
  2. フィードに変更を加えずに、再度ポーリングします。
  3. フィードの「Recent polls」を開きます。

実際の結果: すべてのアイテムが「Updated the existing topic」と表示されます。

期待される結果: 変更のないアイテムは変更なし(またはスキップ)として報告され、「Updated」はポストが実際に修正された場合のみ表示されるべきです。

TopicEmbed.import はすでに何か変更があったかどうかを計算しています(topic_embed.rb#L140-L153 の content_changed、title_changed、tags_changed)。この結果をポーリングジョブに公開すれば、ステータスを正確にできます。