)]}'
{"id":"openstack%2Fetcd3gw~980352","triplet_id":"openstack%2Fetcd3gw~master~I59e9ef7e34f6638598d4c653679932fccb2c95f4","project":"openstack/etcd3gw","branch":"master","topic":"typing","attention_set":{},"removed_from_attention_set":{"15334":{"account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"last_update":"2026-03-18 12:00:48.000000000","reason":"\u003cGERRIT_ACCOUNT_15334\u003e replied on the change","reason_account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}}},"hashtags":[],"change_id":"I59e9ef7e34f6638598d4c653679932fccb2c95f4","subject":"typing: Use typed dicts return values","status":"MERGED","created":"2026-03-12 19:32:51.000000000","updated":"2026-03-18 14:07:44.000000000","submitted":"2026-03-18 14:04:52.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":"980352-typing","meta_rev_id":"964f3e37ba5779085c7afaa29068bf99c8f082fa","_number":980352,"virtual_id_number":980352,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-03-18 14:04:51.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":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":2,"date":"2026-03-16 07:34:02.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":1,"date":"2026-03-18 12:00:48.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"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},"Backport-Candidate":{"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-12 21:17:24.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-16 07:34:02.000000000","updated_by":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"reviewer":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"state":"REVIEWER"}],"messages":[{"id":"2eab8ef868969abf2e2e7c19a7e3015d944ec5d9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-12 19:32:51.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"477170b936e58e3e12c410646d746cb73f362716","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-12 21:17:24.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6c3af435a1e54d528c53029f40b4c048\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/7c777b38a450479e9845bb3915ba2a8a : SUCCESS in 1h 41m 56s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/dc25b5e98f58457daeacf90587dd1c1b : SUCCESS in 3m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/aa6bff1b9a584daa936a63867ddb0dbd : SUCCESS in 3m 06s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/e09c87ce2fb3455d92f94353ec3be039 : SUCCESS in 2m 53s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/8227886a55da4671b45f59eb0327aedb : SUCCESS in 2m 41s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/5275a378ff67441cabbb8fd3a4a4deff : SUCCESS in 4m 47s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/eb8f48e9ea8440d2b871b975686fd882 : SUCCESS in 2m 12s","accounts_in_message":[],"_revision_number":1},{"id":"4882fb1eae13fdee34611e0429e9ec15dc5481f9","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2026-03-16 07:34:02.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"8a576d854364836f3d1d3978748b4b272c0b558b","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-18 12:00:48.000000000","message":"Patch Set 1: Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"7578da112767f23b9bde7ccb28595637453e2b87","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-18 12:01:34.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"d7dbb8dabc635fb104a86e1f2053e89bec6518a7","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-18 14:04:51.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/4098620491064bbda429cfecf6fff7a4\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/eeaf4e191140464c8d0f0f7d491ac351 : SUCCESS in 52m 57s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0d4d5f273d4e4c21bce3a87919c278b0 : SUCCESS in 2m 49s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/b276eb7e27fb4ac490a439ca8fe538f6 : SUCCESS in 2m 06s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/e18d2022312a4a3194b258b611c63ce7 : SUCCESS in 3m 07s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9eaad97c5b3a421d9adf46012da86e54 : SUCCESS in 3m 08s","accounts_in_message":[],"_revision_number":1},{"id":"55ebd6f501c662fb78dc2987818a27094c93e7b9","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-18 14:04:52.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"964f3e37ba5779085c7afaa29068bf99c8f082fa","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-18 14:07:44.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/ad1f53e2bd804d52b353eb14d71df903\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/78100f1ac1b746c9800835697bfc5a97 : SUCCESS in 41s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"4965d1d8737c634a98f5e690675ddaf956c14825","revisions":{"4965d1d8737c634a98f5e690675ddaf956c14825":{"kind":"REWORK","_number":1,"created":"2026-03-12 19:32:51.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/52/980352/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/etcd3gw","ref":"refs/changes/52/980352/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/etcd3gw refs/changes/52/980352/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/etcd3gw refs/changes/52/980352/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/etcd3gw refs/changes/52/980352/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/etcd3gw refs/changes/52/980352/1"}}},"commit":{"parents":[{"commit":"90d59973442b953a3db6fb947042e68b93e3077f","subject":"typing: Expand kwargs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/etcd3gw/commit/90d59973442b953a3db6fb947042e68b93e3077f"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 15:18:34.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 19:32:42.000000000","tz":0},"subject":"typing: Use typed dicts return values","message":"typing: Use typed dicts return values\n\nThis allows us to be more specific that the previous dict[str, Any]\ndefinitions. In all cases, the definitions are taken from the proto\ndefinitions, as see at [1] and [2].\n\nNote that this has no impact at runtime (unless using beartype or\nsimilar) but should help end-users like tooz.\n\n[1] https://github.com/etcd-io/etcd/blob/main/api/mvccpb/kv.proto\n[2] https://github.com/etcd-io/etcd/blob/main/api/etcdserverpb/rpc.proto\n\nChange-Id: I59e9ef7e34f6638598d4c653679932fccb2c95f4\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/etcd3gw/commit/4965d1d8737c634a98f5e690675ddaf956c14825"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/etcd3gw/commit/4965d1d8737c634a98f5e690675ddaf956c14825"}]},"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":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},{"label":"Backport-Candidate","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":{}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"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":{}}}]}
