This may be a change from older versions of Discourse, but I don’t think it’s a bug. Finding the allowed interpolation keys for email templates has always been tricky. We’ve got a topic now that explains what keys can be used: Interpolation Keys for Customizing Text and Email Templates. The allowed keys are listed here: discourse/app/models/translation_override.rb at main · discourse/discourse · GitHub.
{base_url}
is not in that list.
Since you already know your site’s base URL, I’m not sure the key is needed. Instead of %{base_url}%{url}
, just use your site’s URL. For example https://forum.example.com%{url}