Make done observable.
Finish the agreed task. Give the next idea its own starting point.
“One more improvement” is easy to suggest and hard to bound. Define completion before the cycle starts, then return to that definition at the end. The goal is a useful, reviewable result with a clear account of what you verified.
Meet the actual requirement.
Replay the acceptance condition and confirm the result. Check the nearby behavior you agreed to preserve. If the requirement changed during investigation, make the final version explicit so a reviewer does not have to infer it from the code.
Close the known gaps.
Read the current diff and verification output. Resolve demonstrated failures that belong to the task. Mark checks that could not run and decide whether those gaps prevent completion. An unchecked box is a question about evidence, not a reason to invent more work.
Give new work a new brief.
Separate future improvements from defects in the agreed result. Record a useful follow-up with a reason and a starting point. Then stop editing this task once its finish condition is satisfied.
Complete: required behavior demonstrated; diff reviewed.
Follow-up: evaluate whether validation should be shared
with the import flow. That needs its own requirement.Before moving on