Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Security Solution][Investigations] - fix expandable flyout navigation #164918

Merged
merged 1 commit into from
Aug 28, 2023

Conversation

michaelolo24
Copy link
Contributor

@michaelolo24 michaelolo24 commented Aug 26, 2023

Summary

This PR aims at fixing a weird bug where the new expandable flyout automatically reopens when changing tabs, or clicking on the refresh button in the KQL bar.
It seems that there is a conflict or a raise condition between the code that manages the url sync of the old flyout with the code that manages the url sync of the new flyout.
The PR disables the old flyout navigation on initialization.

Weird thing is, while this fixed the issue, when I toggled the advanced setting off and then back on again, the issue stopped appearing all together. Still needs a bit more investigation...

Before the fix

Screen.Recording.2023-08-26.at.7.32.30.PM.mov

After the fix

Screen.Recording.2023-08-26.at.7.31.42.PM.mov

Steps to reproduce

  • navigate to the alerts page
  • open the flyout
  • refresh the page (browser refresh) with the flyout open
  • close the flyout
  • try to navigate to a different page (like cases) or try to click on the refresh button in the KQL bar

Checklist

@michaelolo24 michaelolo24 added bug Fixes for quality problems that affect the customer experience release_note:skip Skip the PR/issue when compiling release notes Team:Threat Hunting:Investigations Security Solution Investigations Team v8.10.0 labels Aug 26, 2023
@kibana-ci
Copy link
Collaborator

💚 Build Succeeded

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
securitySolution 15.9MB 15.9MB +240.0B

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

Copy link
Contributor

@PhilippeOberti PhilippeOberti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting the fix in @michaelolo24 , I tested and it works!

A couple of notes:

  • I updated the description with some steps to reproduce, a couple of recordings to show before/after and some more details on what the bugs seem to be
  • you mentioned in your PR description that the bug seemed to be hard to reproduce when switching the advanced settings back and forth. I believe this is due to the fact that to go to the advanced settings page, you have to close the flyout, and to apply the changes you have to refresh the page. You cannot reproduce the bug when refreshing the page with the flyout closed. It has to be open when you refresh your browser window...
  • you also mentioned that you didn't add any tests, but for this specific PR I'm not sure tests are necessary (or would even be easy to write). We're talking about an issue that hard to reproduce (only happens on Firefox for me) and about some code that will hopefully be removed within the next release...

I'd be ok merging this as is, but I'll let us make the decision on Monday! :)

@michaelolo24
Copy link
Contributor Author

Thanks for updating the ticket @PhilippeOberti with the recordings. Very much appreciated!! That also makes sense regarding the advanced settings toggle, much appreciated! Yep, we can chat about the testing and merging today!

@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.10

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Aug 28, 2023
elastic#164918)

## Summary

This PR aims at fixing a weird bug where the new expandable flyout
automatically reopens when changing tabs, or clicking on the refresh
button in the KQL bar.
It seems that there is a conflict or a raise condition between the code
that manages the url sync of the old flyout with the code that manages
the url sync of the new flyout.
The PR disables the old flyout navigation on initialization.

_Weird thing is, while this fixed the issue, when I toggled the advanced
setting off and then back on again, the issue stopped appearing all
together. Still needs a bit more investigation..._

Before the fix

https://github.com/elastic/kibana/assets/17276605/db3fff85-564e-480b-af26-bf4e59992560

After the fix

https://github.com/elastic/kibana/assets/17276605/4bdf27bb-f9da-48bf-80d1-e2e83014c40c

### Steps to reproduce

- navigate to the alerts page
- open the flyout
- refresh the page (browser refresh) with the flyout open
- close the flyout
- try to navigate to a different page (like cases) or try to click on
the refresh button in the KQL bar

### Checklist

- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios

(cherry picked from commit 1aa80b4)
kibanamachine added a commit that referenced this pull request Aug 28, 2023
…vigation (#164918) (#164993)

# Backport

This will backport the following commits from `main` to `8.10`:
- [[Security Solution][Investigations] - fix expandable flyout
navigation (#164918)](#164918)

<!--- Backport version: 8.9.7 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Michael
Olorunnisola","email":"michael.olorunnisola@elastic.co"},"sourceCommit":{"committedDate":"2023-08-28T15:07:34Z","message":"[Security
Solution][Investigations] - fix expandable flyout navigation
(#164918)\n\n## Summary\r\n\r\nThis PR aims at fixing a weird bug where
the new expandable flyout\r\nautomatically reopens when changing tabs,
or clicking on the refresh\r\nbutton in the KQL bar.\r\nIt seems that
there is a conflict or a raise condition between the code\r\nthat
manages the url sync of the old flyout with the code that manages\r\nthe
url sync of the new flyout.\r\nThe PR disables the old flyout navigation
on initialization. \r\n\r\n_Weird thing is, while this fixed the issue,
when I toggled the advanced\r\nsetting off and then back on again, the
issue stopped appearing all\r\ntogether. Still needs a bit more
investigation..._\r\n\r\nBefore the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/db3fff85-564e-480b-af26-bf4e59992560\r\n\r\nAfter
the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/4bdf27bb-f9da-48bf-80d1-e2e83014c40c\r\n\r\n###
Steps to reproduce\r\n\r\n- navigate to the alerts page\r\n- open the
flyout\r\n- refresh the page (browser refresh) with the flyout open\r\n-
close the flyout\r\n- try to navigate to a different page (like cases)
or try to click on\r\nthe refresh button in the KQL bar\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"1aa80b4e9ed44eb338bf8a9391e36088e6ffed68","branchLabelMapping":{"^v8.11.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["bug","release_note:skip","Team:Threat
Hunting:Investigations","v8.10.0","v8.11.0"],"number":164918,"url":"https://github.com/elastic/kibana/pull/164918","mergeCommit":{"message":"[Security
Solution][Investigations] - fix expandable flyout navigation
(#164918)\n\n## Summary\r\n\r\nThis PR aims at fixing a weird bug where
the new expandable flyout\r\nautomatically reopens when changing tabs,
or clicking on the refresh\r\nbutton in the KQL bar.\r\nIt seems that
there is a conflict or a raise condition between the code\r\nthat
manages the url sync of the old flyout with the code that manages\r\nthe
url sync of the new flyout.\r\nThe PR disables the old flyout navigation
on initialization. \r\n\r\n_Weird thing is, while this fixed the issue,
when I toggled the advanced\r\nsetting off and then back on again, the
issue stopped appearing all\r\ntogether. Still needs a bit more
investigation..._\r\n\r\nBefore the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/db3fff85-564e-480b-af26-bf4e59992560\r\n\r\nAfter
the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/4bdf27bb-f9da-48bf-80d1-e2e83014c40c\r\n\r\n###
Steps to reproduce\r\n\r\n- navigate to the alerts page\r\n- open the
flyout\r\n- refresh the page (browser refresh) with the flyout open\r\n-
close the flyout\r\n- try to navigate to a different page (like cases)
or try to click on\r\nthe refresh button in the KQL bar\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"1aa80b4e9ed44eb338bf8a9391e36088e6ffed68"}},"sourceBranch":"main","suggestedTargetBranches":["8.10"],"targetPullRequestStates":[{"branch":"8.10","label":"v8.10.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.11.0","labelRegex":"^v8.11.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/164918","number":164918,"mergeCommit":{"message":"[Security
Solution][Investigations] - fix expandable flyout navigation
(#164918)\n\n## Summary\r\n\r\nThis PR aims at fixing a weird bug where
the new expandable flyout\r\nautomatically reopens when changing tabs,
or clicking on the refresh\r\nbutton in the KQL bar.\r\nIt seems that
there is a conflict or a raise condition between the code\r\nthat
manages the url sync of the old flyout with the code that manages\r\nthe
url sync of the new flyout.\r\nThe PR disables the old flyout navigation
on initialization. \r\n\r\n_Weird thing is, while this fixed the issue,
when I toggled the advanced\r\nsetting off and then back on again, the
issue stopped appearing all\r\ntogether. Still needs a bit more
investigation..._\r\n\r\nBefore the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/db3fff85-564e-480b-af26-bf4e59992560\r\n\r\nAfter
the
fix\r\n\r\n\r\nhttps://github.com/elastic/kibana/assets/17276605/4bdf27bb-f9da-48bf-80d1-e2e83014c40c\r\n\r\n###
Steps to reproduce\r\n\r\n- navigate to the alerts page\r\n- open the
flyout\r\n- refresh the page (browser refresh) with the flyout open\r\n-
close the flyout\r\n- try to navigate to a different page (like cases)
or try to click on\r\nthe refresh button in the KQL bar\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"1aa80b4e9ed44eb338bf8a9391e36088e6ffed68"}}]}]
BACKPORT-->

Co-authored-by: Michael Olorunnisola <michael.olorunnisola@elastic.co>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience release_note:skip Skip the PR/issue when compiling release notes Team:Threat Hunting:Investigations Security Solution Investigations Team v8.10.0 v8.11.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants