* Collapse identical notifications from the same sender into one toast
A web app open in several tabs fires one notification per tab for a single
reminder, stacking identical toasts. A new notification matching an on-screen
toast's app, summary, and body now replaces it like a replaces_id update.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Only collapse live duplicates that share image and click target
Screen recording toasts share text but preview and open different files, and
replayed history rows share images with entries still in history.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Compare a notification's current content when collapsing duplicates
A replaces_id update can land while the insert is deferred, so the initial
snapshot may no longer describe what the notification says.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>