)]}'
{"id":"openstack%2Fwatcher~999716","triplet_id":"openstack%2Fwatcher~master~I8631f558dbc8ee8f1c4fad8e391820ae46ac253c","project":"openstack/watcher","branch":"master","topic":"bp/audit-pipeline","attention_set":{"30002":{"account":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"last_update":"2026-08-12 11:33:28.000000000","reason":"Someone else replied on the change"},"16312":{"account":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"last_update":"2026-08-11 13:02:06.000000000","reason":"\u003cGERRIT_ACCOUNT_30002\u003e replied on the change","reason_account":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"}}},"removed_from_attention_set":{"26471":{"account":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"last_update":"2026-08-12 11:33:28.000000000","reason":"removed on reply"}},"hashtags":[],"change_id":"I8631f558dbc8ee8f1c4fad8e391820ae46ac253c","subject":"Add metric query methods to BaseStrategy","status":"NEW","created":"2026-08-04 12:16:54.000000000","updated":"2026-08-12 23:35:02.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":5,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"11cf8b6eab421ec2072834587053dbd72f5df5b7","_number":999716,"virtual_id_number":999716,"owner":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-08-12 23:35:02.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"disliked":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"all":[{"value":-1,"date":"2026-08-12 22:25:43.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Standard Change","+1":"Important Change","+2":"High Priority Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"}],"CC":[{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-04 12:17:08.000000000","updated_by":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"reviewer":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"state":"CC"},{"updated":"2026-08-04 12:54:00.000000000","updated_by":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"reviewer":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"state":"REVIEWER"},{"updated":"2026-08-04 12:58:20.000000000","updated_by":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"reviewer":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"state":"CC"},{"updated":"2026-08-04 14:01:52.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"01634f21732539f627b8b0066008adca00df8abc","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-04 12:16:54.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3272af14aaf84bd5641812b84ca6de37fefd3199","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-04 12:17:08.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"b19967277b6240203a1b7b06588d5e4a863c9e78","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-04 12:45:37.000000000","message":"Patch Set 1:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/9b2d8a36fe764c86ab47f8db3ffccd98\n\n- teim-code-review https://zuul.teim.app/t/main/build/998ea1bf84684b188c13bc09b9ca169d : SUCCESS in 7m 40s","accounts_in_message":[],"_revision_number":1},{"id":"19455b683d9d55bff39e8520c5043725077cc8ce","author":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"date":"2026-08-04 12:54:00.000000000","message":"Patch Set 1: Code-Review-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\nhttps://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/95d558d238e64391a13fae2b47e435e5\n\n- openstack-meta-content-provider-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/89a54b3861594205ade1ecb74683285d : FAILURE in 9m 33s\n- watcher-operator-validation-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/0ea410f1acb3421cb6282fb49e4ff3e8 : SKIPPED Skipped due to failed job openstack-meta-content-provider-master","accounts_in_message":[],"_revision_number":1},{"id":"19920d467ccdaa0849b8eaa765e9e4bce699d93b","author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"date":"2026-08-04 12:58:20.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"d1f6a0aa9c25f8723a62b8dcb2a95a4720fb4ee7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-04 14:01:52.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9be45933231349cb9d503d6ff38048e2\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/a0dcadb30abf45b2a64d094acb96f368 : SUCCESS in 8m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/688a8aa2f85243ef9f6ac5f619dcc695 : SUCCESS in 4m 07s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/550791abc5d743fe93766f6177bd8446 : SUCCESS in 5m 40s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/91541ce7f8594c1081cab43200ad3b94 : SUCCESS in 5m 31s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/c817b9a802f04545b9efe6dbe34f0201 : SUCCESS in 8m 41s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2dcbad6154b04dbbb69adb9db50ead3a : SUCCESS in 9m 43s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/97b73935c3cd4cbe88b85ebb7ca0452e : SUCCESS in 4m 24s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/7b193b6d38ab484392211bacf4e69e87 : SUCCESS in 6m 47s\n- watcher-grenade https://zuul.opendev.org/t/openstack/build/8084a51c854f4ce0a2f542693bc7c619 : SUCCESS in 51m 59s\n- watcher-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/07c94dc7a0ad4d58b32ac336ff17d88d : SUCCESS in 24m 20s\n- watcher-tempest-api-ipv6-only https://zuul.opendev.org/t/openstack/build/8c03aac45e9b476cb95a6f75b98170e9 : SUCCESS in 40m 40s\n- watcher-tempest-gnocchi https://zuul.opendev.org/t/openstack/build/a6d949865dd448939504ee3ce89a303f : SUCCESS in 1h 30m 02s\n- watcher-tempest-prometheus https://zuul.opendev.org/t/openstack/build/2601cbba6c2b4c79a06763d1c2793b68 : SUCCESS in 1h 39m 36s\n- watcher-tempest-prometheus-eventlet https://zuul.opendev.org/t/openstack/build/ffd63f0ae70e4f0282f582d73db0848b : SUCCESS in 1h 36m 41s\n- watcher-tempest-aetos https://zuul.opendev.org/t/openstack/build/b5c98c6407ba4f2da2458d50891a5d08 : SUCCESS in 1h 37m 45s","accounts_in_message":[],"_revision_number":1},{"id":"4d1a2022286bc8b6445ad37e0a8735bab9dc253d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-05 18:31:05.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.\n\nCopied Votes:\n* Code-Review-1 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"cfbf5f309b34b700fd7848f71bb33ac0b229dbd5","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-05 18:31:19.000000000","message":"Patch Set 2:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":2},{"id":"bc8f0bde2edec8f4ab0fdfdc51da5dc25f0aaeda","author":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"date":"2026-08-05 18:41:45.000000000","message":"Patch Set 2: Code-Review-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\nhttps://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/0913209f797f48e5b4dd81f628f592ea\n\n- openstack-meta-content-provider-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/9d20602b569f4735bd8a900fb04caaeb : FAILURE in 9m 28s\n- watcher-operator-validation-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/e04a6a54f5134036bd4c82132ec2eec5 : SKIPPED Skipped due to failed job openstack-meta-content-provider-master","accounts_in_message":[],"_revision_number":2},{"id":"b744642d411ce9b83d7d00ddbd42b95f720e7283","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-05 18:48:09.000000000","message":"Patch Set 2:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/3a864d7d628f46eb9800db45b4d71800\n\n- teim-code-review https://zuul.teim.app/t/main/build/63fe0296e1544e3c9b1724fce2c2a240 : SUCCESS in 8m 54s","accounts_in_message":[],"_revision_number":2},{"id":"b84eddf12b6ca719d00e445dfa459be1a41a1b01","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-05 20:08:49.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/5a83c8a17ac64d74809d22430bf9766a\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/5c8081da14b84107a56b7eea9187fea1 : SUCCESS in 4m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/47c8db6993e747e4bb678f4985efedb2 : SUCCESS in 4m 04s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/ab45c09f249f4903af78cde1cd0a4634 : SUCCESS in 4m 52s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/98719d74dc3c4546b1c9f2dc16ae3ab0 : SUCCESS in 5m 23s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/0f0ecd4efe864c42a8e4c535eb2dbd78 : SUCCESS in 10m 59s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9753cbbec1d94c08af833b34f4586438 : SUCCESS in 4m 51s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/41978f2d14bb4a64a3e9a42e30bf3bd2 : SUCCESS in 4m 07s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/c2974489ccc44c899e3b30940b543af3 : SUCCESS in 5m 22s\n- watcher-grenade https://zuul.opendev.org/t/openstack/build/061e4d999d7a493aabc307a9d12db047 : SUCCESS in 39m 03s\n- watcher-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/a6035f0682f44325b55f1d756c7276a9 : SUCCESS in 37m 45s\n- watcher-tempest-api-ipv6-only https://zuul.opendev.org/t/openstack/build/d0e064373b4f4c3e9dc0c5b8d3b27fb2 : SUCCESS in 19m 04s\n- watcher-tempest-gnocchi https://zuul.opendev.org/t/openstack/build/74374ac68c534f25a57568fa2b7ec19d : SUCCESS in 1h 31m 05s\n- watcher-tempest-prometheus https://zuul.opendev.org/t/openstack/build/01bb09ef4432467ea95dd43779e36975 : FAILURE in 23m 53s\n- watcher-tempest-prometheus-eventlet https://zuul.opendev.org/t/openstack/build/9ef51b8f4223434dbd26cbc84b1cc7a6 : SUCCESS in 1h 15m 01s\n- watcher-tempest-aetos https://zuul.opendev.org/t/openstack/build/9a4738859f904cb5999afce74584a823 : SUCCESS in 50m 24s","accounts_in_message":[],"_revision_number":2},{"id":"ed6da999558b50abaf1edeabfba04473e4b4a6a0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-07 19:29:33.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.\n\nCopied Votes:\n* Code-Review-1 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"7e894f22525ead0dba076dba7c4496b6169a4847","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-07 19:29:59.000000000","message":"Patch Set 3:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":3},{"id":"376c22987e92e7f62919ee3bc73edecf1f68ee00","author":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"date":"2026-08-07 19:39:49.000000000","message":"Patch Set 3: Code-Review-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\nhttps://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/86d8c3c105dc49eb8183b83d96d13b93\n\n- openstack-meta-content-provider-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/7427465f71614c30956a0dbc56f54be4 : FAILURE in 8m 47s\n- watcher-operator-validation-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/0770c38863ba4eadbdd167df0fd26204 : SKIPPED Skipped due to failed job openstack-meta-content-provider-master","accounts_in_message":[],"_revision_number":3},{"id":"a1cbb20d088040f394f3978336d60653c1affaa0","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-07 19:44:38.000000000","message":"Patch Set 3:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/9c5c5795391e444b9cbd5425f5e4b076\n\n- teim-code-review https://zuul.teim.app/t/main/build/2f31dde3cefb4ac188e73790dd6c1664 : SUCCESS in 8m 04s\n\nWarning:\n  The patch introduces get_datasource_metrics, get_period, get_granularity, and get_aggregate across BaseStrategy and seven subclasses, but no unit tests directly exercise these methods. Existing tests cover them only indirectly through strategy execution paths, and the test file changes in this pa... Impact: If the query methods are consumed by the planned audit-pipeline feature (per the blueprint), regressions in their return values would not be caught by current tests. Recommendation: Add focused unit tests verifying return values for at least the non-trivial overrides: workload_stabilization.get_datasource_metrics (combined metric list), workload_balance.get_datasource_metrics (single-meter subset), and workload_stabilization.get_period/get_aggregate (dict keying with None fallback).","accounts_in_message":[],"_revision_number":3},{"id":"38f242f35fe04187ed4f8f79270e7baea1f31f2b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-07 21:15:49.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a2d6ae31e40c4df99fe3a5240bb2a1d4\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/fdcb35f762844a37aef97636c5fed45e : SUCCESS in 7m 33s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e2333eaff6194cc2b2eb3eb694501706 : SUCCESS in 5m 29s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/06e837c08e5247289fddca4a8c2813fd : SUCCESS in 7m 02s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/bb02174872a14cf1919b93409876391f : SUCCESS in 5m 19s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/b63e882d28dc4a68b256cc7f35cd6f72 : SUCCESS in 8m 13s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1bc565f2400a4499ab562a9dc8ec193d : SUCCESS in 9m 18s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/fdce8c266d354ed5a56c45c7a56eb969 : SUCCESS in 4m 38s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/f9b0a8c4d044440399f7966beeb38a38 : SUCCESS in 5m 09s\n- watcher-grenade https://zuul.opendev.org/t/openstack/build/8883c366fcd740289d8135cb9550fb9e : SUCCESS in 26m 53s\n- watcher-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/579ab8ace6fc481ea28ef7d4add4106a : SUCCESS in 55m 36s\n- watcher-tempest-api-ipv6-only https://zuul.opendev.org/t/openstack/build/8b5d2aaf0c8b4153ac731b274fd0bbfd : SUCCESS in 22m 38s\n- watcher-tempest-gnocchi https://zuul.opendev.org/t/openstack/build/91dd1df5344d48eb89049ce2678a46e9 : SUCCESS in 1h 24m 48s\n- watcher-tempest-prometheus https://zuul.opendev.org/t/openstack/build/2aa607947b824ae49dc6724adafe82cd : SUCCESS in 1h 42m 19s\n- watcher-tempest-prometheus-eventlet https://zuul.opendev.org/t/openstack/build/b802c1ac66be4e11bfd1f20d789f93e8 : SUCCESS in 1h 29m 00s\n- watcher-tempest-aetos https://zuul.opendev.org/t/openstack/build/e7a7ffa3cf6549fc9a61df6f798b4b05 : SUCCESS in 1h 30m 43s","accounts_in_message":[],"_revision_number":3},{"id":"e375d9ecf1e61853457948c316bc91f0b601686b","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-11 13:02:06.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"158f7b3be148d44a8723a45e4686cbf13ade4747","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-12 11:16:46.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":4},{"id":"c7f727672dd946f9fcfea48bf8c658b02293bc4f","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-12 11:17:01.000000000","message":"Patch Set 4:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":4},{"id":"552d8cae1373c7887479efccb5deb1879e3b5fb4","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-12 11:17:41.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"285e90b9b5b2c3c856a3e66a8053dad69dd130ce","author":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"date":"2026-08-12 11:33:28.000000000","message":"Patch Set 4: Code-Review-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\nhttps://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/7e7ff753344d49d087d864b13412a85a\n\n- openstack-meta-content-provider-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/eb2195da9de94581805a23407fed5e58 : FAILURE in 9m 30s\n- watcher-operator-validation-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/33cfe295b22848179ca30320c7e02b59 : SKIPPED Skipped due to failed job openstack-meta-content-provider-master","accounts_in_message":[],"_revision_number":4},{"id":"14ed3dbf762a094ecea0fb5374d3710a1836cb50","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-12 12:30:48.000000000","message":"Patch Set 4:\n\n(1 comment)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/f646467542bb41fe999d999f8f87cfe7\n\n- teim-code-review https://zuul.teim.app/t/main/build/6ac4ef9bbb0e48a7aba983cc1ab5b3f5 : SUCCESS in 10m 54s\n\nWarning:\n  File .kube/cache/http/4cbf3e74a0cf251e76b79c730e27aa78 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/0a771f2540bee8272a9133c8d531842b found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/0152c20648616207022b772d371c79f0 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/633816721bc07bdda0fbf06ed9b188a8 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/e7552727439bb59748cf49007cd4bcd2 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":4},{"id":"4b4f568885f0b8578bfcb14d052cc742f2259e35","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-12 12:56:38.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f0ad6845a416429cbb1649f3f029c499\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/4b707122a2c84a508da096996250856b : SUCCESS in 5m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c2ac4582289743e98669e793069dc447 : SUCCESS in 2m 37s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/f702ba36d8084a38bffac5d8f35b6bf0 : SUCCESS in 4m 58s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/86d7882d7f1843fb90d06c78a0bb176e : SUCCESS in 5m 34s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/e13d9b1e92b2445fa823b1a71d98d7c9 : SUCCESS in 7m 28s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dd5cc746e3b843c798e0718f298268b3 : SUCCESS in 9m 07s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a7cc31c93aa8405aa99141100e055815 : SUCCESS in 4m 48s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/7886104ccf7f4172adff0ad7098e129f : SUCCESS in 5m 09s\n- watcher-grenade https://zuul.opendev.org/t/openstack/build/fe79f7cf75744557aee60fba65182c96 : SUCCESS in 36m 48s\n- watcher-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/95c9ee7aa77744e981a4d1bdccd7e24b : SUCCESS in 51m 01s\n- watcher-tempest-api-ipv6-only https://zuul.opendev.org/t/openstack/build/311fbca72c964813bbc6ddfe1010427d : SUCCESS in 19m 41s\n- watcher-tempest-gnocchi https://zuul.opendev.org/t/openstack/build/4de0269eda83434cbe33252bbd19006f : SUCCESS in 1h 34m 09s\n- watcher-tempest-prometheus https://zuul.opendev.org/t/openstack/build/fe4b6803df124e1d8ccdaa1a0daa16ce : SUCCESS in 1h 30m 59s\n- watcher-tempest-prometheus-eventlet https://zuul.opendev.org/t/openstack/build/5b84d80b87be4572a51ba259dc4bb0c3 : SUCCESS in 1h 28m 50s\n- watcher-tempest-aetos https://zuul.opendev.org/t/openstack/build/407b7075bb244a2bb1aef13dbfd1b1d5 : SUCCESS in 1h 23m 09s","accounts_in_message":[],"_revision_number":4},{"id":"f4ceac6035e0bc72e8fac3d242a2bd175f7e027c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"date":"2026-08-12 22:13:47.000000000","message":"Uploaded patch set 5: Patch Set 4 was rebased.\n\nCopied Votes:\n* Code-Review-1 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":5},{"id":"d3917b72b414b4be6abc4e1c751d2547ad8bbeee","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-12 22:14:06.000000000","message":"Patch Set 5:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":5},{"id":"bc1062090c585c50bfc17aa062ad5c1ac76b7bdc","author":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"},"date":"2026-08-12 22:25:43.000000000","message":"Patch Set 5: Code-Review-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\nhttps://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/b42295ba426d448db865cad0099727b0\n\n- openstack-meta-content-provider-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/991fa0a985a7420bade0f6c02f652530 : FAILURE in 5m 47s\n- watcher-operator-validation-master https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/build/a8248d75861240cf8e333769b3df40ec : SKIPPED Skipped due to failed job openstack-meta-content-provider-master","accounts_in_message":[],"_revision_number":5},{"id":"22c916a1717a71f065afe465f2c990268316ac63","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-12 22:38:07.000000000","message":"Patch Set 5:\n\n(1 comment)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/b7554f7b0a87496299b2e63a788b9318\n\n- teim-code-review https://zuul.teim.app/t/main/build/958ddb93ad874326b1b266b5f9f336c2 : SUCCESS in 10m 51s\n\nWarning:\n  File .kube/cache/http/4cbf3e74a0cf251e76b79c730e27aa78 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/0a771f2540bee8272a9133c8d531842b found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/e1cf206076d306ed6d6e6b917d103ab3 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/2828778a60deaf32ddfd8bf19a7bbe42 found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .kube/cache/http/9ed598181689b7ba479b060ed0f3ba7e found in build home directory during playbook github.com/SeanMooney/ci-sean-mooney/playbooks/base/pre.yaml for job teim-code-review.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":5},{"id":"11cf8b6eab421ec2072834587053dbd72f5df5b7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-12 23:35:02.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f1fab184686c43109c1076d0feec84f9\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/10d8f5f1c30f4c69a2cb6780c3eb7b25 : SUCCESS in 7m 10s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c63d86ae1dff4574868f380783061fa5 : SUCCESS in 3m 01s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/6677a10a04324124b52b8c02930a2069 : SUCCESS in 6m 55s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/c12789f1a955465cbcf40c645cf823e5 : SUCCESS in 7m 02s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/bfda56efc325430fba271d24fdd0a31a : SUCCESS in 6m 51s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dadc00f6cac3430083e95b0a7fd2b023 : SUCCESS in 8m 15s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a9428869661345288b12f26272e9547a : SUCCESS in 4m 41s\n- openstack-tox-py313-eventlet https://zuul.opendev.org/t/openstack/build/a4098fc7aace41b2962dbbfa99acf5c8 : SUCCESS in 5m 15s\n- watcher-grenade https://zuul.opendev.org/t/openstack/build/2d6c362cb5c2420e9659220892dc4228 : SUCCESS in 29m 19s\n- watcher-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/3f178e17c6994394933b650924576e20 : SUCCESS in 51m 55s\n- watcher-tempest-api-ipv6-only https://zuul.opendev.org/t/openstack/build/149b33a344a34b2b964196fab7e660f2 : SUCCESS in 36m 00s\n- watcher-tempest-gnocchi https://zuul.opendev.org/t/openstack/build/5017486ce7474156a749004fec58551d : SUCCESS in 42m 37s\n- watcher-tempest-prometheus https://zuul.opendev.org/t/openstack/build/c39ca03c7024458b9f3d7a96d4bf879c : SUCCESS in 53m 48s\n- watcher-tempest-prometheus-eventlet https://zuul.opendev.org/t/openstack/build/3f3cad52bf2048648dda2df62fad13ab : SUCCESS in 1h 13m 07s\n- watcher-tempest-aetos https://zuul.opendev.org/t/openstack/build/87182b6f238449cd8b66f41ac1b5b5c2 : SUCCESS in 1h 12m 01s","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"13d2e9e0e3fdcdafc6febfb383d0f7a9f59de04e","revisions":{"0258f6a267631dcf5578169f6b178c6c32136d48":{"kind":"REWORK","_number":1,"created":"2026-08-04 12:16:54.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/16/999716/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/16/999716/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/16/999716/1"}}},"commit":{"parents":[{"commit":"120c5e647307b3ccfb122d9f4cda6452c0ad319a","subject":"Add MetricDataCache and integrate it into DataSourceBase","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/120c5e647307b3ccfb122d9f4cda6452c0ad319a"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 11:45:33.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 12:11:36.000000000","tz":-180},"subject":"Add metric query methods to BaseStrategy","message":"Add metric query methods to BaseStrategy\n\nAdd get_datasource_metrics() to BaseStrategy to allow callers to query\nthe set of metrics a strategy will actually use at runtime. The default\nreturns the full DATASOURCE_METRICS class constant. workload_balance\noverrides it to return only the single metric chosen from\ninput_parameters.metrics; workload_stabilization overrides it to return\nthe active instance metrics and their host equivalents derived from\ninput_parameters.\n\nAdd get_period(resource), get_granularity(resource), and\nget_aggregate(resource) methods to BaseStrategy (all return None by\ndefault). Strategies that configure these values through input_parameters\nor per-resource dicts provide resource-aware overrides: single-value\nstrategies (workload_balance, uniform_airflow, noisy_neighbor,\noutlet_temp_control, vm_workload_consolidation) ignore the resource\nargument; workload_stabilization keys into its periods dict and\naggregation_method dict using the resource type.\n\nPartially-Implements: blueprint audit-pipeline\nAssisted-By: Claude Code (Sonnet 4.6)\nChange-Id: I8631f558dbc8ee8f1c4fad8e391820ae46ac253c\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/0258f6a267631dcf5578169f6b178c6c32136d48"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/0258f6a267631dcf5578169f6b178c6c32136d48"}]},"branch":"refs/heads/master"},"44fc3a44b30d65347fc85aaecbbfb018f3f19f42":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-08-05 18:31:05.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/16/999716/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/16/999716/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/16/999716/2"}}},"commit":{"parents":[{"commit":"bd20c76416410c70f5b5f60a84598398df6d9375","subject":"Add MetricDataCache and integrate it into DataSourceBase","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/bd20c76416410c70f5b5f60a84598398df6d9375"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 11:45:33.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-05 15:25:02.000000000","tz":-180},"subject":"Add metric query methods to BaseStrategy","message":"Add metric query methods to BaseStrategy\n\nAdd get_datasource_metrics() to BaseStrategy to allow callers to query\nthe set of metrics a strategy will actually use at runtime. The default\nreturns the full DATASOURCE_METRICS class constant. workload_balance\noverrides it to return only the single metric chosen from\ninput_parameters.metrics; workload_stabilization overrides it to return\nthe active instance metrics and their host equivalents derived from\ninput_parameters.\n\nAdd get_period(resource), get_granularity(resource), and\nget_aggregate(resource) methods to BaseStrategy (all return None by\ndefault). Strategies that configure these values through input_parameters\nor per-resource dicts provide resource-aware overrides: single-value\nstrategies (workload_balance, uniform_airflow, noisy_neighbor,\noutlet_temp_control, vm_workload_consolidation) ignore the resource\nargument; workload_stabilization keys into its periods dict and\naggregation_method dict using the resource type.\n\nPartially-Implements: blueprint audit-pipeline\nAssisted-By: Claude Code (Sonnet 4.6)\nChange-Id: I8631f558dbc8ee8f1c4fad8e391820ae46ac253c\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/44fc3a44b30d65347fc85aaecbbfb018f3f19f42"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/44fc3a44b30d65347fc85aaecbbfb018f3f19f42"}]},"branch":"refs/heads/master"},"610a36135d234fd1a80cc55c1ecbd747f6ac3088":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2026-08-07 19:29:33.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/16/999716/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/16/999716/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/16/999716/3"}}},"commit":{"parents":[{"commit":"3e1cd24e4c2de7f642a1b34868afed936fdd3acf","subject":"Add MetricDataCache and integrate it into DataSourceBase","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/3e1cd24e4c2de7f642a1b34868afed936fdd3acf"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 11:45:33.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-07 19:28:11.000000000","tz":-180},"subject":"Add metric query methods to BaseStrategy","message":"Add metric query methods to BaseStrategy\n\nAdd get_datasource_metrics() to BaseStrategy to allow callers to query\nthe set of metrics a strategy will actually use at runtime. The default\nreturns the full DATASOURCE_METRICS class constant. workload_balance\noverrides it to return only the single metric chosen from\ninput_parameters.metrics; workload_stabilization overrides it to return\nthe active instance metrics and their host equivalents derived from\ninput_parameters.\n\nAdd get_period(resource), get_granularity(resource), and\nget_aggregate(resource) methods to BaseStrategy (all return None by\ndefault). Strategies that configure these values through input_parameters\nor per-resource dicts provide resource-aware overrides: single-value\nstrategies (workload_balance, uniform_airflow, noisy_neighbor,\noutlet_temp_control, vm_workload_consolidation) ignore the resource\nargument; workload_stabilization keys into its periods dict and\naggregation_method dict using the resource type.\n\nPartially-Implements: blueprint audit-pipeline\nAssisted-By: Claude Code (Sonnet 4.6)\nChange-Id: I8631f558dbc8ee8f1c4fad8e391820ae46ac253c\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/610a36135d234fd1a80cc55c1ecbd747f6ac3088"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/610a36135d234fd1a80cc55c1ecbd747f6ac3088"}]},"branch":"refs/heads/master"},"ed42646e2092377dc8358b86131e8f8071fbbcec":{"kind":"REWORK","_number":4,"created":"2026-08-12 11:16:46.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/16/999716/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/16/999716/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/16/999716/4"}}},"commit":{"parents":[{"commit":"3e1cd24e4c2de7f642a1b34868afed936fdd3acf","subject":"Add MetricDataCache and integrate it into DataSourceBase","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/3e1cd24e4c2de7f642a1b34868afed936fdd3acf"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 11:45:33.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-11 17:30:36.000000000","tz":-180},"subject":"Add metric query methods to BaseStrategy","message":"Add metric query methods to BaseStrategy\n\nAdd get_datasource_metrics() to BaseStrategy to allow callers to query\nthe set of metrics a strategy will actually use at runtime. The default\nreturns the full DATASOURCE_METRICS class constant. workload_balance\noverrides it to return only the single metric chosen from\ninput_parameters.metrics; workload_stabilization overrides it to return\nthe active instance metrics and their host equivalents derived from\ninput_parameters.\n\nAdd get_period(resource), get_granularity(resource), and\nget_aggregate(resource) methods to BaseStrategy (all return None by\ndefault). Strategies that configure these values through input_parameters\nor per-resource dicts provide resource-aware overrides: single-value\nstrategies (workload_balance, uniform_airflow, noisy_neighbor,\noutlet_temp_control, vm_workload_consolidation) ignore the resource\nargument; workload_stabilization keys into its periods dict and\naggregation_method dict using the resource type.\n\nPartially-Implements: blueprint audit-pipeline\nAssisted-By: Claude Code (Sonnet 4.6)\nChange-Id: I8631f558dbc8ee8f1c4fad8e391820ae46ac253c\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/ed42646e2092377dc8358b86131e8f8071fbbcec"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/ed42646e2092377dc8358b86131e8f8071fbbcec"}]},"branch":"refs/heads/master"},"13d2e9e0e3fdcdafc6febfb383d0f7a9f59de04e":{"kind":"TRIVIAL_REBASE","_number":5,"created":"2026-08-12 22:13:47.000000000","uploader":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"ref":"refs/changes/16/999716/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/watcher","ref":"refs/changes/16/999716/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/watcher refs/changes/16/999716/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/watcher refs/changes/16/999716/5"}}},"commit":{"parents":[{"commit":"84c56b8c45ef1782907a498a7515b1eae78b744f","subject":"Add MetricDataCache and integrate it into DataSourceBase","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/84c56b8c45ef1782907a498a7515b1eae78b744f"}]}],"author":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-04 11:45:33.000000000","tz":-180},"committer":{"name":"Douglas Viroel","email":"viroel@gmail.com","date":"2026-08-12 22:12:56.000000000","tz":-180},"subject":"Add metric query methods to BaseStrategy","message":"Add metric query methods to BaseStrategy\n\nAdd get_datasource_metrics() to BaseStrategy to allow callers to query\nthe set of metrics a strategy will actually use at runtime. The default\nreturns the full DATASOURCE_METRICS class constant. workload_balance\noverrides it to return only the single metric chosen from\ninput_parameters.metrics; workload_stabilization overrides it to return\nthe active instance metrics and their host equivalents derived from\ninput_parameters.\n\nAdd get_period(resource), get_granularity(resource), and\nget_aggregate(resource) methods to BaseStrategy (all return None by\ndefault). Strategies that configure these values through input_parameters\nor per-resource dicts provide resource-aware overrides: single-value\nstrategies (workload_balance, uniform_airflow, noisy_neighbor,\noutlet_temp_control, vm_workload_consolidation) ignore the resource\nargument; workload_stabilization keys into its periods dict and\naggregation_method dict using the resource type.\n\nPartially-Implements: blueprint audit-pipeline\nAssisted-By: Claude Code (Sonnet 4.6)\nChange-Id: I8631f558dbc8ee8f1c4fad8e391820ae46ac253c\nSigned-off-by: Douglas Viroel \u003cviroel@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/13d2e9e0e3fdcdafc6febfb383d0f7a9f59de04e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/watcher/commit/13d2e9e0e3fdcdafc6febfb383d0f7a9f59de04e"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":26471,"name":"Software Factory CI","email":"softwarefactory-operations-team@redhat.com","username":"sf-project-io"}},{"label":"Workflow","status":"MAY"},{"label":"Review-Priority","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Review-Priority","description":"Review Priority","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
