GitLab for Slack app notifications: UX for private Slack channels
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Work on this issue](https://contributors.gitlab.com/manage-issue?action=work&projectId=278964&issueIid=383894)
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=383894)
</details>
<!--IssueSummary end-->
This issue came out of this discussion https://gitlab.com/gitlab-org/gitlab/-/issues/373321#note_1178388844.
## Problem
Our GitLab Slack app needs to be "invited" or added to a private Slack channel first before we are able to send a notification to the channel. Public channels we can post to without the app being added.
Slack provides a few ways for an app to be added to a channel, and the UX for all of them is fairly good:
* `/invite @GitLab`.
* `/add` and then choose our GitLab app.
* Mention them: `@GitLab` and then choose `Invite Them`.
It's a one-off requirement for private channels only.
We need to make people aware of this limitation so they don't experience the integration as being broken.
## Proposal
1. Update the GitLab for Slack app integrations form page (`https://gitlab.com/<PROJECT>/-/settings/integrations/gitlab_slack_application/edit`) to display an In-page info alert that describes the need to invite the GitLab bot to private channels in order to receive notifications.
1. Update the App Home to include the same information
Note Docs already include this information https://gitlab.com/gitlab-org/gitlab/-/merge_requests/104639.
## Design source
- :pencil2: [Figma](https://www.figma.com/file/y9OREoSeans8zrVA4ExK1y/UX-for-private-channels-%23383894?node-id=1907%3A78&t=NOoiBan7MtcQCtrl-1)
- :computer: [Slack Block kit](https://app.slack.com/block-kit-builder/T0187G888CD#%7B%22type%22:%22home%22,%22blocks%22:%5B%7B%22type%22:%22header%22,%22text%22:%7B%22type%22:%22plain_text%22,%22text%22:%22:sparkles:%20%20Welcome%20to%20GitLab%20for%20Slack!%22%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22GitLab%20for%20Slack%20now%20supports%20channel-based%20notifications.%20Let%20your%20team%20know%20when%20new%20issues%20are%20created%20or%20new%20CI/CD%20jobs%20are%20run.%3Chttps://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html%7CLearn%20more%3E.%22,%22verbatim%22:false%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22\*Channel%20notifications\*%20%22%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22To%20start%20using%20notifications,%20%3Chttps://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#configuration%7Cconfigure%20notifications%3E%20in%20your%20GitLab%20project%20settings.%22,%22verbatim%22:false%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22:lock:%20For%20private%20channels,%20you%20must%20invite%20the%20GitLab%20for%20Slack%20app%20bot%20to%20your%20channel%20by%20mentioning%20%60@GitLab%60%20in%20the%20channel.%20%3Chttps://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#receive-notifications-to-a-private-channel%7CLearn%20more%3E.%20%22,%22verbatim%22:false%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22\*Slash%20commands\*%20%22%7D%7D,%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22Control%20GitLab%20from%20Slack%20with%20%3Chttps://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#usage%7Cslash%20commands%3E.%20%5Cn%20For%20a%20list%20of%20available%20commands,%20enter%20%60/gitlab%20help%60.%20%5Cn%5Cn%20To%20start%20using%20slash%20commands,%20connect%20your%20GitLab%20account.%22,%22verbatim%22:false%7D%7D,%7B%22type%22:%22actions%22,%22elements%22:%5B%7B%22type%22:%22button%22,%22text%22:%7B%22type%22:%22plain_text%22,%22text%22:%22Connect%20your%20GitLab%20account%22,%22emoji%22:true%7D,%22style%22:%22primary%22,%22value%22:%22click_me_123%22,%22action_id%22:%22actionId-0%22%7D%5D%7D%5D%7D)
### Availability & Testing
<!-- This section needs to be retained and filled in during the workflow planning breakdown phase of this feature proposal, if not earlier.
What risks does this change pose to our availability? How might it affect the quality of the product? What additional test coverage or changes to tests will be needed? Will it require cross-browser testing?
Please list the test areas (unit, integration and end-to-end) that needs to be added or updated to ensure that this feature will work as intended. Please use the list below as guidance.
* Unit test changes
* Integration test changes
* End-to-end test change
See the Quality Engineering quad planning and test planning processes and reach out to your counterpart Software Engineer in Test for assistance.
Quad Planning: https://about.gitlab.com/handbook/engineering/quality/quality-engineering/quad-planning
Test Planning: https://about.gitlab.com/handbook/engineering/quality/quality-engineering/test-engineering/#test-planning -->
issue