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

Assistant cypress #18

Closed
wants to merge 506 commits into from
Closed
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Aug 22, 2024

  1. Extract authorization logic and it's peripherals into packages (elast…

    …ic#190028)
    
    ## Summary
    
    This PR is a precursor to elastic#189871,
    as part of the spaces improvement initiative there's a need to be able
    to share the user privilege assignment component between the roles
    experience and the new spaces experience to prevent duplication of
    business logic and cohesiveness in the privilege assignment experience.
    
    The aforementioned PR extracts the required component into it's own
    package so it might be consumed as needed, this PR is particularly
    concerned with extracting business logic said UI component depends on
    that exists still within the security plugin. For context; the security
    plugin already depends on the spaces plugin, so having the spaces plugin
    in turn statically depend on the security plugin creates a cyclic
    dependency. That being said to complement the eventual state of said
    component so it might be imported elsewhere outside of the security
    plugin there's a need to extract further logic into standalone packages,
    so that the spaces plugin can consume this plugin without the afore
    mentioned cyclic dependency problem.
    
    
    #### Visually; 
    
    ##### Problem;
    
    
    ![image](https://github.com/user-attachments/assets/6be85fb0-3ba3-4d5f-b614-3c0ff2cf7c69)
    
    ##### Proposal
    
    ![image](https://github.com/user-attachments/assets/5c4f423d-4ad4-48f4-b5bd-2ea0a99b196e)[^legend]
    
    [^legend]: items marked in blue are the packages created in this PR,
    whilst the entire diagram is the proposed future state
    
    <!--### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    -->
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    eokoneyo and kibanamachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    44fafb8 View commit details
    Browse the repository at this point in the history
  2. fix: [Obs Inventory][KEYBOARD]: The map view tooltips must be availab…

    …le on keyboard focus (elastic#187861)
    
    Closes: elastic/observability-accessibility#43
    Closes: elastic/observability-accessibility#18
    
    ## Description
    - elastic/observability-accessibility#43: The
    Observability Inventory map view has a grid of map tiles that each
    accept a mouse event to show a tooltip. This tooltip must also be
    available when the tile receives keyboard focus.
    
    - elastic/observability-accessibility#18: The
    Inventory > Kubernetes Pods popover stays open when I click "Create
    Inventory Rule" and the modal dialog opens. This creates an odd stacking
    order and obscures content for users at smaller viewport width.
    
    ## Steps to recreate
    1. Open [Inventory Hosts map
    view](https://keep-serverless-fyzdg-f07c50.kb.eu-west-1.aws.qa.elastic.cloud/app/metrics/inventory?inventoryViewId=%270%27&waffleFilter=(expression:%27%27,kind:kuery)&waffleTime=(currentTime:1719523489979,isAutoReloading:!f)&waffleOptions=(accountId:%27%27,autoBounds:!t,boundsOverride:(max:1,min:0),customMetrics:!(),customOptions:!(),groupBy:!(),legend:(palette:cool,reverseColors:!f,steps:10),metric:(type:cpu),nodeType:host,region:%27%27,sort:(by:name,direction:desc),timelineOpen:!f,view:map)&assetDetailsFlyout=(assetType:!n,detailsItemId:!n)&assetDetails=!n)
    2. Change Hosts to Kubernetes Clusters
    3. Try to select specific node using the keyboard 
    
    ## Screens
    
    
    https://github.com/user-attachments/assets/9ab3b20d-1144-48ed-9760-363f43bafb4b
    
    
    
    https://github.com/user-attachments/assets/e41bba9f-f3c5-4ce7-bba4-98cf26a2137a
    alexwizp authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    e782811 View commit details
    Browse the repository at this point in the history
  3. [ResponseOps][alerting] add rule info to logging in alertsClient (ela…

    …stic#190857)
    
    ## Summary
    
    While investigating some issues with the alertsClient, I realized that
    we weren't writing out any rule information for the logged messages.
    This made debugging quite difficult, as I wanted to see the rule, so had
    to search through the alerts indices for the specified alert to get it's
    rule id, rule type, etc.
    
    As an example, see elastic#190376
    
    This PR adds that kind of rule info to the logged messages in
    alertsClient, as well as the typical sort of tags we write out (rule id,
    rule type, module).
    pmuellr authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    07717a4 View commit details
    Browse the repository at this point in the history
  4. [Infra] Identify hosts not monitored by the system integration in the…

    … hosts list (elastic#191063)
    
    Closes [elastic#190418](elastic#190418)
    
    ## Summary
    
    This PR adds a popover for the hosts that are not monitored by the
    system integration to help users troubleshoot the problem
    
    ## Testing 
    
    A way to check it is to have a host that is monitored by system
    integration (I am using metricbeat) and sythtrace hosts - there we
    should have both (I am using `node scripts/synthtrace
    infra_hosts_with_apm_hosts --scenarioOpts.numInstances=50 --live`)
    
    - Go to hosts view and check the table
    - The hosts that are **not** monitored by the system integration should
    have an icon before the host name which opens the popover with some
    explanation and documentation links
    - The hosts that are monitored by the system integration should not have
    an icon before the host name
    
    <img width="961" alt="Screenshot 2024-08-22 at 12 02 27"
    src="https://github.com/user-attachments/assets/a3330f3f-33df-41ae-8135-71aea98e2660">
    
    
    ![image](https://github.com/user-attachments/assets/b28474d4-2272-4372-b70d-6370aa8e2a9d)
    jennypavlova authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    f63bd03 View commit details
    Browse the repository at this point in the history
  5. [Response Ops][Task Manager] Adding jest integration test to test cap…

    …acity based claiming (elastic#189431)
    
    Resolves elastic#189111
    
    ## Summary
    
    Adds jest integration test to test cost capacity based claiming with the
    `mget` claim strategy. Using this integration test, we can exclude
    running other tasks other than our test types. We register a normal cost
    task and an XL cost task. We test both that we can claim tasks up to
    100% capacity and that we will stop claiming tasks if the next task puts
    us over capacity, even if that means we're leaving capacity on the
    table.
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    ymao1 and elasticmachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    9653d7e View commit details
    Browse the repository at this point in the history
  6. [Synthetics] Settings add config to enable default rules (elastic#190800

    )
    
    ## Summary
    
    Settings add config to enable default rules !!
    
    separated out of elastic#186585 !!
    
    <img width="1725" alt="image"
    src="https://github.com/user-attachments/assets/3fc18d13-d0fe-4f08-8e19-ae43fcb83228">
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    Co-authored-by: Dominique Belcher <dominique.clarke@elastic.co>
    3 people authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    20ccb21 View commit details
    Browse the repository at this point in the history
  7. [Cloud Security] fix 'show 1 alerts' bug (elastic#191062)

    ## Summary
    
    Using plural from `react-intl` in the Session View for `Show N alerts`
    text
    
    - part of elastic/security-team#10316
    - fixes elastic#189880
    maxcold authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    df5810f View commit details
    Browse the repository at this point in the history
  8. [Cloud Security] fix responsiveness on the Benchmark Rules page (elas…

    …tic#191080)
    
    ## Summary
    
    It ain't much but it's honest work
    
    - fixes elastic#181641
    - part pf elastic/security-team#10316
    
    ## Screencast
    tbh before is not as bad as in the linked ticket, so we can also leave
    it as it is until we do responsiveness on this page properly.
    
    before
    
    
    [screencast-localhost_5601-2024.08.22-15_14_34.webm](https://github.com/user-attachments/assets/4f119203-6a91-4a52-9514-3489789649ce)
    
    after
    
    
    [screencast-localhost_5601-2024.08.22-15_05_32.webm](https://github.com/user-attachments/assets/36276e71-8d2d-4095-b2b6-e5524f6d0692)
    maxcold authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    801c17f View commit details
    Browse the repository at this point in the history
  9. [Detection Engine] update alert assignment to disable unassign action…

    … if no assignees exist (elastic#190937)
    
    ## Summary
    
    Addresses elastic#177864
    
    Disables the unassign alert action if no assignees exist.
    yctercero authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    d673743 View commit details
    Browse the repository at this point in the history
  10. [Logs] Use central log sources setting in Logs Explorer as the defaul…

    …t data source (elastic#190438)
    
    ## Summary
    
    Implements elastic/logs-dev#169.
    
    This uses the new central log sources setting as the default data source
    in the Logs Explorer. The `AllSelection` is now amended to use a set of
    indices, this `AllSelection` can be defined by the consumer (or falls
    back to a default). In the case of the Observability Logs Explorer this
    value is resolved from the setting and used as the `AllSelection` passed
    to the Logs Explorer controller.
    Kerry350 authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    2d80214 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    0f3cd1b View commit details
    Browse the repository at this point in the history
  12. [Spaces management] make section panel title optional (elastic#190865)

    ## Summary
    
    Epic link: elastic/kibana-team#785
    
    The Spaces Management `SectionPanel` component has been updated to make
    `title` an optional prop. This PR takes a small change out of a larger
    PR to be delivered next: elastic#184697.
    
    Currently, `title` is shown consistently for all `SectionPanel` elements
    in the Edit Space screen. In the new design, the panels will appear on a
    tabbed interface. Observe how the new design implemented in the
    larger/next PR will leave the `SectionPanel` title empty (this
    screenshot was taken when running Kibana in the branch for the next PR):
    <img width="1076" alt="image"
    src="https://github.com/user-attachments/assets/ba2d70f0-e8be-4885-bc2b-17e5cd3bdf9d">
    
    The current design will still be used for the Create Space interface. As
    a reminder, here is how the current design looks:
    <img width="945" alt="image"
    src="https://github.com/user-attachments/assets/4009bbfc-20fd-41cd-b89f-14bb52be4522">
    tsullivan authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    4b0f142 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    0678c59 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    53b5d7c View commit details
    Browse the repository at this point in the history
  15. [Screenshotting] Server package for stateless code (elastic#188390)

    ## Summary
    
    This PR moves code that is usually impacted by a Puppeteer/Chromium
    upgrade to a package. The same work is happening to a lesser degree in
    the 7.17 branch. Together, these changes will ease the manual labor of
    backporting the upgrades from main to 7.17.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    tsullivan and kibanamachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    bf673d9 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    307b1d5 View commit details
    Browse the repository at this point in the history
  17. [ES|QL] Update function metadata (elastic#191118)

    This PR updates the function definitions and inline docs based on the
    latest metadata from Elasticsearch.
    kibanamachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    58ba9cc View commit details
    Browse the repository at this point in the history
  18. fix messages flakiness

    stephmilovic committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    044b2f4 View commit details
    Browse the repository at this point in the history
  19. waitForRootRequest

    stephmilovic committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    1afc76a View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    b6ce155 View commit details
    Browse the repository at this point in the history
  21. [controls] Refactor control group settings functional tests (elastic#…

    …190999)
    
    Refactor control group settings tests
    1. move non-functional test cases to unit tests
    2. use pre-built dashboard to avoid time of building dashboard in test
    
    ### Before
    Tests take 4 minutes to run locally
    <img width="400" alt="Screenshot 2024-08-21 at 3 12 31 PM"
    src="https://github.com/user-attachments/assets/96cf584c-2b32-4281-86ee-9791544bd5fa">
    
    
    ### After
    Tests take 1 minute to run locally
    <img width="400" alt="Screenshot 2024-08-21 at 2 53 37 PM"
    src="https://github.com/user-attachments/assets/853a6f3a-74c5-4ca8-a488-99dd24477b1e">
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    nreese and elasticmachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    79051d4 View commit details
    Browse the repository at this point in the history
  22. [Elastic Assistant] Update default assistant graph (elastic#190686)

    ## Summary
    
    **NOTE** I will need help testing this before we merge it!
    
    I spoke with @spong about an upcoming PR we have here:
    elastic#190426 which bumps the langgraph
    version from 0.0.31 to 0.0.34, unfortunately this caused a lot of type
    errors in the default assistant.
    
    After some more discussion we proposed to open a PR that removes some of
    the more complex layers and to fix up the type issues. Though I have not
    worked on this graph before, the changes hopefully makes sense 👍
    
    Graph flow:
    
    ![image](https://github.com/user-attachments/assets/911190c1-2cdc-429f-bd1b-2b4a6a343729)
    
    
    The PR changes the below items to remove some of the abstractions and
    resolve some of the type issues, also adds a few improvements in
    general:
    
    - Moves `llmType`, `bedrockChatEnabled`, `isStream` and `conversationId`
    to be invoke parameters rather than compile parameters. This allows them
    to be used in state, and removes the need to pass them everywhere as
    parameters. Adding them to the state also allows them to be available in
    langsmith.
    - Removes the constants defining each node with wrappers and rather
    expose them directly as async functions. This removes a lot of the
    boilerplate code and it makes reading the stacktraces much easier.
    - Moved to a single `stepRouter` used for the current conditional edges.
    This allows one to very easily extend the routing between either
    existing or new nodes, and makes it much easier to understand what
    conditions are routed where.
    - Exports a common `NodeType` object constant (no need for the extra
    compile overhead of Enums here, we are only using strings), to make the
    node name strings auto-complete and prevent hardcoded names for the
    router.
    - Added a `modelInput` node to be the starter node. This was first
    because adding nodes inside if conditions usually create errors, so it
    was created to be able to set the `hasRespondStep` state. However this
    node is nice to have as an entrypoint in which you find yourself wanting
    to change the state based on the invoke parameters or other conditions
    retrieved from other parts of the stack etc before it continues to any
    of the other nodes.
    - Added a `yarn draw-graph` command, that outputs to
    `docs/img/default_assistant_graph.png`. This is then also included in
    the readme. This makes it better for changes by other teams (like me) to
    understand the intended graph workflows easier.
    
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    
    ### For maintainers
    
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    P1llus and elasticmachine authored Aug 22, 2024
    Configuration menu
    Copy the full SHA
    b660d42 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    0c911c8 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    f9c3732 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    942cb37 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    163d1ef View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    6b7c7d4 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    04916ff View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2024

  1. [Cloud Security] Set DataTable row density to expanded (elastic#191138)

    ## Summary
    
    Due to a [recent change](elastic#188495)
    on the UnifiedDataTable component, the density was set to default to
    `compact`. This PR overrides this property to `expanded` in order to
    keep consistency with the Design specs.
    
    ## Screenshot
    
    ### Before PR changes:
    
    
    ![image](https://github.com/user-attachments/assets/329673ae-31f6-42f0-8552-253dbd465a7f)
    
    ### After PR changes:
    
    
    ![image](https://github.com/user-attachments/assets/bf9d9930-25e6-40a5-9639-a691d9d56893)
    
    
    ### Design spec
    
    
    ![image](https://github.com/user-attachments/assets/5f6ab4f8-807c-4e4c-a89e-56359493e4b2)
    opauloh authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    c95f01b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    705539e View commit details
    Browse the repository at this point in the history
  3. [Cloud Security][Quick Wins] Fix for Field Selector issue (elastic#19…

    …1130)
    
    ## Summary
    
    This PR is to address issue where whenever user tries to check on the
    field on the field selector outside the 1st page, user will be navigated
    to the 1st page upon checking the checkbox.
    
    
    https://github.com/user-attachments/assets/89375c54-deac-49a7-a3a1-2a4d5745ccc7
    
    Steps to test:
    - Get some findings data in
    - Navigate to Findings Page
    - Group by None
    - Click on Fields selector, navigate to other pages 
    - Check on any of field checkboxes
    
    Expected Result:
    User should not get navigated back to page 1
    animehart authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    7ffdd1b View commit details
    Browse the repository at this point in the history
  4. [APM][ECO]New Service Inventory opens some services with tracing in '…

    …logs-only' view (elastic#191108)
    
    closes elastic#190437
    Before:
    <img width="1652" alt="Screenshot 2024-08-22 at 16 54 39"
    src="https://github.com/user-attachments/assets/ed501a53-b715-49b3-b382-a1d0f9861275">
    
    After:
    <img width="1644" alt="Screenshot 2024-08-22 at 16 55 25"
    src="https://github.com/user-attachments/assets/6b73a5d7-9747-4951-8ea6-1b4200a73313">
    <img width="1692" alt="Screenshot 2024-08-22 at 16 55 43"
    src="https://github.com/user-attachments/assets/e3cb3d55-87e3-4515-b4f9-c1fddcd8ce4d">
    cauemarcondes authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    2ab2755 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    21548e3 View commit details
    Browse the repository at this point in the history
  6. Size down log overview content (elastic#191044)

    ## Summary
    
    Decrease the accordion title and code block content within the log
    overview tab.
    
    ------
    
    The content in the log overview tab of the doc viewer flyout was large
    relative to surrounding UI elements (see below). The changes in this PR
    make it more consistent with other sections of the page.
    
    **Before**
    <img
    src="https://github.com/user-attachments/assets/521356d6-1170-47fb-9931-34072296fc7e"
    width="420" />
    
    
    **After**
    <img
    src="https://github.com/user-attachments/assets/51922e37-94a2-4f00-80fa-8202069717fc"
    width="420" />
    
    _Font sizes now comparable to those used in and around the data grid,
    for example._
    
    ![CleanShot 2024-08-21 at 21 55
    23@2x](https://github.com/user-attachments/assets/32f06022-b9aa-4211-8cb6-01bc44abfbad)
    
    ### Checklist
    
    
    Delete any items that are not applicable to this PR.
    
    - [ ] [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
    ryankeairns authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    08f0ed0 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    476018a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    13bd193 View commit details
    Browse the repository at this point in the history
  9. [ML] Replace apiDoc annotations with routes definitions for OpenAPI s…

    …pec generation (elastic#190840)
    
    ## Summary
    
    - Removes `apidoc-markdown` dependency and custom scripts for generating
    internal documentation for ML Kibana endpoints
    - Replaces apidoc annotations with `summary` and `description` props for
    route handlers and kbn-schemas to generate an OpenAPI spec file
    - `/internal/ml/jobs/delete_jobs` route was not versioned for some
    reason, I changed that
    
    
    #### How to test 
    
    1. Enable OAS endpoint in `kibana.dev.yml`
    
    ```yaml
    server.oas.enabled: true
    ```
    2. Start Kibana dev server 
    ```bash
    yarn start --no-base-path
    ```
    3. Call the OAS endpoint for ML _internal_ routes 
    ```bash
    curl -s -u <USERNAME>:<PASSWORD> http://localhost:5601/api/oas\?pathStartsWith\=/internal/ml\&access\=internal -o ml_kibana_openapi.json
    ```
    darnautov authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    f9c43f6 View commit details
    Browse the repository at this point in the history
  10. fix: remove deprecated squid filebeat module tutorial from integratio…

    …ns (elastic#191115)
    
    ## Summary
    
    This PR removes the deprecated `squid` integration based on the Filebeat
    module (deprecation issue
    [here](elastic/beats#37746)). Instead, as of
    now, a user that wants to use the `squad` integration needs to tick the
    `Display beta integrations` and install the "new" squid integration
    
    
    ### Risk Matrix
    
    N/A
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    pkoutsovasilis authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    bd9dde8 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    8f7ea3c View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    db970ff View commit details
    Browse the repository at this point in the history
  13. [Automatic Import] Adding support for larger samples in ECS graph (el…

    …astic#190426)
    
    ## Summary
    
    This PR prepares the ECS Mapping graph to support larger samples by
    chunking and running certain parts of the graph concurrently side by
    side and merging the results rather than trying to use one large
    context.
    
    More details below, but in general there is only a slight modification
    to the actual code, most of the lines are related to moving code around
    to new files and updated tests.
    
    There are also some minor tweaks to the ECS graph code in general, below
    is the related changes:
    
    1. Moved some code out of graph.ts to make it a bit smaller (moved
    model* functions to a new model.ts, moved state to its own file.
    2. Added chunkSize as a optional input to the graph (default to 10
    fields with an actual string value per chunk). Just to allow it to be
    overwritten if necessary later.
    3. Renamed the `samples` state to `prefixedSamples` and
    `formattedSamples` to `combinedSamples` as it got really confusing at
    some point when debugging. I also updated the function argument names
    that used them to the new names to better understand which sample type
    they are using.
    4. Renamed `modifySamples` to `prefixSamples` to clarify what it
    actually modifies
    5. Moved `mapping`, `invalid`, `duplicate`, `missing` and `validate`
    nodes to its own subgraph. The `combinedSamples` state is now set when
    invoking the subgraph, the value will be its related `chunk`, so it only
    needs to work on this smaller subset of data.
    6. The `currentMapping` state is now only used by the sub graph, once
    all the subgraphs has finished, the will post their own results to
    `finalMapping` state. This state uses a reducer function, that combines
    the existing state with the new, so all results from the X subgraphs
    running will be merged into the same resulting object as before this PR.
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x] [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
    
    
    ### For maintainers
    
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    3 people authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    8e66a3e View commit details
    Browse the repository at this point in the history
  14. [A11Y][SLO detail] burn rate time range abbreviations (elastic#191146)

    Fixes elastic/observability-accessibility#54
    
    ## How to test
    - Turn on your Screen Reader (voiceOver on MAC)
    - Go to SLO detail page
    - The burn rate abbreviation labels should be `1 hour`, `6 hours`, `24
    hours`, `72 hours`
    - Navigate with `Tab` button to the burn rate time range abbreviations
    - The Screen Reader should speak out `1 hour`, `6 hours`, `24 hours`,
    `72 hours`
    
    
    
    
    https://github.com/user-attachments/assets/4cc6a375-afef-4531-a177-d52e9326a701
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    mgiota and elasticmachine authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    06baacf View commit details
    Browse the repository at this point in the history
  15. [Search] search_indices: scaffold empty plugin (elastic#190748)

    ## Summary
    
    Scaffolding empty plugin for development of day 0 onboarding work. This
    plugin is currently disabled by default and will be enabled for ES3 when
    it's ready for users.
    TattdCodeMonkey authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    e6e75ef View commit details
    Browse the repository at this point in the history
  16. [Cloud Security] fix cloud formation pop-up flicker (elastic#191136)

    ## Summary
    
    Summarize your PR. If it involves visual changes include a screenshot or
    gif.
    
    If go to CSPM page and click save and continue, the Cloud Formation Pop
    occasionally flickers and shows Fleet Server host error for one second.
    This PR adds a boolean `isLoadingIntialRequest` for us to wait after
    loading Fleet Server hosts before showing the errors.
    
    [Quick Wins](elastic/security-team#10316)
    
    Locally:
    
    https://github.com/user-attachments/assets/bf393103-9d21-4ddf-96a9-8fc3e9626369
    
    Serverless QA
    
    
    https://github.com/user-attachments/assets/d1877a5a-97ba-4ce6-b87b-177656bdd004
    Omolola-Akinleye authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    5d0acf7 View commit details
    Browse the repository at this point in the history
  17. Add Elena to the hardening manifest (elastic#191197)

    ## Summary
    
    Adds @elena-shostak to the Iron Bank hardening manifest.
    legrego authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    0330c70 View commit details
    Browse the repository at this point in the history
  18. [Synthetics] add aria-live region to add monitor creation flow (elast…

    …ic#191135)
    
    ## Summary
    
    Resolves
    elastic/observability-accessibility#14
    
    ### Testing
    
    1. Turn on your screen reader. For Mac, to turn on voiceover it's
    Command + F5.
    2. Make sure you have a few synthetics monitors created, at least two
    3. Navigate to `synthetics/add-monitor`. Tab to monitor type radio list
    and use the right and left arrow buttons to change the option.
    4. The content of the bottom descriptive callout should be read when
    changing the monitor type
    dominiqueclarke authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    d1b3223 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    af4f482 View commit details
    Browse the repository at this point in the history
  20. Add 5s minRefreshInterval to timefilter with validation (elastic#…

    …188881)
    
    Adds enforcement for the global time filter to limit the min refresh interval.
    nickofthyme authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    94b657e View commit details
    Browse the repository at this point in the history
  21. Add search team as codeowner to inference API tests (elastic#190261)

    Since the Search team wrote this API and has the most context into the
    feature, we are transferring ownership from the AppEx Management team to
    Search.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    Co-authored-by: Elena Stoeva <59341489+ElenaStoeva@users.noreply.github.com>
    4 people authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    e2c234f View commit details
    Browse the repository at this point in the history
  22. [FTR] enable recommended mocha + no-floating-promises ESLint rules (e…

    …lastic#190690)
    
    ## Summary
    
    This PR enforces ESLint rules in FTR tests, in particular:
    - `no-floating-promises` rule to catch unawaited Promises in
    tests/services/page objects
    
    _Why is it important?_
    - Keep correct test execution order: cleanup code may run before the
    async operation is completed, leading to unexpected behavior in
    subsequent tests
    - Accurate test results: If a test completes before an async operation
    (e.g., API request) has finished, Mocha might report the test as passed
    or failed based on incomplete context.
    ```
    198:11  error  Promises must be awaited, end with a call to .catch, end with a call to .then
    with a rejection handler or be explicitly marked as ignored with the `void` operator 
    @typescript-eslint/no-floating-promises
    ```
    <img width="716" alt="Screenshot 2024-08-20 at 14 04 43"
    src="https://github.com/user-attachments/assets/9afffe4c-4b51-4790-964c-c44a76baed1e">
    
    - recommended rules from
    [eslint-mocha-plugin](https://www.npmjs.com/package/eslint-plugin-mocha)
    including:
    -
    [no-async-describe](https://github.com/lo1tuma/eslint-plugin-mocha/blob/main/docs/rules/no-async-describe.md)
    -
    [no-identical-title.md](https://github.com/lo1tuma/eslint-plugin-mocha/blob/main/docs/rules/no-identical-title.md)
    -
    [no-sibling-hooks.md](https://github.com/lo1tuma/eslint-plugin-mocha/blob/main/docs/rules/no-sibling-hooks.md)
    and others
    
    Note for reviewers: some tests were skipped due to failures after
    missing `await` was added. Most likely is a "false positive" case when
    test is finished before async operation is actually completed. Please
    work on fixing and re-enabling it
    
    ---------
    
    Co-authored-by: Tiago Costa <tiago.costa@elastic.co>
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    3 people authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    fa69337 View commit details
    Browse the repository at this point in the history
  23. [Synthetics] waterfall chart - support wildcard search (elastic#191132)

    ## Summary
    
    Resolves elastic#172033
    
    ### Release note
    Enables wildcard search for the Synthetics waterfall chart.
    
    ### Testing
    
    1. Create a browser monitor
    2. Navigate to the waterfall chart
    3. Add a wildcard search in the text box. For example `*.js`. 
    4. You shouldn't see an error, and it should match all requests with
    `.js` in the name
    dominiqueclarke authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    eca2cdc View commit details
    Browse the repository at this point in the history
  24. [Infra] Provide troubleshooting information on the host details page (e…

    …lastic#191104)
    
    Closes elastic#190523 
    ## Summary
    
    This PR provides troubleshooting information in the services section on
    the host details page.
    
    ## Testing
    Go to the hosts details page / host flyout
    - using a host without services monitored with system integration
    
    ![image](https://github.com/user-attachments/assets/5226e4a1-7b19-4a22-b11d-2aae55f543e3)
    
    - using a host without services not monitored with system integration (
    only detected by APM )
    
    ![image](https://github.com/user-attachments/assets/f63513bd-d3f9-41eb-97a6-0011b2d11673)
    
    - icon next to the title (same as the table)
    <img width="1690" alt="image"
    src="https://github.com/user-attachments/assets/b722b61d-29d0-46dd-a3d8-e9f594236bf1">
    
    
    For hosts with services, nothing changes (the service is shown): 
    <img width="474" alt="image"
    src="https://github.com/user-attachments/assets/81f54a1a-485d-4e0b-a746-618fca5a864c">
    jennypavlova authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    3628fda View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    bb7466e View commit details
    Browse the repository at this point in the history
  26. [ES|QL] Auto open suggestions for field lists (elastic#190466)

    ## Summary
    
    Part of elastic#189662
    
    ## Suggests comma and pipe
    
    
    https://github.com/user-attachments/assets/c09bc6fd-20a6-4f42-a871-c70e68e6d81a
    
    ## Doesn't suggest comma when there are no more fields
    
    
    https://github.com/user-attachments/assets/29fce13e-e58b-4d93-bce5-6b1f913b4d92
    
    ## Doesn't work for escaped columns :(
    
    
    https://github.com/user-attachments/assets/3d65f3b9-923d-4c0e-9c50-51dd83115c8b
    
    As part of this effort I discovered
    elastic#191100 and
    elastic#191105, as well as a problem
    with column name validation (see
    elastic#177699)
    
    I think we can revisit column escaping and probably resolve all of these
    issues (issue [here](elastic#191111)).
    
    
    ### Checklist
    
    - [x] [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
    drewdaemon authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    15ef37f View commit details
    Browse the repository at this point in the history
  27. Upgrade FullStory snippet (elastic#189960)

    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    afharo and kibanamachine authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    9ab690e View commit details
    Browse the repository at this point in the history
  28. Update generating_oas_for_http_apis.mdx (elastic#191037)

    
    Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
    lcawl and afharo authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    753f3d9 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    745ecfd View commit details
    Browse the repository at this point in the history
  30. Update dependency @elastic/elasticsearch to ^8.15.0 (main) (elastic#1…

    …90378)
    
    Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
    Co-authored-by: Walter Rafelsberger <walter.rafelsberger@elastic.co>
    4 people authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    68a9244 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    93791da View commit details
    Browse the repository at this point in the history
  32. [Search] Fix aria-label and nesting button inside button (elastic#191070

    )
    
    ## Summary
    
    This adds an aria-label for an icon button, and fixes a warning with a
    button nesting inside a button.
    sphilipse authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    e19c373 View commit details
    Browse the repository at this point in the history
  33. Clean up spacing across SM pages (elastic#191045)

    ## Summary
    
    Changes in this PR include:
    
    _Slight adjustment to search bar spacing (`gap`) on..._
    - Index Management > Indices (tab)
    - Management > Index templates (tab)
    - Rules > Logs
    - Connectors > Logs
    
    _Fix search input to be full width, as intended on..._
    - Connectors > Logs (now matches Rules > Logs)
    
    **Before and after**
    
    ![CleanShot 2024-08-22 at 13 59
    12@2x](https://github.com/user-attachments/assets/f5343d4d-10fa-4b44-a727-1bc98f916016)
    
    
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    ryankeairns authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    eb13866 View commit details
    Browse the repository at this point in the history
  34. [Synthetics] adjust headings on add and edit page (elastic#191189)

    ## Summary
    
    Resolves
    elastic/observability-accessibility#68
    
    Adjusts headings levels on the Monitor Add/Edit page.
    
    Note, the `Observability` heading is out of scope
    
    <img width="1694" alt="Screenshot 2024-08-23 at 9 44 33 AM"
    src="https://github.com/user-attachments/assets/53eb72cb-28ff-43d8-9037-0853525e8228">
    dominiqueclarke authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    74a9c19 View commit details
    Browse the repository at this point in the history
  35. Make stop method of the taskManager plugin async (elastic#191218)

    towards: elastic#189306
    
    This PR fixes the `Deleting current node has failed.`errors mentioned in
    the above issue.
    ersin-erdal authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    5dfa3ec View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    8439196 View commit details
    Browse the repository at this point in the history
  37. [Synthetics] add custom aria labels to synthetics management actions (e…

    …lastic#191140)
    
    ## Summary
    
    Resolves
    elastic/observability-accessibility#33
    
    ### Testing
    
    1. Turn on your screen reader. For Mac, to turn on voiceover it's
    Command + F5.
    2. Make sure you have a few synthetics monitors created, at least two
    3. Navigate to `synthetics/management`. Tab through the monitor list
    until you arrive at the edit, clone, and delete buttons
    4. The label spoken out on the screen reader should indicate which
    monitor you are taking action on, with statements such as "Delete
    monitor X", "Clone monitor X" and "Edit monitor X"
    dominiqueclarke authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    54d5475 View commit details
    Browse the repository at this point in the history
  38. [ES|QL] unskip missing index tests (elastic#191187)

    ## Summary
    
    With elastic/elasticsearch#111712,
    Elasticsearch is again erroring when an index is missing. So, we can
    unskip the test.
    drewdaemon authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    356e146 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    168f564 View commit details
    Browse the repository at this point in the history
  40. Update dependency geckodriver to ^4.4.3 (main) (elastic#191214)

    This PR contains the following updates:
    
    | Package | Type | Update | Change |
    |---|---|---|---|
    |
    [geckodriver](https://togithub.com/webdriverio-community/node-geckodriver)
    | devDependencies | patch | [`^4.4.2` ->
    `^4.4.3`](https://renovatebot.com/diffs/npm/geckodriver/4.4.2/4.4.3) |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>webdriverio-community/node-geckodriver (geckodriver)</summary>
    
    ###
    [`v4.4.3`](https://togithub.com/webdriverio-community/node-geckodriver/releases/tag/v4.4.3):
    Release 4.4.3
    
    [Compare
    Source](https://togithub.com/webdriverio-community/node-geckodriver/compare/v4.4.2...v4.4.3)
    
    - when if connectExisting passed to driver then args shouldn't include
    websocketPort
    ([#&elastic#8203;509](https://togithub.com/webdriverio-community/node-geckodriver/issues/509))
    ([`a4acdea`](https://togithub.com/webdriverio-community/node-geckodriver/commit/a4acdea))
    - chore: update deps
    ([`8cc5bb7`](https://togithub.com/webdriverio-community/node-geckodriver/commit/8cc5bb7))
    - chore(deps-dev): bump
    [@&elastic#8203;types/node](https://togithub.com/types/node) from 22.1.0 to
    22.2.0
    ([#&elastic#8203;512](https://togithub.com/webdriverio-community/node-geckodriver/issues/512))
    ([`868fe28`](https://togithub.com/webdriverio-community/node-geckodriver/commit/868fe28))
    - chore(deps-dev): bump webdriverio from 8.39.1 to 8.40.2
    ([#&elastic#8203;513](https://togithub.com/webdriverio-community/node-geckodriver/issues/513))
    ([`9fdecb6`](https://togithub.com/webdriverio-community/node-geckodriver/commit/9fdecb6))
    - chore(deps-dev): bump tsx from 4.16.5 to 4.17.0
    ([#&elastic#8203;511](https://togithub.com/webdriverio-community/node-geckodriver/issues/511))
    ([`a7d2b5b`](https://togithub.com/webdriverio-community/node-geckodriver/commit/a7d2b5b))
    - chore(deps-dev): bump tsx from 4.16.2 to 4.16.5
    ([#&elastic#8203;506](https://togithub.com/webdriverio-community/node-geckodriver/issues/506))
    ([`c8254cd`](https://togithub.com/webdriverio-community/node-geckodriver/commit/c8254cd))
    - chore(deps-dev): bump husky from 9.1.3 to 9.1.4
    ([#&elastic#8203;508](https://togithub.com/webdriverio-community/node-geckodriver/issues/508))
    ([`3999a09`](https://togithub.com/webdriverio-community/node-geckodriver/commit/3999a09))
    - chore(deps): bump [@&elastic#8203;zip](https://togithub.com/zip).js/zip.js
    from 2.7.47 to 2.7.48
    ([#&elastic#8203;505](https://togithub.com/webdriverio-community/node-geckodriver/issues/505))
    ([`d30131f`](https://togithub.com/webdriverio-community/node-geckodriver/commit/d30131f))
    - chore(deps-dev): bump
    [@&elastic#8203;vitest/coverage-v8](https://togithub.com/vitest/coverage-v8)
    from 2.0.4 to 2.0.5
    ([#&elastic#8203;504](https://togithub.com/webdriverio-community/node-geckodriver/issues/504))
    ([`b56d045`](https://togithub.com/webdriverio-community/node-geckodriver/commit/b56d045))
    - chore(deps-dev): bump
    [@&elastic#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
    from 7.17.0 to 7.18.0
    ([#&elastic#8203;507](https://togithub.com/webdriverio-community/node-geckodriver/issues/507))
    ([`4d9effd`](https://togithub.com/webdriverio-community/node-geckodriver/commit/4d9effd))
    - chore(deps-dev): bump
    [@&elastic#8203;types/node](https://togithub.com/types/node) from 22.0.0 to
    22.1.0
    ([#&elastic#8203;503](https://togithub.com/webdriverio-community/node-geckodriver/issues/503))
    ([`7a30e84`](https://togithub.com/webdriverio-community/node-geckodriver/commit/7a30e84))
    - chore(deps-dev): bump
    [@&elastic#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)
    ([#&elastic#8203;500](https://togithub.com/webdriverio-community/node-geckodriver/issues/500))
    ([`32f98a9`](https://togithub.com/webdriverio-community/node-geckodriver/commit/32f98a9))
    - chore(deps-dev): bump
    [@&elastic#8203;vitest/coverage-v8](https://togithub.com/vitest/coverage-v8)
    from 2.0.3 to 2.0.4
    ([#&elastic#8203;497](https://togithub.com/webdriverio-community/node-geckodriver/issues/497))
    ([`5ca67e1`](https://togithub.com/webdriverio-community/node-geckodriver/commit/5ca67e1))
    - chore(deps-dev): bump
    [@&elastic#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
    from 7.16.1 to 7.17.0
    ([#&elastic#8203;501](https://togithub.com/webdriverio-community/node-geckodriver/issues/501))
    ([`7790925`](https://togithub.com/webdriverio-community/node-geckodriver/commit/7790925))
    - chore(deps-dev): bump typescript from 5.5.3 to 5.5.4
    ([#&elastic#8203;499](https://togithub.com/webdriverio-community/node-geckodriver/issues/499))
    ([`7a63544`](https://togithub.com/webdriverio-community/node-geckodriver/commit/7a63544))
    - chore(deps-dev): bump eslint-plugin-unicorn from 54.0.0 to 55.0.0
    ([#&elastic#8203;496](https://togithub.com/webdriverio-community/node-geckodriver/issues/496))
    ([`82aa202`](https://togithub.com/webdriverio-community/node-geckodriver/commit/82aa202))
    - chore(deps-dev): bump
    [@&elastic#8203;types/node](https://togithub.com/types/node) from 20.14.11 to
    22.0.0
    ([#&elastic#8203;498](https://togithub.com/webdriverio-community/node-geckodriver/issues/498))
    ([`b20e88c`](https://togithub.com/webdriverio-community/node-geckodriver/commit/b20e88c))
    - chore(deps-dev): bump husky from 9.1.1 to 9.1.3
    ([#&elastic#8203;495](https://togithub.com/webdriverio-community/node-geckodriver/issues/495))
    ([`732d85f`](https://togithub.com/webdriverio-community/node-geckodriver/commit/732d85f))
    - chore(deps-dev): bump
    [@&elastic#8203;vitest/coverage-v8](https://togithub.com/vitest/coverage-v8)
    from 2.0.2 to 2.0.3
    ([#&elastic#8203;493](https://togithub.com/webdriverio-community/node-geckodriver/issues/493))
    ([`1c2dbfd`](https://togithub.com/webdriverio-community/node-geckodriver/commit/1c2dbfd))
    - chore(deps-dev): bump
    [@&elastic#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)
    ([#&elastic#8203;489](https://togithub.com/webdriverio-community/node-geckodriver/issues/489))
    ([`0b3994e`](https://togithub.com/webdriverio-community/node-geckodriver/commit/0b3994e))
    - chore(deps-dev): bump husky from 9.0.11 to 9.1.1
    ([#&elastic#8203;494](https://togithub.com/webdriverio-community/node-geckodriver/issues/494))
    ([`255bbe4`](https://togithub.com/webdriverio-community/node-geckodriver/commit/255bbe4))
    - chore(deps-dev): bump
    [@&elastic#8203;types/node](https://togithub.com/types/node) from 20.14.10 to
    20.14.11
    ([#&elastic#8203;490](https://togithub.com/webdriverio-community/node-geckodriver/issues/490))
    ([`f6c3d0f`](https://togithub.com/webdriverio-community/node-geckodriver/commit/f6c3d0f))
    - chore(deps-dev): bump
    [@&elastic#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
    from 7.16.0 to 7.16.1
    ([#&elastic#8203;491](https://togithub.com/webdriverio-community/node-geckodriver/issues/491))
    ([`1492416`](https://togithub.com/webdriverio-community/node-geckodriver/commit/1492416))
    - chore(deps): bump [@&elastic#8203;zip](https://togithub.com/zip).js/zip.js
    from 2.7.45 to 2.7.47
    ([#&elastic#8203;492](https://togithub.com/webdriverio-community/node-geckodriver/issues/492))
    ([`a150be9`](https://togithub.com/webdriverio-community/node-geckodriver/commit/a150be9))
    - chore(deps-dev): bump
    [@&elastic#8203;types/node](https://togithub.com/types/node) from 20.14.9 to
    20.14.10
    ([#&elastic#8203;480](https://togithub.com/webdriverio-community/node-geckodriver/issues/480))
    ([`016be65`](https://togithub.com/webdriverio-community/node-geckodriver/commit/016be65))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - At any time (no schedule defined),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
    rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR has been generated by [Renovate
    Bot](https://togithub.com/renovatebot/renovate).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjUuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOk9wZXJhdGlvbnMiLCJyZWxlYXNlX25vdGU6c2tpcCJdfQ==-->
    
    ---------
    
    Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
    Co-authored-by: Jonathan Budzenski <jon@elastic.co>
    elastic-renovate-prod[bot] and jbudz authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    5ff457c View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    0770e94 View commit details
    Browse the repository at this point in the history
  42. [ES Query] Save ECS keyword group by fields in AAD document (elastic#…

    …191103)
    
    Related to elastic#183220
    
    ## Summary
    
    This PR saves ECS keyword group by fields in AAD document for ES query
    rule.
    
    |Rule|Before|After|
    |---|---|---|
    
    |![image](https://github.com/user-attachments/assets/0ba8699d-44bf-4930-b3f0-33b4ed8a7e0c)|![image](https://github.com/user-attachments/assets/a98d70e5-213e-4dc3-93a7-fa509828d15b)|![image](https://github.com/user-attachments/assets/00a57945-1590-4286-8132-072e19d5866f)|
    
    |![image](https://github.com/user-attachments/assets/8fe39de4-97ac-4a66-8c69-5c2b552b8264)|![image](https://github.com/user-attachments/assets/9f3ec653-fa11-45cc-add0-d1923e68547e)|![image](https://github.com/user-attachments/assets/41ce2028-54f0-4ca4-8d63-0d371819865f)|
    
    ### How to test
    - Create some data with ECS fields
    - For example, you can use synthtrace command: `node scripts/synthtrace
    simple_trace.ts --local --live`
    - Create an ES Query rule grouped by ECS and non-ECS fields
    - In the generated alert, you should be able to see the ECS group by
    field but not the no-ECS ones
    maryam-saeidi authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    8ba84ec View commit details
    Browse the repository at this point in the history
  43. [Cloud Security] Handle Detection Rules and Benchmark rules errors (e…

    …lastic#191150)
    
    ## Summary
    
    This PR addresses the following:
    
    - Handling errors when creating Detection rules
    - Handling errors when muting/unmuting Benchmark rules
    - Handling Alerts pending on loading state when the user doesn't have
    read permission to the Detection Rules alerts index
    (`.alerts-security.alerts-default`).
    - Centralized benchmark rules mutation success/error logic in the
    `useChangeCspRuleState` hook.
    - Fixed benchmark mute API that was disabling only one detection rule
    per benchmark rule.
    
    
    ## Recordings
    
    ### Read Only User (Without .alerts-security.alerts-default read
    permission)
    
    
    https://github.com/user-attachments/assets/bbf153f8-2e33-4449-a25e-7bdf52e45275
    
    ### Read Only User (With .alerts-security.alerts-default read
    permission)
    
    
    https://github.com/user-attachments/assets/c4b69043-ab97-485b-8fdb-17245c44d48b
    
    ### Write permission user
    
    
    https://github.com/user-attachments/assets/954c8b5e-0046-4e7e-a401-787e1b7eb211
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    opauloh and kibanamachine authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    2595182 View commit details
    Browse the repository at this point in the history
  44. chore(NA): avoid more native modules on production dependencies (elas…

    …tic#190183)
    
    This PR is the final step needed for us to re-enable pointer compression
    on serverless.
    
    It introduces a cli later used in a CI check that will prevent the
    addition of new native modules on production as discussed and agreed
    with Luke and Brandon previously.
    
    It also removes the usages of `cbor-x` and replaces those with a
    wrapping package `@kbn/cbor` which relies on the implementation coming
    from `borc` with no native modules involved.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    3 people authored Aug 23, 2024
    Configuration menu
    Copy the full SHA
    433cc1e View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2024

  1. fix(NA): snake case ignore for packages/kbn-check-prod-native-modules…

    …-cli/integration_tests/__fixtures__
    mistic committed Aug 24, 2024
    Configuration menu
    Copy the full SHA
    e5e9b6b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6690bcd View commit details
    Browse the repository at this point in the history
  3. Skip failing serverless discover and visualize tests for MKI (elastic…

    …#191239)
    
    ## Summary
    
    This PR skips the failing serverless discover and visualize tests for
    MKI runs.
    
    For more details, see the corresponding issues elastic#191237 and elastic#191238.
    pheyos authored Aug 24, 2024
    Configuration menu
    Copy the full SHA
    1a72764 View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2024

  1. Configuration menu
    Copy the full SHA
    6b091fe View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Configuration menu
    Copy the full SHA
    7201af3 View commit details
    Browse the repository at this point in the history
  2. Move specific rule up to comply with new linter rules (elastic#190979)

    Closes elastic#190892
    
    Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
    vadimkibana and stratoula authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    c7b1c6e View commit details
    Browse the repository at this point in the history
  3. [Fleet] Clean up feature flag enablePackagesStateMachine (elastic#191052

    )
    
    Closes elastic#189383
    
    ## Summary
    
    In 8.14.0 we added and enabled feature flag
    `enablePackagesStateMachine`. This PR cleans it up as it's been enabled
    since then and we don't need it anymore. Also removing related test
    cases.
    
    ### 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
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    criamico and elasticmachine authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    b2d0846 View commit details
    Browse the repository at this point in the history
  4. [ObsUX][Infra] Improve test in infra adding synthtrace (elastic#190121)

    Closes elastic#189867
    
    #### Summary
    
    This PR improves the use of synthtrace as data generator for infra
    functional test
    
    #### What was done
    
    - update `host.ts` in infra synthtrace client, so it can accept `cpu`
    value as a param, added `core` metrics and the option to create a k8s
    node same as a pod
    - added `k8snode` entity to synthtrace client
    - created `uninstallSystemPackage` method to
    `infra_synthtrace_kibana_client`
    - created a getter for the logs ES client in the test utils
    - update and fix infra funtional tests
    
    #### TODO in follow-up
    
    - remove the use of archives
    - get processes data also with synthtrace
    - create alerts data with synthtrace
    MiriamAparicio authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    c6126d9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3db781d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d0e4390 View commit details
    Browse the repository at this point in the history
  7. [MX] Fix alert table last column size (elastic#190712)

    Issue elastic#186907.
    
    Now even on wide screens, and when there is space after the last column,
    a grey area is not shown, last column extended to meet the full page
    width. We should extend the last column to meet the full page width.
    
    ![Screenshot 2024-08-23 at 14 38
    50](https://github.com/user-attachments/assets/d62151fc-9640-46a8-ba60-2b9bd55deeae)
    
    
    For this part of the task: "Also, we should consider adding a column
    action for users to be able to reset the width of the column" I'll
    create another issue.
    
    How to test:
    1. Create a rule, which will trigger alerts.
    2. Go to Alerts table
    3. Keep only 3-4 fields in the table
    4. Check if the grey area after last field does not exist
    
    ![Screenshot 2024-08-23 at 14 42
    00](https://github.com/user-attachments/assets/dd0eafb8-9261-4180-9829-eecc1685c04f)
    
    ### Checklist
    
    - [x] [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
    guskovaue authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    e6e51cc View commit details
    Browse the repository at this point in the history
  8. [Discover] Hides the menu when no data (elastic#191252)

    ## Summary
    
    Closes elastic#190416
    
    Hides the menu when there is no data.
    stratoula authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    7eb7e97 View commit details
    Browse the repository at this point in the history
  9. [Inference] Minor cleanup and restructure (elastic#191069)

    ## Summary
    
    Fixing and improving a few things I noticed while discovering / ramping
    up on the existing code
    - address some nits
    - extract / reuse some low level functions
    - move things around
    - add unit tests
    pgayvallet authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    56730e8 View commit details
    Browse the repository at this point in the history
  10. [Security Solution][DQD][Tech Debt] Colocate components (elastic#190978)

    addresses elastic#190964
    
    Second in the series of PRs to address general DQD tech debt. Currently
    this PR build on the work of
    elastic#190970.
    
    So this PR restructures components to colocate component throughout the
    hierarchy.
    
    So instead of:
    
    ```bash
    root/
      component1/
      childOfComponent1/
      grandChildOfComponent1/
      component2/
      use_hook_used_for_1/
      use_hook_used_for_2/
    ```
    
    we use:
    
    ```bash
    root/
      component1/
        hooks/
          use_hook_used_for_1/
        childOfComponent1/
          grandChildOfComponent1/
      component2/
        hooks/
          use_hook_used_for_2/
    ```
    
    PROs of such scaffold:
    - complete and clear hierarchical visibility into component structure of
    the entire DQD codebase
    - ability to easily introduce and integrate a new change and calculate
    its impact on the tree of components
    - ability to easily remove colocated functionality without having to
    scout through the convoluted DQD code
    - clear understanding of where shared code should live as opposed to
    know when its shoved into top level by default with other non shared
    code
    - since nesting too deep has an import name readability tax it forces us
    to think about not splitting our components into too many small parts
    but rather keep it balanced, as opposed to now where flat structure
    incentivizes free and cheap fragmentation as seen with component like
    <body />.
    
    CONS:
    
    - import names have too many `../../../../../../../../../`. It is
    fixable by ts paths/webpack aliases, but on the other hand especially if
    there are many of those it's an indication of potential architectural
    smell, that needs to be addressed (which is a PRO).
    
    Imho, overall visibility trumps any cons and facilitates greater ease of
    adding new and changing existing functionality with more confidence.
    
    ## Before
    
    ![image](https://github.com/user-attachments/assets/89062883-c40a-410d-af43-8dbe3e712475)
    
    ## After
    
    ![image](https://github.com/user-attachments/assets/83e33a85-cf3e-4cb1-a56d-c7f4f27a1f37)
    kapral18 authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    dd18bc7 View commit details
    Browse the repository at this point in the history
  11. fix: [Home > Applications > Services > Add Data] Ambiguous links (Lea…

    …rn More) (elastic#191072)
    
    Part of:
    https://github.com/elastic/observability-accessibility/issues/129
    
    This PR addresses only the 'Learn More' section of the reported issue.
    The issue concerning the `Copy` button will be addressed first on the
    EUI side.
    
    # What was changed: 
    
    1. `EuiMarkdownFormat` has been removed in favor of using `EuiLink` and
    `EuiText`.
    2. Required `aria-label` attribute was added
    
    # Screen 
    
    <img width="1117" alt="image"
    src="https://github.com/user-attachments/assets/66865703-92a5-4986-9b4e-573c5bd95fbc">
    alexwizp authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    c52d691 View commit details
    Browse the repository at this point in the history
  12. [StdPerf] kibana:plugin_render_time custom metrics documentation (ela…

    …stic#190421)
    
    This PR aims to document custom metrics usage introduced in
    elastic#189115.
    yngrdyn authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    5fc5b99 View commit details
    Browse the repository at this point in the history
  13. Seal native prototypes on the server (elastic#190716)

    ## Summary
    
    This PR
    [seals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/seal)
    `Object.prototype`, `String.prototype`, `Number.prototype`, and
    `Function.prototype` on the Kibana server, which provides some measure
    of protection against prototype pollution.
    
    <details>
    <summary>The Object.seal() static method seals an object.</summary>
    **note** I currently have this marked as `backport:skip` to reduce the
    risk of regressions in patch releases.
    
    > The Object.seal() static method seals an object. Sealing an object
    [prevents
    extensions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/preventExtensions)
    and makes existing properties non-configurable. A sealed object has a
    fixed set of properties: new properties cannot be added, existing
    properties cannot be removed, their enumerability and configurability
    cannot be changed, and its prototype cannot be re-assigned. Values of
    existing properties can still be changed as long as they are writable.
    seal() returns the same object that was passed in.
    </details>
    
    -----
    
    ## Help, this broke something!
    
    Please let us know by opening an issue. If you need to get your
    environment up and running quickly, you can disable these protections by
    setting the `KBN_UNSAFE_DISABLE_PROTOTYPE_HARDENING` environment
    variable to any truthy value.
    
    This may be interfering with normal functionality if you encounter an
    error similar to:
    > Cannot add property foo, object is not extensible
    
    Where `foo` is some arbitrary string.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    legrego and kibanamachine authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    2ca2f2a View commit details
    Browse the repository at this point in the history
  14. [Security Solution] Fix prebuilt rule duplication logic to copy relat…

    …ed integrations and required fields from the original rule (elastic#191065)
    
    **Fixes: elastic#190628
    **Related to:** elastic#173595,
    elastic#173594
    
    ## Summary
    
    As stated in the bug ticket, when duplicating a prebuilt rule, the
    "Related Integrations" and "Required Fields" values should be inherited
    from the original rule, as it was specified in the Acceptance Criteria
    for elastic#173595 and
    elastic#173594.
    
    This PR:
    
    - Removes the logic that resets these fields to empty arrays for
    duplicated prebuilt rules - we needed this logic in the past because
    these fields were not editable in the UI, but we don't need it anymore.
    - Updates the corresponding unit tests.
    
    ## Screenshots
    
    These screenshots were taken after introducing the fixes.
    
    **Original prebuilt rule:**
    
    <img width="1463" alt="Screenshot_2024-08-23_at_13_25_07"
    src="https://github.com/user-attachments/assets/ad8673f5-aba3-40c8-ae91-bbd7d334b119">
    
    **Duplicated prebuilt rule:**
    
    <img width="1469" alt="Screenshot_2024-08-23_at_13_25_43"
    src="https://github.com/user-attachments/assets/03761a2b-6f53-4bab-bf4c-a71c6860802b">
    
    ### Checklist
    
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [x] [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
    banderror authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    b144c05 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    110ec27 View commit details
    Browse the repository at this point in the history
  16. [Security Solution][DQD][Tech Debt] Refactor top level helpers (elast…

    …ic#191233)
    
    addresses elastic#190964
    
    Third in the series of PRs to address general DQD tech debt
    
    This one builds on previous 2 PRs 
    
    elastic#190970
    elastic#190978 
    
    Gist of changes:
    
    - split top level helpers into series of utils/* files
    - each utils/ file is named after common behavior it export or works
    with.
    - cleanup dead code
    kapral18 authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    ad36040 View commit details
    Browse the repository at this point in the history
  17. [ML] Fix the memory usage chart visibility in the Nodes overview table (

    elastic#190981)
    
    ## Summary
    
    Fixes the memory usage chart visibility in the Nodes overview table 
    
    ### 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
    darnautov authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    b0beec1 View commit details
    Browse the repository at this point in the history
  18. [Infra] Fix react query closing x in a non development env (elastic#1…

    …91276)
    
    Closes [elastic#190220](elastic#190220)
    
    ## Summary
    
    This PR removes the `x` icon used to close the react query dev tools
    which appeared in a non-development environment by restricting it to
    appear only in development mode.
    
    | before | after |
    |-------|-------|
    | <img width="1907" alt="image"
    src="https://github.com/user-attachments/assets/28e68139-8f8b-4f13-aea3-76f9971b1ac0">
    | <img width="1902" alt="image"
    src="https://github.com/user-attachments/assets/7649f310-c531-4a01-aae4-c423c811cc48">
    |
    
    In a development environment, the icon stays and works as before: 
    
    <img width="1890" alt="image"
    src="https://github.com/user-attachments/assets/a7cd7479-f1cd-4504-812d-b3ade903dfb7">
    jennypavlova authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    746662e View commit details
    Browse the repository at this point in the history
  19. Update jest (main) (elastic#173227)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
    renovate[bot] and afharo authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    1397256 View commit details
    Browse the repository at this point in the history
  20. [MX] Fix flaky tests for severity component (elastic#191202)

    Issue: elastic#188951
    
    Fix flaky test:
    x-pack/plugins/cases/public/components/case_form_fields/severity.test.tsx
    
    It seems that this wrapper `createAppMockRenderer` is very slow. But we
    do not need it for this small and simple component. So I just deleted it
    from the test and use common `render` instead.
    guskovaue authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    f8e88df View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    7559e60 View commit details
    Browse the repository at this point in the history
  22. [ResponseOps][RuleRegistry] alerts indices broken if Kibana startup p…

    …auses for > 20m (elastic#190272)
    
    ## Summary
    
    We saw a stateful project which had a pause of 46m from when Kibana
    started, to when it completed. It appears ES must have been inaccessible
    during that time and the rule registry was not able to install the
    alerting resources. This PR uses an observable from Core to wait to
    install the alerting resources until ES is ready.
    
    
    ### 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
    
    
    ### To verify
    
    - Start Kibana without starting ES
    ```
    yarn start --logging.root.level=debug
    ```
    - Verify that the alerting resources are not installed, you should not
    see this debug log `Initializing resources for AlertsService`
    - Start ES and verify that the resources are installed, and you see the
    log above
    doakalexi authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    252c728 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    3b585b0 View commit details
    Browse the repository at this point in the history
  24. [Response Ops][Task Manager] Add new configurable values (elastic#190934

    )
    
    Resolves elastic#190734
    
    ## Summary
    
    Making the following configurable:
    - discovery interval for new discovery service
    - lookback time when querying for active nodes in discovery service
    - kibanas per partition for new partitioning functionality
    ymao1 authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    1ee45da View commit details
    Browse the repository at this point in the history
  25. [EDR Workflows] Fix breakpoints on protections settings cards in Fleet (

    elastic#191262)
    
    Due to the lack of a defined xxl breakpoint, the protection card's
    toggle is not displayed on the Fleet integration page.
    
    
    https://github.com/user-attachments/assets/59b19051-997d-4fba-84e9-56dca45cf91e
    
    With addition of `xxl` breakpoint condition for `EuiShowFor` component
    the view is being rendered as expected
    
    
    https://github.com/user-attachments/assets/6933269d-f266-4096-8bf1-4234cd7b2302
    
    No regression was observed on the Security Management pages.
    
    
    https://github.com/user-attachments/assets/a0f412a6-daa9-4595-8293-2d44aae3078a
    
    Works as expected on `8.15` branch.
    szwarckonrad authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    64b79d7 View commit details
    Browse the repository at this point in the history
  26. deleteAllDocuments

    stephmilovic committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    cbf632f View commit details
    Browse the repository at this point in the history
  27. rm waitFor connector

    stephmilovic committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    5880efa View commit details
    Browse the repository at this point in the history
  28. [Timeline] Events request end tracking (elastic#191289)

    ## Summary
    
    Bring APM `endTracking` calls back in the timeline events request, since
    they were accidentally removed
    [here](elastic@f1dc15a#diff-982a0a7f37bfa4c40cc92dc21648118bb152723ad895d932da368341ddea1628L263)
    semd authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    a1e216b View commit details
    Browse the repository at this point in the history
  29. [Automatic Import] Prepare to support more connectors (elastic#191278)

    This PR does not add any functionality, it adds interfaces to the
    expected parameters from get*Graph and its graph nodes.
    This is so it will be much easier extend this later when we might need
    to add/switch types over a whole graph like we would have needed when
    adding more connectors.
    
    The PR touches a lot of files, but does not add/remove/change any
    functionality at all, and the current expected function arguments are
    the same, just the format is a bit different to better align with how
    other plugins are doing it.
    
    
    
    - [x] [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.
    P1llus authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    791f638 View commit details
    Browse the repository at this point in the history
  30. Update diagnostic callout message (elastic#191074)

    Fixes elastic#191073
    
    ---------
    
    Co-authored-by: David Kilfoyle <41695641+kilfoyle@users.noreply.github.com>
    jlind23 and kilfoyle authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    2e131b2 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    bad024d View commit details
    Browse the repository at this point in the history
  32. [ResponseOps][TaskManager] fix limited concurrency starvation in mget…

    … task claimer (elastic#187809)
    
    resolves elastic#184937
    
    ## Summary
    
    Fixes problem with limited concurrency tasks potentially starving
    unlimited concurrency tasks, by using `_msearch` to search limited
    concurrency tasks separately from unlimited concurrency tasks.
    
    ### 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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    Co-authored-by: Mike Cote <michel.cote@elastic.co>
    3 people authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    d3fdb7d View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    5314f3d View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    6f49730 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    00e8ebf View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    a7d6a03 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    dbc4a29 View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    9ea2adb View commit details
    Browse the repository at this point in the history
  39. [Search][Onboarding] Empty State page endpoints (elastic#191229)

    ## Summary
    
    This PR introduces two endpoints for the `search_indices` plugin that
    will be used by the start (empty state) page to determine if the user
    has an indices and what their permissions are.
    
    ### Checklist
    
    - [x] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    TattdCodeMonkey and kibanamachine authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    486df8c View commit details
    Browse the repository at this point in the history
  40. [EuiProvider / Functional tests] Check for EuiProvider Dev Warning (e…

    …lastic#189018)
    
    ## Summary
    
    Follows elastic#184608
    Closes elastic/kibana-team#805
    
    
    ![image](https://github.com/user-attachments/assets/eaee5b81-c1e9-4e81-9018-db57652236dc)
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    tsullivan and kibanamachine authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    dc7e3ec View commit details
    Browse the repository at this point in the history
  41. [Fleet UI] Set flag for traces in Agent policy's monitoring configu…

    …ration (elastic#191139)
    
    ## Summary
    
    This PR sets the `traces` boolean flag in an Agent policy's monitoring
    configuration if `traces` was included in the `monitoring_enabled`
    array.
    ycombinator authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    d1cc0cb View commit details
    Browse the repository at this point in the history
  42. [Detection Engine] Update toast message for adding exception (elastic…

    …#191032)
    
    ## Summary
    
    Addresses elastic#156246
    
    Updates exception toast message to accurately reflect when it's an
    endpoint exception.
    yctercero authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    cbc8f17 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    4d5b1fa View commit details
    Browse the repository at this point in the history
  44. Add Kibana Dev Container (elastic#188887)

    ## Summary
    - Closes elastic/kibana-operations#101
    
    This PR adds a [Dev Container](https://containers.dev/) to utilize for
    Kibana local development in an isolated environment. The original
    intention was to create a local environment for FIPS development because
    setting up Kibana in FIPS mode is complicated and has the potential to
    break the user's OS. However, it has been altered to allow for general
    development if an engineer chooses as well. The idea is for this be a
    cost efficient replacement for
    [kibana-remote-dev](https://github.com/elastic/kibana-remote-dev)
    eventually.
    
    ### Testing
    - In VS Code you should be able to use the `Dev Containers: Clone GitHub
    Pull Request in Named Container Volume...` command from the Command
    Palette (F1) to easily test this PR.
    - See the
    [docs](https://github.com/elastic/kibana/blob/bd125fc230f06848d62a564dc88d8abfb4f13e88/dev_docs/getting_started/setting_up_a_development_env.mdx#using-the-kibana-dev-container-optional)
    for additional information on setting up the Dev Container.
    
    
    ### Bazel
    I tried many different solutions to copy the local Bazel cache into the
    container to speed up bootstrap, but it either would break Bazel or
    didn't provide any meaningful boost in performance. I opted to forgo
    keeping it in this PR due to the complexity and since we're planning to
    phase out Bazel in the future anyways.
    Ikuni17 authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    d07ffe2 View commit details
    Browse the repository at this point in the history
  45. [Unified Search][Lens] Focus selectable search inputs in dropdowns (e…

    …lastic#191213)
    
    ## Summary
    
    Adds `autoFocus` search input in dropdown for the global **Data view**
    selector and the **Lens chart switch**. Now clicking on either dropdown,
    the focus will automatically be on the input for the user to start
    typing to filter selectable items. This does not change the tab indexing
    of the surrounding elements.
    
    ### Data view picker
    
    ![Zight Recording 2024-08-23 at 09 11 47
    AM](https://github.com/user-attachments/assets/c5cf9981-4e79-4216-b1ae-0ef5da8fe62a)
    
    ### Lens chart switch
    
    ![Zight Recording 2024-08-23 at 09 14 09
    AM](https://github.com/user-attachments/assets/7fb117b5-0bb7-4204-a606-264ce12a1f6d)
    
    closes elastic#189686
    
    ### 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
    - [x] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [x] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [x] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
    3 people authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    64f1ae6 View commit details
    Browse the repository at this point in the history
  46. [ci] Add CodeQL pipeline (elastic#191293)

    Only a placeholder for the moment
    
    elastic#150521
    jbudz authored Aug 26, 2024
    Configuration menu
    Copy the full SHA
    6538c09 View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    c361abd View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2024

  1. [Response Ops][Maintenance Window] Fix MW bug where rules that genera…

    …te multiple alerts only has 1 alert that gets muted (elastic#190935)
    
    ## Summary
    Issue: elastic#190750
    
    Fix a bug with maintenance window where only 1 alert from a rule that
    generates multiple alerts has the maintenance window ID associated. The
    fix was to remove a `size` field (not sure why that was there).
    
    To verify:
    1. Create an active maintenance window with conditional filter
    2. Create a rule that matches the maintenance window filter and let it
    generate multiple alerts (I use ES query rule on the task_manager index
    with runAt as timefield. Then use groupBy on the runAt field.).
    3. Assert that all of the alerts generated have the maintenance window
    ID associated with it
    
    ### Checklist
    - [x] [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
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    JiaweiWu and elasticmachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    d0319c6 View commit details
    Browse the repository at this point in the history
  2. Update renovate config (elastic#191304)

    ## Summary
    
    Update the renovate configuration by migrating deprecated configuration
    to supported configuration.
    
    This was generated using the instructions found in
    https://docs.renovatebot.com/config-validation/:
    
    ```sh
    npx --yes --package renovate -- renovate-config-validator --strict
    ```
    
    <details>
    <summary>View full output</summary>
    ```
     INFO: Validating renovate.json
     WARN: Config migration necessary
           "oldConfig": {
             "$schema": "https://docs.renovatebot.com/renovate-schema.json",
             "extends": [
               "config:recommended",
               "helpers:pinGitHubActionDigests",
               "helpers:pinGitHubActionDigestsToSemver"
             ],
             "ignorePaths": ["**/__fixtures__/**", "**/fixtures/**"],
             "enabledManagers": ["npm", "github-actions", "custom.regex"],
             "baseBranches": ["main", "7.17"],
             "prConcurrentLimit": 0,
             "prHourlyLimit": 0,
             "separateMajorMinor": false,
             "rangeStrategy": "bump",
             "semanticCommits": "disabled",
             "vulnerabilityAlerts": {"enabled": false},
             "lockFileMaintenance": {"enabled": false},
             "packageRules": [
               {"matchDepPatterns": [".*"], "enabled": false},
               {
                 "groupName": "chainguard",
                 "matchPackageNames": ["docker.elastic.co/wolfi/chainguard-base"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "enabled": true
               },
               {
                 "groupName": "operations actions",
                 "matchManagers": ["github-actions"],
                 "matchPackageNames": [
                   "actions/checkout",
                   "elastic/github-actions/project-assigner",
                   "hmarr/auto-approve-action",
                   "octokit/graphql-action",
                   "sergeysova/jq-action",
                   "sourenlouv/backport"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "backport:all-open", "release_note:skip"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/charts",
                 "matchDepNames": ["@elastic/charts"],
                 "reviewers": ["team:visualizations", "markov00", "nickofthyme"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "Team:Visualizations"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/elasticsearch",
                 "matchDepNames": ["@elastic/elasticsearch"],
                 "reviewers": ["team:kibana-operations", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:skip",
                   "Team:Operations",
                   "Team:Core"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/elasticsearch",
                 "matchDepNames": ["@elastic/elasticsearch"],
                 "reviewers": ["team:kibana-operations", "team:kibana-core"],
                 "matchBaseBranches": ["7.17"],
                 "labels": [
                   "release_note:skip",
                   "Team:Operations",
                   "Team:Core",
                   "backport:skip"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "LaunchDarkly",
                 "matchDepNames": [
                   "launchdarkly-js-client-sdk",
                   "@launchdarkly/node-server-sdk",
                   "launchdarkly/find-code-references"
                 ],
                 "reviewers": ["team:kibana-security", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "Team:Security",
                   "Team:Core",
                   "backport:prev-minor"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "APM",
                 "matchDepNames": [
                   "elastic-apm-node",
                   "@elastic/apm-rum",
                   "@elastic/apm-rum-react"
                 ],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/ebt",
                 "matchDepNames": ["@elastic/ebt"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "ansi-regex",
                 "matchDepNames": ["ansi-regex"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "OpenAPI Spec",
                 "matchDepNames": ["@redocly/cli"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "babel",
                 "matchDepNames": ["@types/babel__core", "/^@babel/", "/^babel-plugin/"],
                 "matchDepPatterns": ["^@babel", "^babel-plugin"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "typescript",
                 "matchDepNames": ["typescript", "@types/jsdom"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "prettier",
                 "matchDepNames": [
                   "prettier",
                   "eslint-plugin-prettier",
                   "eslint-config-prettier"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<3.0",
                 "enabled": true
               },
               {
                 "groupName": "typescript-eslint",
                 "matchDepPatterns": ["^@typescript-eslint"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "eslint-plugin-depend",
                 "matchDepPatterns": ["eslint-plugin-depend"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "polyfills",
                 "matchDepNames": ["core-js", "/polyfill/"],
                 "matchDepPatterns": ["polyfill"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "CLI tooling",
                 "matchDepNames": ["listr2"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "backport:all-open", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "vega related modules",
                 "matchDepNames": [
                   "vega",
                   "vega-lite",
                   "vega-schema-url-parser",
                   "vega-tooltip"
                 ],
                 "reviewers": ["team:kibana-visualizations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Feature:Vega", "Team:Visualizations"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "cypress",
                 "matchDepPatterns": ["cypress"],
                 "reviewers": ["Team:apm", "Team: SecuritySolution"],
                 "matchBaseBranches": ["main"],
                 "labels": ["buildkite-ci", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "security solution modules",
                 "matchDepNames": ["zod", "langchain"],
                 "reviewers": ["Team: SecuritySolution"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team: SecuritySolution"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "platform security modules",
                 "matchDepNames": [
                   "css.escape",
                   "node-forge",
                   "formik",
                   "@types/node-forge",
                   "require-in-the-middle",
                   "tough-cookie",
                   "@types/tough-cookie",
                   "xml-crypto",
                   "@types/xml-crypto",
                   "@kayahr/text-encoding"
                 ],
                 "reviewers": ["team:kibana-security"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Security", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "CodeQL",
                 "matchDepNames": [
                   "github/codeql-action/analyze",
                   "github/codeql-action/init"
                 ],
                 "reviewers": ["team:kibana-security"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Security", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "ftr",
                 "matchDepNames": [
                   "@types/chromedriver",
                   "@types/selenium-webdriver",
                   "chromedriver",
                   "geckodriver",
                   "ms-chromium-edge-driver",
                   "selenium-webdriver"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "scss",
                 "matchDepNames": ["sass-embedded"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "minify",
                 "matchDepNames": ["gulp-terser", "terser"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "@testing-library",
                 "matchDepNames": [
                   "@testing-library/dom",
                   "@testing-library/jest-dom",
                   "@testing-library/react",
                   "@testing-library/react-hooks",
                   "@testing-library/user-event",
                   "@types/testing-library__jest-dom"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "jest",
                 "matchDepNames": [
                   "@jest/console",
                   "@jest/reporters",
                   "@jest/types",
                   "babel-jest",
                   "expect",
                   "jest",
                   "jest-cli",
                   "jest-config",
                   "jest-diff",
                   "jest-environment-jsdom",
                   "jest-matcher-utils",
                   "jest-mock",
                   "jest-runtime",
                   "jest-snapshot"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "@storybook",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "matchDepPatterns": ["^@storybook"],
                 "excludeDepNames": ["@storybook/testing-react"],
                 "labels": [
                   "Team:Operations",
                   "release_note:skip",
                   "ci:build-storybooks",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<7.0",
                 "enabled": true
               },
               {
                 "groupName": "@storybook/testing-react",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "matchDepNames": ["@storybook/testing-react"],
                 "labels": [
                   "Team:Operations",
                   "release_note:skip",
                   "ci:build-storybooks",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<2.0",
                 "enabled": true
               },
               {
                 "groupName": "react-query",
                 "matchDepNames": [
                   "@tanstack/react-query",
                   "@tanstack/react-query-devtools"
                 ],
                 "reviewers": [
                   "team:response-ops",
                   "team:kibana-cloud-security-posture",
                   "team:security-asset-management",
                   "team:fleet",
                   "team:awp-platform",
                   "team:security-onboarding-and-lifecycle-mgt"
                 ],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "react-hook-form",
                 "matchDepNames": ["react-hook-form"],
                 "reviewers": ["team:security-asset-management", "team:uptime"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "redux",
                 "matchDepNames": ["redux", "react-redux"],
                 "reviewers": [
                   "team:search-kibana",
                   "team:kibana-presentation",
                   "team:kibana-data-discovery",
                   "team:kibana-management",
                   "team:kibana-gis",
                   "team:security-solution"
                 ],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Profiling",
                 "matchDepNames": ["peggy", "@types/dagre"],
                 "reviewers": ["team:obs-ux-infra_services-team"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "TTY Output",
                 "matchDepNames": ["xterm", "byte-size", "@types/byte-size"],
                 "reviewers": ["team:sec-cloudnative-integrations"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "Team: AWP: Visualization",
                   "release_note:skip",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Cloud Defend",
                 "matchDepNames": ["monaco-yaml"],
                 "reviewers": ["team:sec-cloudnative-integrations"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "Team: Cloud Native Integrations",
                   "release_note:skip",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "JSON Web Token",
                 "matchDepNames": ["jsonwebtoken"],
                 "reviewers": ["team:response-ops", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "XState",
                 "matchDepNames": ["xstate", "@xstate/{/,}**"],
                 "matchDepPrefixes": ["@xstate/"],
                 "reviewers": ["team:obs-ux-logs-team"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Obs UX Logs", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "OpenTelemetry modules",
                 "matchDepPrefixes": ["@opentelemetry/"],
                 "reviewers": ["team:stack-monitoring"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Monitoring"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "csp",
                 "matchDepNames": ["content-security-policy-parser"],
                 "reviewers": ["team:kibana-security", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:skip",
                   "ci:serverless-test-all"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "AlertingEmails",
                 "matchDepNames": ["nodemailer"],
                 "reviewers": ["team:response-ops"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:prev-minor"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Kibana ES|QL Team",
                 "matchDepNames": ["recast"],
                 "reviewers": ["team:kibana-esql"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:ESQL", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "MSW",
                 "matchPackageNames": ["msw"],
                 "reviewers": ["team:kibana-cloud-security-posture"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team: Cloud Security", "release_note:skip", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "re2js",
                 "matchDepNames": ["re2js"],
                 "reviewers": ["team:visualizations", "dej611"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:all-open",
                   "Team:Visualizations"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "Serve swagger docs",
                 "matchDepNames": ["express", "swagger-jsdoc", "swagger-ui-express"],
                 "reviewers": ["team:obs-entities"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "team:obs-entities"],
                 "enabled": true
               }
             ],
             "customManagers": [
               {
                 "description": "Update Wolfi base image",
                 "customType": "regex",
                 "fileMatch": [
                   "^src/dev/build/tasks/os_packages/docker_generator/run\\.ts$"
                 ],
                 "matchStrings": [
                   "(?<depName>docker\\.elastic\\.co/wolfi/chainguard-base):(?<currentValue>[-a-zA-Z0-9.]+)?(?:@(?<currentDigest>sha256:[a-fA-F0-9]+))?"
                 ],
                 "datasourceTemplate": "docker"
               },
               {
                 "description": "Update pipelib image",
                 "customType": "regex",
                 "fileMatch": [
                   "^\\.buildkite/pipeline-resource-definitions/scripts/validate-pipeline-definition\\.sh$",
                   "^\\.buildkite/scripts/steps/checks/renovate\\.sh$"
                 ],
                 "matchStrings": [
                   "(?<depName>docker\\.elastic\\.co/ci-agent-images/pipelib):(?<currentValue>[-a-zA-Z0-9.]+)?(?:@(?<currentDigest>sha256:[a-fA-F0-9]+))?"
                 ],
                 "datasourceTemplate": "docker"
               }
             ]
           },
           "newConfig": {
             "$schema": "https://docs.renovatebot.com/renovate-schema.json",
             "extends": [
               "config:recommended",
               "helpers:pinGitHubActionDigests",
               "helpers:pinGitHubActionDigestsToSemver"
             ],
             "ignorePaths": ["**/__fixtures__/**", "**/fixtures/**"],
             "enabledManagers": ["npm", "github-actions", "custom.regex"],
             "baseBranches": ["main", "7.17"],
             "prConcurrentLimit": 0,
             "prHourlyLimit": 0,
             "separateMajorMinor": false,
             "rangeStrategy": "bump",
             "semanticCommits": "disabled",
             "vulnerabilityAlerts": {"enabled": false},
             "lockFileMaintenance": {"enabled": false},
             "packageRules": [
               {"enabled": false, "matchDepNames": ["/.*/"]},
               {
                 "groupName": "chainguard",
                 "matchPackageNames": ["docker.elastic.co/wolfi/chainguard-base"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "enabled": true
               },
               {
                 "groupName": "operations actions",
                 "matchManagers": ["github-actions"],
                 "matchPackageNames": [
                   "actions/checkout",
                   "elastic/github-actions/project-assigner",
                   "hmarr/auto-approve-action",
                   "octokit/graphql-action",
                   "sergeysova/jq-action",
                   "sourenlouv/backport"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "backport:all-open", "release_note:skip"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/charts",
                 "matchDepNames": ["@elastic/charts"],
                 "reviewers": ["team:visualizations", "markov00", "nickofthyme"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "Team:Visualizations"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/elasticsearch",
                 "matchDepNames": ["@elastic/elasticsearch"],
                 "reviewers": ["team:kibana-operations", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:skip",
                   "Team:Operations",
                   "Team:Core"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/elasticsearch",
                 "matchDepNames": ["@elastic/elasticsearch"],
                 "reviewers": ["team:kibana-operations", "team:kibana-core"],
                 "matchBaseBranches": ["7.17"],
                 "labels": [
                   "release_note:skip",
                   "Team:Operations",
                   "Team:Core",
                   "backport:skip"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "LaunchDarkly",
                 "matchDepNames": [
                   "launchdarkly-js-client-sdk",
                   "@launchdarkly/node-server-sdk",
                   "launchdarkly/find-code-references"
                 ],
                 "reviewers": ["team:kibana-security", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "Team:Security",
                   "Team:Core",
                   "backport:prev-minor"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "APM",
                 "matchDepNames": [
                   "elastic-apm-node",
                   "@elastic/apm-rum",
                   "@elastic/apm-rum-react"
                 ],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "@elastic/ebt",
                 "matchDepNames": ["@elastic/ebt"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "ansi-regex",
                 "matchDepNames": ["ansi-regex"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "OpenAPI Spec",
                 "matchDepNames": ["@redocly/cli"],
                 "reviewers": ["team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "Team:Core", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "babel",
                 "matchDepNames": ["@types/babel__core", "/^@babel/", "/^babel-plugin/"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "typescript",
                 "matchDepNames": ["typescript", "@types/jsdom"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "prettier",
                 "matchDepNames": [
                   "prettier",
                   "eslint-plugin-prettier",
                   "eslint-config-prettier"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<3.0",
                 "enabled": true
               },
               {
                 "groupName": "typescript-eslint",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true,
                 "matchDepNames": ["/^@typescript-eslint/"]
               },
               {
                 "groupName": "eslint-plugin-depend",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true,
                 "matchDepNames": ["/eslint-plugin-depend/"]
               },
               {
                 "groupName": "polyfills",
                 "matchDepNames": ["core-js", "/polyfill/"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "CLI tooling",
                 "matchDepNames": ["listr2"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "backport:all-open", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "vega related modules",
                 "matchDepNames": [
                   "vega",
                   "vega-lite",
                   "vega-schema-url-parser",
                   "vega-tooltip"
                 ],
                 "reviewers": ["team:kibana-visualizations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Feature:Vega", "Team:Visualizations"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "cypress",
                 "reviewers": ["Team:apm", "Team: SecuritySolution"],
                 "matchBaseBranches": ["main"],
                 "labels": ["buildkite-ci", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true,
                 "matchDepNames": ["/cypress/"]
               },
               {
                 "groupName": "security solution modules",
                 "matchDepNames": ["zod", "langchain"],
                 "reviewers": ["Team: SecuritySolution"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team: SecuritySolution"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "platform security modules",
                 "matchDepNames": [
                   "css.escape",
                   "node-forge",
                   "formik",
                   "@types/node-forge",
                   "require-in-the-middle",
                   "tough-cookie",
                   "@types/tough-cookie",
                   "xml-crypto",
                   "@types/xml-crypto",
                   "@kayahr/text-encoding"
                 ],
                 "reviewers": ["team:kibana-security"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Security", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "CodeQL",
                 "matchDepNames": [
                   "github/codeql-action/analyze",
                   "github/codeql-action/init"
                 ],
                 "reviewers": ["team:kibana-security"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Security", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "ftr",
                 "matchDepNames": [
                   "@types/chromedriver",
                   "@types/selenium-webdriver",
                   "chromedriver",
                   "geckodriver",
                   "ms-chromium-edge-driver",
                   "selenium-webdriver"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "scss",
                 "matchDepNames": ["sass-embedded"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "minify",
                 "matchDepNames": ["gulp-terser", "terser"],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "@testing-library",
                 "matchDepNames": [
                   "@testing-library/dom",
                   "@testing-library/jest-dom",
                   "@testing-library/react",
                   "@testing-library/react-hooks",
                   "@testing-library/user-event",
                   "@types/testing-library__jest-dom"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "jest",
                 "matchDepNames": [
                   "@jest/console",
                   "@jest/reporters",
                   "@jest/types",
                   "babel-jest",
                   "expect",
                   "jest",
                   "jest-cli",
                   "jest-config",
                   "jest-diff",
                   "jest-environment-jsdom",
                   "jest-matcher-utils",
                   "jest-mock",
                   "jest-runtime",
                   "jest-snapshot"
                 ],
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Operations", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "@storybook",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "Team:Operations",
                   "release_note:skip",
                   "ci:build-storybooks",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<7.0",
                 "enabled": true,
                 "matchDepNames": ["/^@storybook/", "!@storybook/testing-react"]
               },
               {
                 "groupName": "@storybook/testing-react",
                 "reviewers": ["team:kibana-operations"],
                 "matchBaseBranches": ["main"],
                 "matchDepNames": ["@storybook/testing-react"],
                 "labels": [
                   "Team:Operations",
                   "release_note:skip",
                   "ci:build-storybooks",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "allowedVersions": "<2.0",
                 "enabled": true
               },
               {
                 "groupName": "react-query",
                 "matchDepNames": [
                   "@tanstack/react-query",
                   "@tanstack/react-query-devtools"
                 ],
                 "reviewers": [
                   "team:response-ops",
                   "team:kibana-cloud-security-posture",
                   "team:security-asset-management",
                   "team:fleet",
                   "team:awp-platform",
                   "team:security-onboarding-and-lifecycle-mgt"
                 ],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "react-hook-form",
                 "matchDepNames": ["react-hook-form"],
                 "reviewers": ["team:security-asset-management", "team:uptime"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "redux",
                 "matchDepNames": ["redux", "react-redux"],
                 "reviewers": [
                   "team:search-kibana",
                   "team:kibana-presentation",
                   "team:kibana-data-discovery",
                   "team:kibana-management",
                   "team:kibana-gis",
                   "team:security-solution"
                 ],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip", "ci:all-cypress-suites"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Profiling",
                 "matchDepNames": ["peggy", "@types/dagre"],
                 "reviewers": ["team:obs-ux-infra_services-team"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "TTY Output",
                 "matchDepNames": ["xterm", "byte-size", "@types/byte-size"],
                 "reviewers": ["team:sec-cloudnative-integrations"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "Team: AWP: Visualization",
                   "release_note:skip",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Cloud Defend",
                 "matchDepNames": ["monaco-yaml"],
                 "reviewers": ["team:sec-cloudnative-integrations"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "Team: Cloud Native Integrations",
                   "release_note:skip",
                   "backport:skip"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "JSON Web Token",
                 "matchDepNames": ["jsonwebtoken"],
                 "reviewers": ["team:response-ops", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:all-open"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "XState",
                 "matchDepNames": ["xstate", "@xstate/{/,}**"],
                 "reviewers": ["team:obs-ux-logs-team"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Obs UX Logs", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "OpenTelemetry modules",
                 "reviewers": ["team:stack-monitoring"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:Monitoring"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true,
                 "matchDepNames": ["@opentelemetry/{/,}**"]
               },
               {
                 "groupName": "csp",
                 "matchDepNames": ["content-security-policy-parser"],
                 "reviewers": ["team:kibana-security", "team:kibana-core"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:skip",
                   "ci:serverless-test-all"
                 ],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "AlertingEmails",
                 "matchDepNames": ["nodemailer"],
                 "reviewers": ["team:response-ops"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "backport:prev-minor"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "Kibana ES|QL Team",
                 "matchDepNames": ["recast"],
                 "reviewers": ["team:kibana-esql"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team:ESQL", "release_note:skip"],
                 "minimumReleaseAge": "7 days",
                 "enabled": true
               },
               {
                 "groupName": "MSW",
                 "matchPackageNames": ["msw"],
                 "reviewers": ["team:kibana-cloud-security-posture"],
                 "matchBaseBranches": ["main"],
                 "labels": ["Team: Cloud Security", "release_note:skip", "backport:skip"],
                 "enabled": true
               },
               {
                 "groupName": "re2js",
                 "matchDepNames": ["re2js"],
                 "reviewers": ["team:visualizations", "dej611"],
                 "matchBaseBranches": ["main"],
                 "labels": [
                   "release_note:skip",
                   "backport:all-open",
                   "Team:Visualizations"
                 ],
                 "enabled": true
               },
               {
                 "groupName": "Serve swagger docs",
                 "matchDepNames": ["express", "swagger-jsdoc", "swagger-ui-express"],
                 "reviewers": ["team:obs-entities"],
                 "matchBaseBranches": ["main"],
                 "labels": ["release_note:skip", "team:obs-entities"],
                 "enabled": true
               }
             ],
             "customManagers": [
               {
                 "description": "Update Wolfi base image",
                 "customType": "regex",
                 "fileMatch": [
                   "^src/dev/build/tasks/os_packages/docker_generator/run\\.ts$"
                 ],
                 "matchStrings": [
                   "(?<depName>docker\\.elastic\\.co/wolfi/chainguard-base):(?<currentValue>[-a-zA-Z0-9.]+)?(?:@(?<currentDigest>sha256:[a-fA-F0-9]+))?"
                 ],
                 "datasourceTemplate": "docker"
               },
               {
                 "description": "Update pipelib image",
                 "customType": "regex",
                 "fileMatch": [
                   "^\\.buildkite/pipeline-resource-definitions/scripts/validate-pipeline-definition\\.sh$",
                   "^\\.buildkite/scripts/steps/checks/renovate\\.sh$"
                 ],
                 "matchStrings": [
                   "(?<depName>docker\\.elastic\\.co/ci-agent-images/pipelib):(?<currentValue>[-a-zA-Z0-9.]+)?(?:@(?<currentDigest>sha256:[a-fA-F0-9]+))?"
                 ],
                 "datasourceTemplate": "docker"
               }
             ]
           }
    ```
    </details>
    
    ------
    
    This PR has 2 commits:
    1. `7039eaf25b5334ca798e9c16ba75b5d5511c8138`: contains only whitespace
    changes, in order to make the resulting diff easier to digest.
    2. `da12693c107e3e2b6aeacb21c75812b1a2200497`: the actual config
    migration.
    legrego authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    f544fb0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9854680 View commit details
    Browse the repository at this point in the history
  4. [Cloud Security] Misconfiguration preview & Refactor CSP Plugin to in…

    …clude new package PHASE 2 (elastic#190933)
    
    ## Summary
    
    The previous elastic#190105 was way too
    big and made it hard to review without missing any bugs or potential
    bugs, Thus we decided we are going to make series of smaller PR to make
    things more manageable
    
    We will be splitting it into 4 PR
    Phase 1: Creating empty packages for csp and csp-common
    Phase 2: Move Types from CSP plugin to the Package + Deleting duplicates
    in the CSP plugin where possible
    Phase 3: Move Functions, Utils or Helpers, Hooks to Package
    Phase 4: Misconfiguration Preview feature (with Cypress test and other
    required test)
    
    This is **Phase 2** of the Process
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    animehart and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    6d3721a View commit details
    Browse the repository at this point in the history
  5. [Infra] Attempt to fix APMEventClient unit test (elastic#191268)

    closes [190703](elastic#190703)
    
    ## Summary
    
    I'm not sure if this change will resolve the flakiness. What I
    discovered is that the test had an open handle due to an unfinished
    promise.
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    crespocarlos and elasticmachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b98a8d3 View commit details
    Browse the repository at this point in the history
  6. [Fleet] Implement preconditions in packages install state machine (el…

    …astic#190986)
    
    Closes elastic#189353
    
    ## Summary
    
    Small change that implements a precondition function for package install
    state machine. This is needed for the subsequent work planned in
    elastic#169147.
    
    Note that this code is added and tested, but it's not currently used and
    it will actually be used only when
    elastic#175597 will be implemented.
    
    
    ### 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
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    criamico and elasticmachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    5075b04 View commit details
    Browse the repository at this point in the history
  7. [Security Solution] One Discover - Enable Security Solution Expandabl…

    …e Flyout in One Discover entities (elastic#189633)
    
    >[!Note]
    > This Change is only applicable to Serverless Security Solution as of
    now. In follow-up PRs, support will be added to ESS as well based
    data-sources such as index or intergrations.
    ## Summary
    
    Resolves elastic#189151
    
    This PR is foundation for the work described in
    elastic#186783. This just enables
    expandable flyout for entity details, which is currently only used in
    security solution, in discover as well.
    
    As a part of **One Discover** work, we need to make sure that cell
    rendering in Discover should behave exactly like it does in security
    solution.
    
    To enable this, a new `shared-browser` package
    `@kbn/security-solution-common` in `x-pack/packages/security-solution`
    has been created which can used to share components between `security
    solution` and `discover`. Below is the usage pattern
    
    ```mermaid
    flowchart TD
        disc-utils[@kbn/discover-utils] --> sscommon
        sscommon[@kbn/security-solution-common] --> ssplugin[security_solution]
        sscommon[@kbn/security-solution-common] --> discover[discover]
        disc-utils[@kbn/discover-utils] --> discover
    ```
    
    
    ## Desk Testing Guide.
    
    1. Enable Security profile in serverless by adding below to `kibana.yml`
    
    ```yaml
    discover.experimental.enabledProfiles: ['security-root-profile']
    ```
    
    2. Load Some data
    
    4. Navigate to discover and add `host.name` as one of the column.
    
    5. Should open an expandable flyout as shown below.
    
    
    https://github.com/user-attachments/assets/92b84c89-8769-45dd-bf7e-a9fe527fdcf0
    
    ## Code Review Guide
    
    Most of the changes in the PR are code-organization. There are NO
    changes in security solution but only the changes to import statements.
    
    You can focus regarding the changes in below packages:
    
    - x-pack/packages/security-solution/common
    - packages/kbn-discover-utils
    - packages/kbn-expandable-flyout
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    logeekal and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    9293bc1 View commit details
    Browse the repository at this point in the history
  8. [Maps] Fix text readability on map scale, attribution, and coordinate…

    … controls (elastic#189639)
    
    ## Summary
    
    Fixes elastic#128783
    
    This PR fixes the visualization of the texts in Maps scale bar,
    attribution, and coordinate controls with a dark background.
    
    ## Context
    
    While checking on the scale bar component of the map I saw this SCSS
    mixin that seemed to be broken.
    
    Originally I thought on fixing the shadow but the readability of the
    text is not great for dark background (see
    7f2a698)
    
    <details><summary>Adding a shadow</summary>
    
    | before | after |
    | :--:| :--:| 
    
    |![2024-07-31_16-17](https://github.com/user-attachments/assets/23239b0d-826e-482e-ac67-fe7faa50d696)
    |
    ![2024-07-31_16-18](https://github.com/user-attachments/assets/dffe0873-86dd-46b3-877e-ff4f5ef92c32)
    |
    </details>
    
    So I decided to propose to fix this by adding a background as is usual
    in other platforms.
    
    
    ![image](https://github.com/user-attachments/assets/7a7d0d11-1cf6-4961-b872-a5247c930363)
    
    
    ![image](https://github.com/user-attachments/assets/2c3d893b-f380-4724-9ad5-93adb6ec9fb6)
    
    
    ![image](https://github.com/user-attachments/assets/1a9becbc-40b1-4631-8360-f2a1bfafc9c2)
    jsanz authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    32dd373 View commit details
    Browse the repository at this point in the history
  9. [Dataset Quality]Migrate telemetry tests and remove flyout code (elas…

    …tic#190584)
    
    ## Summary
    
    closes elastic#184572
    
    After the merge of the 1st
    [PR](elastic#189532) around Flyout
    migration, this PR covers the remaining bits.
    
    - [x] Adding same telemetry to the page which was present in the flyout
    - [x] Create a Locator and use it in the Table to connect the main page
    with Details page
    - [x] Update locator in Unified Doc Viewer
    - [x] Migrate all kind of tests which were present for flyout to the
    page
    - [x] Remove everything which was once called Dataset Quality Flyout.
    - [x] Make build green - Yellow is also acceptable
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    achyutjhunjhunwala and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    8431033 View commit details
    Browse the repository at this point in the history
  10. Metering connector actions request body bytes (elastic#186804)

    Towards: elastic/response-ops-team#209
    
    This PR collects body-bytes from the requests made by the connectors to
    the 3rd parties and saves them in the event-log.
    
    There is a new metric collector: `ConnectorMetricsCollector`
    Action TaskRunner, creates a new instance of it on each action execution
    and passes it to the actionType.executor.
    Then the actionType.executor passes it to the request function provided
    by the actions plugin.
    Request function passes the response (or the error) from axios to
    `addRequestBodyBytes` method of the `ConnectorMetricsCollector`.
    Since axios always returns `request.headers['Content-Length']` either in
    success result or error, metric collector uses its value to get the
    request body bytes.
    
    In case there is no `Content-Length` header, `addRequestBodyBytes`
    method fallbacks to the body object that we pass as the second param. So
    It calculates the body bytes by using `Buffer.byteLength(body,
    'utf8');`, which is also used by axios to populate
    `request.headers['Content-Length']`
    
    For the connectors or the subActions that we don't use the request
    function or axios:
    addRequestBodyBytes method is called just before making the request only
    with the body param in order to force it to use the fallback.
    
    Note: If there are more than one requests in an execution, the bytes are
    summed.
    
    ## To verify:
    Create a rule with a connector that you would like to test.
    Let the rule run and check the event-log of your connector, request body
    bytes should be saved in:
    `kibana.action.execution.metrics.request_body_bytes`
    
    Alternatively:
    You can create a connector and run it on its test tab.
    
    You can use the below query to check the event-log:
    ```
     {
        "query": {
          "bool": { 
            "must": [
              { "match": { "event.provider":"actions"}},
              { "match": { "kibana.action.type_id":"{**your-action-type-id**}"}} 
            ],
            "filter": [ 
              { "term":  { "event.action": "execute" }}
            ]
          }
        },
        "size" : 100
    }
    ```
    ersin-erdal authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    9372027 View commit details
    Browse the repository at this point in the history
  11. [EDR Workflows][Osquery] Prevent pack creation on shards field error (e…

    …lastic#191186)
    
    It was observed that even though we display an error on Shard policy
    field if the field is left empty we still proceed with displaying
    confirmation modal which does nothing on selecting "Save and deploy
    changes".
    
    
    
    https://github.com/user-attachments/assets/0506894d-9e93-4233-8ac3-442968b6f848
    
    
    
    With this change form behaves as expected, with a field error it won't
    proceed with form submission.
    
    
    https://github.com/user-attachments/assets/0168ccf7-4137-43d4-8005-589be3ae0e35
    szwarckonrad authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b386e1c View commit details
    Browse the repository at this point in the history
  12. [Lens] fix flaky test with deleting filters (elastic#191316)

    ## Summary
    
    Fixes elastic#191009
    
    (also fixes elastic#189569
    elastic#178270
    elastic#139040 which are already closed
    as one time occurances but could happen again)
    
    https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/6809
    mbondyra authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b5570ec View commit details
    Browse the repository at this point in the history
  13. [Infra][Hosts] Display N/A badge for APM hosts without system metrics (

    …elastic#191181)
    
    ## Summary
    
    Closes elastic#190516
    
    This PR introduces an "N/A" badge for hosts that are returned by the
    `metrics/infra/host` API with `hasSystemMetrics` set to `false`. This
    enhancement will help users quickly identify and address issues with APM
    hosts that are not monitored by the system integration. The badge will
    provide an explanation of the problem and suggest troubleshooting steps.
    
    ![Screen Recording 2024-08-23 at 11 58
    29](https://github.com/user-attachments/assets/e4e72ac5-5244-4863-915d-51b14ebf078a)
    
    **Automated tests**
    Upon reviewing the code, I noticed that this screen is covered by
    functional tests.
    
    My initial idea was to add some functional tests to verify the badge
    display as well as the button and link redirections. However, I found
    that this is quite complex, as it involves modifying the data used in
    the tests, and I’m still not very familiar with that process.
    
    Given the deadline for this epic, I’ve decided not to include tests in
    this issue. If we believe they are really necessary, I would need to
    spend some time understanding how data is managed in our functional
    testing layer. Any feedback on this would be greatly appreciated.
    iblancof authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    1e428ad View commit details
    Browse the repository at this point in the history
  14. [Tines connector] Improve error handling and fallback (elastic#191263)

    ## Summary
    
    From: elastic#188115
    
    Improvements of the Tines connector:
    
    - Original Axios error passed back from `getResponseErrorMessage` to the
    sub-actions framework, instead of returning `Unknown API error` string.
    The error appears in the error toast so the user has more information
    about the problem:
    
    Before:
    <img width="975" alt="before"
    src="https://github.com/user-attachments/assets/0fdfd085-a4d6-4ebe-b1ae-0f62332b4f5c">
    
    After:
    <img width="975" alt="after"
    src="https://github.com/user-attachments/assets/1019c8ce-c97c-4564-8ec0-eca303706cfa">
    
    
    - Fallback input (direct webhook URL) now appears when there's some
    error. Before this change, the fallback input only appeared when the
    Tines API response was incomplete. Proper callout message added:
    
    <img width="975" alt="Error fallback"
    src="https://github.com/user-attachments/assets/b8f46df5-5dfe-42cb-88cc-f10e12a07e25">
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    semd and elasticmachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    ffd4076 View commit details
    Browse the repository at this point in the history
  15. [Rules and Alerting][Stack Monitoring] Quote cluster uuid in global s…

    …tate link sent via alerting rules (elastic#190341)
    
    ## Summary
    
    Closes elastic#191250
    
    This PR fixes the URL contained in the Shard size alerting rule when the
    email body contains the `{{ context.internalFullMessage}}` action
    variable.
    
    The generated URL which triggers a `rison decoder error`
    
    `https://<host>/app/monitoring#/elasticsearch/indices/<index>?_g=(cluster_uuid:foobar))`
    
    is fixed by adding a pair of single quotes around the cluster UUID
    
    `https://<host>/app/monitoring#/elasticsearch/indices/<index>?_g=(cluster_uuid:'foobar'))`
    
    Worth noting that this issue doesn't only impact the Shard size rule,
    but many other rule types, namely:
    * CPU usage
    * Disk usage
    * Memory usage
    * CCR read exception
    * ES version mismatch
    * Kibana version mismatch
    * Logstash version mismatch
    * Missing monitoring data
    * Thread pool search rejections
    * Thread pool write rejections
    
    ---------
    
    Co-authored-by: Valentin Crettaz <valentin.crettaz@consulthys.com>
    Co-authored-by: Valentin Crettaz <valentin.crettaz@elastic.co>
    3 people authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    6ba4d74 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    260df9d View commit details
    Browse the repository at this point in the history
  17. Expose privilege API client to spaces (elastic#189819)

    ## Summary
    
    Expose privilege API client to be injected into the spaces app, to
    facilitate new spaces UX
    
    <!--
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    -->
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    eokoneyo and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    90f2eb3 View commit details
    Browse the repository at this point in the history
  18. [ObsUX][Infra] Fix redirect to other apps from node details (elastic#…

    …191294)
    
    Closes elastic#190510
    
    The return button in the asset details failed to return to another app
    
    ##### How to test
    
    From apm service details, navigate to Infrastructure tab, click in one
    of the nodes that would navigate to the node details page, when clicking
    the Return button it should redirect back to
    APM/Services/{serviceName}/Infrastructure
    
    
    
    https://github.com/user-attachments/assets/07555fa6-246b-43c3-81bf-592b550713a0
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    MiriamAparicio and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    d3a9d48 View commit details
    Browse the repository at this point in the history
  19. Extract Kibana Privilege Feature table into package (elastic#189871)

    ## Summary
    
    This PR extracts the kibana privilege component into a package, to
    support the work that's been done to integrate role privilege selection
    within the newly improved spaces administration app, and is the last in
    the series of PR to make this possible. Without this undertaken we would
    be creating cyclic dependency between the security and spaces plugin,
    the image below provides a visual representation on how this PR resolves
    the aforementioned issue;
    
    
    ![image](https://github.com/user-attachments/assets/3de515a4-3f8b-4708-99af-d175d5bab282)[^legend]
    
    [^legend]: item marked in blue is the package created in this PR.
    
    This particular component, alongside the components that it's composed
    of will now be housed in `@kbn/security-ui-components` (P.S. I'm not too
    entirely sure about the naming, suggestions welcome).
    
    <!--
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    -->
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    eokoneyo and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    fd312e3 View commit details
    Browse the repository at this point in the history
  20. Onboard Synthetics TLS rule type with FAAD (elastic#191127)

    Resolves: elastic#169867
    
    This is the second attempt PR 🙂 to onboard the Synthetics TLS rule type
    with FAAD.
    
    **To verify**
    1. Create an oblt cluster with `/create-ccs-cluster` on slack. Choose
    `dev-oblt`.
    2. Add the configuration values from the oblt command to your
    kibana.yml. You may have to add:
    ```
    elasticsearch.ignoreVersionMismatch: true
    ```
    and start Kibana
    4. Navigate to `app/synthetics/settings/alerting` and add a default
    connector.
    5. Go to `/app/synthetics/monitors/getting-started` and create a HTTP
    Ping monitor with whatever url you want ( I used https://github.com/)
    and select a location.
    6. Go back to `app/synthetics` and click the Alerts & Rules link. Click
    TLS certificate rule. Edit the older than param to something low, such
    as 1 day.
    7. The TLS rule should create an active alert, verify that the action
    message is populated.
    8. Repeat step 5 update the older than param to be higher than the age
    of the cert. You can check your cert here `app/synthetics/certificates`
    9. The TLS rule should recover, and verify that the recovery action
    message is populated.
    10. You can also check the AAD docs in dev tools using the following
    command:
    ```
    GET .internal.alerts-observability.uptime.alerts*/_search
    ```
    doakalexi authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    51e76d8 View commit details
    Browse the repository at this point in the history
  21. [Defend Workflows] Fix artifact entries list FTR (elastic#189961)

    ## Summary
    
    **tl;wr;**
    - instead of selecting from dropdown, values are entered for Event
    Filters
    - artifacts for update/delete test cases are created via API call
    instead of UI interaction
    
    > [!note]
    > FTRs needs to be re-enabled before merge, revert this
    e0858a5 - done ✅
    
    ---
    
    This PR attempts to decrease flakiness in `artifact_entries_list` FTR.
    Looks like the reason for flakiness was the dropdown for the field to be
    filtered. After spending a bit of a time looking at the code, couldn't
    find any quick solution why it can be flaky, so instead just tried to
    improve the tests. For that, added a 'special' (aka hack) test case to
    just try to set event filter 100 times, and also a failing test case
    just to receive logs (77455d7) - that's
    why all flaky runners are red, you need to see the logs.
    
    It didn't work to add some waits to let React re-render and let the API
    call for suggestions be finished, didn't work to select from dropdown by
    text instead of test id, didn't work to add even more wait in between
    multiple user actions. See logs here and search for `results are in`
    inside the logs:
    https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/6744#019145e0-445d-4978-89c8-701908e14e3f
    <img width="388" alt="image"
    src="https://github.com/user-attachments/assets/be45d549-8902-4e8d-926e-2e575eca0971">
    
    In the end, looks like the solution is simply `input` the values instead
    of selecting them from the dropdown. In the last hacky-flaky run, it
    passed all 100 times:
    https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/6756
    <img width="360" alt="image"
    src="https://github.com/user-attachments/assets/b46b7405-0621-4bf7-af88-a39309298b6b">
    
    And a last flaky run without the hack, with the official flaky runner:
    https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/6772
    100/100 ✅
    
    Also, entries for the update/delete test cases are created via API call
    instead of UI interaction, so those cases overlap less with the create
    test case.
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    gergoabraham and elasticmachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    8e9b827 View commit details
    Browse the repository at this point in the history
  22. [Dataset quality] Enable page for metrics and traces (elastic#190043)

    Closes elastic/observability-dev#3454.
    
    This PR enables Dataset quality for being used for `traces` and
    `metrics`.
    
    ### Changes
    - Added `KNOWN_TYPES` array containing the types that we allow in
    dataset quality page.
    - `datasets`, `degradedDocs` and `nonAggregatableDatasets` are now
    wrapped in an state. This allow us to retrigger the calls whenever we
    need to do it (e.g. when changing timeframe), more importantly now
    whenever we select a new type of dataset.
    - The `invoke` `degradedDocs` is created dynamically depending on the
    types present in `KNOWN_TYPES`.
    - `GET /internal/dataset_quality/data_streams/stats` and `GET
    /internal/dataset_quality/data_streams/non_aggregatable` now accept an
    array of `DataStreamType`. This allow us to query the information for
    multiple types of dataStreams at the same time.
    - degradedDocs are stored now locally as a nested structure. This nested
    structure allow us to update just the needed portion instead of updating
    all datasets whenever a change occurs (e.g. a type is deselected).
    - redirectLink now takes into account the datastream type, it only
    redirects to logs explorer if it's enabled and the type of the
    datastream is logs.
    
    ### 🎥 Demo
    
    
    https://github.com/user-attachments/assets/082bd4e9-a8f8-4af9-a425-267adc3b30df
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    yngrdyn and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    2441e9a View commit details
    Browse the repository at this point in the history
  23. [UII] Add retries to starting Kibana for jest preconfiguration integr…

    …ation tests (elastic#191318)
    
    ## Summary
    
    Resolves elastic#172759
    Resolves elastic#172760
    Resolves elastic#172761
    
    Add retries to starting Kibana for this test suite to hopefully mitigate
    future flakiness.
    
    
    ### Checklist
    
    - ~~[Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed~~ Doesn't seem like I can run Jest integration
    tests here.
    jen-huang authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    0a8d6a0 View commit details
    Browse the repository at this point in the history
  24. [Automatic Import] resolve a bug in ECS missing fields detection (ela…

    …stic#191502)
    
    ## Summary
    
    Resolves a bug when comparing LLM ECS mapping output with combined
    samples, and the mapping is right under the data_stream object,
    providing false positive results.
    P1llus authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    fb84360 View commit details
    Browse the repository at this point in the history
  25. [ES|QL] Open the suggestion menu when the editor is focused and empty (

    …elastic#191142)
    
    ## Summary
    
    Opens the suggestions menu whenever the editor is focused and empty.
    
    
    https://github.com/user-attachments/assets/abe46418-bde7-4f31-b2f5-e63910f8673d
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
    3 people authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    9d967e0 View commit details
    Browse the repository at this point in the history
  26. [ AutoImport] Introduce automatic log type detection graph (elastic#1…

    …90407)
    
    ## Summary
    
    This PR introduces a new graph in `Auto Import` called -
    `LogTypeDetection`
    
    Currently, only JSON/NDJSON formats are supported to be uploaded for
    building custom integrations. With this feature the capabilities to
    upload different log types is allowed.
    
    Although parsing of the new log types will be handled separately with a
    separate [issue.](elastic/security-team#9845)
    
    - The logs are initially parsed for JSON/NDJSON types in the UI side.
    - If it is not JSON/NDJSON format , then a new API `AnalyzeLogs` is
    triggered.
    - UI allows any type of logs to be uploaded.
    - Currently there is a server level content length restriction of `1MB`
    which needs to be extended.
    - For any log types other than JSON/NDJSON the handling graphs are not
    yet implemented , hence a `501 Not implemented` message appears.
    - The idea is to support `structured` , `csv` , `unstructured` syslog
    handling graphs.
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x] [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
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    Co-authored-by: Hanna Tamoudi <hanna.tamoudi@elastic.co>
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    4 people authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    9f01f73 View commit details
    Browse the repository at this point in the history
  27. [ftr] add fleetAndAgents service (elastic#191448)

    ## Summary
    
    This PR refactors the `setupFleetAndAgents` helper function into a
    `FleetAndAgents` FTR service, which is now initialized during the config
    file loading.
    
    Reason: The previous implementation of `setupFleetAndAgents` wrapped a
    Mocha `before` hook, which is considered an anti-pattern according to
    the Mocha ESLint rules that the Operations and QA teams have agreed to
    enable in the Kibana repo. It's best practice to avoid duplicating
    hooks, as this can lead to inconsistent test results and make debugging
    difficult. Ensuring a single before and after hook sequence guarantees
    that the associated logic runs in a predictable and sequential manner.
    
    This change also unblocks elastic#191267, where we plan to enforce the same
    recommended Mocha ESLint rules that were previously enabled for UI tests
    in elastic#190690.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    dmlemeshko and kibanamachine authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    069c158 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    7d632c5 View commit details
    Browse the repository at this point in the history
  29. [Collapsable Panels] Better Scrolling for kbn grid layout (elastic#19…

    …1120)
    
    changes `kbn grid layout` to allow better scrolling behaviour.
    ThomThomson authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b02f6db View commit details
    Browse the repository at this point in the history
  30. [Search] Remove Dashboard and Search App Buttons When Gated Form is S…

    …howing (elastic#191519)
    
    ## Summary
    
    When the Workplace Search interstitial form is showing, we have buttons
    to the user's personal dashboard and search applications - but, since
    Workplace Search is not set up yet, these buttons go to a 404. This PR
    hides these buttons only for the gate form.
    
    
    ![image](https://github.com/user-attachments/assets/7f9b0b89-f30a-4802-b03f-c9c88871b06a)
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x] [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
    - [x] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    markjhoy authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    8d5d345 View commit details
    Browse the repository at this point in the history
  31. fix: [AXE-CORE][Serverless - Observability] Observability -> AIOps->A…

    …nomaly Detection page fails scope attribute should be used correctly a11y check (elastic#191297)
    
    Closes: elastic#188859
    
    ## Describe the Bug:
    
    On the Observability -> AIOps -> Anomaly Detection page, the `scope`
    attribute is incorrectly used, failing the a11y check.
    
    **Element location:**
    
    ``` 
    .euiTableRow.euiTableRow-isSelectable.euiTableRow-hasActions:nth-child(1) > .css-dmrba8-euiTableRowCell-middle-desktop[scope="row"][data-test-subj="mlJobListColumnId"]
    ```
    
    ## What Was Changed:
    1. The incorrect `scope: 'row'` attribute was removed.
    2. Added `rowHeader="id"`.
    
    ## Screen: 
    
    <img width="1384" alt="image"
    src="https://github.com/user-attachments/assets/f2a44e87-43b3-4e5a-b0d2-7fe9378380c8">
    
    > No issues in AXE report
    
    <img width="1384" alt="image"
    src="https://github.com/user-attachments/assets/342a6f8f-a6f2-473a-897c-f9f5133368b0">
    alexwizp authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    dc65502 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    489a50d View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    e2a0381 View commit details
    Browse the repository at this point in the history
  34. [Embeddable Rebuild] [Controls] Add ignoreValidations support to op…

    …tions list control (elastic#191303)
    
    Closes elastic#191295
    
    ## Summary
    
    This PR makes it so that the options list control respects the
    `ignoreParentSettings.ignoreValidations` setting when validating its
    selections:
    
    
    
    https://github.com/user-attachments/assets/abd41283-aafd-4802-8e2e-2f55d9551df3
    
    Note that in the above video, we are "dropping" invalid selections in
    the UI when this setting is active, which means that the only way to
    unselect "empty" options is to click the "Show only selected" option in
    the UI. While I considered changing that behaviour in this PR, I opted
    to keep this PR as simple as possible by keeping the behaviour
    consistent with the non-React options list (i.e. the behaviour
    demonstrated in the video above is consistent with how options list work
    in Dashboards on `main`). We can always revisit that behaviour later,
    since it is a very easy change to make.
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    Heenawter authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    fae0139 View commit details
    Browse the repository at this point in the history
  35. [Managed Content] fix flaky tests (elastic#191388)

    ## Summary
    
    Fixes elastic#190227
    
    Fixes elastic#190737
    elastic#190990
    elastic#190802
    elastic#179307 (couldn't find the
    rootcause so just decided to align the solution with other files that
    follow similar path and are not flaky)
    
    Fixes elastic#191151
    elastic#191152
    elastic#191176
    elastic#191177
    elastic#191178
    elastic#191153
    elastic#191238
    
    Fixes elastic#190711
    mbondyra authored Aug 27, 2024
    Configuration menu
    Copy the full SHA
    2a033c1 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    03ba36a View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2024

  1. Configuration menu
    Copy the full SHA
    7944c19 View commit details
    Browse the repository at this point in the history
  2. [Lens][Table] Add color by terms with color mappings (elastic#189895)

    Adds support for coloring Table cells by terms with color mapping assignments. Supported for both `Rows` and `Metric` dimensions.
    nickofthyme authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    a994629 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    094f4a3 View commit details
    Browse the repository at this point in the history
  4. [Security Solution][DQD][Tech Debt] Refactor lower level helpers (ela…

    …stic#191245)
    
    addresses elastic#190964
    
    Fourth in the series of PRs to address general DQD tech debt
    
    This one builds on previous 3 PRs
    
    elastic#190970
    elastic#190978
    elastic#191233
    
    Gist of changes:
    
    split lower level helpers into series of utils/* files
    each utils/ file is named after common behavior it export or works with.
    cleanup dead code
    kapral18 authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    7f22ca5 View commit details
    Browse the repository at this point in the history
  5. Update secrets.md (elastic#191180)

    Fix typos
    
    Co-authored-by: Julia Bardi <90178898+juliaElastic@users.noreply.github.com>
    breml and juliaElastic authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    17d5eb5 View commit details
    Browse the repository at this point in the history
  6. [Search] [Playground] fix code example for py lang client (elastic#19…

    …1547)
    
    ## Summary
    
    Fix code example where the question is no longer being passed into the
    `create_openai_prompt` arguments.
    
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    joemcelroy authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    450f30d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    dda6cd9 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    74ba0b4 View commit details
    Browse the repository at this point in the history
  9. [Infra][Hosts] Remove unnecessary code added for local testing (elast…

    …ic#191572)
    
    ## Summary
    
    Small PR to remove code that was mistakenly merged for local testing.
    iblancof authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    f7520a6 View commit details
    Browse the repository at this point in the history
  10. [Obs AI Assistant] Add aiAssistant:preferredAIAssistantType setting…

    … to settings page (elastic#190969)
    
    This adds the `aiAssistant:preferredAIAssistantType` setting (aka
    "Observability AI Assistant scope") to the Obs AI Assistant settings
    page. It was not necessary to re-define the setting definition as it was
    already declared
    [here](https://github.com/elastic/kibana/blob/5acd638327e5f22683910d2b97e05bbf4e87b3c9/src/plugins/ai_assistant_management/selection/server/plugin.ts#L48-L89)
    
    
    ![image](https://github.com/user-attachments/assets/96619f37-8835-4f49-8365-80b69f5d4699)
    sorenlouv authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    eeed6c8 View commit details
    Browse the repository at this point in the history
  11. [Obs utils] Add Observability utils package (elastic#189712)

    Adds a `@kbn/observability-utils` package.
    
    ```md
    # @kbn/observability-utils
    
    This package contains utilities for Observability plugins. It's a separate package
    to get out of dependency hell. You can put anything in here that is stateless and
    has no dependency on other plugins (either directly or via other packages).
    
    The utility functions should be used via direct imports to minimize impact on
    bundle size and limit the risk on importing browser code to the server and vice versa.
    ```
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    dgieselaar and elasticmachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    ecec57c View commit details
    Browse the repository at this point in the history
  12. Polished secure random number implementation (elastic#191285)

    ## Summary
    
    Polished secure random number implementation.
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    elena-shostak and elasticmachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    1344d3b View commit details
    Browse the repository at this point in the history
  13. [ML] AIOps: Adds log rate analysis to alert details page contextual i…

    …nsight. (elastic#187690)
    
    ## Summary
    
    Part of elastic#178501.
    
    This adds log rate analysis results to the prompt used for contextual
    insights on alert details pages:
    
    <img width="1149" alt="image"
    src="https://github.com/user-attachments/assets/80b0f8e6-1ea1-4dbf-86ff-82c2ef175aa6">
    
    <img width="1129" alt="image"
    src="https://github.com/user-attachments/assets/a538cc3c-6f13-43e4-ad7d-8a93a779d349">
    
    
    ### Checklist
    
    - [x] [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
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    walterra and kibanamachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    3c2ce3c View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    2c50c45 View commit details
    Browse the repository at this point in the history
  15. Revert "Agentless API certificates path for security projects" (elast…

    …ic#191571)
    
    Reverts elastic#191248
    
    Reverting since this configuration will be set by kibana-controller
    - Resolves: elastic/agentless-api#278
    amirbenun authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    096c52f View commit details
    Browse the repository at this point in the history
  16. [Security Solution][DQD][Tech Debt] Dissolve index properties markdown (

    elastic#191264)
    
    addresses elastic#190964
    
    Fifth in the series of PRs to address general DQD tech debt
    
    This one builds on previous 4 PRs
    
    elastic#190970
    elastic#190978
    elastic#191233
    elastic#191245
    
    Gist of changes:
    
    - split gigantic markdown helper file and colocate the parts where they
    belong
    - dedupe translations
    - cleanup dead code
    kapral18 authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    f79b714 View commit details
    Browse the repository at this point in the history
  17. [Obs AI Assistant] remove flaky test (elastic#191531)

    This test can be flaky because the "save" button only appears if the
    there is change in one of the form values, but the change can be "reset"
    if the state takes a while to load in some edge case so the "save"
    button does not appear. Given I already added a test for making sure
    that the inputs are disabled when a user does not have access to
    Advanced Settings, this test is somewhat redundant in terms of security
    access and given its flaky nature, I would like to remove it. I could
    see having it in another test suite that tests general functionality of
    the settings page and a unit test for
    [`useEditableSettings`](https://github.com/elastic/kibana/blob/main/x-pack/plugins/observability_solution/observability_shared/public/hooks/use_editable_settings.tsx#L49).
    
    Closes elastic#190637
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    neptunian and kibanamachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    f2bd3f3 View commit details
    Browse the repository at this point in the history
  18. Adds missing @testing-library/dom peer dependency (elastic#191576)

    ## Summary
    
    During `yarn kbn bootstrap` we get the following message:
    
    > @testing-library/user-event@13.5.0" has unmet peer dependency
    "@testing-library/dom@>=7.21.4".
    
    This PR adds `@testing-library/dom` version `8.19.0` to `package.json`
    to match the version used by `@testing-library/react`. Future versions
    of `@testing-library/react` switched to requiring this dependency to be
    a peer dependency too. This PR is in preparation for
    elastic#189949.
    
    ### Checklist
    
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    walterra authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    358845e View commit details
    Browse the repository at this point in the history
  19. Clarify macOS support (elastic#191329)

    Clarifying macOS support is limited to development environments only.
    
    Please back-port accordingly.  Thx!
    ppf2 authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    874f5ac View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    fc93e43 View commit details
    Browse the repository at this point in the history
  21. Inference plugin: Add Gemini model adapter (elastic#191292)

    ## Summary
    
    Add the `gemini` model adapter for the `inference` plugin. Had to
    perform minor changes on the associated connector
    
    Also update the codeowner files to add the `@elastic/appex-ai-infra`
    team as (one of the) owner of the genAI connectors
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    pgayvallet and kibanamachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    02a3992 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    15deafa View commit details
    Browse the repository at this point in the history
  23. [Bug][Security Solution][Event Filters][Endpoint Exceptions] Wildcard…

    … warning should show when nested entries contain wildcards in value (elastic#190577)
    
    ## Summary
    
    - [x] Fixes a bug, where the wildcard warning was not being shown for
    `nested` entries with a wildcard
    - [x] Unit test
    
    ## Screenshots
    
    # Event Filters
    
    ![image](https://github.com/user-attachments/assets/c9066c86-b636-4ea5-b2c1-9f472b45d8ab)
    
    # Endpoint Exceptions
    
    ![image](https://github.com/user-attachments/assets/5a48bd77-2290-46e9-b6f9-732299217a5c)
    parkiino authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    30b5657 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    97b5479 View commit details
    Browse the repository at this point in the history
  25. [react@18] Fix useCallback breaking type changes (elastic#182344)

    ## Summary
    
    Prep work for React@18 bump
    elastic#138222
    
    In React@18 `useCallback` types has changed that introduced breaking
    changes:
    DefinitelyTyped/DefinitelyTyped#46691
    
    Fixed using:
    
    https://github.com/eps1lon/types-react-codemod?tab=readme-ov-file#usecallback-implicit-any
    
    **Tried to do my best with fixing the types, but if you disagree or have
    a better idea how it should be solved feel free to suggest changes or
    commit directly to the branch 🙏**
    
    ---------
    
    Co-authored-by: Sergi Massaneda <sergi.massaneda@elastic.co>
    Co-authored-by: Sébastien Loix <sabee77@gmail.com>
    Co-authored-by: Nick Peihl <nick.peihl@elastic.co>
    Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
    Co-authored-by: Felix Stürmer <felix.stuermer@elastic.co>
    Co-authored-by: nickofthyme <nicholas.partridge@elastic.co>
    Co-authored-by: Davis McPhee <davis.mcphee@elastic.co>
    Co-authored-by: Vitalii Dmyterko <92328789+vitaliidm@users.noreply.github.com>
    Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
    Co-authored-by: Christos Nasikas <christos.nasikas@elastic.co>
    Co-authored-by: Anton Dosov <anton.dosov@elastic.co>
    12 people authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    2d1d592 View commit details
    Browse the repository at this point in the history
  26. [Spaces] Create Space: show features picker only when solution not "c…

    …lassic" (elastic#191528)
    
    ## Summary
    
    Users may only choose visible features of a Space when their solution
    view is set to "classic" (or empty).
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x] [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
    - [x] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [x] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [x] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [x] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    tsullivan authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    47f74eb View commit details
    Browse the repository at this point in the history
  27. [Reporting/Docs] update mention of Japanese font package requirement (e…

    …lastic#191561)
    
    ## Summary
    
    Closes elastic#68823
    
    `vlgothic-fonts` is a package which is listed in the default package
    repositories for CentOS/RHEL.
    * [Github](https://github.com/daisukesuzuki/VLGothic)
    * [Home page](https://vlgothic.dicey.org/)
    tsullivan authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    ac4a786 View commit details
    Browse the repository at this point in the history
  28. [ML] Improving empty object creation (elastic#191518)

    Replacing instances of empty object creation with `Object.create(null)`
    to remove any risk of prototype pollution.
    Only touching server and common code.
    
    Follows on from elastic#186821
    jgowdyelastic authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    5ea65f9 View commit details
    Browse the repository at this point in the history
  29. [UII] Always show inactive and offline statuses in agent status bar (e…

    …lastic#191535)
    
    ## Summary
    
    Resolves elastic#181042. This PR makes it so that `Offline` and `Inactive`
    statuses are always shown in the agent status bar even if their counts
    are 0, so that they are more discoverable.
    
    <img width="1115" alt="image"
    src="https://github.com/user-attachments/assets/97fb7609-34b8-411a-950d-105902553d0e">
    jen-huang authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    6b6bb3c View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    0cc275a View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    a570d94 View commit details
    Browse the repository at this point in the history
  32. [Automatic Import] Resolving issues with ECS chunking not producing e…

    …xpected results. (elastic#191630)
    
    ## Summary
    
    When we merge the results from all the ECS graphs we did not correctly
    pass the correct state items, this PR resolves that.
    
    Changes:
    Bump chunk size from 10 to 25 to handle less duplicates.
    Better duplicate prompt.
    Change the mapping state usage a bit, since we can't have a reducer on
    finalMapping, as its reused in the main graph validation.
    Add same validation steps to run after the sub graphs have all finished.
    
    
    ### Checklist
    
    - [x] [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
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    P1llus and elasticmachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    b56d7dc View commit details
    Browse the repository at this point in the history
  33. [UII] Support integration policies without agent policy references (a…

    …ka orphaned integration policies) (elastic#190649)
    
    ## Summary
    
    Resolves elastic#182220.
    
    This PR allows integration polices to be saved without being added to
    any agent policies. These integration policies can be considered
    "orphaned." Through the API, an empty `policy_ids: []` array can be
    passed during create operations to add it to no agent policies. The same
    empty array can be passed during update operations to clear it from all
    previous agent policies. Clearing agent policies references this way
    will also set the deprecated `policy_id` field to `null`.
    
    Clearing agent policy references requires the same licensing as the
    general reusable integration policies feature.
    
    I spotted a bug where removing one or more agent policy references does
    not bump their revision. Revision was only bumped for only newly added
    references This has been fixed in this PR as well.
    
    On the UI side, orphaned integration policies can only be discovered on
    the Integrations details > Policies table:
    
    <img width="1388" alt="image"
    src="https://github.com/user-attachments/assets/bcaeb4e7-629a-4ce6-81df-a48a997ed85d">
    
    
    Agent policies can be unattached in the manage agent policies modal:
    
    <img width="1068" alt="image"
    src="https://github.com/user-attachments/assets/7efd48a8-1466-48ee-a48d-18cfbcc4a9a6">
    
    
    Integration policy create/edit form allows agent policies field to be
    cleared, with a confirmation modal as a heads up to the user. If the
    user previously had agent policies attached, and is now clearing it, the
    normal `This action will update the selected agent policies` will be
    shown:
    
    <img width="1108" alt="image"
    src="https://github.com/user-attachments/assets/1eade1d1-a456-4d2d-a85f-65801ec55857">
    
    
    ### Checklist
    
    - ~~Consider interaction with space aware policies~~ Will be done in
    elastic#190727
    - [x] Test with integrations that register custom policy editors
    - [x] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
      - Will be done in elastic/ingest-docs#1261
    - [x] [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
    jen-huang authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    c9d8292 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    bc084f9 View commit details
    Browse the repository at this point in the history
  35. fix flake

    stephmilovic committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    3243581 View commit details
    Browse the repository at this point in the history
  36. [ES|QL] Add mechanism to simulate long queries (elastic#191520)

    ## Summary
    
    Adds a mechanism to simulate a long-running query in ES|QL.
    
    Elasticsearch provides a query type, `error_query`, in snapshot builds
    that allows passing a delay to simulate long-running queries. This PR
    adds a way to utilize this for testing & debugging purposes.
    
    To use: In your browser console, simply execute the following:
    
    ```js
    window.ELASTIC_ESQL_DELAY_SECONDS = 5;
    ```
    
    This will cause search requests to pause for 5 seconds (on each shard).
    This can then be used in testing & debugging.
    
    It should be noted that this is similar in pattern to the existing
    `window.ELASTIC_LENS_DELAY_SECONDS` pattern that Lens uses.
    lukasolson authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    b3a56f7 View commit details
    Browse the repository at this point in the history
  37. [Uptime] Use rounded values for es query (elastic#191514)

    ## Summary
    
    Use rounded values for es query !!
    shahzad31 authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    3aa745f View commit details
    Browse the repository at this point in the history
  38. [Response Ops][Task Manager] Emitting error metric when task update f…

    …ails (elastic#191307)
    
    Resolves elastic#184173
    
    ## Summary
    
    Catches errors updating the task from the `taskStore.bulkUpdate`
    function and emitting an error count so these errors are reflected in
    the metrics.
    
    ## To Verify
    
    1. Add the following to force an error when running an example rule:
    
    ```
    --- a/x-pack/plugins/task_manager/server/task_store.ts
    +++ b/x-pack/plugins/task_manager/server/task_store.ts
    @@ -24,6 +24,7 @@ import {
       ISavedObjectsRepository,
       SavedObjectsUpdateResponse,
       ElasticsearchClient,
    +  SavedObjectsErrorHelpers,
     } from '@kbn/core/server';
    
     import { RequestTimeoutsConfig } from './config';
    @@ -309,6 +310,16 @@ export class TaskStore {
           this.logger.warn(`Skipping validation for bulk update because excludeLargeFields=true.`);
         }
    
    +    const isProcessResult = docs.some(
    +      (doc) =>
    +        doc.taskType === 'alerting:example.always-firing' &&
    +        doc.status === 'idle' &&
    +        doc.retryAt === null
    +    );
    +    if (isProcessResult) {
    +      throw SavedObjectsErrorHelpers.decorateEsUnavailableError(new Error('test'));
    +    }
    +
         const attributesByDocId = docs.reduce((attrsById, doc) => {
    ```
    
    2. Create an `example.always-firing` rule and let it run. You should see
    an error in the logs:
    ```
    [2024-08-26T14:44:07.065-04:00][ERROR][plugins.taskManager] Task alerting:example.always-firing "80b8481d-7bfc-4d38-a31b-7a559fbe846b" failed: Error: test
    ```
    
    3. Navigate to
    https://localhost:5601/api/task_manager/metrics?reset=false and you
    should see a framework error underneath the overall metrics and the
    alerting metrics.
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    ymao1 and elasticmachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    dafce90 View commit details
    Browse the repository at this point in the history
  39. [QA] Fix wrong bracket in ccs test (elastic#191222)

    ## Summary
    
    Had a square bracket instead of a curly bracket, hence the request in
    the dev console was failing.
    marius-dr authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    6bb38c8 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    9a88666 View commit details
    Browse the repository at this point in the history
  41. [Cloud Security] Misconfiguration preview & Refactor CSP Plugin to in…

    …clude new package PHASE 3 (elastic#191317)
    
    The previous elastic#190105 was way too
    big and made it hard to review without missing any bugs or potential
    bugs, Thus we decided we are going to make series of smaller PR to make
    things more manageable
    
    We will be splitting it into 4 PR
    Phase 1: Creating empty packages for csp and csp-common
    Phase 2: Move Types from CSP plugin to the Package + Deleting duplicates
    in the CSP plugin where possible
    Phase 3: Move Functions, Utils or Helpers, Hooks to Package
    Phase 4: Misconfiguration Preview feature (with Cypress test and other
    required test)
    
    This is **Phase 3** of the Process,
    This also includes moving rule versions type
    
    This PR is the continuation of this PR
    elastic#190933
    
    NOTE:
    Merge phase 2 first before this
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    animehart and kibanamachine authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    a78c69b View commit details
    Browse the repository at this point in the history
  42. [UII] Fix client-side validation for agent policy timeout fields (ela…

    …stic#191674)
    
    ## Summary
    
    Resolves elastic#191583. Adjusts the client-side validation for agent policy
    timeout fields so that it correctly returns an error when non-numeric
    input is encountered, or when input is 0.
    jen-huang authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    f29bf1c View commit details
    Browse the repository at this point in the history
  43. [Canvas] Migrate expression runner from bfetch to an HTTP route (elas…

    …tic#191031)
    
    ## Summary
    
    Resolves elastic#190267.
    
    Moves the Canvas expression runner off of `bfetch` and onto the core
    `http` router.
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [ ] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [ ]
    [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
    was added for features that require explanation or tutorials
    - [ ] [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
    - [ ] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    - [ ] Any UI touched in this PR is usable by keyboard only (learn more
    about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
    - [ ] Any UI touched in this PR does not create any new axe failures
    (run axe in browser:
    [FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
    [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
    - [ ] If a plugin configuration key changed, check if it needs to be
    allowlisted in the cloud and added to the [docker
    list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
    - [ ] This renders correctly on smaller devices using a responsive
    layout. (You can test this [in your
    browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
    - [ ] This was checked for [cross-browser
    compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
    
    
    ### Risk Matrix
    
    Delete this section if it is not applicable to this PR.
    
    Before closing this PR, invite QA, stakeholders, and other developers to
    identify risks that should be tested prior to the change/feature
    release.
    
    When forming the risk matrix, consider some of the following examples
    and how they may potentially impact the change:
    
    | Risk | Probability | Severity | Mitigation/Notes |
    
    |---------------------------|-------------|----------|-------------------------|
    | Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
    | Low | High | Integration tests will verify that all features are still
    supported in non-default Kibana Space and when user switches between
    spaces. |
    | Multiple nodes&mdash;Elasticsearch polling might have race conditions
    when multiple Kibana nodes are polling for the same tasks. | High | Low
    | Tasks are idempotent, so executing them multiple times will not result
    in logical error, but will degrade performance. To test for this case we
    add plenty of unit tests around this logic and document manual testing
    procedure. |
    | Code should gracefully handle cases when feature X or plugin Y are
    disabled. | Medium | High | Unit tests will verify that any feature flag
    or plugin combination still results in our service operational. |
    | [See more potential risk
    examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
    
    
    ### For maintainers
    
    - [ ] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    lukasolson authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    f1742db View commit details
    Browse the repository at this point in the history
  44. [Obs AI Assistant] Remove dedicated language setting (elastic#190983)

    Closes elastic/obs-ai-assistant-team#171
    
    We now have user instructions and should steer end users towards that
    instead of having a dedicated language setting.
    
    **Advantages of removing the language setting:**
    
    - User instructions are user-scoped, whereas the language setting is
    stored in advanced settings which are space-scoped. Therefore with this
    change users will be able to specify a language without affecting each
    other.
    - Having a single approach (user instructions), is better than having
    two approaches (user instructions + language setting). It simplifies the
    codebase and streamlines the UX.
    sorenlouv authored Aug 28, 2024
    Configuration menu
    Copy the full SHA
    fde3321 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2024

  1. Configuration menu
    Copy the full SHA
    454be59 View commit details
    Browse the repository at this point in the history
  2. [Detection Engine] Fix timeline template popover not closing (elastic…

    …#190862)
    
    ## Summary
    
    Addresses elastic#139263
    
    Timeline template select was not closing on click - helper method was
    set to only open timeline template selection.
    yctercero authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    b5f5631 View commit details
    Browse the repository at this point in the history
  3. [SLOs] remove manage_transform and manage_ingest_pipeline privilege r…

    …equirements (elastic#190572)
    
    ## Summary
    
    Resolves elastic/observability-dev#3845
    
    Removes the `manage_transform` and `manage_ingest_pipeline` privilege
    requirements from the SLO app.
    
    This accomplished by replacing the existing ES client with
    `asSecondaryAuthUser` client.
    
    The `asSecondaryAuthUser` client passes `es-secondary-authorization`
    headers to the related APIs. When supported, the API will use the
    primary auth (the kibana system user) to handle primary actions such as
    creating the transforms and ingest pipelines, while using secondary auth
    to check against index privileges. The result is the ability to for
    Kibana to create transforms and pipelines on behalf of the user, while
    respecting the users index privileges.
    
    ### Testing
    
    To test, be sure to use a less privileged user without
    `manage_transform` or `manage_pipeline` privileges. Begin by creating
    two new roles, `slo_editor` and `slo_viewer`
    
    Index privileges for `slo_editor` user
    ```
    .slo-*: 'write', 'read', 'read_cross_cluster', 'view_index_metadata', 'manage', 'auto_configure'
    ```
    
    Index privileges for `slo_viewer` user
    ```
    .slo-*: 'read', 'read_cross_cluster', 'view_index_metadata'
    ```
    
    Then create two new users, `slo_editor` and `slo_viewer` and give them
    the following roles:
    
    ```
    slo_editor: 'slo_editor', 'editor'
    slo_viewer: 'slo_viewer', 'viewer'
    ```
    
    An overall regression testing of the SLO app is desired, including:
    
    Editor user
    ---
    1. Creating a SLI without a group by
    2. Creating a SLI with a group by
    3. Updating an SLI without a group by
    4. Updating a SLI with a group by
    5. Deleting a SLI
    6. Inspecting an SLI
    7. Resetting an SLI
    8. Receiving and viewing SLI health notifications on the SLO page
    9. Viewing SLOs
    
    Viewer user
    ---
    1. Inspecting an SLI
    2. Receiving and viewing SLI health notifications on the SLO page
    3. Viewing SLOs
    
    ---------
    
    Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co>
    Co-authored-by: shahzad31 <shahzad31comp@gmail.com>
    Co-authored-by: Panagiota Mitsopoulou <giota85@gmail.com>
    4 people authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    784297a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d988af9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ed2e81e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    4db8b32 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d895c38 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7aa10d1 View commit details
    Browse the repository at this point in the history
  9. [Docs][Maps] Update EMS docs to point to the chainguard docker image (e…

    …lastic#191663)
    
    ## Summary
    
    Change in our
    [documentation](https://www.elastic.co/guide/en/kibana/current/maps-connect-to-ems.html#elastic-maps-server)
    on how to set up Elastic Maps Server locally to move from the `-ubi8`
    docker image to the new one based in the `chainguard-base` docker image.
    jsanz authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    96a3504 View commit details
    Browse the repository at this point in the history
  10. [Security Solution] Recalculate isCustomized when bulk editing rules (e…

    …lastic#190041)
    
    **Resolves: elastic#187706
    
    ## Summary
    
    Added the `isCustomized` field recalculation after a bulk edit operation
    on rules as part of the [rules customization
    epic](elastic/security-team#1974).
    
    **Background**
    The `isCustomized` field is a rule parameter indicating if a prebuilt
    Elastic rule has been modified by a user. This field is extensively used
    in the prebuilt rule upgrade workflow. It's essential to ensure any rule
    modification operation recalculates this field to keep its value in sync
    with the rule content. Most of the rule CRUD operations were already
    covered in a previous PR: [Calculate and save ruleSource.isCustomized in
    API endpoint handlers](elastic#180145).
    This PR addresses the remaining bulk rule modification operations
    performed using the `rulesClient.bulkEdit` method.
    
    **`rulesClient.bulkEdit` changes**
    
    The `isCustomized` calculation is based on the entire rule object (i.e.,
    rule params and attributes) and should be performed after all bulk
    operations have been applied to the rule - after `operations` and
    `paramsModifier`. To support this, I changed the `paramsModifier` to
    accept entire rule object:
    
    ```diff
    export type ParamsModifier<Params extends RuleParams> = (
    -  params: Params
    +  rule: Rule<Params>
    ) => Promise<ParamsModifierResult<Params>>;
    ```
    
    **Security Solution Bulk Endpoint changes**
    
    The `/api/detection_engine/rules/_bulk_action` endpoint now handles bulk
    edit actions a bit differently. Previously, most of the bulk action was
    delegated to the rules client. Now, we need to do some preparatory work:
    
    1. Fetch the affected rules in memory first, regardless of whether we
    received a query or rule IDs as input (previously delegated to
    Alerting).
    2. Identify all prebuilt rules among the fetched rules.
    3. Fetch base versions of the prebuilt rules.
    4. Provide base versions to `ruleModifier` for the `isCustomized`
    calculation.
    
    These changes add a few extra roundtrips to Elasticsearch and make the
    bulk edit endpoint less efficient than before. However, this seems
    justified given the added functionality of the customization epic. In
    the future, we might consider optimizing to reduce the number of
    database requests. Ideally, for Security Solution use cases, we would
    need a more generic method than `bulkEdit`, such as `bulkUpdate`,
    allowing us to implement any required rule update logic fully on the
    solution side.
    xcrzx authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    5cf9522 View commit details
    Browse the repository at this point in the history
  11. [UII] Fix typo causing agent activity page to error out (elastic#191671)

    ## Summary
    
    Resolves elastic#191387. Fix typo introduced in elastic#189861.
    jen-huang authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    4e27deb View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    f22bc8d View commit details
    Browse the repository at this point in the history
  13. [Fleet] change UX of edit integration policy agent policies (elastic#…

    …190583)
    
    ## Summary
    
    Closes elastic#186629
    
    Changed UX of edit integration policy page to update agent policies.
    
    To verify:
    - Add integration or create new agent policy with system integration
    - Edit the integration policy
    - Verify that the UI allows adding new agent policy with making changes
    to existing agent policies
    
    
    <img width="1509" alt="image"
    src="https://github.com/user-attachments/assets/71ae926c-4b13-4d58-b199-3d17b0649e24">
    <img width="978" alt="image"
    src="https://github.com/user-attachments/assets/835b2d82-27ab-4361-98ca-dac401609bde">
     
    
    
    ### Checklist
    
    Delete any items that are not applicable to this PR.
    
    - [x] Any text added follows [EUI's writing
    guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
    sentence case text and includes [i18n
    support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
    - [x] [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
    juliaElastic authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    dc7290b View commit details
    Browse the repository at this point in the history
  14. [Fleet] add back monitoring for agentless policies (elastic#191635)

    Added back agent monitoring on agentless policies as requested. It was
    incorrectly removed in elastic#189612
    juliaElastic authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    2678101 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    78e6d16 View commit details
    Browse the repository at this point in the history
  16. [OAS][DOCS] Adds linting rule for missing property descriptions (elas…

    …tic#191594)
    
    ## Summary
    
    Resolves elastic/docs-projects#237 by adding a
    custom linting rule for missing property descriptions.
    
    ---------
    
    Co-authored-by: lcawl <lcawley@elastic.co>
    natasha-moore-elastic and lcawl authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    9babac0 View commit details
    Browse the repository at this point in the history
  17. [Fleet] Improve enrollment API keys OpenAPI spec (elastic#191585)

    ## Summary
    
    Closes elastic#155550
    Relates elastic#190402
    
    Users have reported unclear expectations from [Fleet Enrollment API Keys
    API](https://www.elastic.co/guide/en/fleet/current/fleet-apis.html#EnrollmentAPIKeys).
    These include:
    - Enrollment token names must be unique (impacts token creation).
    - Deleting an enrollment token doesn't actually delete, it revokes
    (invalidates it, marks it as inactive).
    - Revoked tokens are still returned (with `"active": false`) by `GET
    /api/fleet/enrollment_api_keys`.
    - It's not clear what happens to the API key after it's been
    invalidated.
    
    This PR adds some details to the OpenAPI spec.
    
    I believe, however, that some improvements could also be brought to the
    documentation itself in order to fully address the above concerns. The
    [Fleet enrollment
    tokens](https://www.elastic.co/guide/en/fleet/8.15/fleet-enrollment-tokens.html)
    doc page already describes enrollment token creation and deletion,
    perhaps the following information could be added:
    - Why the token name must be unique.
    - Add an explanation around revoking tokens (marked as inactive, will be
    removed after expiration) with a link to the [retention period setting
    in
    Elasticsearch](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-settings.html#api-key-service-settings-delete-retention-period).
    - A mention that inactive tokens are still returned by the GET API and
    visible in the UI until they are cleaned up.
    
    A final note around the variations in terminology (not a big issue, I
    think):
    - "enrollment tokens" in the docs vs. "enrollment API keys" in the
    OpenAPI spec (I thought it would be best to keep the latter consistent)
    - "[revoke
    token](https://www.elastic.co/guide/en/fleet/8.15/fleet-enrollment-tokens.html#revoke-fleet-enrollment-tokens)"
    vs. "[invalidate API
    key](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-api-key.html)"
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    jillguyonnet and elasticmachine authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    230d274 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    196dccd View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    b79f5ab View commit details
    Browse the repository at this point in the history
  20. [ML] Remove dependency cache. (elastic#189729)

    ## Summary
    
    Fixes elastic#153477.
    Fixes elastic#153476.
    Part of elastic#187772 (technical debt).
    Part of elastic#153288 (migrate enzyme tests to react-testing-lib).
    
    Removes dependency cache. The major culprit making this PR large and not
    easy to split is that `getHttp()` from the dependency cache was used
    throughout the code base for services like `mlJobService` and
    `ml/mlApiServices` which then themselves were directly imported and not
    part of React component lifecycles.
    
    - For functional components this means mostly migrating to hooks that
    allow accessing services.
    - We still have a bit of a mix of usage of `withKibana` and `context`
    for class based React components. This was not consolidated in this PR,
    I took what's there and adjusted how services get used. These components
    access services via `this.props.kibana.services.*` or
    `this.context.services.*`.
    - Functions no longer access the global services provided via dependency
    cache but were updated to receive services via arguments.
    - Stateful services like `mlJobService` are exposed now via a factory
    that makes sure the service gets instantiated only once.
    - Some tests where the mocks needed quite some refactoring were ported
    to `react-testing-lib`. They no longer make use of snapshots or call
    component methods which should be considered implementation details.
    - We have a mix of usage of the plain `toasts` via `useMlKibana` and our
    own `toastNotificationServices` that wraps `toasts`. I didn't
    consolidate this in this PR but used what's available for the given
    code.
    - For class based components, service initializations were moved from
    `componentDidMount()` to `constructor()` where I spotted it.
    - We have a bit of a mix of naming: `ml`, `mlApiServices`,
    `useMlApiContext()` for the same thing. I didn't consolidate the naming
    in this PR, to avoid making this PR even larger. This can be done in a
    follow up, once this PR is in this should be more straightforward and
    less risky.
    - Turns out `explorer_chart_config_builder.js` is no longer used
    anywhere so I deleted it.
    - `jobs/jobs_list/components/utils.d.ts` was missing some definitions,
    tried to fix them.
    - Moved `stashJobForCloning` to be a method of `mlJobService`.
    - The `MetricSelector` component was an exact copy besides the i18n
    label, consolidated that so anomaly detection wizards use the same
    component.
    
    ### Checklist
    
    - [x] [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
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    walterra authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    38f4aa0 View commit details
    Browse the repository at this point in the history
  21. [ML] AIOps: Using no minimum time range by default for pattern analys…

    …is (elastic#191192)
    
    Changing the default selection from `1 week` to `No minimum`.
    For indices with very large doc counts, it is safer not to query a
    week's worth of data by default, but rather use the time range selected
    in the time picker.
    jgowdyelastic authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    525d9f6 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    52cbd49 View commit details
    Browse the repository at this point in the history
  23. [Response Ops][Cases] Spinner on assigning user to case from case page (

    elastic#191490)
    
    ## Summary
    
    Fixes elastic#190303
    
    In 8.15 we disabled a request that showed a spinner while React Query's
    `isLoading` was true. `isLoading` remains true as long as no data has
    been received. Because the request was disabled, `isLoading` stayed true
    the entire time, causing the spinner to be displayed instead of the form
    that would have activated the request. The fix uses another React Query
    state called `isFetching`, which is only true while the request is
    actively being made, so initially, no spinner is shown.
    
    ## Release Note
    Fix endless loading spinner when wanting to add a assignee to a case
    from the cases list
    jcger authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    19f6469 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    631304b View commit details
    Browse the repository at this point in the history
  25. [APM][ECO] Add link "Explore logs" in logs charts (elastic#191704)

    ## Summary
    
    closes elastic#190520
    
    
    
    https://github.com/user-attachments/assets/7adce001-3a39-412e-aeeb-adc11e5be72e
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    kpatticha and kibanamachine authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    ddc42ee View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    fe0d310 View commit details
    Browse the repository at this point in the history
  27. Adjust missing features in platform security serverless tests (elasti…

    …c#191706)
    
    ## Summary
    
    Follow up to elastic#187993
    Fix missing features in serverless API integration tests
    Dosant authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    be8de53 View commit details
    Browse the repository at this point in the history
  28. Fix dark theme playground (elastic#190492)

    - Fix header and message on DARK Mode
    - Update python code example
    <img width="1404" alt="image"
    src="https://github.com/user-attachments/assets/34ef7b19-acf9-4dfd-af31-e742fba6901f">
    yansavitski authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    4c77c7a View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    d06b063 View commit details
    Browse the repository at this point in the history
  30. [Search] Fix inference endpoints ignoring different deployments (elas…

    …tic#191223)
    
    ## Summary
    
    Inference endpoints were ignoring different deployments, only looking at
    the first deployment. This is wrong: we should be checking the specific
    inference endpoint's trained model reference deployment. This fixes
    that.
    sphilipse authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    3de8133 View commit details
    Browse the repository at this point in the history
  31. [ES|QL] Support argument precedence in BasicPrettyPrinter (elastic#…

    …191727)
    
    ## Summary
    
    Inserts brackets where necessary, if binary expressions have different
    precedence. For example:
    
    ```
    FROM a | WHERE (1 + 2) * (3 - 4)
    ```
    
    
    ### Checklist
    
    - [x] [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
    
    
    ### For maintainers
    
    - [x] This was checked for breaking API changes and was [labeled
    appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
    vadimkibana authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    a156e67 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    3a57478 View commit details
    Browse the repository at this point in the history
  33. [ML] Improve expired license check (elastic#191503)

    When a trial license expires, the license falls into a state where it is
    not seen as being a valid basic license, but rather an "expired"
    license.
    The license is still valid and our `isMinimumLicense` check needs to
    return true in this situation to allow the ML app to redirect to the
    expired license page.
    
    Before (ML page fails to load):
    
    
    ![image](https://github.com/user-attachments/assets/0e73b2a5-0645-4253-9737-1393fe58f8a1)
    
    
    
    After (we redirect to the license page):
    
    
    ![image](https://github.com/user-attachments/assets/3f579c1e-ee7f-45e8-87d3-258caa5d42c2)
    jgowdyelastic authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    0a1be16 View commit details
    Browse the repository at this point in the history
  34. [kbn/server-route-repository] Make params optional for Zod schema wit…

    …h only optional keys (elastic#191709)
    
    `io-ts` and `zod` have differences in how they usually define optional
    keys.
    
    In `io-ts`, we usually define a union between a type and a partial, and
    if all keys are optional we only provide the partial type.
    While in `zod` if all keys are optional, it's more common to simply put
    each key as optional while the wrapping object is not.
    
    The way the type inference works in the route repository leads to this
    two cases having different results.
    For `io-ts`, when it sees a partial, it marks the query/path/body and
    thus params object as fully optional, while for `zod` since
    query/path/body are **not** optional but all their keys are, the chain
    is still marked as required.
    
    This PR aims to align these behaviours by checking if the `zod` schema
    only specifies optional field, and if it does it marks the
    query/path/body level as optional so that params also can become
    optional.
    
    This way, when calling the API via the client, if all params are
    optional, the second options argument can be omitted.
    Similarly, the types in the handler are marked correctly as possibly
    undefined to prevent bugs.
    
    The PR also adds a little `isHttpFetchError` helper with slightly better
    type support than what the Core version has.
    
    ---------
    
    Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
    miltonhultgren and kibanamachine authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    6154420 View commit details
    Browse the repository at this point in the history
  35. [FTR] Refactor test/common/services/* -> packages/kbn-ftr-common-func…

    …tional-[ui-]services/* (elastic#189051)
    
    ## Summary
    
    Moving common services to respective new homes.
    
    Resolves: elastic#188541
    
    ---------
    
    Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
    wayneseymour and elasticmachine authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    09a3658 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    078dd35 View commit details
    Browse the repository at this point in the history
  37. review I

    stephmilovic committed Aug 29, 2024
    Configuration menu
    Copy the full SHA
    2efc9fb View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    b36b198 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    7adda78 View commit details
    Browse the repository at this point in the history
  40. [MX] Mute alert options with read only permission (elastic#191283)

    Issue: elastic#191060
    
    ### Checklist
    
    - [x] [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.
    guskovaue authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    2d81ab6 View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    7a42005 View commit details
    Browse the repository at this point in the history
  42. [Security Solution] Integrates security solution tests with Kibana QA…

    … quality gate (elastic#187266)
    
    ## Summary
    
    Once this PR is merged, when the Kibana QA quality gate is triggered the
    following tests are going to be executed:
    
    - API tests tagged with `@serverlessQA`
    - Cypress tests tagged with `@serverlessQA`
    
    Currently there are only a few that have been extensively tested and are
    passing on MKI environments.
    
    The current and future tests:
    - Cover critical paths of the Security Solution application
    - Test behaviours that if broken SDH or blocker issues might be reported
    by customers.
    
    We have created a run book that has been shared with all the team
    members of Security Solution and can be found in our internal docs with
    the title `Security Serverless Kibana QA Quality Gate Failure Run Book`
    
    Some of the most important points mentioned in the run book:
    
    Below are the channels/groups to be contacted should a test fail:
    * Detection Engine tests:
      * #security-detection-engine
      * @security-detection-engine-team
      
    * Entity Analytics tests:
      *  #security-entity-analytics 
      *  @security-entity-analytics-team
      
    * Explore tests:
      * #threat-hunting-explore
      * @security-threat-hunting-explore
      
    * Investigations tests: 
      * #security-threat-hunting-investigations 
      * @threat-hunting-investigations
      
    * Gen AI tests:
      *  #security-gen-ai-sharing
      *  @security-generative-ai-team
      
    * Rule Management tests:
      * #security-detection-rule-management  
      * @security-detection-rule-management-team
      
    * Defend Workflows tests:
      * #security-defend-workflows
      * @defend-workflows
      
    * Geneve detection rules tests: 
      * #sec-eng-productivity
      * @sec-eng-prod & `@Dom`
      
    If nobody responds within 30 minutes: Post the issue in the
    #security-unified-app channel with the message that team X is not
    responding and assistance is needed. Tag @sec-eng-prod as well.
    
    Should a failure occur, the Release Manager (RM) will post in the team
    channell and @ the team responsible. The team, unless in the middle of
    responding to an SDH Sev1-2, must respond immediately and begin
    investigation with the RM. Serverless test failures in the Production
    Quality Release Pipeline are BLOCKING for the entire Kibana Serverless
    release.
    
    ---------
    
    Co-authored-by: Robert Oskamp <traeluki@gmail.com>
    MadameSheema and pheyos authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    7d54e4e View commit details
    Browse the repository at this point in the history
  43. rm complete

    stephmilovic committed Aug 29, 2024
    Configuration menu
    Copy the full SHA
    c4ba1f4 View commit details
    Browse the repository at this point in the history
  44. Dashboard favorites telemetry (elastic#190706)

    ## Summary
    
    Add telemetry to favorites feature
    elastic#189285
    
    
    - Adds UI usage counter telemetry, increase the counter when favorite /
    unfavorite is clicked
    - Add snapshot telemetry: 
      - total "favorite" object in the deployment 
    - total users+spaces count combination who have used the favorites
    feature
    - avg per user per space (only counts those users who favorited at least
    once)
      - max favorites objects per user per space
    
    Unfortunately, for snapshot telemetry, I had to add fields to kibana
    mapping. We didn't need them for a feature, but I didn't realize that
    will have to add them to a mapping. Not sure if there is a better way
    Dosant authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    ec0230b View commit details
    Browse the repository at this point in the history
  45. [ES|QL] Only log requests to Inspector on request complete (elastic#1…

    …91232)
    
    ## Summary
    
    Requires elastic#191520.
    Resolves elastic#188266.
    
    Prior to this PR, when polling on an async ES|QL request, we would log
    the response to every polling request. This PR only logs when the
    request is complete.
    
    Before:
    
    
    ![image](https://github.com/user-attachments/assets/fe9a763d-ef43-4f46-a096-0e08e1805f47)
    
    After:
    
    
    ![image](https://github.com/user-attachments/assets/5d59f016-8b0e-4a3f-b044-17b5de97739f)
    
    
    ### Checklist
    
    - [x] [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
    - [x] [Flaky Test
    Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
    used on any tests changed
    ([build](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/6823))
    lukasolson authored Aug 29, 2024
    Configuration menu
    Copy the full SHA
    c71c0df View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    6c87861 View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    1bf7c29 View commit details
    Browse the repository at this point in the history