Aglet

Prioritize notification deduplication with preserved change

Deduplication work matters when repeated messages obscure the latest action, but suppressing a real second event can be worse than noise. Compare identity and state change first, then choose the smallest window or grouping rule that protects a meaningful decision.

Decide where the work belongs

  1. Name the attention cost

    Describe what repeated messages make hard to see and what state a person might miss. Compare worker retry, cross-channel copy, and a legitimate repeated action. Keep noisy presentation separate from unsafe suppression.

  2. Compare window choices

    Set identity-only, short window, state-aware, resource-aware, channel-aware, and no deduplication beside one another. Consider retained history and latest action. Prefer a boundary that can be explained and tested, not a convenient global duration.

  3. Choose the first slice

    Record event type, channel, owner, and revisit evidence. Decide whether to fix identity, state comparison, grouping, or copy. Preserve retry and legitimate-repeat controls so the queue choice remains measurable. State which identity rule makes the boundary defensible. Tie the queue choice to one repeat or transition example.

What to carry forward

Prioritize deduplication where reliable identity lets the product reduce noise without hiding a state change. The decision should name window and exceptions. If repeats are legitimate and legible, queue delivery copy or grouping rather than suppression.

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