Use of first URL in post not always the best option for crossposting

Here is my usecase. I just posted a short update on my blog in which I refer to an earlier post from today. I crossposted this to my Mastodon account.
On Mastodon, it posts the update in full. It doesn’t add the permalink to the update, but the first URL it finds in my update. Which is a link to an earlier post. This doesn’t make sense to me.

I am not sure if this is how Mastodon renders the crosspost from Microblog or it is in the way Microblog sends the crosspost?

Crossposting of a short post does not link back to the canonical post, it tries to fully post the content as though it’s native to that platform. It’s basically assuming you copy and pasted the text into Mastodon and hit post, as close as possible. So the first link it finds is the one that it thinks you’re adding to a post the way you would with a native post. It’s mostly a Mastodon thing, though Micro.blog could tweak it system wide, I think it broadly matches the expectations people have. Mastodon doesn’t allow for two links, although because activity pub supports HTML, your ActivityPub compatible user name would show that post with two links, in line, linked to from the correct text.

I wish Mastodon supports its posts having the same content as an activity pub only source. But even what “mastodon supports with its posts” differs by server.

I find that automated cross-posting to Mastodon works well if the post is under 500 characters and contains one link or no links. Otherwise, I find it’s best to just manually post to Mastodon, cutting and pasting text from my Mac (like a caveman).

This is frustrating, but I don’t see this as a limitation of micro.blog. It’s just that Mastodon and micro.blog are different platforms with different requirements.

Hopefully, one day we’ll get to write-once-read-anywhere, but we’re not there yet.