The shell (and this switcher within it) is a persistent parent, so the
switcher's computed link only ever ran once at bootstrap against the
initial location.pathname. Navigating client-side afterward left it
frozen on that first route (typically /login), so switching language
from any other page sent you to the stale /en/login instead of the
current route — indistinguishable from being logged out, though the
session was untouched. Recompute on every completed Router navigation,
same toSignal(router.events...) idiom already used by the breadcrumb
in site-header.component.ts.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>