Skip to content

feat(ui): adds more case resolution reasons with descriptions #6066

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

whitdog47
Copy link
Contributor

This PR introduces a comprehensive set of case resolution reasons with detailed descriptions and implements tooltips across the web interface and Slack integration to help users understand each resolution option.

Backend Changes

  • Enhanced CaseResolutionReason enum in src/dispatch/case/enums.py with 10 comprehensive resolution reasons:
    • Benign, Contained, Escalated, False Positive, Information Gathered, Insufficient Information, Mitigated, Operational Error, Policy Violation, User Acknowledged
  • Added CaseResolutionReasonDescription enum with detailed descriptions for each resolution reason
  • Updated Slack integration in src/dispatch/plugins/dispatch_slack/case/interactive.py to use the new enum-based descriptions

Frontend Changes

  • Updated Vuex store in src/dispatch/static/dispatch/src/case/store.js with new resolution reasons and descriptions
  • Description tooltips in src/dispatch/static/dispatch/src/case/DetailsTab.vue and src/dispatch/static/dispatch/src/case/ClosedDialog.vue show the description of the resolution reason on hover
  • Refactored CaseResolutionSearchPopover.vue to use centralized store data instead of hardcoded values

Slack Integration

  • Added interactive description blocks in Slack resolve case modal that update dynamically when users select different resolution reasons
  • Implemented action handlers for resolution reason selection to provide real-time feedback

Screenshots

case_resolutions_slack.mov
case_resolutions_new_ui.mov
case_resolutions_old_ui.mov

@whitdog47 whitdog47 requested review from wssheldon and Copilot June 19, 2025 20:15
@whitdog47 whitdog47 self-assigned this Jun 19, 2025
@whitdog47 whitdog47 added the enhancement New feature or request label Jun 19, 2025
Copilot

This comment was marked as outdated.

@whitdog47 whitdog47 requested a review from Copilot June 19, 2025 23:56
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR extends case resolution functionality by adding a comprehensive set of resolution reasons along with detailed descriptions and tooltips for improved user guidance across the UI and Slack integration.

  • Introduces enhanced enums (CaseResolutionReason and CaseResolutionReasonDescription) with 10 resolution types.
  • Updates Vue components to display tooltips for resolution reasons.
  • Refactors Slack integration and backend flows to use the new enum values.

Reviewed Changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/case/test_case_service.py Minor formatting updates and consistent use of double quotes.
src/dispatch/static/dispatch/src/components/SearchPopover.vue Updates to prop type for hotkeys and addition of optional tooltips.
src/dispatch/static/dispatch/src/case/store.js Added resolution tooltips and reasons from the new enums.
src/dispatch/static/dispatch/src/case/DetailsTab.vue Refactored resolution reason select to use centralized store data with tooltips.
src/dispatch/static/dispatch/src/case/ClosedDialog.vue Similar resolution reason select updates and layout adjustments.
src/dispatch/static/dispatch/src/case/CaseResolutionSearchPopover.vue Replaced hardcoded resolution reasons with computed store values and added tooltips.
src/dispatch/plugins/dispatch_slack/case/interactive.py Updated Slack actions to support dynamic description updates using new enum values.
src/dispatch/case/flows.py Updated auto-close flow to use corrected enum value.
src/dispatch/case/enums.py Revised enums to include the new resolution reasons and their descriptions.

@whitdog47 whitdog47 requested review from aaronherman and removed request for wssheldon June 20, 2025 00:00
Copy link
Contributor

@wssheldon wssheldon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved from new Mac Studio

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants