Aglet

Prioritize notification badge drift with a clear count contract

Badge work matters when people either miss unread work or stop trusting the indicator. Compare definition mismatch with delayed refresh across tabs and devices. A clear count label or refresh rule may help before changing read semantics. Tie the count to a named state and refresh boundary.

Decide where the work belongs

  1. Name the count consequence

    Describe what a person infers from the badge and what the inbox shows instead. Compare one extra unread count with a missing unread item. Keep grouped summaries separate from item-level counts.

  2. Compare repair boundaries

    Set count definition, read transition, grouping, refresh, tab sync, device sync, and text-equivalent status beside one another. Consider whether opening means viewing or acknowledging. Prefer a contract that remains understandable when the list is filtered.

  3. Choose the first slice

    Record surface, unread definition, owner, and revisit evidence. Decide whether to fix count calculation, transition, refresh, or copy. Preserve a reconciled control and the original drift case for comparison. Name the refresh event that reconciles the surfaces. Name the source of truth that should settle the queue choice.

What to carry forward

Prioritize badge changes where the count hides work or repeatedly signals nothing useful. The decision should name what counts and when it updates. If only refresh timing is uncertain, queue sync evidence instead of rewriting read-state semantics.

Technical background: W3C guidance.

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