Key codes starting with
<80><fd> are called KS_EXTRA keycodes and they normally encode keystrokes or events that are not typically supported by a terminal (or have not traditionally been supported by terminals in the past.)
These include shifted Function keys, Control arrows and then even events such as mouse click, scroll wheel, etc.
I believe that
a is the same as
<61> in hex, or 97 in decimal) used to be a "Focus Gained" event. Here it gets a bit complicated, because it seems previous versions of Vim (7.4) simply listed the KS_EXTRA events in an ordered enum and let the compiler assign them actual numbers. At some point, one of the entries was removed and all entries that followed were shifted... So it seems KE_FOCUSGAINED is now 98 (which would match
<80><fd>b), but 97 (
<80><fd>a) is still listed as KE_NOP, presumably for compatibility with recordings from previous versions of Vim.
Why are you seeing focus events on your environment? I'm not sure I can tell for certain... These events are primarily used by GVim where you'll get these kinds of events since you'll be interacting with the windowing system directly. I believe some terminals make it possible for applications running on them to detect whether focus was gained or lost and that Vim is somehow receiving these events. It's also possible that the
<Esc> key is somehow triggering this, or that this is a workaround on
<Esc> to detect whether this is actually an
<Esc> key press versus the beginning of an escape sequence... I have witnessed these
<80><fd>a events before (running on a terminal on Linux), so I know that they do happen just as you described and not only on WSL.
For reference, see
keylog.rb from Vimgolf which parses Vim keystroke recordings into human readable forms (the specific sequence
<80><fd>a was source of a longstanding issue finally released in Vimgolf client 0.4.9).
See also the KE_NOP entry in
keymap.h in Vim 8.2 source code.