Check whether the outcome improved
Define identity outcomes
Write expected extraction, deduplication, routing, acknowledgement, review, and effect for stable ID, missing ID, renamed field, delivery-only header, and distinct event cases. State which cases must stop. Keep event and delivery IDs distinct.
Run repeated and distinct events
Process one stable event twice, two events for one resource, and a missing-ID delivery. Confirm stable retries become safe no-ops while distinct IDs remain processable when the contract allows. Keep event and delivery IDs distinct in the result.
Check schema and restart
Repeat renamed and delivery-only cases after parser update and process restart. Verify identity does not depend on memory, key ordering, or a mutable resource key. Retain safe correlation for every review state.
What to carry forward
Accept when stable event IDs deduplicate retries, distinct events remain distinct, and missing identity stops safely. Keep sender schema coverage partial where unobserved. Record extraction matrix, claim store, parser revision, and effect counts. Keep unknown events in review. Keep unknown events in review instead of inventing a key.
Technical background: Shopify 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