)]}'
{"id":"openstack%2Fcodegenerator~1003309","triplet_id":"openstack%2Fcodegenerator~master~Ice8735bd9fdc5eee212af33143faf7b5f3cc1542","project":"openstack/codegenerator","branch":"master","attention_set":{},"removed_from_attention_set":{"27900":{"account":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"last_update":"2026-09-02 08:54:22.000000000","reason":"\u003cGERRIT_ACCOUNT_27900\u003e replied on the change","reason_account":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}}},"hashtags":[],"change_id":"Ice8735bd9fdc5eee212af33143faf7b5f3cc1542","subject":"fix(openapi): Param dedupe in neutron","status":"MERGED","created":"2026-09-01 16:39:49.000000000","updated":"2026-09-02 09:59:32.000000000","submitted":"2026-09-02 09:58:24.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"1003309","meta_rev_id":"22dbfabd93275ff4be4b566b46911d21689aa303","_number":1003309,"virtual_id_number":1003309,"owner":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-09-02 09:58:23.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-09-02 08:54:22.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-09-02 08:54:22.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-09-01 17:08:27.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"c1b722484639af0e8c02fdfa24f1928ad6f98dda","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-01 16:39:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f8dc71241e13bac3c7a92ff51dba2c8f96090208","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-01 16:40:05.000000000","message":"Patch Set 2: Patch Set 1 was rebased","accounts_in_message":[],"_revision_number":2},{"id":"e204b32cc99e838dfebe9c7400f634959d63cc77","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-01 17:08:27.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/d71ad884640e4534988663521a67eaed\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/cc26bbd39b71463e92d15cfc96086967 : SUCCESS in 3m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4a84db1023874ab7bba35bae52896fa6 : SUCCESS in 2m 04s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b4d1158646d349aaa39206e863d57083 : FAILURE in 2m 59s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/d51a304a289b4eba8c713c8ec30c51d7 : SUCCESS in 3m 55s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/4978bc907f2b4ab49b94f828960c49d8 : SUCCESS in 8m 25s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/e92e529a64d8428e9add070f4b81fd02 : SUCCESS in 3m 27s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/e9b4710542e34f57b535014da88e4590 : SUCCESS in 3m 49s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fbefcf34fe1f43b49e10e458e51515ee : SUCCESS in 5m 23s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/bdaad3c72ab74cf1b1cc1eef2f0db02b : SUCCESS in 6m 32s\n- codegenerator-openapi-identity-tips https://zuul.opendev.org/t/openstack/build/ed5e18f2b7614ef587b9229688e164e0 : SUCCESS in 5m 07s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/808f3d4e934c466190413324cac581bc : SUCCESS in 5m 24s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/965dfc0ccc914f7197b1982a00675bd8 : SUCCESS in 5m 04s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/c71de9fd19de4a30afbe35295e16c437 : SUCCESS in 4m 29s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/6ace36fc59f3405e902747f6fb2f356f : SUCCESS in 7m 58s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/106c22a118f04a5888ec8722ccc5639f : SUCCESS in 1m 23s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/bbb370cbbf34435fb4638b8d05549b06 : SUCCESS in 7m 13s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/0d90cc77da6d49258ecd54465d2ebec7 : SUCCESS in 5m 46s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/41705f8f987a43fa964a99fe9721cc85 : SUCCESS in 2m 59s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/2385003b99744d21ac606995801704a7 : POST_FAILURE in 2m 49s","accounts_in_message":[],"_revision_number":2},{"id":"78a50aaa54cfc4edaa40183c761581755f60fcfe","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-01 18:34:37.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"8d5f1a5aa910cf4b84c9739ed354ae886464366c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-01 19:10:49.000000000","message":"Patch Set 2:\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/d40f46d9926b4d5aa988b547f85b634c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/cbaa3fec22774033be98a9ad0a4262b0 : SUCCESS in 4m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/788c007bf93a42cf8dfd4cfbe9ff2f8e : SUCCESS in 3m 14s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/7a67ceddb5c54ad1855b86560a9c7795 : FAILURE in 3m 31s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/0c0cc59f843d4d9eaca4309e7095c950 : SUCCESS in 6m 10s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/7f3e62dc15254db8b1aabfb5ace2084a : SUCCESS in 7m 51s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/7dd1a3c931ec4013a91965d4336c03e8 : SUCCESS in 8m 11s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/d1e3a82c19e045a797251d33b52e2b03 : SUCCESS in 5m 10s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/ccda8939c2a2426faa0c665822e40b9f : SUCCESS in 5m 59s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/9ad9d5f4eb6c443c9284cf1a894340c0 : SUCCESS in 6m 15s\n- codegenerator-openapi-identity-tips https://zuul.opendev.org/t/openstack/build/5b94b460cb144f56aa06fbc4d61f8d26 : SUCCESS in 4m 05s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/06bccdaaa8b1474e85e00971e934b88d : SUCCESS in 5m 31s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/8951642c5aad41d2b106f4cf0fa594b0 : SUCCESS in 5m 07s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/62beb8533c7d4c80b7ca103c8c261667 : SUCCESS in 5m 59s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fdebe522b48a4ae694bf0ff835e88060 : SUCCESS in 3m 44s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/836b4b82fd9e44cb8d8563eec1e33044 : SUCCESS in 2m 23s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/67a44ee6f3214ca8a00715b44480366e : SUCCESS in 2m 40s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/ef397693163d4fd1a82aa0fc628e7d06 : SUCCESS in 2m 58s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/cee23fef3e994aecb77c4dec79865f26 : SUCCESS in 3m 28s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/1fbf7c134b5643e59f48b6a070dd5c0e : SUCCESS in 20m 44s","accounts_in_message":[],"_revision_number":2},{"id":"544ea048a503390b821b7222768b83cf883f40cb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-02 07:02:12.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"9bb4fe2edc11e335b97f76c960ca2ae28640cf01","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-02 07:47:39.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"4dd27aaf31c24a4d1adec2190a3a672338a648fb","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 08:53:35.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/535072b94c39410e97352cadd42fd73a\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/123f501b6e0a4071b362a7c30e95d255 : SUCCESS in 2m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7ebc119d6728430d9968bca37337c07c : SUCCESS in 3m 55s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/8fd3b78ed18a48d7928c6f233bdb8b72 : SUCCESS in 2m 06s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/3766a3be28f748bfb656db626fea94a2 : SUCCESS in 3m 50s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/5feb625c43c5445f998aed0961bd5a13 : SUCCESS in 4m 16s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/52c4177af01e4925bec97ddab332fb12 : SUCCESS in 5m 31s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/a8cb9c20e4994fa8a4cf50cbc3811ba1 : SUCCESS in 4m 16s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/c8323e4057b449ecb9da671a4eecd18b : SUCCESS in 4m 55s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/be0319306ff54e489cc23f5235c6f773 : SUCCESS in 4m 17s\n- codegenerator-openapi-identity-tips https://zuul.opendev.org/t/openstack/build/04c9cca5f827443f823a641a2fefeb35 : SUCCESS in 5m 09s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fff0faeca37d447aa6debb9c4ff0a715 : SUCCESS in 5m 00s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/f91ff5f0771f4982a6351796d83a1c3e : SUCCESS in 3m 40s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/af1f379fd6a2428a8f033b7e2f6c27a8 : SUCCESS in 3m 05s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/9c0f29fdf73c49acabf370a85cd43c33 : SUCCESS in 8m 44s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/4ef22868a5c44ca1a51ef9b1b2a04df8 : SUCCESS in 2m 04s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/edd824fd706a4082b9a3c019c9cd9120 : SUCCESS in 3m 13s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/8c2def0fa8224df394be143f949848ad : SUCCESS in 3m 04s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/64492ea713e54485ba0f684c47b00269 : SUCCESS in 3m 19s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/ad2de58ef6de4b89b52b00c645c66c25 : SUCCESS in 46m 04s","accounts_in_message":[],"_revision_number":4},{"id":"823903de9e58165f7d8807a4356e519351f0948e","author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"date":"2026-09-02 08:54:22.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":4},{"id":"92383bf5e312422820b4317ae92ff8a8508d7a27","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 08:54:44.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"2eec78e7c4c0dfa932bcb4027e63ca91998c4aa2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 09:58:23.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/da26dcf1cb3c4d24ae114b5eab90478c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7576524135a54bdcb1f39b91f7a51eca : SUCCESS in 3m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f1df944281184fb082b575ab33840263 : SUCCESS in 3m 07s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/4bb6afeeed014973aea3c3e532aa1dc4 : SUCCESS in 2m 45s\n- codegenerator-openapi-baremetal-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/490febae59b64301bae5bdaeb64382bd : SUCCESS in 5m 55s\n- codegenerator-openapi-block-storage-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/a10b2d3559a94aaf805c12ed100f763d : SUCCESS in 7m 10s\n- codegenerator-openapi-compute-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/6904144d8eb04f1db1185c0a14cdd442 : SUCCESS in 5m 23s\n- codegenerator-openapi-container-infrastructure-management-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/a6a9b3177bd54ce5b1dfdd2ea772b868 : SUCCESS in 5m 02s\n- codegenerator-openapi-dns-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/a8c3a4e00e4d49d58096adc7324b14a6 : SUCCESS in 5m 12s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fecac614cdc44fb3a82f319be2830399 : SUCCESS in 7m 57s\n- codegenerator-openapi-image-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/6b2291ee9f2d499c893b4b6185cb25ef : SUCCESS in 2m 43s\n- codegenerator-openapi-key-manager-tips https://zuul.opendev.org/t/openstack/build/c638a439819943e08637d4149bffea66 : SUCCESS in 3m 56s\n- codegenerator-openapi-load-balancing-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/cf7e65e27380406e9d68430b1a24ecfb : SUCCESS in 6m 06s\n- codegenerator-openapi-network-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fc095cff46aa43cda4f9ffa5f277446e : SUCCESS in 3m 33s\n- codegenerator-openapi-object-store-static https://zuul.opendev.org/t/openstack/build/0042eae393514eee9c0083633323b4ce : SUCCESS in 2m 22s\n- codegenerator-openapi-placement-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/eb73724604444574bdb4ec634dfec777 : SUCCESS in 6m 19s\n- codegenerator-openapi-shared-file-system-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/4b2c90818dc342d9a13263bd7836844c : SUCCESS in 5m 37s\n- codegenerator-tox-publish-openapi-specs https://zuul.opendev.org/t/openstack/build/b32d2728653e41209a00e53ccbcdae64 : SUCCESS in 3m 04s\n- codegenerator-rust-all https://zuul.opendev.org/t/openstack/build/b8482b28cc124759859ecc50b856264b : SUCCESS in 46m 14s","accounts_in_message":[],"_revision_number":4},{"id":"a49776ac259240cb8cb02160a758c9e720b00371","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 09:58:24.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":4},{"id":"22dbfabd93275ff4be4b566b46911d21689aa303","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 09:59:32.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e1065cd3fb7f44d9b969125014313bae\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f62b53f41c594c0083949513213aa13d : SUCCESS in 42s\n- codegenerator-propose-rust-openstack-change https://zuul.opendev.org/t/openstack/build/9dfdb86b2e69483d9a85954b83e7965f : SUCCESS in 58s\n\nWarning:\n  File openstack/dist-workspace.toml found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File openstack/.pre-commit-config.yaml found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File openstack/LICENSE found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File openstack/renovate.json5 found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File openstack/deny.toml found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job codegenerator-propose-rust-openstack-change.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"f98eb19c66db6233b6bc80580ff32db4f999ddb3","revisions":{"bb9e4813fb4bcdd9a18583349b46ded5e9503021":{"kind":"REWORK","_number":1,"created":"2026-09-01 16:39:49.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/09/1003309/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/09/1003309/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/1"}}},"commit":{"parents":[{"commit":"45abaa3bdf3eb08395e6c31f7152f7c0556c3119","subject":"fix(rust-types): render nullable arrays as Option","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/45abaa3bdf3eb08395e6c31f7152f7c0556c3119"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:38:46.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:38:55.000000000","tz":120},"subject":"fix(openapi): Handle nullable values and param dedupe in neutron","message":"fix(openapi): Handle nullable values and param dedupe in neutron\n\nNeutron-lib now includes None in the type:values list of\nattributes that accept an explicit null (e.g. the\nipv6_address_mode/ipv6_ra_mode subnet filters, used to clear\na filter). The generated OpenAPI schema rendered such\nattributes as {\"type\": \"string\", \"enum\": [null, ...]},\nwhich is self-contradictory and crashed the Rust CLI\ngeneration (pydantic validation of String enum values).\n\nRender such attributes with a nullable type\n([\"string\", \"null\"]) while keeping null in the enum, and\nstrip None from request parameter enums since a parameter\ncan never be null on the wire.\n\nAlso fix regenerating the Neutron spec over an existing one\nduplicating the pagination parameter references (sort_key,\nsort_dir, limit, marker, page_reverse) in index operations,\nwhich the OpenAPI validator rejects with\nParameterDuplicateError. De-duplicate parameter references\nof operations loaded from an existing spec (healing files\nalready corrupted by previous runs) and guard the\npagination parameter appends against references that are\nalready present.\n\nChange-Id: Ice8735bd9fdc5eee212af33143faf7b5f3cc1542\nSigned-off-by: Artem Goncharov \u003cartem.goncharov@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/bb9e4813fb4bcdd9a18583349b46ded5e9503021"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/bb9e4813fb4bcdd9a18583349b46ded5e9503021"}]},"branch":"refs/heads/master"},"83a79c5dcb042368eeeab8399ba5244c4e61687b":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-09-01 16:40:05.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/09/1003309/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/09/1003309/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/2"}}},"commit":{"parents":[{"commit":"be4f0a501d79b04895b51dab2b0e6af31b9c0070","subject":"fix(openapi): safely handle schemas missing \u0027type\u0027 field","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/be4f0a501d79b04895b51dab2b0e6af31b9c0070"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:38:46.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:40:05.000000000","tz":0},"subject":"fix(openapi): Handle nullable values and param dedupe in neutron","message":"fix(openapi): Handle nullable values and param dedupe in neutron\n\nNeutron-lib now includes None in the type:values list of\nattributes that accept an explicit null (e.g. the\nipv6_address_mode/ipv6_ra_mode subnet filters, used to clear\na filter). The generated OpenAPI schema rendered such\nattributes as {\"type\": \"string\", \"enum\": [null, ...]},\nwhich is self-contradictory and crashed the Rust CLI\ngeneration (pydantic validation of String enum values).\n\nRender such attributes with a nullable type\n([\"string\", \"null\"]) while keeping null in the enum, and\nstrip None from request parameter enums since a parameter\ncan never be null on the wire.\n\nAlso fix regenerating the Neutron spec over an existing one\nduplicating the pagination parameter references (sort_key,\nsort_dir, limit, marker, page_reverse) in index operations,\nwhich the OpenAPI validator rejects with\nParameterDuplicateError. De-duplicate parameter references\nof operations loaded from an existing spec (healing files\nalready corrupted by previous runs) and guard the\npagination parameter appends against references that are\nalready present.\n\nChange-Id: Ice8735bd9fdc5eee212af33143faf7b5f3cc1542\nSigned-off-by: Artem Goncharov \u003cartem.goncharov@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/83a79c5dcb042368eeeab8399ba5244c4e61687b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/83a79c5dcb042368eeeab8399ba5244c4e61687b"}]},"branch":"refs/heads/master","description":"Rebase","conflicts":{"base":"45abaa3bdf3eb08395e6c31f7152f7c0556c3119","ours":"bb9e4813fb4bcdd9a18583349b46ded5e9503021","theirs":"be4f0a501d79b04895b51dab2b0e6af31b9c0070","merge_strategy":"recursive","contains_conflicts":false}},"3433001717ad44e239fb737c9fef79c1222093e5":{"kind":"REWORK","_number":3,"created":"2026-09-02 07:02:12.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/09/1003309/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/09/1003309/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/3"}}},"commit":{"parents":[{"commit":"be4f0a501d79b04895b51dab2b0e6af31b9c0070","subject":"fix(openapi): safely handle schemas missing \u0027type\u0027 field","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/be4f0a501d79b04895b51dab2b0e6af31b9c0070"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:38:46.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-02 07:02:03.000000000","tz":120},"subject":"fix(openapi): Handle nullable values and param dedupe in neutron","message":"fix(openapi): Handle nullable values and param dedupe in neutron\n\nNeutron-lib now includes None in the type:values list of\nattributes that accept an explicit null (e.g. the\nipv6_address_mode/ipv6_ra_mode subnet filters, used to clear\na filter). The generated OpenAPI schema rendered such\nattributes as {\"type\": \"string\", \"enum\": [null, ...]},\nwhich is self-contradictory and crashed the Rust CLI\ngeneration (pydantic validation of String enum values).\n\nRender such attributes with a nullable type\n([\"string\", \"null\"]) while keeping null in the enum, and\nstrip None from request parameter enums since a parameter\ncan never be null on the wire.\n\nAlso fix regenerating the Neutron spec over an existing one\nduplicating the pagination parameter references (sort_key,\nsort_dir, limit, marker, page_reverse) in index operations,\nwhich the OpenAPI validator rejects with\nParameterDuplicateError. De-duplicate parameter references\nof operations loaded from an existing spec (healing files\nalready corrupted by previous runs) and guard the\npagination parameter appends against references that are\nalready present.\n\nChange-Id: Ice8735bd9fdc5eee212af33143faf7b5f3cc1542\nSigned-off-by: Artem Goncharov \u003cartem.goncharov@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/3433001717ad44e239fb737c9fef79c1222093e5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/3433001717ad44e239fb737c9fef79c1222093e5"}]},"branch":"refs/heads/master"},"f98eb19c66db6233b6bc80580ff32db4f999ddb3":{"kind":"REWORK","_number":4,"created":"2026-09-02 07:47:39.000000000","uploader":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"ref":"refs/changes/09/1003309/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/codegenerator","ref":"refs/changes/09/1003309/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/codegenerator refs/changes/09/1003309/4"}}},"commit":{"parents":[{"commit":"be4f0a501d79b04895b51dab2b0e6af31b9c0070","subject":"fix(openapi): safely handle schemas missing \u0027type\u0027 field","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/be4f0a501d79b04895b51dab2b0e6af31b9c0070"}]}],"author":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-01 16:38:46.000000000","tz":120},"committer":{"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","date":"2026-09-02 07:47:21.000000000","tz":120},"subject":"fix(openapi): Param dedupe in neutron","message":"fix(openapi): Param dedupe in neutron\n\nNeutron-lib now includes None in the type:values list of attributes that\naccept an explicit null (e.g. the ipv6_address_mode/ipv6_ra_mode subnet\nfilters, used to clear a filter). The generated OpenAPI schema rendered\nsuch attributes as {\"type\": \"string\", \"enum\": [null, ...]}, which is\nself-contradictory and crashed the Rust CLI generation (pydantic\nvalidation of String enum values).\n\nRender such attributes with a nullable type ([\"string\", \"null\"]) while\nkeeping null in the enum, and strip None from request parameter enums\nsince a parameter can never be null on the wire.\n\nAlso fix regenerating the Neutron spec over an existing one duplicating\nthe pagination parameter references (sort_key, sort_dir, limit, marker,\npage_reverse) in index operations, which the OpenAPI validator rejects\nwith ParameterDuplicateError. De-duplicate parameter references of\noperations loaded from an existing spec (healing files already corrupted\nby previous runs) and guard the pagination parameter appends against\nreferences that are already present.\n\nChange-Id: Ice8735bd9fdc5eee212af33143faf7b5f3cc1542\nSigned-off-by: Artem Goncharov \u003cartem.goncharov@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/f98eb19c66db6233b6bc80580ff32db4f999ddb3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/codegenerator/commit/f98eb19c66db6233b6bc80580ff32db4f999ddb3"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
