)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":16207,"name":"ribaudr","display_name":"uggla","email":"rene.ribaud@gmail.com","username":"uggla","status":"Red Hat"},"change_message_id":"248d1e2b5f317e74a1f8385f9ef5fbe464d858aa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"10f5a2a8_00bcc8af","updated":"2026-03-19 09:48:04.000000000","message":"Hi Sean,\nI have just rebased this reproducer and stack the fix on top in a relation chain.\nI have added a couple of unit tests too.","commit_id":"47ed32399aabc2f55082c78377a55cabfef337bd"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"fe8fc20c55517ff9cbb49a406a20889ebb88ada8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"10d92335_a0a58cfa","updated":"2026-05-20 22:07:15.000000000","message":"Sean originally uploaded one test in this patch a year ago, but Rene has rebased and added two tests to it recently. So I can see this being Rene as primary author now and Sean +2. This looks OK to me.","commit_id":"47ed32399aabc2f55082c78377a55cabfef337bd"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"9d2605dec2ff31a43ee0735e8bdde246f3e560ae","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2037ac60_da252b89","updated":"2026-04-24 11:59:17.000000000","message":"recheck i think thte coverage test failre was unrelated","commit_id":"47ed32399aabc2f55082c78377a55cabfef337bd"}],"nova/tests/unit/network/test_neutron.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"fe8fc20c55517ff9cbb49a406a20889ebb88ada8","unresolved":true,"context_lines":[{"line_number":9503,"context_line":"        instance \u003d objects.Instance(project_id\u003duuids.project_id)"},{"line_number":9504,"context_line":"        mock_neutron \u003d mock.Mock(spec\u003dclient.Client)"},{"line_number":9505,"context_line":"        mock_neutron.list_security_groups.return_value \u003d {"},{"line_number":9506,"context_line":"            \u0027security_groups\u0027: ["},{"line_number":9507,"context_line":"                {"},{"line_number":9508,"context_line":"                    \u0027id\u0027: uuids.sg1,"},{"line_number":9509,"context_line":"                    \u0027name\u0027: \u0027nonunique-name\u0027,"},{"line_number":9510,"context_line":"                },"},{"line_number":9511,"context_line":"                {"},{"line_number":9512,"context_line":"                    \u0027id\u0027: uuids.sg2,"},{"line_number":9513,"context_line":"                    \u0027name\u0027: \u0027nonunique-name\u0027,"},{"line_number":9514,"context_line":"                }"},{"line_number":9515,"context_line":"            ]"},{"line_number":9516,"context_line":"        }"},{"line_number":9517,"context_line":"        mock_neutron.list_extensions.return_value \u003d {"},{"line_number":9518,"context_line":"            \u0027extensions\u0027: [{\u0027alias\u0027: constants.SG_SHARED_FILTER}]}"}],"source_content_type":"text/x-python","patch_set":2,"id":"f851e92e_48a62fa2","line":9515,"range":{"start_line":9506,"start_character":0,"end_line":9515,"end_character":13},"updated":"2026-05-20 22:07:15.000000000","message":"Note to self: this is the difference from the first test added on L9435. Both security groups returned from one call of list_security_groups() rather than two, which implies two tenants vs same tenant.","commit_id":"47ed32399aabc2f55082c78377a55cabfef337bd"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ed43ba055ca47a75722fc4d6f8c11883620dd9dd","unresolved":true,"context_lines":[{"line_number":9503,"context_line":"        instance \u003d objects.Instance(project_id\u003duuids.project_id)"},{"line_number":9504,"context_line":"        mock_neutron \u003d mock.Mock(spec\u003dclient.Client)"},{"line_number":9505,"context_line":"        mock_neutron.list_security_groups.return_value \u003d {"},{"line_number":9506,"context_line":"            \u0027security_groups\u0027: ["},{"line_number":9507,"context_line":"                {"},{"line_number":9508,"context_line":"                    \u0027id\u0027: uuids.sg1,"},{"line_number":9509,"context_line":"                    \u0027name\u0027: \u0027nonunique-name\u0027,"},{"line_number":9510,"context_line":"                },"},{"line_number":9511,"context_line":"                {"},{"line_number":9512,"context_line":"                    \u0027id\u0027: uuids.sg2,"},{"line_number":9513,"context_line":"                    \u0027name\u0027: \u0027nonunique-name\u0027,"},{"line_number":9514,"context_line":"                }"},{"line_number":9515,"context_line":"            ]"},{"line_number":9516,"context_line":"        }"},{"line_number":9517,"context_line":"        mock_neutron.list_extensions.return_value \u003d {"},{"line_number":9518,"context_line":"            \u0027extensions\u0027: [{\u0027alias\u0027: constants.SG_SHARED_FILTER}]}"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f5312bc_01b24ee4","line":9515,"range":{"start_line":9506,"start_character":0,"end_line":9515,"end_character":13},"in_reply_to":"f851e92e_48a62fa2","updated":"2026-05-20 22:16:38.000000000","message":"\u003e Note to self: this is the difference from the first test added on L9435. Both security groups returned from one call of list_security_groups() rather than two, which implies two tenants vs same tenant.\n\nCorrection: both groups returned in one call is one tenant whereas a second call would be for getting groups that are shared to the tenant.","commit_id":"47ed32399aabc2f55082c78377a55cabfef337bd"}]}
