Does Double-Tapping the Form Create Two Orders?
Added 2026-11-05
Front-end guards are surface; the server has to survive duplicate requests.
This is my submit or checkout path: [flow]. Check the duplicate-submit risk: 1) list the paths by which a user can trigger it twice — double tap, refresh, back-and-resubmit, network retry, two devices; 2) separate what debounce and disabling the button stop from what they do not; 3) give server-side idempotency options — idempotency key, unique constraint, state-machine check — and where each applies; 4) verify that a duplicate request cannot run inventory, payment, and notifications twice; 5) give the tests that must be added; 6) point out what is guarded only on the happy path. Do not stop at "add a loading state".
Site original
Chinese original
Replace these placeholders 1
Swap the bracketed parts for your own details before sending.
[flow]
How to use
The test for duplication is whether the same request arriving twice produces two outcomes.
Try tweaking it
- Have it restate requirements and constraints before writing code.
- Ask for the smallest change plus a rollback path, not a full-file rewrite.
What you should get
- A minimal, runnable change with copy-ready code
- Impact list: which files and call sites must follow
Common mistakes
- Asking it to touch ten files at once, then losing track of what broke what.
- Pasting only the error, with no code or version, and getting an unfixable answer.
How to check the output
- The change runs, can be rolled back, and touches nothing unrelated.
- Edge cases (empty, oversized, concurrent) are covered or explained.
Where it works
- Good for: having it restate requirements and constraints, then propose the smallest runnable change.
- Watch out: include versions and a minimal reproduction with the error, or the fix may look plausible but not fit.