)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"c45d1a85a85d036bbb84089ba91d04230028bfba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9d42196a_b3f877a3","updated":"2026-01-21 01:20:08.000000000","message":"recheck","commit_id":"568724a15d649b207b97192c534a460ee6c42b66"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"eaac45d5d9abd554ddfb1cc98312719d73623afc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ee60699f_d1ce303c","updated":"2026-01-19 19:40:11.000000000","message":"recheck","commit_id":"568724a15d649b207b97192c534a460ee6c42b66"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"9801a19743dc9ae3fa7408f69cf31f001bfe64de","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"f291473c_78164167","updated":"2026-01-20 20:24:15.000000000","message":"recheck","commit_id":"568724a15d649b207b97192c534a460ee6c42b66"},{"author":{"_account_id":26285,"name":"wu.chunyang","email":"wchy1001@gmail.com","username":"wu.chunyang"},"change_message_id":"f392409fcfaa8ca52a67bf63bfc729a4915add8b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"bcd51a04_70d28745","updated":"2026-01-20 11:52:39.000000000","message":"thanks LGTM","commit_id":"568724a15d649b207b97192c534a460ee6c42b66"},{"author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"change_message_id":"2f986a941a0f8e5b847400a54af3f212c390cbe2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7d4eb456_12941589","updated":"2026-01-22 12:13:00.000000000","message":"recheck","commit_id":"02b71fcd32df634c8ac59da5f68f572927428a6c"}],"trove/backup/models.py":[{"author":{"_account_id":26285,"name":"wu.chunyang","email":"wchy1001@gmail.com","username":"wu.chunyang"},"change_message_id":"66bcb451c4286a3b1342fa0f15e4e58ee87798bb","unresolved":true,"context_lines":[{"line_number":342,"context_line":"        def _delete_resources():"},{"line_number":343,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":344,"context_line":"            if backup.is_running:"},{"line_number":345,"context_line":"                current_time \u003d datetime.datetime.now(datetime.timezone.utc)"},{"line_number":346,"context_line":"                backup_created \u003d backup.created.replace("},{"line_number":347,"context_line":"                    tzinfo\u003ddatetime.timezone.utc)"},{"line_number":348,"context_line":"                delta \u003d (current_time - backup_created).days"},{"line_number":349,"context_line":"                if delta \u003c CONF.running_backups_expires:"},{"line_number":350,"context_line":"                    msg \u003d _("},{"line_number":351,"context_line":"                        \"Backup %s cannot be deleted\""}],"source_content_type":"text/x-python","patch_set":1,"id":"01044942_618c75ff","line":348,"range":{"start_line":345,"start_character":0,"end_line":348,"end_character":60},"updated":"2026-01-19 14:22:52.000000000","message":"We can simplify this code as follows:\n\n\n```\nfrom trove.common import timeutils\n\nif (timeutils.utcnow() - backup.created).days \u003c CONF.running_backups_expires:\n   .....\n```","commit_id":"e05938482c65aba7548545fb2015dc6e385c9494"},{"author":{"_account_id":36080,"name":"Erkin Mussurmankulov","display_name":"Eric","email":"mangust404@gmail.com","username":"mongoose404","status":"PS Cloud services employee"},"change_message_id":"a791f2b090b7bde791bc468f05172ee87edcb054","unresolved":false,"context_lines":[{"line_number":342,"context_line":"        def _delete_resources():"},{"line_number":343,"context_line":"            backup \u003d cls.get_by_id(context, backup_id)"},{"line_number":344,"context_line":"            if backup.is_running:"},{"line_number":345,"context_line":"                current_time \u003d datetime.datetime.now(datetime.timezone.utc)"},{"line_number":346,"context_line":"                backup_created \u003d backup.created.replace("},{"line_number":347,"context_line":"                    tzinfo\u003ddatetime.timezone.utc)"},{"line_number":348,"context_line":"                delta \u003d (current_time - backup_created).days"},{"line_number":349,"context_line":"                if delta \u003c CONF.running_backups_expires:"},{"line_number":350,"context_line":"                    msg \u003d _("},{"line_number":351,"context_line":"                        \"Backup %s cannot be deleted\""}],"source_content_type":"text/x-python","patch_set":1,"id":"0218fa76_3f714fda","line":348,"range":{"start_line":345,"start_character":0,"end_line":348,"end_character":60},"in_reply_to":"01044942_618c75ff","updated":"2026-01-19 16:01:22.000000000","message":"Hi! Thank you for the review.\nYes that is brilliant.","commit_id":"e05938482c65aba7548545fb2015dc6e385c9494"}]}
