2 min lesson
Cursor follows a debugging loop that produces a small verified fix
Put this idea into your own words: "The job: Cursor follows a debugging loop that produces a small verified fix."
Step 1 of 2
The job: Cursor follows a debugging loop that produces a small verified fix. Start with this check: The reproduction fails before the fix and passes after. Keep it small enough to check the result yourself instead of taking the summary on trust.
Debug Mode: prove it before you fix it
0:33 · narratedRead this demo as text
- Debug Mode, not a guess-and-patch Agent run. Send the bug and make it list hypotheses before it touches a file.
- See that? Probes first. Reproduction steps wait for you. No silent rewrite while you are still blind.
- Hit Proceed after the repro. Narrow fix in the file searchFilter.ts, same script again — matchesExpected true. That is the loop.
Practice next: Now do the module workflow: reproduce first, demand hypotheses before edits, and clean up instrumentation.
Simulated Cursor 3.12 (macOS, light) — beta educational reconstruction, not the real product.
Learn more
Full explanation
Debug Mode + terminal evidence
Debug Mode — reproduce the $0.00 total before touching code
Debug Mode + terminal evidence
SayOrder #1042 renders a $0.00 total on /orders whenever a coupon is applied. Reproduce it in Debug Mode before editing anything.
DoRun the app and open /orders/1042, then read the total off the running page.
SeeThe total shows $0.00, so the failure is confirmed against a running build, not just described.
SayBefore any edit, give me two or three hypotheses for why the coupon total comes out as $0.00, ranked, with the file each would live in.
SeeAgent proposes the discount being subtracted twice, or the coupon amount arriving as a currency-formatted string like "$10.00" that turns the subtraction into NaN, and points at the totals helper. No code has changed yet.
Type
console.log("coupon", typeof coupon.amount, coupon.amount, "subtotal", subtotal)DoTest the top hypothesis with one temporary log at the discount calculation, nothing else.
SeeThe terminal prints coupon string "$10.00" subtotal 42, so subtotal - coupon.amount is NaN and the total falls back to $0.00 on render. The instrumentation names the cause instead of guessing at it.
DoParse the numeric amount out of the coupon string where it is read, stripping the currency symbol before subtracting, and leave the rest of the helper alone.
DoDelete the temporary console.log and re-run the exact reproduction from the first step.
See/orders/1042 now shows the discounted total, and the final diff is the single parsing line with no leftover logging.
Learn more
Optional practice
Cursor follows a debugging loop that produces a small verified fix
QYou've applied it. What actually proves the work is done, not just a plausible answer?