)]}'
{"id":"openstack%2Fagentic-workflows~985306","triplet_id":"openstack%2Fagentic-workflows~master~I911755c9d464793397a19677b2db00444dfff3fb","project":"openstack/agentic-workflows","branch":"master","topic":"strawman","hashtags":[],"change_id":"I911755c9d464793397a19677b2db00444dfff3fb","subject":"Add OpenStack Python modernization workflow","status":"NEW","created":"2026-04-20 00:20:49.000000000","updated":"2026-04-24 20:12:35.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"d88c2f106fee9807d75d7997d02f10dbf1379ea9","_number":985306,"virtual_id_number":985306,"owner":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-04-24 20:12:35.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-04-20 00:30: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"}],"messages":[{"id":"23eded7b2e7bda994865a958683a761759f7d2eb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-20 00:20:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"516b1cc4147b678cce3ffc606b87f9790250472e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-20 00:30:19.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/833e890682a04e7b8606afb0bd5fffe9\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/909928be0b174403a33d11ae8ac17bcb : SUCCESS in 2m 41s","accounts_in_message":[],"_revision_number":1},{"id":"b6fe9f21c7d67d9c038362b0d25840d3eae2da66","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-21 06:33:59.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased. Commit message was updated.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"44bcaf040551625a6806c3b2ca64afa8b450c2f7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-21 06:45:19.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e65669bcf4484352bcfa8471c5bb5703\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/eb7c1a9e43434c75854126c4f4ceb793 : SUCCESS in 2m 29s","accounts_in_message":[],"_revision_number":2},{"id":"f9bfa86fa52142917f6faba3d67fe640da7e813e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-24 20:01:20.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased. Commit message was updated.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"d88c2f106fee9807d75d7997d02f10dbf1379ea9","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 20:12:35.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/ee6f551fca184bef9e9ae5bac0bc4401\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/815226b98c07499fbea98893a9b55ced : SUCCESS in 2m 37s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"d9d206f483ecc3fbd33528143ba4a5149a303a16","revisions":{"942a8bf3c1998bfb5ff0849b22b830d33fb7bdcc":{"kind":"REWORK","_number":1,"created":"2026-04-20 00:20:49.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/06/985306/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/06/985306/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/1"}}},"commit":{"parents":[{"commit":"7b614d6adf1a5e2cd6dad7561f62ca59ea2042e8","subject":"Teach OpenStack Python testing patterns","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/7b614d6adf1a5e2cd6dad7561f62ca59ea2042e8"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-19 23:58:38.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-20 00:02:06.000000000","tz":60},"subject":"Add OpenStack Python modernization workflow","message":"Add OpenStack Python modernization workflow\n\nOpenStack Python modernization needs workflow guidance so tooling changes\nremain reviewable and preserve existing project semantics.\n\nThis change adds a workflow skill for Ruff, hook, import, pyproject, pbr,\nhacking, pyupgrade, and bandit migrations. The guidance is based on the\nOpenStack seed material and keeps configuration, mechanical fixes, metadata\nmigration, and semantic follow-ups in separate reviewable steps.\n\nChange-Id: I911755c9d464793397a19677b2db00444dfff3fb\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/942a8bf3c1998bfb5ff0849b22b830d33fb7bdcc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/942a8bf3c1998bfb5ff0849b22b830d33fb7bdcc"}]},"branch":"refs/heads/master"},"fd81c5e836fd2b14eb871bbd72cee25b475b22cd":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":2,"created":"2026-04-21 06:33:59.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/06/985306/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/06/985306/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/2"}}},"commit":{"parents":[{"commit":"980705ee53a5e59b556fb27e39471b0f4f5e217f","subject":"Teach OpenStack Python testing patterns","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/980705ee53a5e59b556fb27e39471b0f4f5e217f"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 05:37:55.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 06:25:16.000000000","tz":60},"subject":"Add OpenStack Python modernization workflow","message":"Add OpenStack Python modernization workflow\n\nPython modernization needs workflow guidance so tooling changes remain\nreviewable and preserve OpenStack project semantics.\n\nThis change adds a modernization workflow for Ruff, hooks, imports,\npyproject, pbr, hacking, pyupgrade, and bandit migrations. It uses\nOpenStack seed material and keeps config, fixes, metadata migration, and\nsemantic follow-ups reviewable.\n\nChange-Id: I911755c9d464793397a19677b2db00444dfff3fb\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/fd81c5e836fd2b14eb871bbd72cee25b475b22cd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/fd81c5e836fd2b14eb871bbd72cee25b475b22cd"}]},"branch":"refs/heads/master"},"d9d206f483ecc3fbd33528143ba4a5149a303a16":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":3,"created":"2026-04-24 20:01:20.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/06/985306/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/06/985306/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/06/985306/3"}}},"commit":{"parents":[{"commit":"00d156e40563f76d9209340167825ac8625f4df4","subject":"Add OpenStack Python testing skill","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/00d156e40563f76d9209340167825ac8625f4df4"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 05:37:55.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-24 19:37:39.000000000","tz":60},"subject":"Add OpenStack Python modernization workflow","message":"Add OpenStack Python modernization workflow\n\nPython modernization needs workflow guidance so tooling changes remain\nreviewable and preserve OpenStack project semantics.\n\nThis change adds a modernization workflow for Ruff, hooks, imports,\npyproject, pbr, hacking, pyupgrade, and bandit migrations. It uses\nOpenStack seed material and keeps config, fixes, metadata migration,\nand semantic follow-ups reviewable.\n\nChange-Id: I911755c9d464793397a19677b2db00444dfff3fb\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/d9d206f483ecc3fbd33528143ba4a5149a303a16"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/d9d206f483ecc3fbd33528143ba4a5149a303a16"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
