Mirrors the dominant e2e pattern (FunctionsBase/MigrationsBase): the shared health-queue assertions live in a NotificationsBase trait, with thin per-side overlays for ProjectCustom + SideServer and ProjectCustom + SideConsole.