It happens when using the !(http://something.com/image.jpg) Markdown convention in a code block and then using the same code outside of the code block to actually display the image. It happens after about 5 minutes once Discourse downloads the hotlinked image.
For the record, I faced the issue when trying to illustrate this:
To circumvent the problem, I used հ (armenian small letter ho) instead of h (latin small letter h) in the https part. Since they are recognized as different characters, it doesn’t trigger the URL replacement.