)]}'
{"id":"openstack%2Fmistral~991395","triplet_id":"openstack%2Fmistral~master~Ic01a06f2bd588f7b0ade74403393f52e96f25432","project":"openstack/mistral","branch":"master","attention_set":{},"removed_from_attention_set":{"11583":{"account":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"last_update":"2026-06-03 19:01:47.000000000","reason":"removed on reply"}},"hashtags":[],"change_id":"Ic01a06f2bd588f7b0ade74403393f52e96f25432","subject":"Restrict code_sources and dynamic_actions policies to admin only","status":"MERGED","created":"2026-06-03 14:36:00.000000000","updated":"2026-06-03 20:59:07.000000000","submitted":"2026-06-03 20:59:07.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"991395","meta_rev_id":"f54fdfbf145937320976381ed1035424f1b3463e","_number":991395,"virtual_id_number":991395,"owner":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-06-03 20:59:07.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"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":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-06-03 19:43:26.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"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":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-06-03 20:04:13.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-06-03 15:46:04.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":"b02a4bf92824ebc6b2ce634a064d5f7db60a802e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"date":"2026-06-03 14:36:00.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0be8f11fcc825d175c1a08e4aedc41292571646f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 15:46:04.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/5f0d8267cea14aac8cdc677c6eb3a84b\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/157837d642ef43a6b415edddf318866d : SUCCESS in 5m 26s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/eb7b585cbafa44cd99e28717d7f93941 : SUCCESS in 11m 32s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/b30db418d91a40829a27e6e5cd49ed1a : SUCCESS in 12m 24s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/55eebe3de01e43598796359c37c33bd1 : SUCCESS in 13m 07s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6a2c527caf14463caf15f0c427204ebf : SUCCESS in 10m 12s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/ad308d4029fc40279987438b472e6195 : SUCCESS in 5m 46s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/cef527b965b84f46b4756e14df1ef073 : SUCCESS in 22m 18s (non-voting)\n- mistral-devstack https://zuul.opendev.org/t/openstack/build/323e6aaf4a6d45939c16c68805a56940 : FAILURE in 31m 42s\n- mistral-devstack-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/5c26040a875144348bf622863111efde : FAILURE in 42m 11s","accounts_in_message":[],"_revision_number":1},{"id":"205233bbd2b6ce71d3f5cf4f1618163180d1d9c2","author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"date":"2026-06-03 19:01:47.000000000","message":"Patch Set 1:\n\nrecheck","accounts_in_message":[],"_revision_number":1},{"id":"bf0183abed3dc8cf5314dd106150aee22c90a2ca","author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"date":"2026-06-03 19:43:26.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"faf1fb68944695173aaaaadf04463ca3aa556030","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 20:02:28.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/715e6488b436496fa5b97308813b04ea\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f5745e0b72fb4f18a0562714b7bb11b6 : SUCCESS in 4m 16s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/73131cabef8f4054bb2ada91f6b6c150 : SUCCESS in 12m 25s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/80bfb88a08074c3bbddb40b6e8b99f04 : SUCCESS in 11m 29s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/aff437d9ab9b4ce996e0e07e108853d7 : SUCCESS in 11m 58s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d327667bc78c4ce79a19c89c99048d50 : SUCCESS in 10m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e9a56297530e4524bd34a5e79abf8caa : SUCCESS in 5m 48s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/811ae7cac1ed44529d2da998bd5f6614 : SUCCESS in 13m 39s (non-voting)\n- mistral-devstack https://zuul.opendev.org/t/openstack/build/a884e9e2f8f7463b9c96cd392d8b366f : SUCCESS in 31m 58s\n- mistral-devstack-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/b5779af3ccdf4d90a44bdf49e88cc33d : SUCCESS in 42m 42s","accounts_in_message":[],"_revision_number":1},{"id":"2041ebdc4eaa53948646c198abfcbdae6882f973","author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"date":"2026-06-03 20:04:13.000000000","message":"Patch Set 1: Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"26689bb02bd9051475c33da5ab58abf3cc7eef95","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 20:05:07.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"9913b96fb1233a2cd46e4063c03a938d29c86ac3","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 20:59:07.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/407b27063027413b8268984a4bff2ac9\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/82c8adf1e91641f48d8468ec6fca7c92 : SUCCESS in 3m 37s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/5d08aad2ee8847cca4a95ae1e7f5c47f : SUCCESS in 10m 22s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/62ab828fcb1c45f2911f2c57f04c157a : SUCCESS in 10m 21s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f5273e04648d4e16a26149ec23b6b891 : SUCCESS in 8m 56s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/51fd38ca50534ffb9c907637e0345640 : SUCCESS in 4m 46s\n- mistral-devstack https://zuul.opendev.org/t/openstack/build/68dd4f9bea4b405cb18a497afa8c1573 : SUCCESS in 42m 05s\n- mistral-devstack-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/46ce717a2ed148dd887d887984b58c15 : SUCCESS in 44m 32s","accounts_in_message":[],"_revision_number":1},{"id":"f54fdfbf145937320976381ed1035424f1b3463e","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-03 20:59:07.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"b03624719f51cc62dbfa151d1381c927a493867b","revisions":{"b03624719f51cc62dbfa151d1381c927a493867b":{"kind":"REWORK","_number":1,"created":"2026-06-03 14:36:00.000000000","uploader":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"ref":"refs/changes/95/991395/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/mistral","ref":"refs/changes/95/991395/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/mistral refs/changes/95/991395/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/mistral refs/changes/95/991395/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/mistral refs/changes/95/991395/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/mistral refs/changes/95/991395/1"}}},"commit":{"parents":[{"commit":"7fc88935c3c7ded781c849f5c1ab7b050fa794c4","subject":"Add code_sources publicize policy and enforcement","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral/commit/7fc88935c3c7ded781c849f5c1ab7b050fa794c4"}]}],"author":{"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","date":"2026-03-30 09:57:27.000000000","tz":120},"committer":{"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","date":"2026-06-03 07:09:18.000000000","tz":120},"subject":"Restrict code_sources and dynamic_actions policies to admin only","message":"Restrict code_sources and dynamic_actions policies to admin only\n\nThese APIs previously defaulted to admin_or_owner, allowing any project\nowner to manage code sources and dynamic actions. Restrict all operations\nto admin_only to reduce the attack surface for arbitrary code execution.\n\nRelated-Bug: #2147178\nCo-Authored-By: Claude Opus 4.6 (1M context) \u003cnoreply@anthropic.com\u003e\nSigned-off-by: Arnaud Morin \u003carnaud.morin@gmail.com\u003e\nChange-Id: Ic01a06f2bd588f7b0ade74403393f52e96f25432\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral/commit/b03624719f51cc62dbfa151d1381c927a493867b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/mistral/commit/b03624719f51cc62dbfa151d1381c927a493867b"}]},"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":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}}]}],"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":""}}}]}
