keybinding migration script: add run-once check