GitLab for Slack App - New projects don't automatically inherit from group-level, or instance-level settings
What does this MR do and why?
This MR fixes a bug where new projects don't automatically inherit GitLab for Slack App settings from their parent group or instance-level configurations, as reported in issue #461056.
The Problem
When GitLab for Slack App is configured at the group level:
- Existing projects correctly inherit and use the Slack integration
- New projects appear to inherit the settings in the UI but fail to send notifications
- Error logs show:
undefined method 'bot_access_token' for nil:NilClass - Projects show "Install GitLab for Slack app..." instead of "Reinstall GitLab for Slack app..."
The Solution
This MR addresses the inheritance issue by:
Fixing integration duplication** - Ensures SlackIntegration and related workspace models are properly duplicated when creating new projects
How to set up and validate locally
Pipeline Validation: Since this involves integration inheritance logic with comprehensive test coverage, a green pipeline validates the fix.
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Related to #461056 (closed)