)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"548c243a4b89387f27be6e4c95b58193bb7ef46a","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Enzo Dechaene \u003cenzo.dechaene@ovhcloud.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-07-07 15:29:39 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix: align network API definitions with Neutron responses"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"mark ipv4/ipv6_address_scope network attrs as uuid_or_none"},{"line_number":10,"context_line":"allow null for provider:physical_network and segment physical_network"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"54f8b803_681ca981","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":5},"updated":"2026-07-15 13:33:11.000000000","message":"Please, remove this prefix `fix: `","commit_id":"5015699e89ed526a507bfd5062d3bb10b866e7d9"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62ac8ff85b88f22de33ba12b3481b05723efef6f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Enzo Dechaene \u003cenzo.dechaene@ovhcloud.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-07-07 15:29:39 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix: align network API definitions with Neutron responses"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"mark ipv4/ipv6_address_scope network attrs as uuid_or_none"},{"line_number":10,"context_line":"allow null for provider:physical_network and segment physical_network"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"632148cc_091be4f8","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":5},"in_reply_to":"26d74965_3a5f1b73","updated":"2026-07-20 14:23:13.000000000","message":"No, that is fine.","commit_id":"5015699e89ed526a507bfd5062d3bb10b866e7d9"},{"author":{"_account_id":39163,"name":"Enzo Dechaene","display_name":"drakkarstorm","email":"enzo.dechaene76@gmail.com","username":"drakkarstorm"},"change_message_id":"457648fa8109f9a2283dd25554ce30e24289a231","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Enzo Dechaene \u003cenzo.dechaene@ovhcloud.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-07-07 15:29:39 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix: align network API definitions with Neutron responses"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"mark ipv4/ipv6_address_scope network attrs as uuid_or_none"},{"line_number":10,"context_line":"allow null for provider:physical_network and segment physical_network"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"26d74965_3a5f1b73","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":5},"in_reply_to":"54f8b803_681ca981","updated":"2026-07-20 13:54:24.000000000","message":"Should I update the type of change within file releasenotes/notes/align-network-api-definitions-f74e2d6ddea3e9d7.yaml ?","commit_id":"5015699e89ed526a507bfd5062d3bb10b866e7d9"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62ac8ff85b88f22de33ba12b3481b05723efef6f","unresolved":true,"context_lines":[{"line_number":9,"context_line":"mark ipv4/ipv6_address_scope network attrs as uuid_or_none"},{"line_number":10,"context_line":"allow null for provider:physical_network and segment physical_network"},{"line_number":11,"context_line":"(None for overlay network types such as VXLAN/GRE)"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I434124bf01cfe2497e2f57e7c35d6fba9ad7534e"},{"line_number":14,"context_line":"Signed-off-by: Enzo Dechaene \u003cenzo.dechaene@ovhcloud.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"4cc3a7d2_320351e0","line":12,"updated":"2026-07-20 14:23:13.000000000","message":"ipv6_ra_mode / ipv6_address_mode and resource_request should be mentioned too","commit_id":"2ea82622b3663d290b43e6d9c41c4f049e42bcff"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"e4a66bc65eb74159d0d67e8a86c3bfc6f6443eb3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"25316ebc_810f8a97","updated":"2026-07-07 11:25:58.000000000","message":"thanks.\nCan you please add re-no to make it more visible? As I see the apiactually works this way today, so no actual API change","commit_id":"3180a41f39a8d56f8768f8bb0ba40922c5aff34e"},{"author":{"_account_id":39163,"name":"Enzo Dechaene","display_name":"drakkarstorm","email":"enzo.dechaene76@gmail.com","username":"drakkarstorm"},"change_message_id":"0b460247db5687cba7734200953c693d67125569","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c48aea59_d75cac53","in_reply_to":"25316ebc_810f8a97","updated":"2026-07-07 18:51:11.000000000","message":"I created a release note file for the change","commit_id":"3180a41f39a8d56f8768f8bb0ba40922c5aff34e"}],"api-ref/source/v2/parameters.yaml":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"548c243a4b89387f27be6e4c95b58193bb7ef46a","unresolved":true,"context_lines":[{"line_number":5596,"context_line":"  type: string"},{"line_number":5597,"context_line":"provider:physical_network:"},{"line_number":5598,"context_line":"  description: |"},{"line_number":5599,"context_line":"    The physical network where this network/segment is implemented."},{"line_number":5600,"context_line":"  in: body"},{"line_number":5601,"context_line":"  required: true"},{"line_number":5602,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"e0cda444_a1c36cd5","line":5599,"range":{"start_line":5599,"start_character":4,"end_line":5599,"end_character":67},"updated":"2026-07-15 13:33:11.000000000","message":"This could be `null` too, right?","commit_id":"5015699e89ed526a507bfd5062d3bb10b866e7d9"},{"author":{"_account_id":39163,"name":"Enzo Dechaene","display_name":"drakkarstorm","email":"enzo.dechaene76@gmail.com","username":"drakkarstorm"},"change_message_id":"457648fa8109f9a2283dd25554ce30e24289a231","unresolved":false,"context_lines":[{"line_number":5596,"context_line":"  type: string"},{"line_number":5597,"context_line":"provider:physical_network:"},{"line_number":5598,"context_line":"  description: |"},{"line_number":5599,"context_line":"    The physical network where this network/segment is implemented."},{"line_number":5600,"context_line":"  in: body"},{"line_number":5601,"context_line":"  required: true"},{"line_number":5602,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"d1ce69a4_81df426d","line":5599,"range":{"start_line":5599,"start_character":4,"end_line":5599,"end_character":67},"in_reply_to":"e0cda444_a1c36cd5","updated":"2026-07-20 13:54:24.000000000","message":"Good catch, I\u0027m going to add doc of it","commit_id":"5015699e89ed526a507bfd5062d3bb10b866e7d9"}],"neutron_lib/api/definitions/address_scope.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62ac8ff85b88f22de33ba12b3481b05723efef6f","unresolved":true,"context_lines":[{"line_number":88,"context_line":"    \u0027networks\u0027: {"},{"line_number":89,"context_line":"        IPV4_ADDRESS_SCOPE: {\u0027allow_post\u0027: False,"},{"line_number":90,"context_line":"                             \u0027allow_put\u0027: False,"},{"line_number":91,"context_line":"                             \u0027validate\u0027: {\u0027type:uuid_or_none\u0027: None},"},{"line_number":92,"context_line":"                             \u0027is_visible\u0027: True},"},{"line_number":93,"context_line":"        IPV6_ADDRESS_SCOPE: {\u0027allow_post\u0027: False,"},{"line_number":94,"context_line":"                             \u0027allow_put\u0027: False,"}],"source_content_type":"text/x-python","patch_set":4,"id":"8cf7586c_054fa8e3","line":91,"range":{"start_line":91,"start_character":48,"end_line":91,"end_character":60},"updated":"2026-07-20 14:23:13.000000000","message":"string_or_none","commit_id":"2ea82622b3663d290b43e6d9c41c4f049e42bcff"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62ac8ff85b88f22de33ba12b3481b05723efef6f","unresolved":true,"context_lines":[{"line_number":92,"context_line":"                             \u0027is_visible\u0027: True},"},{"line_number":93,"context_line":"        IPV6_ADDRESS_SCOPE: {\u0027allow_post\u0027: False,"},{"line_number":94,"context_line":"                             \u0027allow_put\u0027: False,"},{"line_number":95,"context_line":"                             \u0027validate\u0027: {\u0027type:uuid_or_none\u0027: None},"},{"line_number":96,"context_line":"                             \u0027is_visible\u0027: True},"},{"line_number":97,"context_line":"    }"},{"line_number":98,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":4,"id":"cc3f3d40_20fd599c","line":95,"range":{"start_line":95,"start_character":48,"end_line":95,"end_character":60},"updated":"2026-07-20 14:23:13.000000000","message":"string_or_none","commit_id":"2ea82622b3663d290b43e6d9c41c4f049e42bcff"}],"neutron_lib/api/definitions/network.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"69dd6d1adc1721af9405247b773d798982d9db59","unresolved":true,"context_lines":[{"line_number":66,"context_line":"                       \u0027required_by_policy\u0027: True,"},{"line_number":67,"context_line":"                       \u0027is_filter\u0027: True,"},{"line_number":68,"context_line":"                       \u0027is_sort_key\u0027: True,"},{"line_number":69,"context_line":"                       \u0027is_visible\u0027: True},"},{"line_number":70,"context_line":"        \u0027tenant_id\u0027: {\u0027allow_post\u0027: True, \u0027allow_put\u0027: False,"},{"line_number":71,"context_line":"                      \u0027validate\u0027: {"},{"line_number":72,"context_line":"                          \u0027type:string\u0027: db_const.PROJECT_ID_FIELD_SIZE},"}],"source_content_type":"text/x-python","patch_set":2,"id":"50ee3bb0_c0981617","line":69,"updated":"2026-07-07 18:57:34.000000000","message":"I am working on a series to add project_id to all the resources, so I would ask you drop this from here. Is there a failure it is fixing?","commit_id":"dc5c46bb1553721085ac4a75d3191e3bb7bcdfa9"},{"author":{"_account_id":39163,"name":"Enzo Dechaene","display_name":"drakkarstorm","email":"enzo.dechaene76@gmail.com","username":"drakkarstorm"},"change_message_id":"69280711c8f24682a1118ede94ebaca8beb5220d","unresolved":false,"context_lines":[{"line_number":66,"context_line":"                       \u0027required_by_policy\u0027: True,"},{"line_number":67,"context_line":"                       \u0027is_filter\u0027: True,"},{"line_number":68,"context_line":"                       \u0027is_sort_key\u0027: True,"},{"line_number":69,"context_line":"                       \u0027is_visible\u0027: True},"},{"line_number":70,"context_line":"        \u0027tenant_id\u0027: {\u0027allow_post\u0027: True, \u0027allow_put\u0027: False,"},{"line_number":71,"context_line":"                      \u0027validate\u0027: {"},{"line_number":72,"context_line":"                          \u0027type:string\u0027: db_const.PROJECT_ID_FIELD_SIZE},"}],"source_content_type":"text/x-python","patch_set":2,"id":"59a6941e_fc355fc9","line":69,"in_reply_to":"3fabb549_97bc59dc","updated":"2026-07-07 19:30:03.000000000","message":"Done","commit_id":"dc5c46bb1553721085ac4a75d3191e3bb7bcdfa9"},{"author":{"_account_id":39163,"name":"Enzo Dechaene","display_name":"drakkarstorm","email":"enzo.dechaene76@gmail.com","username":"drakkarstorm"},"change_message_id":"acfa7b8eb3ea5c6619819160817c6400453f8078","unresolved":true,"context_lines":[{"line_number":66,"context_line":"                       \u0027required_by_policy\u0027: True,"},{"line_number":67,"context_line":"                       \u0027is_filter\u0027: True,"},{"line_number":68,"context_line":"                       \u0027is_sort_key\u0027: True,"},{"line_number":69,"context_line":"                       \u0027is_visible\u0027: True},"},{"line_number":70,"context_line":"        \u0027tenant_id\u0027: {\u0027allow_post\u0027: True, \u0027allow_put\u0027: False,"},{"line_number":71,"context_line":"                      \u0027validate\u0027: {"},{"line_number":72,"context_line":"                          \u0027type:string\u0027: db_const.PROJECT_ID_FIELD_SIZE},"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fabb549_97bc59dc","line":69,"in_reply_to":"50ee3bb0_c0981617","updated":"2026-07-07 19:27:05.000000000","message":"I can remove the section of project_id here, can you share your PRs when you finish ?\nThis is not related to any failure, I\u0027m adding a web application firewall and this field should be within the spec as neutron returns it","commit_id":"dc5c46bb1553721085ac4a75d3191e3bb7bcdfa9"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"9a4d9dbb7d630d26e3f81f11ccdf64e2d00dfca8","unresolved":false,"context_lines":[{"line_number":66,"context_line":"                       \u0027required_by_policy\u0027: True,"},{"line_number":67,"context_line":"                       \u0027is_filter\u0027: True,"},{"line_number":68,"context_line":"                       \u0027is_sort_key\u0027: True,"},{"line_number":69,"context_line":"                       \u0027is_visible\u0027: True},"},{"line_number":70,"context_line":"        \u0027tenant_id\u0027: {\u0027allow_post\u0027: True, \u0027allow_put\u0027: False,"},{"line_number":71,"context_line":"                      \u0027validate\u0027: {"},{"line_number":72,"context_line":"                          \u0027type:string\u0027: db_const.PROJECT_ID_FIELD_SIZE},"}],"source_content_type":"text/x-python","patch_set":2,"id":"ac32cd75_d121ef89","line":69,"in_reply_to":"59a6941e_fc355fc9","updated":"2026-07-07 22:18:53.000000000","message":"https://review.opendev.org/c/openstack/neutron-lib/+/986960 is the change, it\u0027s just a WIP because of the scope of the work. The topic in that change links to all the related code, it\u0027s just not a trivial set of patches.","commit_id":"dc5c46bb1553721085ac4a75d3191e3bb7bcdfa9"}],"neutron_lib/api/definitions/provider_net.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"62ac8ff85b88f22de33ba12b3481b05723efef6f","unresolved":true,"context_lines":[{"line_number":69,"context_line":"                       \u0027is_filter\u0027: True,"},{"line_number":70,"context_line":"                       \u0027is_visible\u0027: True},"},{"line_number":71,"context_line":"        PHYSICAL_NETWORK: {\u0027allow_post\u0027: True, \u0027allow_put\u0027: True,"},{"line_number":72,"context_line":"                           \u0027validate\u0027: {\u0027type:string_or_none\u0027:"},{"line_number":73,"context_line":"                                        PHYSICAL_NETWORK_MAX_LEN},"},{"line_number":74,"context_line":"                           \u0027default\u0027: constants.ATTR_NOT_SPECIFIED,"},{"line_number":75,"context_line":"                           \u0027enforce_policy\u0027: True,"}],"source_content_type":"text/x-python","patch_set":4,"id":"acbfa527_38f256b4","line":72,"range":{"start_line":72,"start_character":46,"end_line":72,"end_character":60},"updated":"2026-07-20 14:23:13.000000000","message":"We don\u0027t support passing `null` in the API call. This will fail:\n```\nNEUTRON\u003d$(openstack endpoint list --service network --interface public -f value -c URL)\nTOKEN\u003d$(openstack token issue -f value -c id)\n curl -s -X POST \"${NEUTRON}/v2.0/networks\" \\\n  -H \"X-Auth-Token: ${TOKEN}\" \\\n  -H \"Content-Type: application/json\" \\                                                                                                                                                                                                                     \n  -d \u0027{\"network\":{\"name\":\"test-physnet-null\",\"provider:network_type\":\"vxlan\",\"provider:physical_network\":null}}\u0027\n\n{\"NeutronError\": {\"type\": \"HTTPBadRequest\", \"message\": \"Invalid input for provider:physical_network. Reason: \u0027None\u0027 is not a valid string.\", \"detail\": \"\"}}\n\n```","commit_id":"2ea82622b3663d290b43e6d9c41c4f049e42bcff"}],"neutron_lib/api/definitions/segment.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"0f40029c0ec40429dbc0f3dad44c5ddce3c794c9","unresolved":true,"context_lines":[{"line_number":74,"context_line":"            \u0027allow_put\u0027: False,"},{"line_number":75,"context_line":"            \u0027default\u0027: constants.ATTR_NOT_SPECIFIED,"},{"line_number":76,"context_line":"            \u0027validate\u0027: {"},{"line_number":77,"context_line":"                \u0027type:string_or_none\u0027: provider_net.PHYSICAL_NETWORK_MAX_LEN"},{"line_number":78,"context_line":"            },"},{"line_number":79,"context_line":"            \u0027is_filter\u0027: True,"},{"line_number":80,"context_line":"            \u0027is_sort_key\u0027: True,"}],"source_content_type":"text/x-python","patch_set":4,"id":"875e7af4_98d79752","line":77,"range":{"start_line":77,"start_character":22,"end_line":77,"end_character":36},"updated":"2026-07-20 14:23:58.000000000","message":"Same here: by default, this attribute is not specified. And if we do, we don\u0027t pass `null`","commit_id":"2ea82622b3663d290b43e6d9c41c4f049e42bcff"}]}
