)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"c229a3fcee00497ab6d6174d6bdb10b009cabb05","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"31e8f3d4_a22ebce9","updated":"2026-03-30 11:01:12.000000000","message":"Hi Goutham and Carlos,  \n\nJust following up on this patch. I’d really appreciate any feedback when you have a moment. \n\nThanks","commit_id":"458991213264e123596b6e2cd3ac466a364a8a2b"},{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"9c0e5be1f33dbae4c3579d1937c1dd7c6a553d48","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5ecb786d_e611c36b","updated":"2026-04-04 10:43:00.000000000","message":"I used Claude to understand how to structure the unit tests. The implementation logic is my own work but I have updated the commit accordingly.","commit_id":"31930d0b89e6d1c0fbef0631c247984170ddb428"},{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"dd24cdd25895cfed7f02f69213fa383e02ee92b6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3749740f_48c555c4","updated":"2026-04-04 10:57:01.000000000","message":"Thank you for the Feedback","commit_id":"31930d0b89e6d1c0fbef0631c247984170ddb428"},{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"96c34639eeea513bf7d1daac38d22fc8ee23e33e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"d14ec23d_84a8f802","updated":"2026-04-08 10:07:16.000000000","message":"Hi, I’ve addressed the review comments in the latest patchset, including adding the release note and updating the commit message.\n\nWould appreciate another look when you have time. Thank you!","commit_id":"b54d0f57ad9a946a2178659d7c5acec10f46b3c5"}],"manilaclient/osc/v2/share_group_types.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"b64c657958bca14bbee7145cbcfc8b48aaea7783","unresolved":true,"context_lines":[{"line_number":219,"context_line":"            search_opts\u003dsearch_opts, show_all\u003dparsed_args.all"},{"line_number":220,"context_line":"        )"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        all_share_types \u003d share_client.share_types.list(show_all\u003dTrue)"},{"line_number":223,"context_line":"        share_type_map \u003d {st.id: st.name for st in all_share_types}"},{"line_number":224,"context_line":"        for sgt in share_group_types:"},{"line_number":225,"context_line":"            sgt._info[\u0027share_types\u0027] \u003d ["}],"source_content_type":"text/x-python","patch_set":3,"id":"fa1d6bb7_3dfb2950","line":222,"updated":"2026-04-02 22:58:34.000000000","message":"The same share type resolution logic is duplicated between ListShareGroupType\nand ShowShareGroupType. Consider extracting it into a small helper\n(e.g., `_resolve_share_type_names(share_client, share_type_ids)`)\nto avoid the duplication.","commit_id":"31930d0b89e6d1c0fbef0631c247984170ddb428"},{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"9c0e5be1f33dbae4c3579d1937c1dd7c6a553d48","unresolved":false,"context_lines":[{"line_number":219,"context_line":"            search_opts\u003dsearch_opts, show_all\u003dparsed_args.all"},{"line_number":220,"context_line":"        )"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        all_share_types \u003d share_client.share_types.list(show_all\u003dTrue)"},{"line_number":223,"context_line":"        share_type_map \u003d {st.id: st.name for st in all_share_types}"},{"line_number":224,"context_line":"        for sgt in share_group_types:"},{"line_number":225,"context_line":"            sgt._info[\u0027share_types\u0027] \u003d ["}],"source_content_type":"text/x-python","patch_set":3,"id":"12283178_fae26a8c","line":222,"in_reply_to":"97e2f449_b5903f83","updated":"2026-04-04 10:43:00.000000000","message":"Done","commit_id":"31930d0b89e6d1c0fbef0631c247984170ddb428"},{"author":{"_account_id":38842,"name":"Silvia Wachira","display_name":"Silvia Wachira","email":"wachirasilvia8@gmail.com","username":"Silvia-Wachira"},"change_message_id":"be696d807f0ed05aa805cd9b23052cf34ff969a4","unresolved":true,"context_lines":[{"line_number":219,"context_line":"            search_opts\u003dsearch_opts, show_all\u003dparsed_args.all"},{"line_number":220,"context_line":"        )"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"        all_share_types \u003d share_client.share_types.list(show_all\u003dTrue)"},{"line_number":223,"context_line":"        share_type_map \u003d {st.id: st.name for st in all_share_types}"},{"line_number":224,"context_line":"        for sgt in share_group_types:"},{"line_number":225,"context_line":"            sgt._info[\u0027share_types\u0027] \u003d ["}],"source_content_type":"text/x-python","patch_set":3,"id":"97e2f449_b5903f83","line":222,"in_reply_to":"fa1d6bb7_3dfb2950","updated":"2026-04-04 10:41:14.000000000","message":"I have extracted  _resolve_share_type_names as a module-level function so both commands share one API call pattern and passed the pre-built map rather than calling  share_types.list() inside the loop to avoid redundant API calls.\n\nThank you for the feedback!","commit_id":"31930d0b89e6d1c0fbef0631c247984170ddb428"}]}
