)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"ace809d22292e2a606a0210e564f4b8edf765219","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3e3c5a4f_e2a84ff4","updated":"2026-09-21 11:00:47.000000000","message":"lgtm, but I think we should change the removal target for noisy_neighbor to match when we\u0027ll actually proceed with the removal","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"}],"doc/source/strategies/noisy_neighbor.rst":[{"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"},"tag":"autogenerated:zuul:automatic-ci","change_message_id":"667ee23c7cb358e8c16880df03b218bf3f2bbeae","unresolved":false,"context_lines":[{"line_number":2,"context_line":"Noisy neighbor"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":".. deprecated:: 2025.2"},{"line_number":6,"context_line":"   This strategy is deprecated and will be removed in the 2026.2 release."},{"line_number":7,"context_line":"   It relies on Last Level Cache metrics that are no longer available in Nova."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"6e34b678_7c8bc5b0","line":5,"updated":"2026-09-18 19:25:13.000000000","message":"The new banner at doc/source/strategies/noisy_neighbor.rst:5-7 states the strategy \u0027will be removed in the 2026.2 release\u0027. In the prepared repository, tag 17.0.0.0rc1 (Watcher 17.0.0 \u003d OpenStack 2026.2 per releasenotes/notes/2026.2-prelude-f539788e6f02552d.yaml) was created 2026-09-08 and is an ancestor of reviewed HEAD 76df67af (2026-09-18). The NoisyNeighbor class is still present and this change does not remove it; after the rc1 cut, master targets the next release (2027.1, matching this change\u0027s own version\u003d\u00272027.1\u0027 decorators). The 2026.2 release contents are therefore frozen with the strategy still shipped.\n\n**Severity**: WARNING | **Confidence**: 0.8\n\n**Impact**: Operators planning migration off the strategy are told removal happens in 2026.2, yet the 2026.2 release still ships it, and during 2026.2 its runtime deprecation warning says it will be removed in the very release being run. The contradiction directly undermines the change\u0027s stated purpose of making the documentation describe reality.\n\n**Suggestion**:\nUpdate the banner to the realistic removal release (2027.1) and align the pre-existing removal_version in noisy_neighbor.py in the same patch or a closely following one, or state an explicit deferral; do not ship a removal promise that the reviewed tree already cannot meet.","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"ace809d22292e2a606a0210e564f4b8edf765219","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Noisy neighbor"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":".. deprecated:: 2025.2"},{"line_number":6,"context_line":"   This strategy is deprecated and will be removed in the 2026.2 release."},{"line_number":7,"context_line":"   It relies on Last Level Cache metrics that are no longer available in Nova."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"c6f97731_d2647624","line":5,"in_reply_to":"6e34b678_7c8bc5b0","updated":"2026-09-21 11:00:47.000000000","message":"this seems valid, we missed this during 2026.2, we should updated the text to 2027.1 at least","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"15592961df6269c56020262aee2319d0d8dcdb01","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Noisy neighbor"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":".. deprecated:: 2025.2"},{"line_number":6,"context_line":"   This strategy is deprecated and will be removed in the 2026.2 release."},{"line_number":7,"context_line":"   It relies on Last Level Cache metrics that are no longer available in Nova."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"f69c25d1_bb54b8d6","line":5,"in_reply_to":"727253b1_8686afb8","updated":"2026-09-21 11:24:45.000000000","message":"either is fine, we could also set 2028.1 to match the other strategies","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"6c75028dbcf5a6300ac38b4b8ac09b2283e026d6","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Noisy neighbor"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":".. deprecated:: 2025.2"},{"line_number":6,"context_line":"   This strategy is deprecated and will be removed in the 2026.2 release."},{"line_number":7,"context_line":"   It relies on Last Level Cache metrics that are no longer available in Nova."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"727253b1_8686afb8","line":5,"in_reply_to":"c6f97731_d2647624","updated":"2026-09-21 11:12:33.000000000","message":"We still don\u0027t know when we are going to remove tbh, it will also require us to remove the Goal. So we can update that to 2027.1 or 2027.2, but I still thing that we are going to keep it for some time","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"}],"watcher/decision_engine/strategy/strategies/outlet_temp_control.py":[{"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"},"tag":"autogenerated:zuul:automatic-ci","change_message_id":"667ee23c7cb358e8c16880df03b218bf3f2bbeae","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"warnings.simplefilter(\u0027always\u0027)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"@removals.removed_class("}],"source_content_type":"text/x-python","patch_set":1,"id":"14a3d3dd_43c8d96f","line":47,"updated":"2026-09-18 19:25:13.000000000","message":"The change adds `warnings.simplefilter(\u0027always\u0027)` at import time in outlet_temp_control.py (line 47), saving_energy.py (line 34) and uniform_airflow.py (line 31). CPython prepends this catch-all entry to the process-global `warnings.filters`, shadowing every filter configured before the import (operator PYTHONWARNINGS or embedding application configuration). watcher/decision_engine/strategy/strategies/__init__.py imports all three modules and watcher/decision_engine/manager.py:44 imports that package when watcher-decision-engine starts, so each decision-engine process mutates global warning state at startup. debtcollector\u0027s @removals.removed_class already emits DeprecationWarning on instantiation or subclassing without any global filter change.\n\n**Severity**: WARNING | **Confidence**: 0.82\n\n**Impact**: After any of these imports, warning filters configured earlier in the process stop matching: operator PYTHONWARNINGS settings and embedding-application filters are overridden, previously suppressed warnings reappear for every library in the process (stderr/log noise), and the effect lasts for the lifetime of the decision-engine service. The same global decision now has four independent implementations that must be edited together.\n\n**Suggestion**:\nDrop the three new `warnings.simplefilter(\u0027always\u0027)` calls; the @removals.removed_class decorators already emit DeprecationWarning when the strategies are instantiated. If deprecations must be surfaced by default, configure warnings once at the service entry point or CI configuration instead of mutating global state per strategy module, and consider removing the noisy_neighbor.py:31 copy in a follow-up.","commit_id":"76df67afa1232d6611612facad6fcf2618f38372"}]}
