Merged
Conversation
Implement a dashboard panel displaying tickets at risk of breaching Service Level Agreements, providing support agents with immediate visibility into high-priority items requiring attention. - Add SLA-related types (SLARiskStatus, SLAConfig, TicketSLAStatus) - Create SLA calculation utilities with configurable targets by priority - Add /api/devops/sla-status endpoint for fetching SLA data - Create SLARiskPanel component with traffic light cards showing breached/at-risk/on-track ticket counts - Display at-risk tickets list with time remaining/overdue indicators - Add CSS styling for SLA status indicators with visual highlighting Default SLA targets: - Urgent: 1hr response / 4hr resolution - High: 4hr response / 8hr resolution - Normal: 8hr response / 24hr resolution - Low: 24hr response / 72hr resolution Closes #146
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces SLA tracking into the app, adding backend SLA computation and a frontend dashboard panel to surface tickets at risk of breaching SLAs. It wires together types, utilities, an API endpoint, UI components, and styling to deliver the “Tickets at Risk” panel on the Home page.
Changes:
- Add SLA-related domain types (
SLARiskStatus,SLAConfig,TicketSLAStatus,SLAStatusResponse) to the shared type definitions. - Implement SLA utilities (
src/lib/sla.ts) for computing response/resolution deadlines, risk status, urgency sorting, and human-readable time formatting, plus a/api/devops/sla-statusroute that serves SLA summaries and at-risk tickets. - Add an
SLARiskPaneldashboard component, integrate it into the Home page layout, and introduce corresponding CSS for traffic-light summary cards and ticket indicators.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
src/types/index.ts |
Defines SLA-related types and shapes for SLA config, per-ticket SLA status, and the API response to support SLA calculations and UI rendering. |
src/lib/sla.ts |
Provides core SLA logic (config resolution, deadline calculation, risk classification, urgency sorting, and relative time formatting) used by the API and UI. |
src/components/dashboard/index.ts |
Re-exports SLARiskPanel to make the dashboard component available via a concise import path. |
src/components/dashboard/SLARiskPanel.tsx |
Implements the client-side SLA Risk panel UI, including loading/error states, traffic-light summary cards, and the at-risk/breached ticket list with relative time indicators. |
src/app/page.tsx |
Integrates the SLARiskPanel into the Home page grid layout alongside existing quick actions, ensuring the SLA panel appears for authenticated users. |
src/app/globals.css |
Adds visual styles for SLA cards and indicator dots, including pulsing breached indicators and color-coded backgrounds aligned with existing priority/status tokens. |
src/app/api/devops/sla-status/route.ts |
Implements the SLA status API route that reads tickets from Azure DevOps, computes SLA statuses, summarizes them, and returns only breached/at-risk tickets for the panel. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Contributor
Author
|
Hi @akash2017sky can you:
NB This was a draft PR created by Claude app. |
Collaborator
|
I will resolve conflicts |
Combine SLA Risk Panel additions (PR) with Zap/Kanban/Calendar styles, ProjectList/OrganizationProvider imports, and new types from main. Fix pre-existing TS errors where ticket.priority could be undefined. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Value is clamped to 0-100 by Math.max(0, ...), not negative when breached. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
EdiWeeks
approved these changes
Feb 11, 2026
Collaborator
|
Copilot items are fixed |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implement a dashboard panel displaying tickets at risk of breaching Service Level Agreements, providing support agents with immediate visibility into high-priority items requiring attention.
Default SLA targets:
Closes #146