)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc4cb8b734f66502feb91554c32d79e10f000d93","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ec85e536_a9ab370c","updated":"2025-11-12 12:40:31.000000000","message":"This looks pretty good. I have some nits inline. Also, could we get a release note and a functional test to prove this works?","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0804bab4343fabc43449157a622c4a2b0f079f4a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"57ec38fb_6ffeadb9","updated":"2026-01-21 12:43:28.000000000","message":"Most the comments have been addressed. However, we are still missing a functional test and a release note. Could you add these, please?","commit_id":"d3e4bec04b3dbc1e3962bf6a58fcf25ec00572b6"}],"doc/source/user/proxies/key_manager.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc4cb8b734f66502feb91554c32d79e10f000d93","unresolved":true,"context_lines":[{"line_number":47,"context_line":"            get_preferred_secret_store"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Secret ACL Operations"},{"line_number":50,"context_line":"^^^^^^^^^^^^^^^^^^^^^"},{"line_number":51,"context_line":".. autoclass:: openstack.key_manager.v1._proxy.Proxy"},{"line_number":52,"context_line":"  :noindex:"},{"line_number":53,"context_line":"  :members: get_secret_acl, set_secret_acl, update_secret_acl, delete_secret_acl"}],"source_content_type":"text/x-rst","patch_set":2,"id":"f301857f_e0995a53","line":50,"updated":"2025-11-12 12:40:31.000000000","message":"nit:\n\n```suggestion\n^^^^^^^^^^^^^^^^^^^^^\n\n```","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0804bab4343fabc43449157a622c4a2b0f079f4a","unresolved":false,"context_lines":[{"line_number":47,"context_line":"            get_preferred_secret_store"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Secret ACL Operations"},{"line_number":50,"context_line":"^^^^^^^^^^^^^^^^^^^^^"},{"line_number":51,"context_line":".. autoclass:: openstack.key_manager.v1._proxy.Proxy"},{"line_number":52,"context_line":"  :noindex:"},{"line_number":53,"context_line":"  :members: get_secret_acl, set_secret_acl, update_secret_acl, delete_secret_acl"}],"source_content_type":"text/x-rst","patch_set":2,"id":"4f6805a5_07438dd7","line":50,"in_reply_to":"f301857f_e0995a53","updated":"2026-01-21 12:43:28.000000000","message":"Done","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"}],"doc/source/user/resources/key_manager/index.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc4cb8b734f66502feb91554c32d79e10f000d93","unresolved":true,"context_lines":[{"line_number":7,"context_line":"   v1/container"},{"line_number":8,"context_line":"   v1/order"},{"line_number":9,"context_line":"   v1/secret"},{"line_number":10,"context_line":"   v1/secret_store"},{"line_number":11,"context_line":"   v1/secret_acl"}],"source_content_type":"text/x-rst","patch_set":2,"id":"560d4bef_f99e287a","line":11,"range":{"start_line":10,"start_character":0,"end_line":11,"end_character":16},"updated":"2025-11-12 12:40:31.000000000","message":"Let\u0027s keep this in alphabetical order\n\n```suggestion\n   v1/secret_acl\n   v1/secret_store\n```","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0804bab4343fabc43449157a622c4a2b0f079f4a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"   v1/container"},{"line_number":8,"context_line":"   v1/order"},{"line_number":9,"context_line":"   v1/secret"},{"line_number":10,"context_line":"   v1/secret_store"},{"line_number":11,"context_line":"   v1/secret_acl"}],"source_content_type":"text/x-rst","patch_set":2,"id":"4ccd87b0_f393ecb2","line":11,"range":{"start_line":10,"start_character":0,"end_line":11,"end_character":16},"in_reply_to":"560d4bef_f99e287a","updated":"2026-01-21 12:43:28.000000000","message":"Done","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"}],"openstack/key_manager/v1/_proxy.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc4cb8b734f66502feb91554c32d79e10f000d93","unresolved":true,"context_lines":[{"line_number":25,"context_line":"    _resource_registry \u003d {"},{"line_number":26,"context_line":"        \"container\": _container.Container,"},{"line_number":27,"context_line":"        \"order\": _order.Order,"},{"line_number":28,"context_line":"        \"secret\": _secret.Secret,"},{"line_number":29,"context_line":"        \"secret_store\": _secret_store.SecretStore,"},{"line_number":30,"context_line":"        \"secret_acl\": _secret_acl.SecretACL,"},{"line_number":31,"context_line":"    }"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def create_container(self, **attrs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"957b35c2_14a1c42b","line":30,"range":{"start_line":28,"start_character":33,"end_line":30,"end_character":44},"updated":"2025-11-12 12:40:31.000000000","message":"Alphabetical order\n\n```suggestion\n        \"secret\": _secret.Secret,\n        \"secret_acl\": _secret_acl.SecretACL,\n        \"secret_store\": _secret_store.SecretStore,\n```","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0804bab4343fabc43449157a622c4a2b0f079f4a","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    _resource_registry \u003d {"},{"line_number":26,"context_line":"        \"container\": _container.Container,"},{"line_number":27,"context_line":"        \"order\": _order.Order,"},{"line_number":28,"context_line":"        \"secret\": _secret.Secret,"},{"line_number":29,"context_line":"        \"secret_store\": _secret_store.SecretStore,"},{"line_number":30,"context_line":"        \"secret_acl\": _secret_acl.SecretACL,"},{"line_number":31,"context_line":"    }"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def create_container(self, **attrs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"b20eee0b_43337ed7","line":30,"range":{"start_line":28,"start_character":33,"end_line":30,"end_character":44},"in_reply_to":"957b35c2_14a1c42b","updated":"2026-01-21 12:43:28.000000000","message":"Done","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc4cb8b734f66502feb91554c32d79e10f000d93","unresolved":true,"context_lines":[{"line_number":315,"context_line":"            base_path\u003d\u0027/secret-stores/preferred\u0027,"},{"line_number":316,"context_line":"        )"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"    # \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d Secret ACL Operations \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":319,"context_line":"    def get_secret_acl(self, secret):"},{"line_number":320,"context_line":"        \"\"\"Get the ACL of a secret."},{"line_number":321,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ead692d0_d270c36b","line":318,"updated":"2025-11-12 12:40:31.000000000","message":"```suggestion\n    # \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d Secret ACL Operations \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n```","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0804bab4343fabc43449157a622c4a2b0f079f4a","unresolved":false,"context_lines":[{"line_number":315,"context_line":"            base_path\u003d\u0027/secret-stores/preferred\u0027,"},{"line_number":316,"context_line":"        )"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"    # \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d Secret ACL Operations \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":319,"context_line":"    def get_secret_acl(self, secret):"},{"line_number":320,"context_line":"        \"\"\"Get the ACL of a secret."},{"line_number":321,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"2c7cac40_6ec69294","line":318,"in_reply_to":"ead692d0_d270c36b","updated":"2026-01-21 12:43:28.000000000","message":"Done","commit_id":"7c225c4d5cc853e21dde2b0b5735a41027a47108"}]}
