)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"f72a7e9caf36c70af010f3de800a04c82f0983de","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"b27e88f3_5d90775a","updated":"2025-12-04 13:03:47.000000000","message":"This patch is not running any scenario tests in check pipeline?","commit_id":"1ed364db18bade4f773a4bc9dc50772b5a44ffd1"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"da3072114875bae3a270bb98367fc3fb3de06a1d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7ea3fc0f_a2b35ea4","in_reply_to":"b27e88f3_5d90775a","updated":"2025-12-04 13:05:08.000000000","message":"I think we need to get https://review.opendev.org/c/openstack/watcher-tempest-plugin/+/968247 in","commit_id":"1ed364db18bade4f773a4bc9dc50772b5a44ffd1"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"41ceea07b867126b25485e051f8e1660a5b59547","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"68ee00da_85110dc8","updated":"2025-12-05 11:39:11.000000000","message":"I think that we should investigate since this looks as a Watcher bug, not a watcher-tempest-plugin issue.","commit_id":"321dd1751fb56d6b5840f587ffa27dba31271060"}],"watcher_tempest_plugin/tests/api/admin/test_audit.py":[{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"467fae3b94b968c79c4a4b7ba7a8a5025f07605f","unresolved":true,"context_lines":[{"line_number":491,"context_line":""},{"line_number":492,"context_line":"        # Wait for all audits to finish to prevent race conditions"},{"line_number":493,"context_line":"        # during cleanup when the decision engine is still processing"},{"line_number":494,"context_line":"        for audit_uuid in audit_uuids:"},{"line_number":495,"context_line":"            test_utils.call_until_true("},{"line_number":496,"context_line":"                func\u003dfunctools.partial(self.has_audit_finished, audit_uuid),"},{"line_number":497,"context_line":"                duration\u003d30,"},{"line_number":498,"context_line":"                sleep_for\u003d.5"},{"line_number":499,"context_line":"            )"},{"line_number":500,"context_line":""},{"line_number":501,"context_line":"        _, body \u003d self.client.list_audits(limit\u003d3)"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"        next_marker \u003d body[\u0027audits\u0027][-1][\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"aeb5c06e_7eb1f96b","line":500,"range":{"start_line":494,"start_character":0,"end_line":500,"end_character":0},"updated":"2025-12-03 11:50:34.000000000","message":"we could also add this directly to the delete_audit, wdyt? Or there is any other test that expect an audit_delete to fail?","commit_id":"6465cf8f9d2a26cbc15a64ec910c7a78b5c77ede"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"eb6d951af6786ba1a988d4c389552f8471d602e8","unresolved":false,"context_lines":[{"line_number":491,"context_line":""},{"line_number":492,"context_line":"        # Wait for all audits to finish to prevent race conditions"},{"line_number":493,"context_line":"        # during cleanup when the decision engine is still processing"},{"line_number":494,"context_line":"        for audit_uuid in audit_uuids:"},{"line_number":495,"context_line":"            test_utils.call_until_true("},{"line_number":496,"context_line":"                func\u003dfunctools.partial(self.has_audit_finished, audit_uuid),"},{"line_number":497,"context_line":"                duration\u003d30,"},{"line_number":498,"context_line":"                sleep_for\u003d.5"},{"line_number":499,"context_line":"            )"},{"line_number":500,"context_line":""},{"line_number":501,"context_line":"        _, body \u003d self.client.list_audits(limit\u003d3)"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"        next_marker \u003d body[\u0027audits\u0027][-1][\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"2143f049_c91f8e38","line":500,"range":{"start_line":494,"start_character":0,"end_line":500,"end_character":0},"in_reply_to":"aeb5c06e_7eb1f96b","updated":"2025-12-03 12:21:43.000000000","message":"moving it under delete_audit sounds good.","commit_id":"6465cf8f9d2a26cbc15a64ec910c7a78b5c77ede"}],"watcher_tempest_plugin/tests/common/base.py":[{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"41ceea07b867126b25485e051f8e1660a5b59547","unresolved":true,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"            # Wait for audit to finish before attempting deletion."},{"line_number":260,"context_line":"            # This prevents race conditions where the decision engine"},{"line_number":261,"context_line":"            # changes state from CANCELLED to ONGOING between the"},{"line_number":262,"context_line":"            # cancel request and the delete request."},{"line_number":263,"context_line":"            if audit.get(\u0027state\u0027) not in self.AUDIT_FINISHED_STATES.values():"},{"line_number":264,"context_line":"                # Cancel the audit if it\u0027s in a state that prevents deletion"}],"source_content_type":"text/x-python","patch_set":5,"id":"29247aa3_76993738","line":261,"range":{"start_line":261,"start_character":0,"end_line":261,"end_character":65},"updated":"2025-12-05 11:39:11.000000000","message":"Watcher shouldn\u0027t move Audits from CANCELLED to ONGOING, we should report this as a bug. I can see from the logs that it actually moves from PENDING to CANCELLED, and it fails after that because it was in ONGOING state. So the previous code was not incorret, it is a bug in the code. See audit 047a5662-ac59-47b4-8742-9bc2b1dfebbe in [1].\n\n[1] https://5f8c513ab32a69dedeb7-b42c6b31cdcfa4f4b221838bf717961f.ssl.cf5.rackcdn.com/openstack/53bcf0aa7ffa4a238b77064125866b92/job-output.txt","commit_id":"321dd1751fb56d6b5840f587ffa27dba31271060"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"8aa853feef506fee01dbf23c7d72526571401a91","unresolved":true,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"            # Wait for audit to finish before attempting deletion."},{"line_number":260,"context_line":"            # This prevents race conditions where the decision engine"},{"line_number":261,"context_line":"            # changes state from CANCELLED to ONGOING between the"},{"line_number":262,"context_line":"            # cancel request and the delete request."},{"line_number":263,"context_line":"            if audit.get(\u0027state\u0027) not in self.AUDIT_FINISHED_STATES.values():"},{"line_number":264,"context_line":"                # Cancel the audit if it\u0027s in a state that prevents deletion"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a2c9410_a08aaa44","line":261,"range":{"start_line":261,"start_character":0,"end_line":261,"end_character":65},"in_reply_to":"29247aa3_76993738","updated":"2025-12-05 16:27:11.000000000","message":"Reported in https://bugs.launchpad.net/watcher/+bug/2134046","commit_id":"321dd1751fb56d6b5840f587ffa27dba31271060"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"dd9616f70bd715b25172b01f35f4874e1a71bd44","unresolved":true,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"            # Wait for audit to finish before attempting deletion."},{"line_number":260,"context_line":"            # This prevents race conditions where the decision engine"},{"line_number":261,"context_line":"            # changes state from CANCELLED to ONGOING between the"},{"line_number":262,"context_line":"            # cancel request and the delete request."},{"line_number":263,"context_line":"            if audit.get(\u0027state\u0027) not in self.AUDIT_FINISHED_STATES.values():"},{"line_number":264,"context_line":"                # Cancel the audit if it\u0027s in a state that prevents deletion"}],"source_content_type":"text/x-python","patch_set":5,"id":"d6a840d4_25d1377f","line":261,"range":{"start_line":261,"start_character":0,"end_line":261,"end_character":65},"in_reply_to":"3a2c9410_a08aaa44","updated":"2025-12-08 05:02:03.000000000","message":"thank you for alfredo, let me try fixing it.","commit_id":"321dd1751fb56d6b5840f587ffa27dba31271060"}]}
