Aglet

Verify webhook ordering and version guards

Ordering verification must test the same resource under reversed delivery and ambiguous timestamps. Run state pairs through the actual handler, then inspect version comparison, write result, and final state. Keep distinct resources and duplicate deliveries separate from genuine ordering conflicts.

Check whether the outcome improved

  1. Define state outcomes

    Write expected result for ordered events, reversed events, equal timestamps, duplicate delivery, missing version, and a new event after an advanced local state. State whether the handler applies, rejects, or reviews each case.

  2. Run delivery permutations

    Feed the same event pair in creation order, reverse order, and concurrent workers. Confirm stale events cannot overwrite newer state when the contract provides a guard. Check that a duplicate does not advance version or repeat a side effect.

  3. Check reconciliation

    Read current resource state after a rejected or ambiguous event, then process a safe recovery fixture. Verify visible state and durable history agree. Retain event IDs and comparison evidence without sensitive payload data.

What to carry forward

Accept when supported ordering or version rules produce the intended final state across delivery permutations, stale writes are visible, and duplicates are safe. Keep coverage partial where the sender gives no usable order signal. Record fixture results and resource scope.

Technical background: Stripe 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