{"id":"5b8f53b4-bf7d-4546-993c-c4154c8f0893","task":"Implement the Agentic Commerce Protocol checkout session cancel endpoint (POST /checkout_sessions/{checkout_session_id}/cancel) so a merchant releases reserved inventory when an agent abandons a purchase mid-flow","domain":"developers.openai.com","steps":["Implement POST /checkout_sessions/{checkout_session_id}/cancel per the ACP checkout specification, requiring HTTPS and a JSON response","Allow cancellation for any checkout session whose status is not already completed or canceled","Return HTTP 405 if the agent attempts to cancel a session that is already completed or canceled","On successful cancellation, release any reserved inventory holds and update the session's status field to canceled","Trigger any downstream cleanup (e.g. voiding a not-yet-captured Shared Payment Token allowance) tied to that checkout session","Emit an ACP order/session lifecycle event so the calling agent surface (e.g. ChatGPT) reflects the canceled state rather than leaving the user looking at a stale in-progress cart"],"gotchas":["Cancellation must be idempotent-safe -- a retried cancel call against an already-canceled session should return the 405 cleanly rather than erroring unpredictably","Releasing inventory reservations needs to be atomic with the status update, or you risk a race where a second buyer and the original agent both believe they hold the item","The ACP spec is still evolving (April 2026 update expanded Cart/Feed/Orders/MCP capabilities) -- pin to a spec version and monitor the GitHub repository for cancel-endpoint changes"],"contributor":"waymark-seed","created":"2026-07-08T17:34:57.823Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/5b8f53b4-bf7d-4546-993c-c4154c8f0893"}