)]}'
{"id":"openstack%2Fcyborg~977889","triplet_id":"openstack%2Fcyborg~master~Ica0e91c8f4e86fdc36c49abfb3d72aa705860713","project":"openstack/cyborg","branch":"master","topic":"linters","attention_set":{},"removed_from_attention_set":{"11604":{"account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"last_update":"2026-03-05 15:36:47.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"}}},"hashtags":[],"change_id":"Ica0e91c8f4e86fdc36c49abfb3d72aa705860713","subject":"Fix E402 in Alembic migrations and template","status":"MERGED","created":"2026-02-24 21:52:05.000000000","updated":"2026-03-05 16:12:21.000000000","submitted":"2026-03-05 16:11:22.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":"977889-linters","meta_rev_id":"b9a2541adc47af36ebbdb42d9dcd7298f65d84b0","_number":977889,"virtual_id_number":977889,"owner":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"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-03-05 16:11:22.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-03-05 15:36:47.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-03-03 15:39:42.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-03-05 15:36:47.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-02-24 21:53: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-02-24 22:33:38.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-03-03 15:39:42.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":"2f51c06e26f5b85b4cb591c9b882b3b3fa4af947","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-02-24 21:52:05.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"7545f48bcfcea5c1bc44606a28a78c3eb7cbe0f0","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-02-24 21:53:00.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"a15ef2e2ae959be2b9f70c7a7d8bfeb8b561075b","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-02-24 22:01:42.000000000","message":"Patch Set 1:\n\n(2 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/b4b1bc1fa4ab4521a4df6efd10d5c98d\n\n- teim-code-review https://zuul.teim.app/t/main/build/3f038dc5c7ef4911910861cbc4d9ad7d : SUCCESS in 8m 33s","accounts_in_message":[],"_revision_number":1},{"id":"80aaa64a8242c50a7887e0411e461e1459e926e7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-02-24 22:33:38.000000000","message":"Patch Set 1: 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/191f9e92eebc481e92812bc72c2f4eec\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/ee8a003dd8a34a269d867259cb5b341e : FAILURE in 2m 34s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f0ef6d339d0a43bc800b9a983001848a : SUCCESS in 5m 39s\n- requirements-check https://zuul.opendev.org/t/openstack/build/568de40cf786448ca6c19abef3619c3c : SUCCESS in 2m 50s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3758e139771b4ea087090d8725c25f50 : SUCCESS in 4m 18s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/93ee3b0cda284440a0917b1d2c83014d : SUCCESS in 3m 16s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/15ab053c483a4c818a5067cb40f713df : SUCCESS in 4m 21s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/809594b5ad0848d5aa8d71f3afe08018 : SUCCESS in 2m 38s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/83f70ce0810544c69c1e82ee75cf14d4 : SUCCESS in 5m 52s (non-voting)\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/e74ba75f0efd49c3b43652c89613b3af : SUCCESS in 20m 12s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/c409d837d85147779b0e94ad141266a4 : SUCCESS in 31m 39s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/be0e3f4553e94ca2b72283056c8aebc0 : SUCCESS in 3m 09s","accounts_in_message":[],"_revision_number":1},{"id":"9e458152ba2ceb6eb8c238291320f069c93f1784","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-02-25 21:55:40.000000000","message":"Patch Set 1: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"40348358600340e892571b86bdcb4582f4f294a5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-03-02 18:24:58.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.\n\nCopied Votes:\n* Code-Review+2 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"9297623b4506b107143660df93ff90e510757df2","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-03-02 18:25:26.000000000","message":"Patch Set 2:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":2},{"id":"c3d585b7fa5576ea1f4a501500c1222679fac8d5","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-03-02 18:28:12.000000000","message":"Topic review/sean-k-mooney/linters removed","accounts_in_message":[],"_revision_number":2},{"id":"e0b4f83edc7bb5d0f20513ccdccecad52b9d6236","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-03-02 18:28:15.000000000","message":"Topic set to linters","accounts_in_message":[],"_revision_number":2},{"id":"2335c17a3475829a8500e187fcb3c766a6466234","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-03-02 18:47:24.000000000","message":"Patch Set 2:\n\n(2 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/a28216506f0a4a9d9079118e4cc1cd60\n\n- teim-code-review https://zuul.teim.app/t/main/build/a21920ac3cae4fdebe7d0cf919cfa419 : SUCCESS in 21m 48s","accounts_in_message":[],"_revision_number":2},{"id":"168ec32b5950159168169d3cd96e3a7119844742","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-02 19:04:24.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c26992e862614e09b1d95be1160e1b24\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/fb9e9e5110084cbab3b0399e6cd2de90 : SUCCESS in 2m 59s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/945ea78723fa4f02a20937cfc3498bb8 : SUCCESS in 4m 52s\n- requirements-check https://zuul.opendev.org/t/openstack/build/8c059a0b63704b5f8c089a890298ae16 : SUCCESS in 2m 12s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2dbcf9bc3c7d487cb2d4ed8f1949edd9 : SUCCESS in 4m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7ed1ca1cb8ae41aa8b6901d282eb5f31 : SUCCESS in 4m 14s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/db160d7b18594ab3ac28d9b3f24e615d : SUCCESS in 3m 10s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/833ebf28340749d88791f7bd74647f52 : SUCCESS in 4m 09s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/c27bff93f1f9475d8fc0758ad359e213 : SUCCESS in 6m 40s (non-voting)\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/e86534357e0d4dd18d0b4cd7d8ecdd8f : SUCCESS in 32m 55s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/68ac227f70864b2984858b13bbec075a : SUCCESS in 29m 24s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/44ee65f5eef94586b70bc7f3e99dd978 : SUCCESS in 2m 36s","accounts_in_message":[],"_revision_number":2},{"id":"20ccaf8c18e77a416922aea2ca04649b9c17afd7","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-03-03 12:40:07.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.\n\nCopied Votes:\n* Code-Review+2 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":3},{"id":"15782b73b49a5d5d7ec91c37855445043a5ca426","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-03-03 12:40:30.000000000","message":"Patch Set 3:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":3},{"id":"087de60586a9ef3519f497aa7fa1d8089c41fa34","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-03-03 13:11:49.000000000","message":"Patch Set 3:\n\nBuild failed (automatic-ci pipeline). To rerun just this ci comment\n\"teim-ci: auto\". To rerun other ci jobs comment \"recheck\".\nNote this ci does run on \"recheck\".\n\nhttps://zuul.teim.app/t/main/buildset/fa6b7c0f83774d678ad902521f8b3785\n\n- teim-code-review https://zuul.teim.app/t/main/build/b02d9f0061084fde884f957340a1d662 : TIMED_OUT in 30m 50s","accounts_in_message":[],"_revision_number":3},{"id":"2696f25fedfcc0a85f312fb93ada88cc178d0b61","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-03 13:19:15.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/890ad12f34654ff192430c32d5b55c1d\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/c342284770194848a3e201c52e8a8045 : SUCCESS in 2m 35s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/fee934009d814b18acbd878c16c4e0dd : SUCCESS in 5m 51s\n- requirements-check https://zuul.opendev.org/t/openstack/build/4bcdd539db2f415e979eb674b9f4e93b : SUCCESS in 2m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f0f36275755d4202a605b7c178bf9d16 : SUCCESS in 4m 39s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e45b068b117e4ba0a80008bff6a2a5e3 : SUCCESS in 3m 38s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/0ae04bd166c5438692d1ebdcd6cebd90 : SUCCESS in 3m 18s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/b717f56686064d7f89bc6a243abec285 : SUCCESS in 2m 09s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/73110e122c3a4ba88c8f4f87b9a54396 : SUCCESS in 9m 29s (non-voting)\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/7330885586754c76ab1b3a548e3e8235 : SUCCESS in 30m 43s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/6b3ad9b821a5489b83b7dc084aa5c3f1 : SUCCESS in 33m 24s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/5572d0414e8b47f5b9064d12ab8cf7e2 : SUCCESS in 3m 44s","accounts_in_message":[],"_revision_number":3},{"id":"53121e3feddcdd472096dccc9f440cf321c846fc","author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"date":"2026-03-03 15:39:42.000000000","message":"Patch Set 3: Code-Review+1","accounts_in_message":[],"_revision_number":3},{"id":"90a082feb2ba32e667748c18f15f2d6b3451cd3e","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-03-05 15:36:47.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"a8b23800a61164ae4bb1a2a462cb96ff8805f2fb","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 15:37:16.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"ec4798b0e57badf14c539704c5e373b505fe71aa","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 16:11:22.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3442c6681c7842eead7f7d9bdf9e2e2b\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/28f80f387da741418f1110522925df6d : SUCCESS in 5m 09s\n- requirements-check https://zuul.opendev.org/t/openstack/build/5dec6f0c2a254764b577af5ad7e7b875 : SUCCESS in 2m 17s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3004d7deb8d74dbca3a5da4fff19c413 : SUCCESS in 14m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5eef18d0a36d419db250fe54a546e55f : SUCCESS in 4m 25s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/1d980f9ba26947abb29b0bca9281a725 : SUCCESS in 2m 56s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/2e03b46449e0449f9329c31bfb18d25d : SUCCESS in 3m 51s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/76b3adb1ec8f4f62adcc1eaa2d6c2293 : SUCCESS in 29m 34s","accounts_in_message":[],"_revision_number":3},{"id":"9c3d3446331a99c04aa257101c5a913c31ab8729","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 16:11:22.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"b9a2541adc47af36ebbdb42d9dcd7298f65d84b0","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-05 16:12:21.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/efed9c807d9a45389bdc55256545303d\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9e478109e9414ca6aea089f4d9517410 : SUCCESS in 47s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"3645d4043eff3ca751413210f62012245024d261","revisions":{"4359a2c0d546d03ab0baf6dfc56bb21b4d262b15":{"kind":"REWORK","_number":1,"created":"2026-02-24 21:52:05.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/89/977889/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/89/977889/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/89/977889/1"}}},"commit":{"parents":[{"commit":"e6090feee7e03010a8df3d318fbc774e3a966248","subject":"Add ruff config and fix pre-commit hook failures","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/e6090feee7e03010a8df3d318fbc774e3a966248"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-02-24 21:19:27.000000000","tz":0},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-02-24 21:19:27.000000000","tz":0},"subject":"Fix E402 in Alembic migrations and template","message":"Fix E402 in Alembic migrations and template\n\nMove imports to before the revision/down_revision variable assignments\nin all migration files that had the Alembic-conventional import\nplacement, resolving E402 (module-level import not at top of file).\n\nFiles fixed:\n- 4cc1d79978fc_add_ssd_type.py\n- 589ff20545b7_add_aichip_type.py\n- 60d8ac91fd20_add_description_field_to_dps.py\n- 6c77bd6afea5_add_device_status.py\n- 7e6f1f107f2b_add_qat_type.py\n- 899cead40bc9_add_nic_type.py\n- c1b5abada09c_update_for_nova_integ.py\n- d6f033d8fa5b_add_quota_related_tables.py\n- ede4e3f1a232_new_db_schema.py\n- f50980397351_initial_migration.py\n\nUpdate script.py.mako so newly generated migrations place imports\nbefore the revision identifiers from the outset.\n\nRemove the E402 per-file-ignores entry for the versions directory\nfrom pyproject.toml since it is no longer needed.\n\nAssisted-By: claude-code sonnet 4.6\nChange-Id: Ica0e91c8f4e86fdc36c49abfb3d72aa705860713\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/4359a2c0d546d03ab0baf6dfc56bb21b4d262b15"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/4359a2c0d546d03ab0baf6dfc56bb21b4d262b15"}]},"branch":"refs/heads/master"},"bab45b8f4010a696ee9af5f30e067867c5ababaa":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-03-02 18:24:58.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/89/977889/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/89/977889/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/89/977889/2"}}},"commit":{"parents":[{"commit":"a80b12a94bed2d1d8477ab5210ff51c0f40928a8","subject":"Add ruff config and fix pre-commit hook failures","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/a80b12a94bed2d1d8477ab5210ff51c0f40928a8"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-02-24 21:19:27.000000000","tz":0},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-03-02 18:23:00.000000000","tz":0},"subject":"Fix E402 in Alembic migrations and template","message":"Fix E402 in Alembic migrations and template\n\nMove imports to before the revision/down_revision variable assignments\nin all migration files that had the Alembic-conventional import\nplacement, resolving E402 (module-level import not at top of file).\n\nFiles fixed:\n- 4cc1d79978fc_add_ssd_type.py\n- 589ff20545b7_add_aichip_type.py\n- 60d8ac91fd20_add_description_field_to_dps.py\n- 6c77bd6afea5_add_device_status.py\n- 7e6f1f107f2b_add_qat_type.py\n- 899cead40bc9_add_nic_type.py\n- c1b5abada09c_update_for_nova_integ.py\n- d6f033d8fa5b_add_quota_related_tables.py\n- ede4e3f1a232_new_db_schema.py\n- f50980397351_initial_migration.py\n\nUpdate script.py.mako so newly generated migrations place imports\nbefore the revision identifiers from the outset.\n\nRemove the E402 per-file-ignores entry for the versions directory\nfrom pyproject.toml since it is no longer needed.\n\nAssisted-By: claude-code sonnet 4.6\nChange-Id: Ica0e91c8f4e86fdc36c49abfb3d72aa705860713\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/bab45b8f4010a696ee9af5f30e067867c5ababaa"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/bab45b8f4010a696ee9af5f30e067867c5ababaa"}]},"branch":"refs/heads/master"},"3645d4043eff3ca751413210f62012245024d261":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2026-03-03 12:40:07.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/89/977889/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/89/977889/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/89/977889/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/89/977889/3"}}},"commit":{"parents":[{"commit":"a27c9a4489e56c8830fc63c13dbe084f8d105d45","subject":"Add ruff config and fix pre-commit hook failures","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/a27c9a4489e56c8830fc63c13dbe084f8d105d45"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-02-24 21:19:27.000000000","tz":0},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-03-03 12:37:17.000000000","tz":0},"subject":"Fix E402 in Alembic migrations and template","message":"Fix E402 in Alembic migrations and template\n\nMove imports to before the revision/down_revision variable assignments\nin all migration files that had the Alembic-conventional import\nplacement, resolving E402 (module-level import not at top of file).\n\nFiles fixed:\n- 4cc1d79978fc_add_ssd_type.py\n- 589ff20545b7_add_aichip_type.py\n- 60d8ac91fd20_add_description_field_to_dps.py\n- 6c77bd6afea5_add_device_status.py\n- 7e6f1f107f2b_add_qat_type.py\n- 899cead40bc9_add_nic_type.py\n- c1b5abada09c_update_for_nova_integ.py\n- d6f033d8fa5b_add_quota_related_tables.py\n- ede4e3f1a232_new_db_schema.py\n- f50980397351_initial_migration.py\n\nUpdate script.py.mako so newly generated migrations place imports\nbefore the revision identifiers from the outset.\n\nRemove the E402 per-file-ignores entry for the versions directory\nfrom pyproject.toml since it is no longer needed.\n\nAssisted-By: claude-code sonnet 4.6\nChange-Id: Ica0e91c8f4e86fdc36c49abfb3d72aa705860713\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/3645d4043eff3ca751413210f62012245024d261"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/3645d4043eff3ca751413210f62012245024d261"}]},"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":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"}},{"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":{}}},{"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":{}}},{"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":{}}}]}
