Aglet

Investigate webhook acknowledgement ordering

Investigation should identify whether success precedes durable receipt and what happens when the process stops at each boundary. Build paired crash-before-receipt, receipt-before-crash, completed, slow, and duplicate cases. Follow the same event identity through response, recovery, and effect. Use an explicit restart point.

Build a useful investigation brief

  1. Build interruption fixtures

    Create cases for crash before receipt, receipt then crash, durable handoff then slow processing, completed processing, and duplicate after receipt. Record expected response, receipt, recovery, and effect before execution. Repeat for each receiver revision.

  2. Trace response to state

    Capture arrival, response status and time, validation, durable receipt, queue or worker handoff, process interruption, downstream state, and retry identity. Compare working and failing cases at the first point where recovery differs.

  3. Vary one ordering input

    Change only response timing, receipt placement, handoff state, interruption point, receiver revision, or retry condition. Compare durable recovery and effect count. If sender retry rules are not controlled, keep them as an explicit evidence limit.

What to carry forward

The brief is ready when interruption fixtures identify the first ordering boundary and show receipt, recovery, and effect consequences. Recommend the smallest safe handoff or evidence request. Leave sender retry behavior unresolved when local tests cannot observe it.

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