)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"f8200adb78a72ec3a7baf712fda77ab07fcd8f59","unresolved":true,"context_lines":[{"line_number":10,"context_line":"and as per the RBAC goal, projects needed to enable the"},{"line_number":11,"context_line":"enforce_Scope by 2023.2 release[1]. This cycle, we are"},{"line_number":12,"context_line":"planning to remove the enforce_scope config option[1] so"},{"line_number":13,"context_line":"cinder need to remove the default override which means it will"},{"line_number":14,"context_line":"be enbaled by default."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Updating the tests to add the proper roles on test users."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"fc07146e_f1018f18","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":6},"updated":"2026-07-10 15:37:52.000000000","message":"(nit) barbican","commit_id":"1aa8482d1192cd3de3a5be4a42aa44eba34bea15"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"1df774fc7c7cf38463a0b1cea9e6c549a8c47301","unresolved":false,"context_lines":[{"line_number":10,"context_line":"and as per the RBAC goal, projects needed to enable the"},{"line_number":11,"context_line":"enforce_Scope by 2023.2 release[1]. This cycle, we are"},{"line_number":12,"context_line":"planning to remove the enforce_scope config option[1] so"},{"line_number":13,"context_line":"cinder need to remove the default override which means it will"},{"line_number":14,"context_line":"be enbaled by default."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Updating the tests to add the proper roles on test users."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3e9396c0_872142e6","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":6},"in_reply_to":"fc07146e_f1018f18","updated":"2026-07-10 19:03:03.000000000","message":"oh, done","commit_id":"1aa8482d1192cd3de3a5be4a42aa44eba34bea15"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe17af32dcd18e337b77ab52b09e701e843bcfc2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"444bfe21_06063a9a","updated":"2026-05-06 15:00:47.000000000","message":"need help from barbican team to take it forward","commit_id":"e22cd5c575e06949e0941d19dc94944389a55499"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"1ddaf42ea728145642fee8d53a432f360bc9e4eb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7d512f78_3f3c30c1","updated":"2026-06-26 21:58:31.000000000","message":"recheck unrelated failure in ipv6 job","commit_id":"1aa8482d1192cd3de3a5be4a42aa44eba34bea15"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"3ffe003b604a7a78ca77abf4d23d8251ab1b521c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"a73b0ac7_4ad4d0a3","updated":"2026-07-12 06:36:17.000000000","message":"It seems we have to update functional tests which still heavily depend on legacy roles. I\u0027ve proposed https://review.opendev.org/c/openstack/barbican/+/996917 to temporarily unblock us, but these tests should be updated to use the new roles.","commit_id":"de6677287addd087980dc71a87850e87914937b8"},{"author":{"_account_id":35125,"name":"Mauricio Harley","email":"mharley@redhat.com","username":"mharley-rh"},"change_message_id":"fd34f2aae6d9f1b50cf9bdd9cc827b06768ad071","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"1d89077d_bb4bb2e9","in_reply_to":"a73b0ac7_4ad4d0a3","updated":"2026-08-14 13:56:43.000000000","message":"Acknowledged, thanks for flagging this and for proposing 996917 as a temporary unblock. I\u0027ll work on migrating the functional tests to use the new SRBAC default roles (member/reader) instead of the legacy ones (creator/observer/audit), and will follow up with a patch to remove ENFORCE_NEW_DEFAULTS once that\u0027s done. Will track this as a separate change.","commit_id":"de6677287addd087980dc71a87850e87914937b8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"30f4ed315e8d889ad2c2075f8382d6ff5d5e4b1e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"5315f020_f10c0123","updated":"2026-08-13 15:38:48.000000000","message":"@xek@redhat.com @alee@redhat.com can we merge this ?","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"e45f5d19_1ec1011f","updated":"2026-08-14 14:46:15.000000000","message":"In general, there\u0027s a lot of tests in `test_resources_policy.py` that are passing because RBAC checks fail due to the roles used being no longer applicable, not because valid roles are being denied.\n\nWe need to update tests so that:\n* \"observer\" and/or \"creator\" are replaced with \"member\"\n* \"audit\" is replaced with \"reader\"\n* \"admin\" is kept for explicit tests instead of assuming that \"member\" implies \"admin\"","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":14250,"name":"Grzegorz Grasza","email":"xek@redhat.com","username":"xek"},"change_message_id":"69ed1a5a92f5e6c0a8d29b43392de752c46a8701","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"7ca2ee99_ba44e16f","updated":"2026-08-27 09:45:24.000000000","message":"Workflowing this, any comments can be addressed in a followup.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":9914,"name":"Ade Lee","email":"alee@redhat.com","username":"alee"},"change_message_id":"2b6de386545c00be2cb74b33210d49bb6dc8f101","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"d7eab1c6_8c379e89","updated":"2026-08-14 14:48:53.000000000","message":"waiting for @dmendiza@redhat.com comments to be resolved.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"67f5db0f396b56ff0eff422c926c0639346747ba","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":11,"id":"ae939cac_aaed5ecb","in_reply_to":"36b6d5fa_8aa357f8","updated":"2026-08-17 08:42:54.000000000","message":"I\u0027ve proposed https://review.opendev.org/c/openstack/barbican/+/1001098 to address these.\n\nNote that we can add \u0027admin\u0027 to some tests because some of the policy rules only accept \u0027member\u0027. This works though in real scenario because keystone returns roles\u003d[admin, member] for users with admin role due to role implication.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"7a9e8b193ee0f196127a0b721a5cb198dce9b9a9","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":11,"id":"fb8d1f9a_0460ce5a","in_reply_to":"ae939cac_aaed5ecb","updated":"2026-08-19 08:06:31.000000000","message":"Can we move this change ASAP ? CI has been broken for multiple weeks and this really needs to be merged to unblock the other changes.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"541c0775cae6da3679d540a1d7925eb604470a05","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"36b6d5fa_8aa357f8","in_reply_to":"e45f5d19_1ec1011f","updated":"2026-08-14 15:07:32.000000000","message":"yeah that is outstanding things takashi pointed, that is why we are disabling the new defaults in job https://review.opendev.org/c/openstack/barbican/+/984422/11/.zuul.yaml\n\nI will suggest to fix that as a separate things and not mix in this which has been waiting for so long. Barbican is the only service in openstack which has new defaults disabled. let\u0027s enable the new defaults and have operator start using it and test can be modified in separate change.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"9484e2a345df971bba0c88dfdcfe6a6b0b96420a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":11,"id":"be540d13_8976074d","in_reply_to":"fb8d1f9a_0460ce5a","updated":"2026-08-26 03:26:03.000000000","message":"indeed, not sure if barbican has any features/bug fixes to merge for this cycle but it seems broken gate is less impacting barbican.","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"}],"barbican/common/policy.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"eb8018769b7650554e69f6ae021b96525f49cacf","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from oslo_policy import opts"},{"line_number":17,"context_line":"from oslo_policy import policy"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from barbican.common import config"}],"source_content_type":"text/x-python","patch_set":2,"id":"2073122b_18d5c2bf","line":16,"updated":"2026-06-26 16:32:01.000000000","message":"pep8: F401 \u0027oslo_policy.opts\u0027 imported but unused","commit_id":"b1d9f9f9015b68c4901114457296f3e63e631ede"}],"barbican/tests/api/test_resources_policy.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"eb8018769b7650554e69f6ae021b96525f49cacf","unresolved":false,"context_lines":[{"line_number":527,"context_line":"        \"\"\"Should raise error when secret and token\u0027s project is different.\"\"\""},{"line_number":528,"context_line":"        self.acl_list.pop()  # remove read acl from default setup"},{"line_number":529,"context_line":"        # token project_id is different from secret\u0027s project id so should fail"},{"line_number":530,"context_line":"        # Note: admin role has global access in SRBAC policy (bare role:admin check)"},{"line_number":531,"context_line":"        self._assert_fail_rbac([\u0027observer\u0027, \u0027creator\u0027, \u0027audit\u0027],"},{"line_number":532,"context_line":"                               self._invoke_on_get,"},{"line_number":533,"context_line":"                               user_id\u003dself.user_id,"}],"source_content_type":"text/x-python","patch_set":2,"id":"eb6ed9c0_4ab8473a","line":530,"updated":"2026-06-26 16:32:01.000000000","message":"pep8: E501 line too long (84 \u003e 79 characters)","commit_id":"b1d9f9f9015b68c4901114457296f3e63e631ede"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"eb8018769b7650554e69f6ae021b96525f49cacf","unresolved":false,"context_lines":[{"line_number":629,"context_line":"        self.acl_list.append(acl_read)"},{"line_number":630,"context_line":"        # token project_id is different from secret\u0027s project id but another"},{"line_number":631,"context_line":"        # user (from different project) has read acl for secret so should pass"},{"line_number":632,"context_line":"        # Note: admin role has global access in SRBAC policy (bare role:admin check)"},{"line_number":633,"context_line":"        self._assert_fail_rbac([\u0027observer\u0027, \u0027creator\u0027, \u0027audit\u0027],"},{"line_number":634,"context_line":"                               self._invoke_on_get,"},{"line_number":635,"context_line":"                               user_id\u003d\u0027aclUser1\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"b8048305_6ecf0ea6","line":632,"updated":"2026-06-26 16:32:01.000000000","message":"pep8: E501 line too long (84 \u003e 79 characters)","commit_id":"b1d9f9f9015b68c4901114457296f3e63e631ede"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"eb8018769b7650554e69f6ae021b96525f49cacf","unresolved":false,"context_lines":[{"line_number":645,"context_line":"        self.acl_list.pop()  # remove read acl from default setup"},{"line_number":646,"context_line":"        self.resource.controller.secret.creator_id \u003d \u0027creatorUserX\u0027"},{"line_number":647,"context_line":""},{"line_number":648,"context_line":"        # Note: admin role has global access in SRBAC policy (bare role:admin check)"},{"line_number":649,"context_line":"        self._assert_fail_rbac([\u0027observer\u0027, \u0027creator\u0027, \u0027audit\u0027, \u0027bogusRole\u0027],"},{"line_number":650,"context_line":"                               self._invoke_on_get,"},{"line_number":651,"context_line":"                               user_id\u003d\u0027creatorUserX\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"d653c05d_dad1435f","line":648,"updated":"2026-06-26 16:32:01.000000000","message":"pep8: E501 line too long (84 \u003e 79 characters)","commit_id":"b1d9f9f9015b68c4901114457296f3e63e631ede"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":288,"context_line":"        self.assertIsNotNone(self.policy_enforcer.rules)"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"    def test_should_pass_create_secret(self):"},{"line_number":291,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027creator\u0027], self._invoke_on_post,"},{"line_number":292,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    def test_should_raise_create_secret(self):"}],"source_content_type":"text/x-python","patch_set":11,"id":"f12b1ccb_6b6b1912","side":"PARENT","line":291,"range":{"start_line":291,"start_character":32,"end_line":291,"end_character":39},"updated":"2026-08-14 14:46:15.000000000","message":"keep explicit `\u0027admin\u0027` test","commit_id":"510b69abd0a05c9e5d77443f222ea6bf05b99e66"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"462a95861e260d027066d7a90ed0ba482d1ccc57","unresolved":true,"context_lines":[{"line_number":288,"context_line":"        self.assertIsNotNone(self.policy_enforcer.rules)"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"    def test_should_pass_create_secret(self):"},{"line_number":291,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027creator\u0027], self._invoke_on_post,"},{"line_number":292,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    def test_should_raise_create_secret(self):"}],"source_content_type":"text/x-python","patch_set":11,"id":"c23d2830_a197b219","side":"PARENT","line":291,"range":{"start_line":291,"start_character":32,"end_line":291,"end_character":39},"in_reply_to":"f12b1ccb_6b6b1912","updated":"2026-08-17 08:41:28.000000000","message":"We can\u0027t add \u0027admin\u0027 here because the rule explicitly requires the member role. In real case keystone returns both member and admin for users with only admin role (because admin implies member).","commit_id":"510b69abd0a05c9e5d77443f222ea6bf05b99e66"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":297,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"    def test_should_pass_get_secrets(self):"},{"line_number":300,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027observer\u0027, \u0027creator\u0027],"},{"line_number":301,"context_line":"                               self._invoke_on_get,"},{"line_number":302,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":303,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"ac4bc9dd_cb013f22","side":"PARENT","line":300,"range":{"start_line":300,"start_character":32,"end_line":300,"end_character":39},"updated":"2026-08-14 14:46:15.000000000","message":"keep explicit `\u0027admin\u0027` test","commit_id":"510b69abd0a05c9e5d77443f222ea6bf05b99e66"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"462a95861e260d027066d7a90ed0ba482d1ccc57","unresolved":true,"context_lines":[{"line_number":297,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"    def test_should_pass_get_secrets(self):"},{"line_number":300,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027observer\u0027, \u0027creator\u0027],"},{"line_number":301,"context_line":"                               self._invoke_on_get,"},{"line_number":302,"context_line":"                               content_type\u003d\u0027application/json\u0027)"},{"line_number":303,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"c1e4fe7a_0eb91c8d","side":"PARENT","line":300,"range":{"start_line":300,"start_character":32,"end_line":300,"end_character":39},"in_reply_to":"ac4bc9dd_cb013f22","updated":"2026-08-17 08:41:28.000000000","message":"ditto","commit_id":"510b69abd0a05c9e5d77443f222ea6bf05b99e66"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":529,"context_line":"        # token project_id is different from secret\u0027s project id so should fail"},{"line_number":530,"context_line":"        # Note: admin role has global access in SRBAC policy (bare role:admin"},{"line_number":531,"context_line":"        # check)"},{"line_number":532,"context_line":"        self._assert_fail_rbac([\u0027observer\u0027, \u0027creator\u0027, \u0027audit\u0027],"},{"line_number":533,"context_line":"                               self._invoke_on_get,"},{"line_number":534,"context_line":"                               user_id\u003dself.user_id,"},{"line_number":535,"context_line":"                               project_id\u003d\u0027different_id\u0027)"}],"source_content_type":"text/x-python","patch_set":11,"id":"dcedea22_32282d39","line":532,"range":{"start_line":532,"start_character":31,"end_line":532,"end_character":63},"updated":"2026-08-14 14:46:15.000000000","message":"replace with `[\u0027member\u0027, \u0027reader\u0027]`","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":536,"context_line":""},{"line_number":537,"context_line":"    def test_should_pass_get_secret_for_same_project_but_different_user(self):"},{"line_number":538,"context_line":"        # user id should not matter as long token and secret\u0027s project match"},{"line_number":539,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027member\u0027],"},{"line_number":540,"context_line":"                               self._invoke_on_get,"},{"line_number":541,"context_line":"                               user_id\u003d\u0027different_user_id\u0027,"},{"line_number":542,"context_line":"                               project_id\u003dself.external_project_id)"}],"source_content_type":"text/x-python","patch_set":11,"id":"60417fd7_6b9916e5","line":539,"range":{"start_line":539,"start_character":31,"end_line":539,"end_character":50},"updated":"2026-08-14 14:46:15.000000000","message":"add `\u0027reader\u0027`","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":543,"context_line":""},{"line_number":544,"context_line":"    def test_should_pass_get_secret_for_same_project_with_no_acl(self):"},{"line_number":545,"context_line":"        self.acl_list.pop()  # remove read acl from default setup"},{"line_number":546,"context_line":"        self._assert_pass_rbac([\u0027admin\u0027, \u0027member\u0027],"},{"line_number":547,"context_line":"                               self._invoke_on_get,"},{"line_number":548,"context_line":"                               user_id\u003dself.user_id,"},{"line_number":549,"context_line":"                               project_id\u003dself.external_project_id)"}],"source_content_type":"text/x-python","patch_set":11,"id":"8f8224df_6775bc92","line":546,"range":{"start_line":546,"start_character":31,"end_line":546,"end_character":50},"updated":"2026-08-14 14:46:15.000000000","message":"add `\u0027reader\u0027`","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"},{"author":{"_account_id":7973,"name":"Douglas Mendizábal","email":"dmendiza@redhat.com","username":"dougmendizabal"},"change_message_id":"66390f8547a755fe850c5ca488d6c3995a8a70b7","unresolved":true,"context_lines":[{"line_number":632,"context_line":"        # user (from different project) has read acl for secret so should pass"},{"line_number":633,"context_line":"        # Note: admin role has global access in SRBAC policy (bare role:admin"},{"line_number":634,"context_line":"        # check)"},{"line_number":635,"context_line":"        self._assert_fail_rbac([\u0027observer\u0027, \u0027creator\u0027, \u0027audit\u0027],"},{"line_number":636,"context_line":"                               self._invoke_on_get,"},{"line_number":637,"context_line":"                               user_id\u003d\u0027aclUser1\u0027,"},{"line_number":638,"context_line":"                               project_id\u003d\u0027different_project_id\u0027)"}],"source_content_type":"text/x-python","patch_set":11,"id":"17828130_098e4c70","line":635,"range":{"start_line":635,"start_character":31,"end_line":635,"end_character":63},"updated":"2026-08-14 14:46:15.000000000","message":"replace with `[\u0027member\u0027, \u0027reader\u0027]`","commit_id":"be7d8103db9f9f19fb3a238c7f1039583418434e"}]}
