Build a useful investigation brief
Build identity fixtures
Create a stable event ID, missing ID, renamed field, delivery ID only, two similar events with different IDs, and two deliveries of one event. Record expected deduplication and effect before execution.
Trace the identity key
Capture raw headers and safe body fields, parser output, selected key, claim record, route, handler, and side effect. Compare first divergence between stable and missing cases. Keep body contents bounded and redacted.
Challenge the fallback
Vary only field name, schema version, header, resource key, payload ordering, or parser revision. Compare whether events remain distinct. If no stable identity exists, document the missing contract and stop before choosing a hash.
What to carry forward
The investigation is ready when stable and missing cases show identity extraction, claim, routing, and effect transitions. Deliver a narrow parser or contract change. Keep deduplication unresolved for events lacking a supported stable key. Show whether the available key identifies the event, an individual delivery attempt, or only the affected resource before recommending its use.
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