Skip to content

Conversation

@vnaskos-sonar
Copy link
Contributor

Part of

@hashicorp-vault-sonar-prod hashicorp-vault-sonar-prod bot changed the title Vn/smart notification listener SLVS-2776 Vn/smart notification listener Dec 12, 2025
@hashicorp-vault-sonar-prod
Copy link

hashicorp-vault-sonar-prod bot commented Dec 12, 2025

SLVS-2776
SLVS-2776
SLVS-2776

@vnaskos-sonar vnaskos-sonar changed the title SLVS-2776 Vn/smart notification listener SLVS-2762 SLVS-2767 SLVS-2768 Migrate notifications to use the SlCore smart notifications Dec 12, 2025
@sonarqubecloud
Copy link

SonarQube reviewer guide

Important

We are currently testing different models for AI Summary.
Please give us your feedback by filling this form.

Model A:

Summary: Replaces SonarQube notification polling with SLCore-based smart notification system using event-driven architecture.

Review Focus: The refactoring removes the old timer-based notification polling service and introduces a new event-driven pattern. Key areas to review: (1) The new SmartNotificationService event propagation mechanism, (2) Integration between SLCore listener and the notification UI ViewModel, (3) Removal of notification persistence logic (NotificationData serialization) - ensure this won't cause issues for existing users, (4) Changes to notification model properties (Message→Text, Link URI→string).

Start review at: src/Integration/Notifications/NotificationIndicatorViewModel.cs. This is the central component that bridges the new smart notification service with the existing UI, containing the core behavioral changes and event handling logic.

Model B:

Summary: Refactor notification system to use a new smart notification service architecture, replacing the legacy SonarQube notification polling mechanism with an event-driven model via SLCore integration.

Review Focus:

  • The migration from SonarQubeNotificationService (polling-based) to SmartNotificationService (event-driven) is a significant architectural change. Pay close attention to how NotificationIndicatorViewModel now subscribes to ISmartNotificationService.NotificationReceived events instead of managing notification fetching directly.
  • Verify that SmartNotificationListener correctly bridges SLCore notification callbacks to the new service, ensuring proper data transformation and timestamp handling.
  • Check that binding configuration changes properly update notification settings (IsIconVisible, AreNotificationsEnabled) in the view model.

Start review at: src/Core/SmartNotification/SmartNotificationService.cs. This is the new core service that other components depend on. Understanding its simple event-raising mechanism is essential before reviewing how NotificationIndicatorViewModel and SmartNotificationListener integrate with it.

Quality Gate Failed Quality Gate failed

Failed conditions
2 New issues

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant