[Alerting v2] Add alerting v2 alerts nav panel to Observability solution navigation - #288193
[Alerting v2] Add alerting v2 alerts nav panel to Observability solution navigation#288193dominiqueclarke wants to merge 12 commits into
Conversation
Gate the Observability solution alerts entry behind the alerting:v2:enabled advanced setting. When enabled, the plain Alerts link becomes a panel opener with Alerts, Notifications and Suppressions (Action policies, Maintenance Windows), and Operations (Execution history). When disabled the nav is unchanged. The helper lives in the observability plugin and is consumed by both stateful and serverless nav trees. Co-authored-by: Cursor <cursoragent@cursor.com>
When alerting v2 is enabled, the panel opener now shows Inbox (management:episodes) and Alerts V1 (classic observability alerts) as the top two links above Notifications and Operations. Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ci |
Include Rules V2 and Rule library links in the panel opener when alerting v2 is enabled. Adds rule_library to the ManagementId deep-links type so it resolves as a valid nav link. Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ci |
…/dominiqueclarke/kibana into alerting-v2/obs-alerts-nav-panel
Cover both the alerting:v2:enabled global setting and the alerting:v2:showClassicAlertsTable space-scoped setting so the Alerts panel structure is asserted with and without each gate. Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ci |
Verify the Alerts sub-nav link in the classic Kibana sidebar is unaffected by the alerting v2 feature flags — it stays as a plain link to /app/observability/alerts and highlights as active regardless. Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ci |
PR size reminderThis PR has 505 added lines of reviewable code, which is above the 500-line guideline for Nightshift PRs. Large PRs get significantly less review engagement and take longer to merge. Consider splitting this into smaller, focused PRs before requesting review. |
There was a problem hiding this comment.
Reviewed the alerting v2 Observability nav panel change. One inline finding on the serverless navigation tree regarding a dropped getIsActive callback. The rest of the change (helper structure, space-scoped setting registration, and Jest/Scout coverage) looks sound.
Generated by Claude Reviewer for #288193 · opus · 117.1 AIC · ⌖ 14.3 AIC · ⊞ 5.1K
| getIsActive: ({ pathNameSerialized, prepend }) => | ||
| pathNameSerialized.startsWith(prepend('/app/observability/alerts')), | ||
| }, | ||
| ...getAlertsNavPanel(core), |
There was a problem hiding this comment.
The serverless Alerts entry previously carried a serverless-specific getIsActive:
{
link: 'observability-overview:alerts',
icon: 'warning',
getIsActive: ({ pathNameSerialized, prepend }) =>
pathNameSerialized.startsWith(prepend('/app/observability/alerts')),
},getAlertsNavPanel does not reproduce it — in the v2-disabled (default) path it returns [{ link: ALERTS_LINK, icon: ALERTS_ICON }] with no getIsActive. The stateful tree never had this callback, but serverless did, so this is a behavior change specific to serverless. If the default deep-link active detection doesn't startsWith-match /app/observability/alerts sub-routes, the Alerts nav item will stop highlighting as active on those pages. Consider threading the getIsActive into the plain-link branch of the helper (or restoring it for the serverless consumer) so the active-state behavior is preserved.
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
Restore serverless getIsActive, badge New items, and harden Scout coverage with shared setting constants, beforeAll resets, and page-object panel locators. Co-authored-by: Cursor <cursoragent@cursor.com>
💔 Build Failed
Failed CI Steps
Metrics [docs]Module Count
Page load bundle
Unknown metric groupsshared async chunks total size
total optimizer output size
Test Failures
History
|
Kibana Exploratory Testing — execution reportRun Metadata
Findings01_hierarchy_and_data_flow - ERRORSeverity: warning 02_routing_rule_lifecycle - ERRORSeverity: warning 03_processing_pipeline - ERRORSeverity: warning 04_schema_evolution - ERRORSeverity: warning 05_ai_suggestions - ERRORSeverity: warning 06_significant_events - ERRORSeverity: warning 07_retention_and_lifecycle - ERRORSeverity: warning 08_cross_feature_workflow - ERRORSeverity: warning Additional detailsScreenshotsScreenshots are available in the workflow artifacts. Workflow run: View workflow run |
Summary
getAlertsNavPanelhelper to the observability plugin that gates the Observability Alerts nav entry behind thealerting:v2:enabledadvanced settingAddresses elastic/rna-program#965
Out of scope
The following IA work is tracked separately and is not included in this PR:
/app/observability/alerting/...(elastic/rna-program#969). This PR still navigates to existing/app/management/alertingV2/...mounts.Test plan
alerting:v2:enabledin Advanced Settings and verify the Observability side nav shows Alerts as a panel opener with Inbox, Alerts V1, Rule Management, Notifications and Suppressions, and Operations sectionsalerting:v2:enabledand verify the Observability side nav shows a plain Alerts linkNewbadges on Inbox, Rule library, Action policies, and Execution HistoryMade with Cursor