emacs-28.2 -Q -nw --color=no
s t o n k s M-$ 1
At this point, I expect to see the word "stonks" replaced with
"stocks", but it is instead replaced with "stockstonks".
The problem seems to be in ispell-highlight-spelling-error-generic, a
20th-century kludge from before face support for ttys was added in
emacs-21 in 2001. It's been unnecessary since then, and it looks like
it's been breaking ispell on colorless ttys since at least emacs-23.
Changing "(display-color-p)" to "t" in ispell-highlight-spelling-error
suffices to fix the bug.