Phase 1: Add `/gitlab incident close` Slack slash command

Problem to solve

Managing incidents via Slack should offer a consistent experience, which means users should expect to open & close incidents using the incident keyword in Slack slash commands.

We want all incident-based slash commands in Slack to require users to remember as little as possible, so users should be able to close a recent incident without remembering the id or project alias.

Proposal

  1. Add a /gitlab incident close Slack slash command
  2. When a user uses the command, the following should happen:
    • user is presented with an "ephemeral" message containing the last 5 incidents created in projects the Slack user has access to, with buttons to close the associated incident
    • user is presented with links to the incident lists for each of the other projects in case their incident isn't in the last 5
    • if the user doesn't have permission to view/close any incidents, they should see an error message? [DO WE NEED AN EMPTY STATE?]
  3. When the user selects a 'Close incident' button, the following should happen:
    • the associated incident is closed
    • the incident-list message should be replaced with a confirmation/error message
      • the confirmation message should indicate the incident was closed successfully, with a link to the incident
      • if an error occurs during closing, the user should see an informative explanation & link to documentation
Slash command User prompt Confirmation/failure messages
Incident_close_slash_command Incident_selection_notification_-_close failure_messages

Figma

Edited by Amelia Bauerly