Conversation
Lock each execution before details loading and confirmation so repeated clicks cannot submit duplicate or conflicting purchase actions. Invalidate completed action caches and ignore older history responses while preserving later authoritative actions and dismissal focus. Closes #249
Contributor
|
Warning Review limit reached
This review includes 7 billable files and costs up to $1.75.
Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing. Or wait 7 minutes for your next included review. View limit detailsLimit details: You’ve used the included review currently available. Your 75 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Review configuration: ⚙️ Run configurationConfiguration used: Repository: LeanerCloud/cloud-commitments-platform/.coderabbit.yaml Review profile: CHILL Plan: Essentials Run ID: 📒 Files selected for processing (7)
Comment |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
History actions could open multiple confirmations and submit duplicate requests, including through a second view of the same recommendation. A successful action followed by a failed refresh could also expose stale actions again.
Acquire per-ID ownership before the first asynchronous operation for Approve, Retry, Revoke, Sell, Cancel and Marketplace Cancel. Invalidate the completed ID in both history caches and ignore reads started before the mutation. Dismissal and failed requests release ownership and restore focus; later legitimate actions remain available.
Closes #249
Independent local review approved exact commit a30aca9 with no actionable findings. Fresh verification passed 78 focused Jest tests and 10 production-browser tests under the corrected persistent resource lock. Committed source and production source-map identity match. Parent-code and guard-removal probes reproduce duplicate requests and stale action recovery; dismissal, retry, focus and later-action positive controls pass.
Verification exercises the production frontend with synthetic HTTP responses. No provider purchases were made. The larger diff remains one concern: six action handlers and the necessary regression and positive-control coverage.