)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"14b627af36090e58001f81a82dca131874e2059e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7213dbcf_c306b24b","updated":"2025-08-22 13:46:43.000000000","message":"@john.garbutt@stackhpc.com this is valid to backprot but we need a second reviewer on the master change https://review.opendev.org/c/openstack/nova/+/957732 if you care to review it","commit_id":"aecf852b661692af1b266d2342c28b018ab95bd1"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"ebde00badbbda156e8ea0e9b51922ab9eab5f5e7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"cb99e7be_af77a4b4","updated":"2025-08-22 11:16:44.000000000","message":"It looks correct to backport this one to me, we should un-break this API regression.","commit_id":"aecf852b661692af1b266d2342c28b018ab95bd1"},{"author":{"_account_id":20733,"name":"Rajesh Tailor","email":"ratailor@redhat.com","username":"rajesht"},"change_message_id":"93c100ff477aff4d65075cfc0cd461e77906a426","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e08ac33a_6edfedf6","updated":"2025-08-22 05:17:33.000000000","message":"LGTM","commit_id":"aecf852b661692af1b266d2342c28b018ab95bd1"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"7b8c2118e41f9c8e6cb72cc7da788bf09572a740","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fda06adc_465fc929","updated":"2025-09-02 13:06:21.000000000","message":"this is an API bug as far as I understand, and, however, API changes are not allowed to be backported, this fixes a feature, that cannot be used without this if i\u0027m not mistaken, so LGTM to backport. Besides, merged on master \u0026\u0026 clean cherry pick from there.","commit_id":"aecf852b661692af1b266d2342c28b018ab95bd1"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4f10eda9f5c38e98c18536aa73586a764b54e90d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2063c9b2_4ea147bd","in_reply_to":"fda06adc_465fc929","updated":"2025-09-02 13:42:41.000000000","message":"yes its fixing the ablity to validate the api request.\n\nso without this you have 2 choicces\n\ndont specify the max values and specify exact values or when you set this extra spec use the old microversion which does not validate the extra specs key.\n\nthe problem with that is other typos wont be caught and will either be ignored or cause only when you try to use the flavor to boot something.\n\n\nwe dont technialy confier the extra specs to be part of the versioned api however that does not mean we shouldnt help operators where resoanble by fixing this both the validation feature and the ablity to use *_max_* extraspecs.","commit_id":"aecf852b661692af1b266d2342c28b018ab95bd1"}],"nova/api/validation/extra_specs/hw.py":[{"author":{"_account_id":20733,"name":"Rajesh Tailor","email":"ratailor@redhat.com","username":"rajesht"},"change_message_id":"43b7a7f6a0dd1436d8952d81a4b7bd38e83a27d9","unresolved":true,"context_lines":[{"line_number":320,"context_line":"    base.ExtraSpecValidator("},{"line_number":321,"context_line":"        name\u003d\u0027hw:cpu_max_sockets\u0027,"},{"line_number":322,"context_line":"        description\u003d("},{"line_number":323,"context_line":"            \u0027The max number of virtual CPU threads to emulate in the \u0027"},{"line_number":324,"context_line":"            \u0027guest CPU topology. \u0027"},{"line_number":325,"context_line":"            \u0027This is used to limit the topologies that can be requested by \u0027"},{"line_number":326,"context_line":"            \u0027an image and will be used to validate the ``hw_cpu_sockets`` \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"dd0fd2dc_1bc5476e","line":323,"updated":"2025-08-21 06:42:59.000000000","message":"s/threads/sockets/ ?\n\nSame as commented on https://review.opendev.org/c/openstack/nova/+/957732/comments/d66e7aa5_d0e35e41","commit_id":"258aac158b826254ed00b60cdea4c10b6ba2f7fd"},{"author":{"_account_id":20733,"name":"Rajesh Tailor","email":"ratailor@redhat.com","username":"rajesht"},"change_message_id":"93c100ff477aff4d65075cfc0cd461e77906a426","unresolved":false,"context_lines":[{"line_number":320,"context_line":"    base.ExtraSpecValidator("},{"line_number":321,"context_line":"        name\u003d\u0027hw:cpu_max_sockets\u0027,"},{"line_number":322,"context_line":"        description\u003d("},{"line_number":323,"context_line":"            \u0027The max number of virtual CPU threads to emulate in the \u0027"},{"line_number":324,"context_line":"            \u0027guest CPU topology. \u0027"},{"line_number":325,"context_line":"            \u0027This is used to limit the topologies that can be requested by \u0027"},{"line_number":326,"context_line":"            \u0027an image and will be used to validate the ``hw_cpu_sockets`` \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"04b8ff8e_bb2bab89","line":323,"in_reply_to":"dd0fd2dc_1bc5476e","updated":"2025-08-22 05:17:33.000000000","message":"Done","commit_id":"258aac158b826254ed00b60cdea4c10b6ba2f7fd"}]}
