discourse/plugins/chat/db/post_migrate
Rafael dos Santos Silva 2834cc7955
FIX: Duplicate notifications when mentioned in chat (#39670)
Previously, building the web push "Reply" action payload raised because
`inline_reply.png` lived under `public/images/` where Propshaft can't
resolve it, so `Jobs::Chat::NotifyMentioned` retried after
`create_notification!` and inflated the bell with duplicate rows.

This change moves the icon into `app/assets/images/push-notifications/`
and wraps the action builder in a `rescue` so any future payload failure
logs and returns `{}` instead of stranding the job.

A post-deploy migration sweeps the duplicate `chat_mention`
`Notification` rows (and their `chat_mention_notifications` join
entries) created during the deploy window — keeping the oldest row per
`(user_id, data)` group and merging the read state forward.
2026-04-30 14:52:39 -03:00
..
20260430172653_remove_duplicate_chat_mention_notifications.rb FIX: Duplicate notifications when mentioned in chat (#39670) 2026-04-30 14:52:39 -03:00