Add resolution time metrics by priority level#299
Merged
redreceipt merged 3 commits intomainfrom Apr 22, 2026
Merged
Conversation
Breaks down average (and p95) resolution time across non-project completed issues (Bugs, New Features, Technical Changes) grouped by Linear priority so urgent work can be compared against lower-priority items at a glance. https://claude.ai/code/session_014XrrEqCFFWBGuwkw5M7A6q
The Linear label was renamed, so update every query site plus the matching local variable names in app.py and jobs.py. The "New Features" heading in the weekly changelog prose stays — it's a category label for the LLM-generated summary, not a Linear label. Also narrow resolution-by-priority to Bug + Feature Request only (dropping Technical Change) so the home-page metric reflects the two user-facing item types. https://claude.ai/code/session_014XrrEqCFFWBGuwkw5M7A6q
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.
Summary
This PR adds a new dashboard widget that displays average and p95 resolution times for completed issues, broken down by priority level. This provides visibility into how quickly issues at different priority levels are being resolved.
Key Changes
by_priority()inlinear/issues.py: Groups issues by their priority levelget_resolution_time_by_priority()inlinear/issues.py: Calculates average and p95 resolution times (in days) for each priority level, only including issues with both creation and completion timestampsPRIORITY_LABELSconstant to map numeric priority values (1-5) to human-readable labels (Urgent, High, Medium, Low, Very Low)/partials/index/resolution-by-priorityinapp.py: Serves the resolution metrics widget with configurable time window (default 30 days)_build_resolution_by_priority_context(): Fetches completed bugs, features, and technical changes, filters for non-project items, and calculates resolution statisticsindex_resolution_by_priority.html: Displays resolution stats in a grid layout showing priority label, average resolution time, issue count, and p95 metricindex.html: Integrated the new widget into the dashboard with dynamic loadingImplementation Details
issue.get("project"))get_time_data()utility to calculate lead time statisticshttps://claude.ai/code/session_014XrrEqCFFWBGuwkw5M7A6q