2 min lesson
Accept the completion that matches, reject the one that drifts
Complete "Accept the completion that matches, reject the one that drifts". Check the final state against the lesson before you move on.
Check your understanding
Complete this walkthrough: Tab — accept the completion that matches, reject the one that drifts.
Outcome: Finish with the result shown in the final walkthrough step.
Tab — accept the completion that matches, reject the one that drifts
Editing in flow with Tab suggestions
5 steps · ~3 min
Read the ghost → Tab to accept → Tab again → Decide on the drift → Verify in SCM
Read this walkthrough as text
Tab — accept the completion that matches, reject the one that drifts
Editing in flow with Tab suggestions
DoRename the prop to
matchCount in the interface — one hand edit, so Cursor has concrete local intent.SeeA gray ghost line appears under the function signature: the same rename, proposed at the next occurrence.
DoPress Tab to accept, then Tab again at the next occurrence.
SeeThe rename lands everywhere you meant it, and the ghost chains from edit point to edit point — your hands never leave the keyboard.
Type
Tab now proposes renaming the CSS class `results-count` too — a stylesheet contract your rename never included.DoReject it and keep typing; that suggestion changes intent instead of preserving it.
SayWhy keep two and drop one?
SeeYou can name the reason: matched intent vs. changed intent. And if you ever misread one, ⌘Z takes it back — Tab mistakes are cheap when you catch them in review.
Simulated Cursor 3.12 (macOS, light) — beta educational reconstruction, not the real product.
Learn more
Optional practice
Practice: Accept the completion that matches, reject the one that drifts
QYou've applied it. What actually proves the work is done, not just a plausible answer?