)]}'
{"id":"openstack%2Fneutron-lib~987337","triplet_id":"openstack%2Fneutron-lib~master~Iec1bc5d5ccebe7f3c493f6f6ff782fa3a4c3d70a","project":"openstack/neutron-lib","branch":"master","topic":"bug/2131664","attention_set":{},"removed_from_attention_set":{"16688":{"account":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"last_update":"2026-05-18 12:46:32.000000000","reason":"Change was submitted"},"5890":{"account":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"last_update":"2026-05-18 12:46:32.000000000","reason":"Change was submitted"},"24245":{"account":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"last_update":"2026-05-18 12:46:32.000000000","reason":"Change was submitted"},"11975":{"account":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"last_update":"2026-05-18 08:53:18.000000000","reason":"\u003cGERRIT_ACCOUNT_11975\u003e replied on the change","reason_account":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"}}},"hashtags":[],"change_id":"Iec1bc5d5ccebe7f3c493f6f6ff782fa3a4c3d70a","subject":"Document ML2 VLAN tri-state capability behavior","status":"MERGED","created":"2026-05-05 11:26:57.000000000","updated":"2026-05-18 12:47:38.000000000","submitted":"2026-05-18 12:46:32.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":"987337-bug/2131664","meta_rev_id":"4e66848c50d3532127d8d4f59cf3a2102d6a0785","_number":987337,"virtual_id_number":987337,"owner":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-05-18 12:46:32.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":2,"date":"2026-05-18 08:53:18.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":1,"date":"2026-05-18 08:53:18.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"}],"REVIEWER":[{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-05-05 13:57:37.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"},{"updated":"2026-05-07 22:12:04.000000000","updated_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"reviewer":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"state":"CC"},{"updated":"2026-05-14 00:46:05.000000000","updated_by":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"reviewer":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"state":"REVIEWER"},{"updated":"2026-05-14 09:33:12.000000000","updated_by":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"reviewer":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"state":"REVIEWER"},{"updated":"2026-05-15 14:09:58.000000000","updated_by":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"reviewer":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"state":"REVIEWER"}],"messages":[{"id":"e781bdae0a0f754de6ba336523b21aa32bc767d9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2026-05-05 11:26:57.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"4a0183f016d6aa2cb09202fe13ff12fe05f3012b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-05 13:57:37.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8772c2b5e5d2410196c8fed553924e3e\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/14340a1098c44795b84224248bb72fae : SUCCESS in 8m 31s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/c991aa1c27a3405ea77444664c551e91 : SUCCESS in 3m 15s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e85daac9c3be48e29aec046f6652ba91 : SUCCESS in 6m 37s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/d814ec7d87e74db2abe740af81671224 : SUCCESS in 3m 43s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/c19ee06355284dbb996f9d3ae2ed915e : SUCCESS in 2m 03s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/d5e3c0febcf94868b27dd54127b23b39 : SUCCESS in 6m 31s (non-voting)\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/fe8c0a9315564a9a93bae84bac4af36d : SUCCESS in 1h 23m 16s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/97ac6f687ddb4a59a5813953ca6adaf0 : SUCCESS in 5m 44s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/17ecbc349a6a4006884163e886124970 : SUCCESS in 1h 13m 04s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/9a2539c2d2f646c681035fffc8c43723 : SUCCESS in 2h 29m 37s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/35a1364590054825a46e10641ae9a93e : SUCCESS in 31m 59s\n- openstack-tox-py313-with-neutron https://zuul.opendev.org/t/openstack/build/82db581b8c0a4d19b04744a3d83e778d : SUCCESS in 18m 48s\n- openstack-tox-py313-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/fb5efd091d9a4f838b6c94dbc743b529 : SUCCESS in 7m 30s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/35880b1e8b7d4ead81b3beb47a2d96d5 : SUCCESS in 1h 22m 20s","accounts_in_message":[],"_revision_number":1},{"id":"9602f5290ea934ba1b427e352997b319b1189963","author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"date":"2026-05-14 00:46:05.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"5cedae92ce876ad7c01a93a64801068066f28b5d","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2026-05-14 09:33:12.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"0abcfe17f23a82bb057aa66b278740395390b4f0","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2026-05-15 14:09:58.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"f84149f991640fd937aa9b2cec895444b00714fe","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-15 16:18:18.000000000","message":"Patch Set 1: Verified-2\n\nMerge Failed.\n\nThis change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.\nWarning:\n  Error merging gerrit/openstack/neutron-lib for 987337,1","accounts_in_message":[],"_revision_number":1},{"id":"46609b4290d81c784506dd9edc5552c5278224ec","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2026-05-18 08:52:17.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Code-Review+1, Code-Review+2 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified-2 (copy condition: \"NEVER\")\n* Workflow+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"ae8d63016c0d873130e9a250f1d5e6619cecf555","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2026-05-18 08:53:18.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"97e2400a2c581f689ce7bbfea9b4369eae5d3df2","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-18 10:49:51.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7fe70e9839e14dc7b8751ffa41cc7829\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/58a80bc4460949fda41dfe148bfb1188 : SUCCESS in 9m 20s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/9194c31419df4d669a578954064c5431 : SUCCESS in 4m 29s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0a5e0c3d92fc47a38f554504ade79a79 : SUCCESS in 6m 18s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b37be6aa768f465395e24d1d4d6f8e12 : SUCCESS in 3m 27s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/626b8032027543b7b8071f1644b5bb5b : SUCCESS in 3m 28s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/99b9685edb8c4df29ab4a74ea6904067 : SUCCESS in 3m 37s (non-voting)\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/ed1022b388f84b208d946ee4a15ec594 : SUCCESS in 1h 39m 51s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e6d4b335e6f14449b4f987464c977c33 : SUCCESS in 5m 15s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/a020a599e00d48cb8111619f45cc232d : SUCCESS in 1h 27m 12s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/2efde76047754f6dab3312c39935e5c2 : SUCCESS in 1h 55m 48s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/40bd1552b24a465fbd861e03f1601800 : SUCCESS in 32m 58s\n- openstack-tox-py313-with-neutron https://zuul.opendev.org/t/openstack/build/3012b11c781a4850af4d9723fb4c998c : SUCCESS in 21m 25s\n- openstack-tox-py313-with-sqlalchemy-master https://zuul.opendev.org/t/openstack/build/9ec6ffb3ebb14df5802cc18a9d14824d : SUCCESS in 3m 26s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/a60b239890d6458f9b222b32c0bc0c6e : SUCCESS in 50m 48s","accounts_in_message":[],"_revision_number":2},{"id":"85de3d301a008d9ad7f9dc7c1a1a927683c23c9b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-18 10:50:20.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"758b27314b5d7d735d67a6b02417e398247f452e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-18 12:46:32.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/682de89ef74040aaa4ed92ef256978ae\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8baa2a173aff4fcd9a4dc545abeebbf0 : SUCCESS in 4m 42s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/04f28762619c46239c9cc5716f408d91 : SUCCESS in 6m 39s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/371d385b027f45c2850e9a03735814a6 : SUCCESS in 3m 49s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/691da59ae3424b919fe5ecbd4498e57b : SUCCESS in 3m 28s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/a0e6942f95574ee296ba9d25e4c9ffc1 : SUCCESS in 1h 50m 57s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b88d5b4ab6134781807c5ef9f0598a5e : SUCCESS in 4m 43s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/5f95c13511be42e69febaeae53663a43 : SUCCESS in 1h 37m 46s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/37500c444f1c4a19a94f990a5acf9785 : SUCCESS in 1h 48m 44s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/d8f09e7f62ce4036806d1478c7d5f0e3 : SUCCESS in 51m 44s","accounts_in_message":[],"_revision_number":2},{"id":"6829bc95a2d6cfe506852f51f7c42eea30875a7f","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-18 12:46:32.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"4e66848c50d3532127d8d4f59cf3a2102d6a0785","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-18 12:47:38.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/afe010b776bc491985b01faec81f0501\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a4ffd5a911944c02986bd733d87fd66e : SUCCESS in 49s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/798a149747454c7d96d113e52929436f : SUCCESS in 48s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"f7a9e8a542f12ea52929c91b7d69ff23b21f1638","revisions":{"ff955bc9c5bf5bc935f978977a6df61556468bd0":{"kind":"REWORK","_number":1,"created":"2026-05-05 11:26:57.000000000","uploader":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"ref":"refs/changes/37/987337/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/37/987337/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/1"}}},"commit":{"parents":[{"commit":"c5980cda3ad179ceb744ea1ebda3bc41ec04586e","subject":"Merge \"Remove fip64 API definition and documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/c5980cda3ad179ceb744ea1ebda3bc41ec04586e"}]}],"author":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-05-05 11:24:05.000000000","tz":120},"committer":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-05-05 11:24:05.000000000","tz":120},"subject":"Document ML2 VLAN tri-state capability behavior","message":"Document ML2 VLAN tri-state capability behavior\n\nClarify the ML2 mechanism driver contract for:\n * check_vlan_transparency()\n * check_vlan_qinq()\n\nDocument True/False/None semantics and the aggregation rule\n(at least one True and no False). Add unit tests for the\ndefault None abstain behavior and include a release note.\n\nChange-Id: Iec1bc5d5ccebe7f3c493f6f6ff782fa3a4c3d70a\nRelated-Bug: #2131664\nDepends-On: https://review.opendev.org/c/openstack/neutron/+/987334\nAssisted-By: Claude (claude-4.5-sonnet)\nSigned-off-by: Harald Jensås \u003chjensas@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/ff955bc9c5bf5bc935f978977a6df61556468bd0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/ff955bc9c5bf5bc935f978977a6df61556468bd0"}]},"branch":"refs/heads/master"},"f7a9e8a542f12ea52929c91b7d69ff23b21f1638":{"kind":"REWORK","_number":2,"created":"2026-05-18 08:52:17.000000000","uploader":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"ref":"refs/changes/37/987337/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/37/987337/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/37/987337/2"}}},"commit":{"parents":[{"commit":"6beaa5aa3a21cafa9eb1d23c49f0c9c966c4b48e","subject":"Merge \"Fix QinQ tag 0x88a8 in documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/6beaa5aa3a21cafa9eb1d23c49f0c9c966c4b48e"}]}],"author":{"name":"Harald Jensås","email":"hjensas@redhat.com","date":"2026-05-05 11:24:05.000000000","tz":120},"committer":{"name":"Slawek Kaplonski","email":"skaplons@redhat.com","date":"2026-05-18 08:51:48.000000000","tz":120},"subject":"Document ML2 VLAN tri-state capability behavior","message":"Document ML2 VLAN tri-state capability behavior\n\nClarify the ML2 mechanism driver contract for:\n * check_vlan_transparency()\n * check_vlan_qinq()\n\nDocument True/False/None semantics and the aggregation rule\n(at least one True and no False). Add unit tests for the\ndefault None abstain behavior and include a release note.\n\nChange-Id: Iec1bc5d5ccebe7f3c493f6f6ff782fa3a4c3d70a\nRelated-Bug: #2131664\nDepends-On: https://review.opendev.org/c/openstack/neutron/+/987334\nAssisted-By: Claude (claude-4.5-sonnet)\nSigned-off-by: Harald Jensås \u003chjensas@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/f7a9e8a542f12ea52929c91b7d69ff23b21f1638"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/f7a9e8a542f12ea52929c91b7d69ff23b21f1638"}]},"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":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"}},{"label":"Review-Priority","status":"MAY"}]}],"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":"Review-Priority","description":"Review priority","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"-label:Review-Priority\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":[],"failing_atoms":["label:Review-Priority\u003dMIN"],"atom_explanations":{"label:Review-Priority\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":""}}}]}
