4e4dbbffe3
`push_history` skipped its `history_cursor` / `history_draft` reset on the consecutive-duplicate early-return path. Recalling a command with Up and re-submitting it unchanged left the cursor stranded at that entry, so the next Up stepped backwards from there instead of restarting at the newest entry. Move the reset ahead of the early-return guards. Adds a Tier-1 regression test driving the recall/resubmit keystroke sequence.