It appears that if an emoji shortcode is written in one place with spaces around like this :hastodon: then it's possible to also write it in the middle of a word like this w:hastodon:at, indicating that detecting and inserting emoji find shortcodes in two different ways in Mastodon.
I'd call this a bug #MastoDev