feat(case): adds stable status to cases #6074
Open
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.
This PR adds comprehensive support for the "Stable" status to cases, mirroring the existing functionality for incidents. This includes database schema changes, backend logic updates, frontend UI improvements, and cost calculation modifications.
Key Changes
Database & Backend
stable_at
timestamp column to thecase
tableCase
andCaseReadMinimal
models to includestable_at
fieldget_all_by_status
to include stable cases and addedget_all_last_x_hours_by_status
for stable casesstable_at
time, similar to incident cost behaviorFrontend UI
CaseStatusSelectGroup.vue
to include "Stable" status with proper ordering and visual indicatorsstable_at
timestamp display in case details tabstable_at
fieldCost Calculation Logic
calculate_cases_response_cost
to include stable cases and stop cost updates afterstable_at
get_participant_role_time_seconds
to:stable_at
for stable casesstable_at
timestampTesting
test_case_cost_stops_at_stable_time
to verify stable case cost behaviorScreenshots