When Edebug is entered and actually reads commands from the user, it saves (and later restores) these additional data:
last-command, this-command, last-command-event, last-input-event, last-event-frame, last-nonmenu-event, and track-mouse. Commands in Edebug do not affect these variables outside of Edebug. Executing commands within Edebug can change the key sequence that would be returned by this-command-keys, and there is no way to reset the key sequence from Lisp.
Edebug cannot save and restore the value of unread-command-events. Entering Edebug while this variable has a nontrivial value can interfere with execution of the program you are debugging.
command-history. In rare cases this can alter execution. standard-output and standard-input are bound to nil by the recursive-edit, but Edebug temporarily restores them during evaluations. defining-kbd-macro is bound to edebug-continue-kbd-macro.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Edebug-Recursive-Edit.html