承認キュー内の全ユーザーに60日以上にわたり誤ったメール通知を送信するリグレッションが発生

この問題を解決し、再発を防ぐために実施した対応は以下の通りです。

このコミットは 3 つの課題を同時に解決する「3-in-1」の内容です。これらがバグの原因となっており、根本原因の特定を妨げていました。

  1. ユーザーアカウントが削除されても「メールログ」が削除されないようにしました。削除されたユーザーのメールログがあれば、送信されたすべての拒否メールをすぐに確認できたはずです。

  2. コード内でユーザーを削除するすべての箇所で、「コンテキスト」を適切に設定するようにしました。これにより、ユーザーがいつ、なぜ削除されたかを明確に特定できます。以前はコンテキストが設定されていない箇所が複数あり、なぜユーザーが削除されたのか不明で、原因を特定するためにコードを詳しく調査する必要がありました。

  3. 実際のバグを修正し、自動削除されたレビュー対象ユーザーに対して拒否メールを送信しないようにしました。

これらの変更にはすべてテストが追加されており、回帰を防ぐことが確実です。

「いいね!」 18