The onKeyDown stop/switch paths only cleared memRunningActionId/EntryId after a successful stopTimer call. If the tracked Notion entry was already gone (archived/deleted/edited outside the plugin), stopTimer threw and the stale ID was never cleared -- every subsequent keypress retried the same doomed stop call, showed a warning triangle, and the deck got permanently stuck (unable to unselect the stuck button or start any new timer). checkElapsed already handled this correctly by clearing state unconditionally; onKeyDown now does the same: stopTimer failures are logged but non-fatal, and local state clears regardless.
64 B
64 B