Skip to content

[EDR Workflows] Unify artifacts empty state buttons#264389

Merged
gergoabraham merged 5 commits intoelastic:mainfrom
gergoabraham:update-artifacts-empty-state-buttons-ui
Apr 22, 2026
Merged

[EDR Workflows] Unify artifacts empty state buttons#264389
gergoabraham merged 5 commits intoelastic:mainfrom
gergoabraham:update-artifacts-empty-state-buttons-ui

Conversation

@gergoabraham
Copy link
Copy Markdown
Contributor

@gergoabraham gergoabraham commented Apr 20, 2026

Summary

As now we're adding a new secondary button for artifact Import to the empty state pages of Artifact page and Policy details page, this PR aims to unify the UI a bit.

  • 'Add artifact' button and 'Import artifacts' empty button are now vertically aligned on Artifacts page's empty state
    artifacts

  • Same vertical alignment on Policy details page's artifact tabs
    policy details

  • When arriving to Artifacts page from Policy details page, the (now) 3rd button is changed to a simple link
    bakc

  • On Policy details page's 'artifacts exist, but they are not assigned' empty state the old 'Manage artifacts' link is changed to an empty button to harmonize with the new Import button
    manage

Testing

To see the Import button, enable the following feature flag:

xpack.securitySolution.enableExperimental:
  - endpointExceptionsMovedUnderManagement

@gergoabraham gergoabraham self-assigned this Apr 20, 2026
@gergoabraham gergoabraham added release_note:skip Skip the PR/issue when compiling release notes Team:Defend Workflows “EDR Workflows” sub-team of Security Solution backport:version Backport to applied version labels v9.4.0 labels Apr 20, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 20, 2026

Caution

Review failed

An error occurred during the review process. Please try again later.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • 🛠️ Update Documentation: Commit on current branch
  • 🛠️ Update Documentation: Create PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Jest Tests #12 / NotificationPolicyFormFlyout renders edit mode and submits update payload with optional fields and version
  • [job] [logs] Jest Tests #12 / NotificationPolicyFormFlyout submits create payload and omits optional empty fields

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 11.7MB 11.7MB +48.0B

cc @gergoabraham

@gergoabraham gergoabraham marked this pull request as ready for review April 20, 2026 14:47
@gergoabraham gergoabraham requested a review from a team as a code owner April 20, 2026 14:47
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/security-defend-workflows (Team:Defend Workflows)

Copy link
Copy Markdown
Contributor

@tomsonpl tomsonpl left a comment

Choose a reason for hiding this comment

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

LGTM 👍 Thanks for the unifying this :)

@gergoabraham
Copy link
Copy Markdown
Contributor Author

@coderabbitai help

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 22, 2026

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

CodeRabbit commands

These commands are invoked using PR/Issue comments.

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai evaluate custom pre-merge check --instructions <custom-checks-instructions> --name <custom-checks-title> [--mode <error|warning>] to validate the custom pre-merge checks instructions. Defaults to error when --mode is omitted.
  • @coderabbitai ignore pre-merge checks to override pre-merge checks and get an approval on PR.
  • @coderabbitai run pre-merge checks to run pre-merge checks on the pull request.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai run Update Documentation to run custom finishing touch recipe: Identify and fix documentation in the repository that is no longer accurate due to the change in the pull request and resolve it. Focus on significant issues that will be clearly incorrect if the PR merges.
  • @coderabbitai evaluate custom finishing touch --name <name> --instructions <text> to evaluate a custom finishing touch without defining a recipe.
  • @coderabbitai resolve merge conflict to automatically resolve merge conflicts.
  • @coderabbitai autofix to automatically fix issues identified in unresolved review comments.
  • @coderabbitai resolve to resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai generate configuration to create a PR that adds the current resolved configuration as .coderabbit.yaml (or show it if already present).
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore or @coderabbit ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Status, support, documentation and community

  • Visit our status page to check the current availability of CodeRabbit.
  • Create a ticket on our support page for assistance with any issues or questions.
  • Visit our documentation site for detailed information on how to use CodeRabbit.
  • Join our Discord community to connect with other users and get help from the community.
  • Follow us on X/Twitter for updates and announcements.

@gergoabraham gergoabraham merged commit c5cbc5f into elastic:main Apr 22, 2026
17 checks passed
@gergoabraham gergoabraham deleted the update-artifacts-empty-state-buttons-ui branch April 22, 2026 07:45
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.4

https://github.com/elastic/kibana/actions/runs/24766617127

@kibanamachine
Copy link
Copy Markdown
Contributor

💚 All backports created successfully

Status Branch Result
9.4

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

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Apr 22, 2026
…264931)

# Backport

