kibana icon indicating copy to clipboard operation
kibana copied to clipboard

[Managed content] tags UI changes

Open drewdaemon opened this issue 1 year ago • 3 comments

Summary

Close https://github.com/elastic/kibana/issues/172388 https://github.com/elastic/kibana/issues/172389 https://github.com/elastic/kibana/issues/172390

Library view

Screenshot 2024-02-15 at 2 34 04 PM

Name conflict

Screenshot 2024-02-15 at 8 55 45 AM

Tag selector

Screenshot 2024-02-15 at 2 42 43 PM

Test data

Here are two managed tags and an unmanaged tag

{"attributes":{"color":"#00FFFF","description":"","name":"My 2nd managed tag"},"coreMigrationVersion":"8.8.0","created_at":"2024-02-15T20:29:07.437Z","id":"b39a6c39-80ec-43ca-ad6b-f45823fae490","managed":true,"references":[],"type":"tag","typeMigrationVersion":"8.0.0","updated_at":"2024-02-15T20:29:07.437Z","version":"WzE0OTksNV0="}
{"attributes":{"color":"#102d2c","description":"","name":"My unmanaged tag"},"coreMigrationVersion":"8.8.0","created_at":"2024-02-15T15:51:47.801Z","id":"714c1133-d4a9-41ed-a449-6954a028c31e","managed":false,"references":[],"type":"tag","typeMigrationVersion":"8.0.0","updated_at":"2024-02-15T15:51:47.801Z","version":"Wzg3NCw1XQ=="}
{"attributes":{"color":"#a0a0a5","description":"","name":"My managed tag"},"coreMigrationVersion":"8.8.0","created_at":"2024-02-15T15:52:52.160Z","id":"b39a6c39-80ec-43ca-ad6b-c45823fae490","managed":true,"references":[],"type":"tag","typeMigrationVersion":"8.0.0","updated_at":"2024-02-15T15:52:52.160Z","version":"WzkwOCw1XQ=="}
{"excludedObjects":[],"excludedObjectsCount":0,"exportedCount":3,"missingRefCount":0,"missingReferences":[]}

Checklist

drewdaemon avatar Feb 15 '24 21:02 drewdaemon

/ci

drewdaemon avatar Feb 15 '24 21:02 drewdaemon

/ci

drewdaemon avatar Feb 15 '24 23:02 drewdaemon

/ci

drewdaemon avatar Feb 20 '24 19:02 drewdaemon

/ci

drewdaemon avatar Feb 21 '24 16:02 drewdaemon

/ci

drewdaemon avatar Feb 21 '24 22:02 drewdaemon

@elasticmachine merge upstream

drewdaemon avatar Feb 22 '24 14:02 drewdaemon

/ci

drewdaemon avatar Feb 22 '24 14:02 drewdaemon

@elasticmachine merge upstream

drewdaemon avatar Mar 05 '24 15:03 drewdaemon

@elasticmachine merge upstream

drewdaemon avatar Mar 05 '24 18:03 drewdaemon

@elasticmachine merge upstream

drewdaemon avatar Mar 05 '24 20:03 drewdaemon

/ci

drewdaemon avatar Mar 05 '24 22:03 drewdaemon

@elasticmachine merge upstream

drewdaemon avatar Mar 05 '24 22:03 drewdaemon

:yellow_heart: Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Defend Workflows Cypress Tests #5 / Response console Host Isolation: should isolate a host from response console should isolate a host from response console

Metrics [docs]

Public APIs missing comments

Total count of every public API that lacks a comment. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats comments for more detailed information.

id before after diff
savedObjectsTagging 81 83 +2
savedObjectsTaggingOss 56 57 +1
total +3

Async chunks

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

id before after diff
savedObjectsTagging 46.4KB 47.4KB +1.0KB
securitySolution 13.0MB 13.0MB +18.0B
total +1.0KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
savedObjectsTagging 20.4KB 20.4KB +78.0B
Unknown metric groups

API count

id before after diff
savedObjectsTagging 87 89 +2
savedObjectsTaggingOss 104 105 +1
total +3

History

  • :broken_heart: Build #196036 failed 3eac673c9d5f38a1b34a7cfc5129fa92279f30f8
  • :broken_heart: Build #196006 failed d5afecadb11fff48636b4e025b849e9f71378271
  • :broken_heart: Build #195959 failed cefd39e615663621f2dc84f731f7bb850ab66d31
  • :yellow_heart: Build #194990 was flaky 6f748b6b9a67cfc6f64c98fbe15fcb57636849d8
  • :broken_heart: Build #194840 failed d9dfdab9ddc48a865cca0f8936b0770ea407b452

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

kibana-ci avatar Mar 06 '24 00:03 kibana-ci

Hi @drewdaemon , thanks for the enhancement. I could see that we still have Managed tags in the save modal, have I missed anything?

Screenshot 2024-03-06 at 13 45 35 Screenshot 2024-03-06 at 13 14 29 Screenshot 2024-03-06 at 13 49 00 Screenshot 2024-03-06 at 14 01 29

angorayc avatar Mar 06 '24 13:03 angorayc

@sebelga I really thought we resolved this prefix discussion in https://github.com/elastic/kibana/issues/172388#issuecomment-1936621059 and https://github.com/elastic/kibana/issues/172388#issuecomment-1938377875.

As I explained on that issue—I think the prefix idea makes sense, but it is outside the scope of my effort here. I am not changing anything about how tags are installed by Fleet as part of this project. In other words, Fleet is already installing tags that may conflict with existing or future tags. This is happening on a daily basis. I opened an issue about it on your behalf but they see it as an edge case. If you want to push forward a new pattern for installing system tags, I'm fine with that. But I do not plan to do so here.

The object of this effort is simply to make it more clear which pieces of content are managed by Elastic, and which are created and managed by the user. Tag conflicts are a separate concern.

I really feel that the time to object to these changes was at the RFC stage. That document included all the changes I have now implemented in this PR and did not include prefixing. I have an approval on the RFC from your team. So, I am more than willing to meet with your team synchronously to discuss further but, TBH, I don't understand why we need to.

drewdaemon avatar Mar 06 '24 18:03 drewdaemon

@angorayc I should have mentioned this: Fleet isn't currently marking their tags as managed. They will fix this in https://github.com/elastic/kibana/issues/176924. For the purposes of this PR, please use the tag saved objects I provide in the description.

drewdaemon avatar Mar 06 '24 18:03 drewdaemon

@drewdaemon Ok we'll discuss it with the team later and see how we approach this.

Fleet has been adding tags for some time that might collide, it's indeed a separate issue we should discuss with them.

Now you introduce a new "managed by elastic" concept in our UI (creation modal, listing table) to indicate which tags are managed. We now see the problem and I think we have the opportunity to implement it right.

What I am suggesting vs what you already implemented is very little change in the code. It is more about getting the fleet team aligned and have a plan on how to update their implementation.

I'll come back with the team input 👍

sebelga avatar Mar 07 '24 09:03 sebelga

Okay, thank you for sorting this out for me @sebelga !

drewdaemon avatar Mar 07 '24 17:03 drewdaemon