In the meantime, I tried to understand the behavior more deeply and asked ChatGPT to walk through the migration logic. As far as I can tell, when no translation overrides exist, the migration doesn’t determine a locale and therefore falls back to English. That explains why the English texts were changed.
What I still don’t understand is why the forum’s default locale wasn’t used as a fallback, or why the migration didn’t consistently migrate either all locales or none. From a user-experience perspective, it would seem more consistent if all users saw either the new welcome banner text or the old search banner text, regardless of their interface language.
As it stands, German-speaking users see the default welcome banner text, while English-speaking users see the default search banner text, because that was migrated to the welcome banner. That result still doesn’t make sense to me, even after spending some time digging into it.