This will backport the following commits from `main` to `9.4`:
- [[EDR Workflows] Unify artifacts empty state buttons
(#264389)](#264389)

<!--- Backport version: 9.6.6 -->

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

<!--BACKPORT [{"author":{"name":"Gergő
Ábrahám","email":"gergo.abraham@elastic.co"},"sourceCommit":{"committedDate":"2026-04-22T07:45:13Z","message":"[EDR
Workflows] Unify artifacts empty state buttons (#264389)\n\n##
Summary\n\nAs now we're adding a new secondary button for artifact
_Import_ to the\nempty state pages of Artifact page and Policy details
page, this PR aims\nto unify the UI a bit.\n\n- [x] 'Add artifact'
button and 'Import artifacts' empty button are now\nvertically aligned
on **Artifacts** page's empty state\n<img width=\"600\"
alt=\"artifacts\"\nsrc=\"https://github.com/user-attachments/assets/ccd94868-8521-4ffa-81f8-d2fb8016d4cb\"\n/>\n\n\n-
[x] Same vertical alignment on **Policy details** page's artifact
tabs\n<img width=\"600\" alt=\"policy
details\"\nsrc=\"https://github.com/user-attachments/assets/e605b047-d889-46e6-82bf-b336d7273cda\"\n/>\n\n-
[x] When arriving to **Artifacts** page from **Policy details**
page,\nthe (now) 3rd button is changed to a simple link\n<img
width=\"600\"
alt=\"bakc\"\nsrc=\"https://github.com/user-attachments/assets/a6fe0f98-5088-4e76-a111-485261c87da1\"\n/>\n\n-
[x] On **Policy details** page's 'artifacts exist, but they are
not\nassigned' empty state the old 'Manage artifacts' link is changed to
an\nempty button to harmonize with the new Import button\n<img
width=\"600\"
alt=\"manage\"\nsrc=\"https://github.com/user-attachments/assets/8d20e532-ca97-41dd-b201-57624457df91\"\n/>\n\n\n##
Testing\n\nTo see the Import button, enable the following feature
flag:\n```\nxpack.securitySolution.enableExperimental:\n -
endpointExceptionsMovedUnderManagement\n```","sha":"c5cbc5f7312d5e1221ad115133085a351b72644e","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:Defend
Workflows","backport:version","v9.4.0","v9.5.0"],"title":"[EDR
Workflows] Unify artifacts empty state
buttons","number":264389,"url":"https://github.com/elastic/kibana/pull/264389","mergeCommit":{"message":"[EDR
Workflows] Unify artifacts empty state buttons (#264389)\n\n##
Summary\n\nAs now we're adding a new secondary button for artifact
_Import_ to the\nempty state pages of Artifact page and Policy details
page, this PR aims\nto unify the UI a bit.\n\n- [x] 'Add artifact'
button and 'Import artifacts' empty button are now\nvertically aligned
on **Artifacts** page's empty state\n<img width=\"600\"
alt=\"artifacts\"\nsrc=\"https://github.com/user-attachments/assets/ccd94868-8521-4ffa-81f8-d2fb8016d4cb\"\n/>\n\n\n-
[x] Same vertical alignment on **Policy details** page's artifact
tabs\n<img width=\"600\" alt=\"policy
details\"\nsrc=\"https://github.com/user-attachments/assets/e605b047-d889-46e6-82bf-b336d7273cda\"\n/>\n\n-
[x] When arriving to **Artifacts** page from **Policy details**
page,\nthe (now) 3rd button is changed to a simple link\n<img
width=\"600\"
alt=\"bakc\"\nsrc=\"https://github.com/user-attachments/assets/a6fe0f98-5088-4e76-a111-485261c87da1\"\n/>\n\n-
[x] On **Policy details** page's 'artifacts exist, but they are
not\nassigned' empty state the old 'Manage artifacts' link is changed to
an\nempty button to harmonize with the new Import button\n<img
width=\"600\"
alt=\"manage\"\nsrc=\"https://github.com/user-attachments/assets/8d20e532-ca97-41dd-b201-57624457df91\"\n/>\n\n\n##
Testing\n\nTo see the Import button, enable the following feature
flag:\n```\nxpack.securitySolution.enableExperimental:\n -
endpointExceptionsMovedUnderManagement\n```","sha":"c5cbc5f7312d5e1221ad115133085a351b72644e"}},"sourceBranch":"main","suggestedTargetBranches":["9.4"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/264389","number":264389,"mergeCommit":{"message":"[EDR
Workflows] Unify artifacts empty state buttons (#264389)\n\n##
Summary\n\nAs now we're adding a new secondary button for artifact
_Import_ to the\nempty state pages of Artifact page and Policy details
page, this PR aims\nto unify the UI a bit.\n\n- [x] 'Add artifact'
button and 'Import artifacts' empty button are now\nvertically aligned
on **Artifacts** page's empty state\n<img width=\"600\"
alt=\"artifacts\"\nsrc=\"https://github.com/user-attachments/assets/ccd94868-8521-4ffa-81f8-d2fb8016d4cb\"\n/>\n\n\n-
[x] Same vertical alignment on **Policy details** page's artifact
tabs\n<img width=\"600\" alt=\"policy
details\"\nsrc=\"https://github.com/user-attachments/assets/e605b047-d889-46e6-82bf-b336d7273cda\"\n/>\n\n-
[x] When arriving to **Artifacts** page from **Policy details**
page,\nthe (now) 3rd button is changed to a simple link\n<img
width=\"600\"
alt=\"bakc\"\nsrc=\"https://github.com/user-attachments/assets/a6fe0f98-5088-4e76-a111-485261c87da1\"\n/>\n\n-
[x] On **Policy details** page's 'artifacts exist, but they are
not\nassigned' empty state the old 'Manage artifacts' link is changed to
an\nempty button to harmonize with the new Import button\n<img
width=\"600\"
alt=\"manage\"\nsrc=\"https://github.com/user-attachments/assets/8d20e532-ca97-41dd-b201-57624457df91\"\n/>\n\n\n##
Testing\n\nTo see the Import button, enable the following feature
flag:\n```\nxpack.securitySolution.enableExperimental:\n -
endpointExceptionsMovedUnderManagement\n```","sha":"c5cbc5f7312d5e1221ad115133085a351b72644e"}}]}]
BACKPORT-->

Co-authored-by: Gergő Ábrahám <gergo.abraham@elastic.co>
mbondyra added a commit to mbondyra/kibana that referenced this pull request Apr 22, 2026
…sationChanges23

* commit '9a7b717c662d1c904052bc59f0e5a81daab87c7f': (145 commits)
  Upgrade EUI to v114.2.0 (elastic#264550)
  [Entity Analytics] Add missing OpenAPI descriptions and examples to p… (elastic#264778)
  [Entity Resolution] Clarify CSV upload result for already-linked entities (elastic#264689)
  [AI Infra] Fix failing GenAI Settings Scout tests (elastic#260496)
  [Agent Builder] [Bug Bash] OAuth connector settings mention fields that are not there (elastic#264756)
  [performance] process-wide cache for advanced settings lookup (elastic#262618)
  [CI] Update limits.yml for securitySolution (elastic#264946)
  [SLO] Fix APM embeddable ids (elastic#264750)
  [EDR Workflows] Unify artifacts empty state buttons (elastic#264389)
  [Alert Triage workflow] Adds security.buildAlertEntityGraph and security.renderAlertNarrative… (elastic#259159)
  [SigEvents] Add KI feature identification endpoints and refactor task to use shared service (elastic#263528)
  [Scout] Migrate Data Views API tests from FTR - Part5 (elastic#264088)
  [Cases] Apply shared extended_fields path util server side (elastic#264706)
  [Lens as code] Fix metric trendline (elastic#264777)
  [api-docs] 2026-04-22 Daily api_docs build (elastic#264882)
  [Scout] Update test config manifests (elastic#264575)
  [workflows_management] Lazy-load Zod connector schemas to cut idle memory (elastic#264283)
  [ES|QL] Fix ES|QL columns reset race during active fetch (elastic#263947)
  [Content List] Column layout props, sticky actions, and title click handlers (elastic#264203)
  [Lens as code] Validate `id` in route for new vis types (elastic#264480)
  ...
SoniaSanzV pushed a commit to SoniaSanzV/kibana that referenced this pull request Apr 27, 2026
## Summary

As now we're adding a new secondary button for artifact _Import_ to the
empty state pages of Artifact page and Policy details page, this PR aims
to unify the UI a bit.

- [x] 'Add artifact' button and 'Import artifacts' empty button are now
vertically aligned on **Artifacts** page's empty state
<img width="600" alt="artifacts"
src="https://github.com/user-attachments/assets/ccd94868-8521-4ffa-81f8-d2fb8016d4cb"
/>


- [x] Same vertical alignment on **Policy details** page's artifact tabs
<img width="600" alt="policy details"
src="https://github.com/user-attachments/assets/e605b047-d889-46e6-82bf-b336d7273cda"
/>

- [x] When arriving to **Artifacts** page from **Policy details** page,
the (now) 3rd button is changed to a simple link
<img width="600" alt="bakc"
src="https://github.com/user-attachments/assets/a6fe0f98-5088-4e76-a111-485261c87da1"
/>

- [x] On **Policy details** page's 'artifacts exist, but they are not
assigned' empty state the old 'Manage artifacts' link is changed to an
empty button to harmonize with the new Import button
<img width="600" alt="manage"
src="https://github.com/user-attachments/assets/8d20e532-ca97-41dd-b201-57624457df91"
/>


## Testing

To see the Import button, enable the following feature flag:
```
xpack.securitySolution.enableExperimental:
  - endpointExceptionsMovedUnderManagement
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:version Backport to applied version labels release_note:skip Skip the PR/issue when compiling release notes Team:Defend Workflows “EDR Workflows” sub-team of Security Solution v9.4.0 v9.5.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants