Conversation
added 5 commits
September 19, 2026 02:32
Contributor
Author
|
/sign-cla |
Member
|
Thank you! |
Aidaho12
added a commit
that referenced
this pull request
Sep 30, 2026
* Init 2.3 release * feat(incidents): add Incident core service and lifecycle management * add repository layer for first-class Incident records * add Incident create, read and update operations * implement optimistic concurrency using row_version compare-and-swap * add centralized Incident workflow transition validation * support assign, reassign, unassign and independent operational ownership * keep Incident assignee independent from AlertGroup technical assignee * add Incident to AlertGroup link and unlink operations with retained link history * enforce one active non-closed Incident per AlertGroup * enforce a single active primary AlertGroup link per Incident * validate team, service and user ownership boundaries * add PostgreSQL row locking for concurrent Incident and AlertGroup link operations * preserve transactional behavior for SQLite deployments * add Incident operational timeline events * add audit logging for Incident mutations and relationship changes * preserve existing AlertGroup lifecycle, comments, notification and escalation behavior * extend Incident core migration for operational event storage * add regression coverage for lifecycle transitions, stale updates, assignment independence and link history * update Incident Management v2 architecture documentation * update English and Russian documentation * update README with Incident Management 2.3 domain boundaries Part of #45 Part of #47 * feat(incidents): add Incident core service and lifecycle management * add repository layer for first-class Incident records * add Incident create, read and update operations * implement optimistic concurrency using row_version compare-and-swap * add centralized Incident workflow transition validation * support assign, reassign, unassign and independent operational ownership * keep Incident assignee independent from AlertGroup technical assignee * add Incident to AlertGroup link and unlink operations with retained link history * enforce one active non-closed Incident per AlertGroup * enforce a single active primary AlertGroup link per Incident * validate team, service and user ownership boundaries * add PostgreSQL row locking for concurrent Incident and AlertGroup link operations * preserve transactional behavior for SQLite deployments * add Incident operational timeline events * add audit logging for Incident mutations and relationship changes * preserve existing AlertGroup lifecycle, comments, notification and escalation behavior * extend Incident core migration for operational event storage * add regression coverage for lifecycle transitions, stale updates, assignment independence and link history * update Incident Management v2 architecture documentation * update English and Russian documentation * update README with Incident Management 2.3 domain boundaries Part of #45 Part of #47 * fix(api): restore AlertGroup collaboration behavior after API split * restore responder request validation for AlertGroup collaboration endpoints * reject missing or conflicting responder target identifiers with validation errors * allow responder targets to accept or decline their own requests * return access_denied for unauthorized responder status changes * restore responder response messages and actor context in technical timeline events * restore AlertGroup stakeholder removal endpoint * restore audit logging for legacy AlertGroup responder and stakeholder mutations * keep responders and stakeholders on AlertGroup until the planned Incident collaboration migration * update AlertGroup API regression tests for the final 2.3 contract * fix stale Peewee model assertions in priority tests * update maintenance response expectations to use maintenance_suppressed * fix manual AlertGroup creation test setup regression * fix: improve mobile alert details and notification navigation (#91) * fix: open browser push links directly * fix: prevent alert details overflow on narrow screens * fix: prevent modal background scroll * fix: open alert deep links without dashboard flash * fix: align mobile alert flow with release 2.3 --------- Co-authored-by: caocong <caocong> * Fix after PL * feat(loading): add reusable loading and skeleton components with localization support - Introduced CSS and JS utilities for rendering loading spinners, skeleton placeholders, and inline/block states. - Integrated loading components into services, alerts, and dashboard pages. - Added localization for generic loading and updating messages in multiple languages. - Updated tests and templates to leverage new loading utilities. - Improved accessibility with ARIA roles and reduced motion support. * feat: improve integrations, overview dashboard and notification policy UX - fix Grafana webhook validation for payloads with explicit null map fields - accept values=null and other optional integration maps as empty objects - preserve strict validation for invalid non-map values - add regression coverage for Grafana and other integration payloads - redesign the Overview dashboard - replace narrow sidebar-heavy layout with a responsive two-column grid - add Alert activity trend chart - add Service health donut chart and operational status summary - combine Severity and Priority into a compact Alert distribution card - add stacked Active alerts by team chart for firing and acknowledged groups - add On-call now with current responders by rotation - replace duplicated Recent alerts with a Recent activity feed - expose recent AlertGroup lifecycle/activity events on the dashboard - reduce excessive whitespace and align related dashboard cards - improve activity indicator, text and timestamp alignment - add semantic colors for firing, acknowledged and resolved summary cards - improve Active incidents actions on Overview - move Ack and Resolve into the standard three-dot action menu - add Shelve and Unshelve actions - reuse the existing shelving dialog with duration and reason - refresh Overview state after alert actions - improve Overview responsiveness - balance primary and secondary column widths - keep related dashboard cards at matching heights - reorganize distribution, team activity, recent activity and on-call widgets - preserve single-column behavior on smaller screens - fix Notification Policy channel selection - keep disabled channels visible in rule editors - mark disabled channels explicitly instead of silently filtering them out - preserve existing rules that reference disabled channels - use rule channel data as a fallback when the channel list is incomplete - show a proper empty state when no channels are available - update localization for the new Overview widgets and actions Fixes #94 * feat: add first-class Incidents UI and polish 2.3 alert workflows - add a dedicated Incidents section and SPA route - add standalone Incident list, creation flow and details workspace - support direct /incidents/{id} navigation - add Incident lifecycle actions including close and reopen - add Incident assignment, reassignment, unassign and Assign to me - add Incident activity and linked AlertGroup views - add AlertGroup link and unlink actions from Incident details - add Create Incident action from AlertGroup details - keep Incident operational ownership independent from AlertGroup technical ownership - integrate Incidents with global team filtering and RBAC-aware controls - add localization for the new Incidents UI - fix Notification Policy channel rendering for disabled channels - keep disabled channels visible and preserve existing rule references - improve Overview layout, card height alignment and widget placement - move Active alerts by team next to Alert distribution - move Recent activity next to On-call now - align Recent activity status indicators, text and timestamps - keep Overview alert actions in the standard three-dot menu - add Shelve and Unshelve actions to Overview - remove brittle frontend source-text regression tests * feat: widen alert text fields and improve modal behavior - Migrate alert text fields (`title`, `external_id`, `group_key`) to unbounded `TEXT` for increased reliability with long upstream values. - Remove btree indexes from `group_key` to avoid PostgreSQL constraints. - Add test coverage for new text field configurations and rollback scenarios. - Replace side panel behavior with modals for maintenance and rotation details to improve UX consistency and accessibility. - Align modals with improved responsive styles and semantic layouts. Close: #97 * Improve notification policy rule filters and details UI - add common Notification Policy rule filters for priority, severity, source, service, environment, criticality and tier - keep advanced matchers for custom conditions - store common filters in the existing matcher engine - move Notification Policy details into a modal - fix rule checkbox layout - update docs, translations and regression tests Closes #64 Closes #66 * Harden Incident Management 2.3 release - add migration reconciliation and rollback coverage - add AlertGroup/Incident ID collision regression tests - harden cross-team Incident link authorization - add PostgreSQL concurrency coverage for Incident links - document the breaking 2.3 API migration and release notes Refs #45 Refs #47 Refs #48 Refs #55 * Improve Incident page --------- Co-authored-by: CoooderSan <dazz.cao@ecochn.com>
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
Improve the mobile alert-details experience and notification deep-link flow, rebased onto
release/2.3and aligned with the final AlertGroup API contract.Changes
/alerts/resolves exactly like/alerts.syncAlertDetailsFromUrl()calls during authentication and route rendering./api/alert-groups/..../acknowledgeand/{target_group_id}/mergefor the final 2.3 API contract./alerts/<id>unchanged as the browser-facing deep-link route.Testing
pytest -q— 1,842 passed.git diff --checkpassed.Manual verification
The mobile UX changes carried over from #90 were manually verified on iPhone:
Contributor License Agreement
After opening this pull request, comment exactly:
/sign-claYou only need to sign once per CLA version. If you already accepted the current
CLA.md, theCLAstatus check will pass automatically.