)]}'
{"id":"openstack%2Fcyborg~995561","triplet_id":"openstack%2Fcyborg~master~Ib88b17d7087f475b741a3f0ce349654f3ae20d22","project":"openstack/cyborg","branch":"master","topic":"bug/2157892","attention_set":{},"removed_from_attention_set":{"4690":{"account":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"last_update":"2026-07-08 18:27:17.000000000","reason":"Change was submitted"},"11604":{"account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"last_update":"2026-07-02 16:05:16.000000000","reason":"\u003cGERRIT_ACCOUNT_11604\u003e replied on the change","reason_account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"}},"28006":{"account":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"last_update":"2026-07-08 18:27:17.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ib88b17d7087f475b741a3f0ce349654f3ae20d22","subject":"Add C300 hacking check for set literal in logging calls","status":"MERGED","created":"2026-06-30 18:15:54.000000000","updated":"2026-07-08 18:28:20.000000000","submitted":"2026-07-08 18:27:17.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":31,"unresolved_comment_count":2,"has_review_started":true,"submission_id":"995561-bug/2157892","meta_rev_id":"fdad7aaf6dffbdb50e2244dfa2aed63fa269001b","_number":995561,"virtual_id_number":995561,"owner":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"value":0,"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-08 18:27:17.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":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"all":[{"value":2,"date":"2026-07-02 16:05:16.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"value":1,"date":"2026-07-08 17:22:10.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"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":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"all":[{"value":1,"date":"2026-07-08 17:25:05.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"value":0,"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},{"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}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"}],"CC":[{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-06-30 18:16:00.000000000","updated_by":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"reviewer":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"state":"CC"},{"updated":"2026-06-30 19:39:19.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-06-30 20:04:12.000000000","updated_by":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"reviewer":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"state":"REVIEWER"},{"updated":"2026-07-08 17:22:10.000000000","updated_by":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"reviewer":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"state":"REVIEWER"}],"messages":[{"id":"7a11c60ddd9b923546e873afba24703f1de62e9f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-06-30 18:15:54.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"13b574a4fbd102fa0a4642a6337783c797d2c4a3","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 18:16:00.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"31d2542521d3575870f3809d19a302079a9da57d","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 18:30:21.000000000","message":"Patch Set 1:\n\n(4 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/8dc12797aa894c0b9a2cd2ce969a1375\n\n- teim-code-review https://zuul.teim.app/t/main/build/5608bd4725a046778c958cb0420ff554 : SUCCESS in 12m 37s\n\nWarning:\n  The new C300 check is registered via [flake8:local-plugins] in tox.ini with paths \u003d ./cyborg/hacking, and selected via select \u003d H,C. This relies on the pre-commit hacking hook running flake8 with the project\u0027s tox.ini config and resolving the local plugin path relative to the repo root. Impact: If the pre-commit hacking hook (hacking rev 8.0.0, additional_dependencies: []) runs flake8 where the project tox.ini or ./cyborg/hacking path is not on the config/search path, C300 would be silently skipped and the regression-protection intent of the patch would not be enforced in CI. Recommendation: After merge, verify in a real pre-commit/pep8 run that C300 actually fires on a deliberately-introduced {\u0027key\u0027, val} logging line (the local CI environment here did not have flake8/hacking installed, so end-to-end execution could not be confirmed). If the hook does not pick up local-plugins, either install the local plugin as an additional_dependency or run the check via a dedicated tox testenv. The config syntax itself is correct per flake8\u0027s documented local-plugin format.","accounts_in_message":[],"_revision_number":1},{"id":"cc9c5c128a6da4f058295637667986a28f00cafb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-06-30 18:38:09.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"28678211d338f5837f7ed727a99c042ed27a8530","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 18:38:15.000000000","message":"Patch Set 2:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":2},{"id":"6fecdbca342d1328dfa3281fa34f5578e7cd3d0e","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 19:05:13.000000000","message":"Patch Set 2:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/397a8bb19dd241d09403c34c29e90f54\n\n- teim-code-review https://zuul.teim.app/t/main/build/f14b41147a184acba95d4eccb959d047 : SUCCESS in 11m 48s\n\nWarning:\n  The checker inspects only positional args (node.args); a set literal passed as a keyword argument (e.g. a named extra\u003d) is not flagged. This is a minor intentional coverage gap, not a defect. Impact: Negligible for real-world cyborg logging, which uses positional args. The bug pattern targeted by C300 is the positional comma-instead-of-colon mistake, which the checker fully covers. Recommendation: No action required for this patch. If desired in a future enhancement, node.keywords could be inspected, but the current scope is correct for the bug it targets.","accounts_in_message":[],"_revision_number":2},{"id":"02464ff03c0534967e92e213840178ff3964d49b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-30 19:39:19.000000000","message":"Patch Set 2: Verified-1\n\n(1 comment)\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/7ba81db32126479d93bb307af5a735a8\n\n- build-openstack-api-ref https://zuul.opendev.org/t/openstack/build/b388f5e013f34154a50e73c540b027c0 : SUCCESS in 3m 16s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/2f0b5311ab9741de981e551efd0d24f4 : SUCCESS in 5m 40s\n- requirements-check https://zuul.opendev.org/t/openstack/build/ebe4790201154375bdaccc59f74cb71b : SUCCESS in 2m 33s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/128c0012f7454540bf962e4826f36c48 : SUCCESS in 4m 05s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d4d660d3c2064148b988ae7f1544215d : SUCCESS in 8m 14s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3275ea256dde4730aaa910b7450d38c9 : FAILURE in 3m 17s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/f634018bafc14d199f1228da119f90c6 : SUCCESS in 3m 13s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/d3c7ab3d7357499aa542656444e3be21 : SUCCESS in 3m 35s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/8dc93984ded948ae9c964dc1c4e8309d : SUCCESS in 3m 39s (non-voting)\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/f9d51bfe8b1f44c484537c81db9a1db2 : SUCCESS in 24m 22s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/16a89e1717ca483caf247be1e43a9b9f : SUCCESS in 15m 51s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/8ce35b8b6c2e45d392d7190eaddb541e : SUCCESS in 55m 40s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/585fa5f86d1c42b7881eb3cbdda96501 : SUCCESS in 55m 41s","accounts_in_message":[],"_revision_number":2},{"id":"34d21ab6f8c57b6c3c6e0167f95562e91d33b2ba","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-06-30 20:04:12.000000000","message":"Patch Set 2: Code-Review-1\n\n(4 comments)","accounts_in_message":[],"_revision_number":2},{"id":"1388a9c8bd97163840ff153b7973794772166dec","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-06-30 20:17:00.000000000","message":"Patch Set 2:\n\n(4 comments)","accounts_in_message":[],"_revision_number":2},{"id":"33bdf25d11e76be9a56b3aeb78045f2c6424b6fd","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-06-30 20:50:48.000000000","message":"Patch Set 2:\n\n(5 comments)","accounts_in_message":[],"_revision_number":2},{"id":"e497ebf6907aff4f8acb1d161f2a3c9473caa151","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-06-30 20:55:26.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"3c0ef2e7e0fd5d35cfdaaebddfd7c4a2dcb19ea7","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-06-30 21:39:10.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"2bd0206cfe8e894b06999f19ff7930c261bedec9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-06-30 21:42:12.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"1e8dc69b4643d7be4d81507477a3042fb785662b","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 21:42:19.000000000","message":"Patch Set 3:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":3},{"id":"1f9dfe7b4818fec59862dc94d93f33934a6c031f","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-06-30 21:56:55.000000000","message":"Patch Set 3:\n\n(5 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/004edd327e284802877e77c0bc1cfab8\n\n- teim-code-review https://zuul.teim.app/t/main/build/c9a17af3936742999dcea3036a88ed94 : SUCCESS in 10m 28s","accounts_in_message":[],"_revision_number":3},{"id":"d8d1be85e19737adb4ab42b66e7a99f22fef44fa","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-30 22:43:23.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a107b60d23cc478491c66b88fb635db8\n\n- build-openstack-api-ref https://zuul.opendev.org/t/openstack/build/ebb7e6f94a1f4588b05dc2644d09d619 : SUCCESS in 2m 43s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/5bd3813aa5ba4f7a9ad4d70b7099fe99 : SUCCESS in 3m 03s\n- requirements-check https://zuul.opendev.org/t/openstack/build/58a36c0329ec4d6391d1f165ea881712 : SUCCESS in 1m 27s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/81582c7b105d4e1dbf00e584c02993c0 : SUCCESS in 2m 21s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8e5ecc039cd2472a98f306c565530ef2 : SUCCESS in 8m 09s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8d2aa89f4e5f4063989616f7e7ada5db : SUCCESS in 3m 07s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/f16563fb35c44b19be16a4261b194957 : SUCCESS in 3m 27s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/c7a02b454af04b3b92dd51e5757fa03b : SUCCESS in 3m 14s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/91a8fa406b7f41d295a42057c5f07df2 : SUCCESS in 6m 03s (non-voting)\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/c7aca011999945bfa33f0313cfee20bd : SUCCESS in 16m 51s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/4b82125349d74dc3b2bb89e1252af22d : SUCCESS in 13m 03s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/704a4a14f29e4b6e9bfca2df919b5cd4 : SUCCESS in 51m 29s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/80aca3fe053b47cea7a9d656ddee9eb4 : SUCCESS in 56m 00s","accounts_in_message":[],"_revision_number":3},{"id":"edbe35003ae3f9bd13e4918fbf601fe9d3f7ebe8","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-07-02 16:05:16.000000000","message":"Patch Set 3: Code-Review+2\n\n(5 comments)","accounts_in_message":[],"_revision_number":3},{"id":"94a4264c38e287587879b77320dc4acaf7fa97e7","author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"date":"2026-07-08 17:22:10.000000000","message":"Patch Set 3: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"b7538bfbc3838694d6a4d4bfdc2d5aa685487c98","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-07-08 17:25:05.000000000","message":"Patch Set 3: Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"33dfa6d811a3f105b37a6a0e764ecc42a2f29f09","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-08 17:25:39.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"7bbe6f6d9dfc89e1516a16f32ae912986464a29b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-08 18:27:17.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/4cf2f6a8857d4a73ba14e8dd9f02f8d1\n\n- build-openstack-api-ref https://zuul.opendev.org/t/openstack/build/01ea47f5e9714a64b5c0831810509602 : SUCCESS in 2m 36s\n- requirements-check https://zuul.opendev.org/t/openstack/build/e279f508cdd7447da80fa51c4aa87dd3 : SUCCESS in 2m 36s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/583bcdf2063449afa373f7f4c8537bc5 : SUCCESS in 2m 58s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c546e9800fe94dab9c439aa658cbe327 : SUCCESS in 7m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b7e36e9eeddb420f915826f39149eb62 : SUCCESS in 3m 54s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b9fb0ebb21274ae59394a6a6a6a43e6c : SUCCESS in 3m 30s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3b7feb1a37cb4d30b335bb2e0a15ff06 : SUCCESS in 2m 42s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/0b66dbe2284c4c9694b0482e353f2609 : SUCCESS in 40m 44s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/330e75561a3d45df9fb8700421ebf73d : SUCCESS in 20m 05s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/31292ea80cef4f57bde567d87886b9e3 : SUCCESS in 43m 20s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/a0d912ecb36c4235b388ae7d95264de1 : SUCCESS in 56m 40s","accounts_in_message":[],"_revision_number":3},{"id":"1f8044d8a6f376f55d6b312db6549aa288df96d9","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-08 18:27:17.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"fdad7aaf6dffbdb50e2244dfa2aed63fa269001b","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-08 18:28:20.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/10c9a77f7fc742f9890201fd534da99e\n\n- promote-api-ref https://zuul.opendev.org/t/openstack/build/04818e87c26543169f8238051eccc168 : SUCCESS in 44s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a6883d6be3684e9d9dff987b4bdfe5f2 : SUCCESS in 48s\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d3a9e4f8a8ba472f9738864c22e70466 : SUCCESS in 47s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"05e028088484901cc8d55b52ad495d3298018883","revisions":{"85306aa866ebabca1f7294e67ab54b52fb37cb5f":{"kind":"REWORK","_number":1,"created":"2026-06-30 18:15:54.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/61/995561/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/61/995561/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/61/995561/1"}}},"commit":{"parents":[{"commit":"cec1b79ea275aa4934b8619d92ef72e8b9f41832","subject":"Merge \"Add api-ref/ to irrelevant-files in Zuul config\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/cec1b79ea275aa4934b8619d92ef72e8b9f41832"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 18:01:52.000000000","tz":-420},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 18:14:13.000000000","tz":-420},"subject":"Add C300 hacking check for set literal in logging calls","message":"Add C300 hacking check for set literal in logging calls\n\nAdd a local flake8 AST check that detects set literals passed where\na dict is expected in logging calls with %-style named placeholders.\nFor example, LOG.info(\"%(key)s\", {\"key\", val}) uses a comma instead\nof a colon, creating a set instead of a dict, which causes TypeError\nat runtime.\n\nThis re-adds the cyborg/hacking/ local plugin directory (removed in\n8eb3a5a during the ruff migration) with a new C-prefix code range.\nThe old M-prefix checks are not restored as they are now covered by\nruff. The check is registered via [flake8:local-plugins] in tox.ini\nand runs as part of the existing pre-commit hacking hook.\n\nAlso adds pycodestyle to test-requirements.txt, needed by the test\nto exercise the check through pycodestyle\u0027s checker infrastructure.\n\nRelated-Bug: #2157892\nAssisted-by: Claude claude-opus-4-6 claude-code/2.1.196\nChange-Id: Ib88b17d7087f475b741a3f0ce349654f3ae20d22\nSigned-off-by: melanie witt \u003cmelwittt@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/85306aa866ebabca1f7294e67ab54b52fb37cb5f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/85306aa866ebabca1f7294e67ab54b52fb37cb5f"}]},"branch":"refs/heads/master"},"0428dcee53fcbe9af095d7c9fec2fc1a4f5eff38":{"kind":"REWORK","_number":2,"created":"2026-06-30 18:38:09.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/61/995561/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/61/995561/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/61/995561/2"}}},"commit":{"parents":[{"commit":"cec1b79ea275aa4934b8619d92ef72e8b9f41832","subject":"Merge \"Add api-ref/ to irrelevant-files in Zuul config\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/cec1b79ea275aa4934b8619d92ef72e8b9f41832"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 18:01:52.000000000","tz":-420},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 18:36:55.000000000","tz":-420},"subject":"Add C300 hacking check for set literal in logging calls","message":"Add C300 hacking check for set literal in logging calls\n\nAdd a local flake8 AST check that detects set literals passed where\na dict is expected in logging calls with %-style named placeholders.\nFor example, LOG.info(\"%(key)s\", {\"key\", val}) uses a comma instead\nof a colon, creating a set instead of a dict, which causes TypeError\nat runtime.\n\nThis re-adds the cyborg/hacking/ local plugin directory (removed in\n8eb3a5a during the ruff migration) with a new C-prefix code range.\nThe old M-prefix checks are not restored as they are now covered by\nruff. The check is registered via [flake8:local-plugins] in tox.ini\nand runs as part of the existing pre-commit hacking hook.\n\nAlso adds pycodestyle to test-requirements.txt, needed by the test\nto exercise the check through pycodestyle\u0027s checker infrastructure.\n\nRelated-Bug: #2157892\nAssisted-by: Claude claude-opus-4-6 claude-code/2.1.196\nChange-Id: Ib88b17d7087f475b741a3f0ce349654f3ae20d22\nSigned-off-by: melanie witt \u003cmelwittt@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0428dcee53fcbe9af095d7c9fec2fc1a4f5eff38"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0428dcee53fcbe9af095d7c9fec2fc1a4f5eff38"}]},"branch":"refs/heads/master"},"05e028088484901cc8d55b52ad495d3298018883":{"kind":"REWORK","_number":3,"created":"2026-06-30 21:42:12.000000000","uploader":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"ref":"refs/changes/61/995561/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/61/995561/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/61/995561/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/61/995561/3"}}},"commit":{"parents":[{"commit":"cec1b79ea275aa4934b8619d92ef72e8b9f41832","subject":"Merge \"Add api-ref/ to irrelevant-files in Zuul config\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/cec1b79ea275aa4934b8619d92ef72e8b9f41832"}]}],"author":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 18:01:52.000000000","tz":-420},"committer":{"name":"melanie witt","email":"melwittt@gmail.com","date":"2026-06-30 21:40:43.000000000","tz":-420},"subject":"Add C300 hacking check for set literal in logging calls","message":"Add C300 hacking check for set literal in logging calls\n\nAdd a local flake8 AST check that detects set literals passed where\na dict is expected in logging calls with %-style named placeholders.\nFor example, LOG.info(\"%(key)s\", {\"key\", val}) uses a comma instead\nof a colon, creating a set instead of a dict, which causes TypeError\nat runtime.\n\nThis re-adds the cyborg/hacking/ local plugin directory (removed in\n8eb3a5a during the ruff migration) with a new C-prefix code range.\nThe old M-prefix checks are not restored as they are now covered by\nruff. The check is registered via [flake8:local-plugins] in tox.ini\nand runs as part of the existing pre-commit hacking hook.\n\nAlso adds pycodestyle to test-requirements.txt, needed by the test\nto exercise the check through pycodestyle\u0027s checker infrastructure.\n\nRelated-Bug: #2157892\nAssisted-by: Claude claude-opus-4-6 claude-code/2.1.196\nChange-Id: Ib88b17d7087f475b741a3f0ce349654f3ae20d22\nSigned-off-by: melanie witt \u003cmelwittt@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/05e028088484901cc8d55b52ad495d3298018883"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/05e028088484901cc8d55b52ad495d3298018883"}]},"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":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"}}]}],"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":""}}}]}
