Deprecate Slack Slash Commands
### Deprecation Summary
The [Slack slash commands integration](https://docs.gitlab.com/user/project/integrations/slack_slash_commands/) allows users to run common GitLab operations (such as creating issues, triggering CI/CD jobs, and viewing project information) directly from Slack using slash commands.
This integration is configured at the project level and is only available on GitLab Self-Managed and GitLab Dedicated instances.
Users will no longer be able to configure or use the Slack slash commands integration after it is removed in GitLab 19.0.
However, all [slash command functionality](https://docs.gitlab.com/user/project/integrations/gitlab_slack_application/#slash-commands) remains available through the [GitLab for Slack app](https://docs.gitlab.com/user/project/integrations/gitlab_slack_application/), which provides a more secure integration method with the same capabilities.
#### Documentation
- [Deprecation notice](https://docs.gitlab.com/update/deprecations/#slack-slash-commands)
- Migration steps: see [what to do instead](#what-to-do-instead)
#### Am I impacted?
Your workflow may be impacted if you meet all the criteria below:
1. You're on GitLab self-managed or GitLab Dedicated; AND
1. Your instance administrator has configured the [Slack slash commands integration](https://docs.gitlab.com/user/project/integrations/slack_slash_commands/#configure-the-integration); AND
1. You actively rely on [slash commands on Slack](https://docs.gitlab.com/user/project/integrations/gitlab_slack_application/#slash-commands).
If this is the case for you, see the section below on what to do instead.
#### What to do instead
Install the [GitLab for Slack app](https://docs.gitlab.com/user/project/integrations/gitlab_slack_application/), which provides the same [slash commands functionality](https://docs.gitlab.com/user/project/integrations/gitlab_slack_application/#slash-commands).
Instance administrators can follow the [installation instructions](https://docs.gitlab.com/administration/settings/slack_app/) to set up the GitLab for Slack app.
The setup process takes approximately 20 minutes:
- 10 minutes to create the Slack app
- 10 minutes to complete the configuration in GitLab
Once installed, existing Slack automations that rely on slash commands should continue to work as before.
Next, disable the old integration at `gitlab.example.com/admin/application_settings/integrations/slack_slash_commands/edit`: under "Enable integration" uncheck the `Active` checkbox and click `Save changes`.
#### Product Usage
See https://gitlab.com/gitlab-com/Product/-/work_items/14352+
### Breaking Change?
Yes
### Affected Customers
Who is affected by this deprecation: GitLab.com users, Self-managed users, or Dedicated users? (choose all that apply)
- [ ] GitLab.com
- [x] Self-managed
- [ ] Dedicated
What pricing tiers are impacted?
- [x] GitLab Free
- [x] GitLab Premium
- [x] GitLab Ultimate
### Deprecation Milestone
This deprecation will be announced in milestone: %"18.7"
### Planned Removal Milestone
The feature / functionality will be removed in milestone: %"19.0"
### Links
<!--
Add links to any relevant documentation or code that will provide additional details or clarity regarding the planned change.
This issue is the main SSOT for the deprecations and removals process. Be sure to link all
issues and MRs related to this deprecation/removal to this issue. This can include removal
issues that were created ahead of time, and the MRs doing the actual deprecation/removal work.
-->
### Checklists
#### Timeline
#### Rollout Plan
N/A: this does not affect gitlab.com.
#### Communication Plan
- DRI Product Manager: @thiagocsf
An internal slack post and a release post are not sufficient notification for our customers or internal stakeholders. Plan to communicate proactively and directly with affected customers and the internal stakeholders supporting them.
**Internal Communication Plan**
This will have been documented in your [breaking change request](https://gitlab.com/gitlab-com/Product/-/issues/new?issuable_template=Breaking-Change-Exception). You can use this checklist to track completion of these items.
- [ ] [Support Preparedness issue](https://gitlab.com/gitlab-com/support/support-team-meta/-/blob/master/.gitlab/issue_templates/Support%20Preparedness.md?ref_type=heads) created
- [ ] Guidance for Engineering, Product, Security, Customer Success, and Sales created
**External Communication Plan**
This will have been documented in your [breaking change request](https://gitlab.com/gitlab-com/Product/-/issues/new?issuable_template=Breaking-Change-Exception). You can use this checklist to track completion of these items.
- [x] Customer announcement plan (timeline for notifications, audience, channels, etc)
- [ ] Ensure you have approvals from legal and corp comms for any communication being sent directly to customers.
- [x] As soon as possible, but no later than the third milestone preceding the major release, ensure that the following are complete (for example, given the following release schedule: `17.8, 17.9, 17.10, 17.11, 18.0` – `17.9` is the third milestone preceding the major release).
- [x] A [deprecation announcement entry](https://about.gitlab.com/handbook/marketing/blog/release-posts/#creating-the-announcement) has been created so the deprecation will appear in release posts and on the [general deprecation page](https://docs.gitlab.com/ee/update/deprecations).
- [x] Documentation has been updated to mark the feature as [deprecated](https://docs.gitlab.com/development/documentation/versions/#deprecations-and-removals). https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230038
- [x] On the major milestone:
- [x] The deprecated item has been removed. https://gitlab.com/gitlab-org/gitlab/-/merge_requests/230038+
- [x] If the removal of the deprecated item is a [breaking change](https://docs.gitlab.com/update/terminology/#breaking-change), the merge request is labeled ~"breaking change".
- [ ] Document the migration plan for users, clearly outlining the actions they need to take to mitigate the impact of the breaking change.
- [ ] [Add link](here)
#### Development
- DRI Engineers: `@engineer(s)`
- DRI Engineering Manager: `@EM`
- [x] Measure usage of the impacted product feature
- See https://gitlab.com/gitlab-com/Product/-/work_items/14352#how-many-users-and-customers-are-impacted-what-tierarr-of-customer
- [ ] Create tooling for customers to manually migrate their data or workflows
- [ ] _add issue link_
- [ ] Build mechanism for users to manually enable the breaking change ahead of time
- [ ] _add issue link_
#### Stakeholder Mentions
- [ ] Product Designer `@ProductDesigner`
- [x] Tech Writer @eread
- [ ] Software Engineering in Test `@SET`
- [ ] Any other stable counterparts based on the [product categories](https://handbook.gitlab.com/handbook/product/categories/):
- [ ] Add Sales/CS counterpart or mention `@timtams`
- [x] Support @mlockhart
- [ ] Add Marketing counterpart or mention `@martin_klaus`
- [ ] Add Corp comms if direct customer comms are needed `@jmalleo`
- [x] Product Security @ameyadarshan
- [ ] Mention (in internal note) Customer Success Managers / Acount Managers / Solutions Architects for impacted customers
#### Labels
<!-- Populate the Section, Group, and Category -->
- [x] This issue is labeled ~deprecation, and with the relevant `~devops::`, `~group::`, and `~Category:` labels.
- [x] This issue is labeled ~"breaking change" if the removal of the deprecated item will be a [breaking change](https://docs.gitlab.com/update/terminology/#breaking-change).
<!-- Label reminders - you should have one of each of the following labels.
Use the following resources to find the appropriate labels:
- https://gitlab.com/gitlab-org/gitlab/-/labels
- https://about.gitlab.com/handbook/product/categories/features/
-->
<!-- Identifies that this Issue is related to deprecating a feature -->
### References
- [Deprecations, removals, and breaking changes](https://handbook.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-removals-and-breaking-changes)
- [Deprecation guidelines](https://docs.gitlab.com/ee/development/deprecation_guidelines/)
- [Deprecations and removals doc styleguide](https://docs.gitlab.com/ee/development/documentation/styleguide/deprecations_and_removals)
- [REST API Deprecations](https://docs.gitlab.com/development/documentation/restful_api_styleguide/#deprecations) and [REST API breaking changes](https://docs.gitlab.com/development/api_styleguide/#breaking-changes).
- [GraphQL Deprecations](https://docs.gitlab.com/development/api_graphql_styleguide/#deprecating-schema-items) and [GraphQL API breaking changes](https://docs.gitlab.com/development/api_graphql_styleguide/#breaking-changes).
- [GitLab release and maintenance policy](https://docs.gitlab.com/policy/maintenance/)
- Videos 📺
- [How to deprecate and remove features in GitLab releases](https://youtu.be/9gy7tg94j7s)
- [Review of GitLab deprecations and removals policy & Runner team deprecations and removals process](https://youtu.be/ehT1xBajCRI)
issue