)]}'
{"id":"openstack%2Fkeystone~990823","triplet_id":"openstack%2Fkeystone~master~I9f05341ad100bb22c229b39a9855f531af478d99","project":"openstack/keystone","branch":"master","hashtags":[],"change_id":"I9f05341ad100bb22c229b39a9855f531af478d99","subject":"Reject non-integer limit query parameter","status":"NEW","created":"2026-05-31 14:03:32.000000000","updated":"2026-05-31 16:03:38.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":"aa7e8ce6491fb1d8752af39b91d803713e58c86a","_number":990823,"virtual_id_number":990823,"owner":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-05-31 16:03:38.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-05-31 14:31:10.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":"CC"},{"updated":"2026-05-31 16:03: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"}],"messages":[{"id":"cc488884e8f54174eac4e01543d32969fdaf0027","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"date":"2026-05-31 14:03:32.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"419224e314317d6a0beff5ce533a0b2a1bce309e","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 14:31:10.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3e1df3476e20449baa77b8968a32f417\n\n- openstack-tox-py311-arm64 https://zuul.opendev.org/t/openstack/build/d5e3e51b96634403ac9aaa4c6ac27f68 : SUCCESS in 15m 30s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/52d4fe42db8b43ba91d2de181d732e2d : SUCCESS in 13m 39s (non-voting)\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/f5440e3b615943208ee29e716c0d8c92 : SUCCESS in 25m 57s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"aa7e8ce6491fb1d8752af39b91d803713e58c86a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-31 16:03:38.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/162843a162b142fc973e5e6c0cefc65f\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f101906b353b4f488aa8ac72c960c612 : SUCCESS in 12m 34s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/56ec8835b4b9414d9ea371f886a135dd : SUCCESS in 5m 07s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/018b67e2d0af4dafbf78b3c117b04cc0 : SUCCESS in 11m 31s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/c0e29dde0dfb4a18a26178b14d75dc21 : SUCCESS in 11m 09s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/d6995779994f406cbc6bd44b5a62b65c : SUCCESS in 14m 24s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/861063634e274e418aa0e847eca6e477 : SUCCESS in 13m 51s\n- grenade https://zuul.opendev.org/t/openstack/build/2c9927220307450687b4560e3af2ba76 : SUCCESS in 1h 05m 11s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/501db5e3c80843ef9e04605674542c38 : SUCCESS in 1h 54m 35s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/c7d70ff596d4479c9b5ad9c5d120186f : SUCCESS in 12m 12s\n- keystoneclient-devstack-functional https://zuul.opendev.org/t/openstack/build/ba8ac17e1478497995b1c6c2a67b2f9b : SUCCESS in 17m 16s (non-voting)\n- keystone-tempest https://zuul.opendev.org/t/openstack/build/0845188a2e6e4a0792a18b79cc226fee : SUCCESS in 32m 20s\n- keystone-tempest-fips https://zuul.opendev.org/t/openstack/build/3ac24b50d9344bee821371d1e956a91d : FAILURE in 20m 26s (non-voting)\n- keystone-tempest-federation https://zuul.opendev.org/t/openstack/build/9742d51bcb544086997c846a57b0570d : FAILURE in 25m 50s (non-voting)\n- keystone-tempest-federation-k2k https://zuul.opendev.org/t/openstack/build/4b6ee903e2b84086b98372b74bbeacb9 : SUCCESS in 17m 50s\n- keystone-tempest-oidc-federation https://zuul.opendev.org/t/openstack/build/adbf492f33054056b9f6ae26d6fd73d6 : SUCCESS in 30m 20s\n- keystone-tempest-ldap-domain-specific-driver https://zuul.opendev.org/t/openstack/build/f4a828e2b3964946b15cada734a2c88f : SUCCESS in 39m 23s (non-voting)\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/c057e23c48a4426aa0cebd7a4f5391cb : SUCCESS in 57m 38s\n- keystone-protection-functional https://zuul.opendev.org/t/openstack/build/7dc72732efb74b6a9e86bd5167b20672 : SUCCESS in 43m 55s\n- codegenerator-openapi-identity-tips-with-api-ref https://zuul.opendev.org/t/openstack/build/fde6610675a843b2bff1859a0f3cf580 : SUCCESS in 4m 03s (non-voting)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"b56933071eff087ce88deb6cb75318bbe6ee38ff","revisions":{"b56933071eff087ce88deb6cb75318bbe6ee38ff":{"kind":"REWORK","_number":1,"created":"2026-05-31 14:03:32.000000000","uploader":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"ref":"refs/changes/23/990823/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/keystone","ref":"refs/changes/23/990823/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/keystone refs/changes/23/990823/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/keystone refs/changes/23/990823/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/keystone refs/changes/23/990823/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/keystone refs/changes/23/990823/1"}}},"commit":{"parents":[{"commit":"2230026f77a8ed50493d2d58be9120910ceb2089","subject":"Merge \"Fix keystone scope flag in tempest.conf\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/2230026f77a8ed50493d2d58be9120910ceb2089"}]}],"author":{"name":"Boris Bobrov","email":"b.bobrov@sap.com","date":"2026-05-31 12:02:49.000000000","tz":120},"committer":{"name":"Boris Bobrov","email":"b.bobrov@sap.com","date":"2026-05-31 12:02:49.000000000","tz":120},"subject":"Reject non-integer limit query parameter","message":"Reject non-integer limit query parameter\n\nA list endpoint such as GET /v3/users?limit\u003dabc passed the raw\nlimit query string straight to int() in build_driver_hints.\nAny value that could not be parsed as an integer raised ValueError,\nwhich surfaced as an unhandled exception and a 500 response.  Because\nno token is required to reach this code path on some endpoints, this\nmade it trivial for an unauthenticated client to trigger errors in\nthe keystone process.\n\nValidate the supplied value before converting it: catch parsing\nerrors and reject negative values, raising ValidationError so\nthe client receives a 400 Bad Request instead.\n\nCloses-Bug: #2154666\nGenerated-By: claude-opus-4-7 (OpenCode)\nSigned-off-by: Boris Bobrov \u003cb.bobrov@sap.com\u003e\nChange-Id: I9f05341ad100bb22c229b39a9855f531af478d99\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/b56933071eff087ce88deb6cb75318bbe6ee38ff"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/keystone/commit/b56933071eff087ce88deb6cb75318bbe6ee38ff"}]},"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":""}}}]}
