Aglet

Triage notification deduplication windows before suppressing repeats

Near-identical notifications can be retries or legitimate repeated events. Triage identity and time boundary before suppressing them. Compare event key, resource, state, version, channel, and action so a short deduplication window does not hide a meaningful second change. Use one boundary example to keep identity and timing connected.

Establish what is happening

  1. Capture the pair

    Record event identity, resource, state, version, timestamp, channel, retry marker, notification ID, and action for near-identical messages. Include a retry and a real second transition. Keep source order and delivery order separate.

  2. Compare elapsed meaning

    Ask whether time, state, or version changed enough to create a new user decision. Compare a repeated payload inside the proposed window with a legitimate update just outside it. A fixed duration cannot replace event identity.

  3. Set the window boundary

    State identity key, duration, exceptions, retained history, and action behavior. Preserve a no-dedup control. Stop when another reviewer can tell which repeat is safe to merge and which must remain visible. Record the boundary event that must remain visible.

What to carry forward

The triage output is a deduplication boundary with identity, time, state, channel, and exceptions. Stop when retries and legitimate repeats are distinguishable. If event identity is missing, retain messages and route provenance before choosing a window.

Technical background: Android developer documentation.

Keep the decision with the work.

Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.

Create an account See the product workflow