)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"97e0d5dcfcfc005426afaa985573eb445563f54f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"72bfe6fd_84acaf07","updated":"2025-11-05 16:39:03.000000000","message":"https://zuul.teim.app/t/main/build/68ab63e0ffa64ce2b095525587bd9785/log/code-review/review-report.md that is where teh ai assisted code review job puts the output just for visibility\n\nthe primary output was \n```\n## Warnings\n\n*[severity: warning]* Mock usage inconsistency in new tests - **Confidence: 0.8**\n\n- **Location**: `/home/zuul/src/review.opendev.org/openstack/watcher/watcher/tests/api/v1/test_audits.py` (multiple test methods)\n\n- **Impact**: Testing best practices - mocks without autospec can hide bugs\n\n- **Suggestion**: Consider adding `autospec\u003dTrue` to all new `@mock.patch` decorators for better test reliability. The existing code uses mocks without autospec consistently throughout the file, so this maintains the existing pattern.\n\n\n## Suggestions\n\n*[severity: suggestion]* Add more detailed error message validation - **Confidence: 0.7**\n\n- **Location**: `/home/zuul/src/review.opendev.org/openstack/watcher/watcher/tests/api/v1/test_audits.py`\n\n- **Benefit**: Better test coverage and debugging information\n\n- **Recommendation**: Consider adding more specific assertions for the exact error messages when both dst_pool and dst_type are provided to ensure users get clear feedback.\n\n\n*[severity: suggestion]* Add logging for schema validation failures - **Confidence: 0.6**\n\n- **Location**: `/home/zuul/src/review.opendev.org/openstack/watcher/watcher/decision_engine/strategy/strategies/zone_migration.py`\n\n- **Benefit**: Improved debugging capabilities\n\n- **Recommendation**: Consider adding debug logging when schema validation fails to help troubleshoot configuration issues.\n```\n\nthe warnign is valid but it also cavets that its followign the exsitng pattern.\n\nthe first suggestion is actully already covered indirecly here https://review.opendev.org/c/openstack/watcher/+/964776/1/watcher/tests/api/v1/test_audits.py#1292\n\nyou are not asserting the exact message but you are asserting most of it\n\nthe final suggestion is interesting\n\ni belive the validation is actully initally done here\nhttps://github.com/openstack/watcher/blob/master/watcher/api/controllers/v1/audit.py#L628-L637\n\nso we do raise an exception btu we are not nessiarly ever logging that error.\n\nit will be returned in teh api respocen however so that might be ok but a debug log in the api could make sense","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"5338dba9824aa3c16770a25e72e6f725e9ed6c14","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0d3c358c_a5f8e470","updated":"2025-11-03 14:04:50.000000000","message":"recheck","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"0a731a59cdabc36d33502d7cf3a7d49592188de7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e9a7a0d3_5b983d2b","updated":"2025-11-03 16:47:40.000000000","message":"recheck unrelated test failed","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"adcda218678d8005dbce2f05b8cf9d583b0b6adf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"13c1983a_f5c7822b","updated":"2025-11-05 16:14:56.000000000","message":"teim-ci: manual","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"94b592df_6119c3ed","updated":"2025-11-06 19:06:27.000000000","message":"almost you missed one assert not ...\nand a slight typo\n\nbut other wise i think this looks good.","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"dc4511b595340ab2eac17dc99e0cab27955db622","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"aaccf83d_bd0ab330","updated":"2025-11-28 12:20:29.000000000","message":"lgtm, thanks for fixing Joan","commit_id":"4d0224f11fc42febf3adfe81af47a8ddf034fa30"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"a82231a7b09562779293abeb29da30ad1562e3ff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"edec6a05_a5bd61a1","updated":"2025-11-28 13:00:58.000000000","message":"recheck functional failure is unrelated","commit_id":"4d0224f11fc42febf3adfe81af47a8ddf034fa30"}],"watcher/decision_engine/strategy/strategies/zone_migration.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a15872a60682c849481701a906942410229d6cb8","unresolved":true,"context_lines":[{"line_number":138,"context_line":"                        ],"},{"line_number":139,"context_line":"                        \"not\": {"},{"line_number":140,"context_line":"                            \"required\": [\"dst_pool\", \"dst_type\"]"},{"line_number":141,"context_line":"                        },"},{"line_number":142,"context_line":"                        \"additionalProperties\": False"},{"line_number":143,"context_line":"                    }"},{"line_number":144,"context_line":"                },"}],"source_content_type":"text/x-python","patch_set":1,"id":"37a31412_b685a401","line":141,"updated":"2025-11-05 16:24:21.000000000","message":"i am not sure this is the normal way to do a mutally secsive group\n\ni think you shoudl be using oneOF","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"9f2501789778c3a0736a142b7cdc0fd8dd423d61","unresolved":true,"context_lines":[{"line_number":138,"context_line":"                        ],"},{"line_number":139,"context_line":"                        \"not\": {"},{"line_number":140,"context_line":"                            \"required\": [\"dst_pool\", \"dst_type\"]"},{"line_number":141,"context_line":"                        },"},{"line_number":142,"context_line":"                        \"additionalProperties\": False"},{"line_number":143,"context_line":"                    }"},{"line_number":144,"context_line":"                },"}],"source_content_type":"text/x-python","patch_set":1,"id":"dbbbb00f_1868500e","line":141,"in_reply_to":"37a31412_b685a401","updated":"2025-11-06 16:54:45.000000000","message":"I\u0027ve changed it to use `oneOf` and it does seem simpler, thanks!","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":false,"context_lines":[{"line_number":138,"context_line":"                        ],"},{"line_number":139,"context_line":"                        \"not\": {"},{"line_number":140,"context_line":"                            \"required\": [\"dst_pool\", \"dst_type\"]"},{"line_number":141,"context_line":"                        },"},{"line_number":142,"context_line":"                        \"additionalProperties\": False"},{"line_number":143,"context_line":"                    }"},{"line_number":144,"context_line":"                },"}],"source_content_type":"text/x-python","patch_set":1,"id":"b0ab3efd_5e411194","line":141,"in_reply_to":"dbbbb00f_1868500e","updated":"2025-11-06 19:06:27.000000000","message":"Done","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"}],"watcher/tests/api/v1/test_audits.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a15872a60682c849481701a906942410229d6cb8","unresolved":true,"context_lines":[{"line_number":1352,"context_line":"        response \u003d self.post_json(\u0027/audits\u0027, audit_input_dict,"},{"line_number":1353,"context_line":"                                  expect_errors\u003dTrue)"},{"line_number":1354,"context_line":"        self.assertEqual(\"application/json\", response.content_type)"},{"line_number":1355,"context_line":"        self.assertEqual(HTTPStatus.BAD_REQUEST, response.status_int)"},{"line_number":1356,"context_line":"        expected_error_msgs \u003d ("},{"line_number":1357,"context_line":"            \"is not valid under any of the given schemas\","},{"line_number":1358,"context_line":"            \"Failed validating \u0027anyOf\u0027 in schema\""}],"source_content_type":"text/x-python","patch_set":1,"id":"307ce478_465a39f7","line":1355,"updated":"2025-11-05 16:24:21.000000000","message":"+1","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"9f2501789778c3a0736a142b7cdc0fd8dd423d61","unresolved":false,"context_lines":[{"line_number":1352,"context_line":"        response \u003d self.post_json(\u0027/audits\u0027, audit_input_dict,"},{"line_number":1353,"context_line":"                                  expect_errors\u003dTrue)"},{"line_number":1354,"context_line":"        self.assertEqual(\"application/json\", response.content_type)"},{"line_number":1355,"context_line":"        self.assertEqual(HTTPStatus.BAD_REQUEST, response.status_int)"},{"line_number":1356,"context_line":"        expected_error_msgs \u003d ("},{"line_number":1357,"context_line":"            \"is not valid under any of the given schemas\","},{"line_number":1358,"context_line":"            \"Failed validating \u0027anyOf\u0027 in schema\""}],"source_content_type":"text/x-python","patch_set":1,"id":"d39e6d6a_6b17a94f","line":1355,"in_reply_to":"307ce478_465a39f7","updated":"2025-11-06 16:54:45.000000000","message":"Acknowledged","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a15872a60682c849481701a906942410229d6cb8","unresolved":true,"context_lines":[{"line_number":1357,"context_line":"            \"is not valid under any of the given schemas\","},{"line_number":1358,"context_line":"            \"Failed validating \u0027anyOf\u0027 in schema\""},{"line_number":1359,"context_line":"        )"},{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"}],"source_content_type":"text/x-python","patch_set":1,"id":"381eb854_0a59e3cf","line":1360,"updated":"2025-11-05 16:24:21.000000000","message":"this does not really add much coverage but conventionally you woudl do \n`self.assertIn(error_message,response.json)`\nor maybe\n`self.assertIn(error_message,response.json())`","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"9f2501789778c3a0736a142b7cdc0fd8dd423d61","unresolved":true,"context_lines":[{"line_number":1357,"context_line":"            \"is not valid under any of the given schemas\","},{"line_number":1358,"context_line":"            \"Failed validating \u0027anyOf\u0027 in schema\""},{"line_number":1359,"context_line":"        )"},{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"}],"source_content_type":"text/x-python","patch_set":1,"id":"3c2be339_12900913","line":1360,"in_reply_to":"381eb854_0a59e3cf","updated":"2025-11-06 16:54:45.000000000","message":"I removed the `assertTrue` that is redundant in this case, sine we already have a substring check on the return error message","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":false,"context_lines":[{"line_number":1357,"context_line":"            \"is not valid under any of the given schemas\","},{"line_number":1358,"context_line":"            \"Failed validating \u0027anyOf\u0027 in schema\""},{"line_number":1359,"context_line":"        )"},{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"}],"source_content_type":"text/x-python","patch_set":1,"id":"e3bb04f0_d87f5fba","line":1360,"in_reply_to":"3c2be339_12900913","updated":"2025-11-06 19:06:27.000000000","message":"Acknowledged","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a15872a60682c849481701a906942410229d6cb8","unresolved":true,"context_lines":[{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1364,"context_line":""},{"line_number":1365,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1366,"context_line":"    def test_create_audit_zone_migration_with_multiple_valid_inputs("}],"source_content_type":"text/x-python","patch_set":1,"id":"cea187ff_bccb173c","line":1363,"updated":"2025-11-05 16:24:21.000000000","message":"```suggestion\n        mock_trigger_audit.assert_not_called()\n```\nhttps://docs.python.org/3/library/\n\nunittest.mock.html#unittest.mock.Mock.assert_called\n\nyou shoudl generally perfer the more specific \nassert_called_once, assert_called_with or assert_called_once_with for positive assertion over just assert_called() but that also fine if that all you wanted to say.\n\nwe shoudl not use the \"assert \u003cpredicate\u003e \u003cmessage\u003e pattern in tests","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":false,"context_lines":[{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1364,"context_line":""},{"line_number":1365,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1366,"context_line":"    def test_create_audit_zone_migration_with_multiple_valid_inputs("}],"source_content_type":"text/x-python","patch_set":1,"id":"4bb97599_25514ad1","line":1363,"in_reply_to":"884d28f6_a3cec84e","updated":"2025-11-06 19:06:27.000000000","message":"Done","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"9f2501789778c3a0736a142b7cdc0fd8dd423d61","unresolved":true,"context_lines":[{"line_number":1360,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1361,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1362,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1363,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1364,"context_line":""},{"line_number":1365,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1366,"context_line":"    def test_create_audit_zone_migration_with_multiple_valid_inputs("}],"source_content_type":"text/x-python","patch_set":1,"id":"884d28f6_a3cec84e","line":1363,"in_reply_to":"cea187ff_bccb173c","updated":"2025-11-06 16:54:45.000000000","message":"makes sense, I changed the test to use `assert_not_called`","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a15872a60682c849481701a906942410229d6cb8","unresolved":true,"context_lines":[{"line_number":1416,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1417,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1418,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1419,"context_line":"        assert not mock_trigger_audit.called"}],"source_content_type":"text/x-python","patch_set":1,"id":"0bb2271b_c383c653","line":1419,"updated":"2025-11-05 16:24:21.000000000","message":"same here","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"9f2501789778c3a0736a142b7cdc0fd8dd423d61","unresolved":false,"context_lines":[{"line_number":1416,"context_line":"        self.assertTrue(response.json[\u0027error_message\u0027])"},{"line_number":1417,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1418,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1419,"context_line":"        assert not mock_trigger_audit.called"}],"source_content_type":"text/x-python","patch_set":1,"id":"71423a04_f653e3a5","line":1419,"in_reply_to":"0bb2271b_c383c653","updated":"2025-11-06 16:54:45.000000000","message":"Done","commit_id":"3a9b5ad1b90a3d3dfe4effd67790f08c4f98f08a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":true,"context_lines":[{"line_number":1308,"context_line":"        )"},{"line_number":1309,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1310,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1311,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1312,"context_line":""},{"line_number":1313,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1314,"context_line":"    def test_create_audit_zone_migration_without_dst_type(self,"}],"source_content_type":"text/x-python","patch_set":3,"id":"fb299d70_46782ace","line":1311,"updated":"2025-11-06 19:06:27.000000000","message":"```suggestion\n       mock_trigger_audit.assert_not_called()\n```","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"691b89871818e4e8f90d3742df918818fcf9f66f","unresolved":false,"context_lines":[{"line_number":1308,"context_line":"        )"},{"line_number":1309,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1310,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1311,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1312,"context_line":""},{"line_number":1313,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1314,"context_line":"    def test_create_audit_zone_migration_without_dst_type(self,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ac9eea34_21bcdd93","line":1311,"in_reply_to":"410cf03f_14cafce0","updated":"2025-11-08 00:25:29.000000000","message":"Acknowledged","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"1c5ddf4be70f90aabed0be9ec1b255b8d7c39543","unresolved":true,"context_lines":[{"line_number":1308,"context_line":"        )"},{"line_number":1309,"context_line":"        for expected_error_msg in expected_error_msgs:"},{"line_number":1310,"context_line":"            self.assertIn(expected_error_msg, response.json[\u0027error_message\u0027])"},{"line_number":1311,"context_line":"        assert not mock_trigger_audit.called"},{"line_number":1312,"context_line":""},{"line_number":1313,"context_line":"    @mock.patch.object(deapi.DecisionEngineAPI, \u0027trigger_audit\u0027)"},{"line_number":1314,"context_line":"    def test_create_audit_zone_migration_without_dst_type(self,"}],"source_content_type":"text/x-python","patch_set":3,"id":"410cf03f_14cafce0","line":1311,"in_reply_to":"fb299d70_46782ace","updated":"2025-11-07 08:28:30.000000000","message":"thanks, actually I realised I copied the pattern from the other tests in this file, so I removed all instances in the file as well","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4fbc2e9716ac4a232cd1360febefaf5b2c8da111","unresolved":true,"context_lines":[{"line_number":1370,"context_line":"        Tests that an audit creation fails with BAD_REQUEST when both"},{"line_number":1371,"context_line":"        dst_type and dst_pool are passed in the input parameters. This"},{"line_number":1372,"context_line":"        validates the schema correctly enforces that the two destination"},{"line_number":1373,"context_line":"        parameters are mutually exclusivet."},{"line_number":1374,"context_line":"        \"\"\""},{"line_number":1375,"context_line":"        mock_trigger_audit.return_value \u003d mock.ANY"},{"line_number":1376,"context_line":"        zm_params \u003d {"}],"source_content_type":"text/x-python","patch_set":3,"id":"11e1c802_594ce316","line":1373,"updated":"2025-11-06 19:06:27.000000000","message":"\"mutual exclusivet\" to \"mutually exclusive\"\n\nhttps://minio-api.teim.app/zuul-logs/8ca/main/8ca3220788b74bfbbd0eee8766ec7927/code-review/review-report.html\n\nthe line number it is reprotin gis for the base file. that why its slightly off but its correct over all.","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"691b89871818e4e8f90d3742df918818fcf9f66f","unresolved":false,"context_lines":[{"line_number":1370,"context_line":"        Tests that an audit creation fails with BAD_REQUEST when both"},{"line_number":1371,"context_line":"        dst_type and dst_pool are passed in the input parameters. This"},{"line_number":1372,"context_line":"        validates the schema correctly enforces that the two destination"},{"line_number":1373,"context_line":"        parameters are mutually exclusivet."},{"line_number":1374,"context_line":"        \"\"\""},{"line_number":1375,"context_line":"        mock_trigger_audit.return_value \u003d mock.ANY"},{"line_number":1376,"context_line":"        zm_params \u003d {"}],"source_content_type":"text/x-python","patch_set":3,"id":"c43e4764_1ef9fa30","line":1373,"in_reply_to":"08b25279_78e76160","updated":"2025-11-08 00:25:29.000000000","message":"Done","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"1c5ddf4be70f90aabed0be9ec1b255b8d7c39543","unresolved":true,"context_lines":[{"line_number":1370,"context_line":"        Tests that an audit creation fails with BAD_REQUEST when both"},{"line_number":1371,"context_line":"        dst_type and dst_pool are passed in the input parameters. This"},{"line_number":1372,"context_line":"        validates the schema correctly enforces that the two destination"},{"line_number":1373,"context_line":"        parameters are mutually exclusivet."},{"line_number":1374,"context_line":"        \"\"\""},{"line_number":1375,"context_line":"        mock_trigger_audit.return_value \u003d mock.ANY"},{"line_number":1376,"context_line":"        zm_params \u003d {"}],"source_content_type":"text/x-python","patch_set":3,"id":"08b25279_78e76160","line":1373,"in_reply_to":"11e1c802_594ce316","updated":"2025-11-07 08:28:30.000000000","message":"thanks, fixed!","commit_id":"b5957216ad31b3cd11b725d6a7eaafcc29392cb7"}]}
