I’m experiencing a synchronization challenge with UI extensions in a highly customized checkout process, specifically related to concurrent cart line attribute modifications.
Scenario Details:
- Checkout Extension 1 (init, in header): Adds 5 attributes to each cart line
- Checkout Extension 2 (shipping options): Adds 1 attribute to each cart line
Specific Problem:
- In “three-step layout”, the process works smoothly because initialization happens sequentially
- In “onepage layout”, extensions are instantiated simultaneously, causing concurrency conflicts
Key Questions:
- Is there a reliable method to detect ongoing cart modification processes?
- Our current retry mechanism based on “negotiation was stale” error is inconsistent. Are there more robust approaches?
Has anyone encountered similar synchronization challenges in Shopify checkout extensions? What strategies or best practices have you found effective for managing concurrent cart updates?
Appreciate any insights or guidance.