)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"340aedb393fdf2b3d7cfd8c6e0db4d10bfc61e53","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6381cf54_232168a0","updated":"2023-10-26 09:29:10.000000000","message":"as I see it is valid, thanks","commit_id":"2e7c204d42dca681beafdee8d5c6a75748b4bd88"}],"openstack/network/v2/_proxy.py":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"046b952d309e643730bec0bac2bbe9a72608c6fa","unresolved":true,"context_lines":[{"line_number":6897,"context_line":"            # static routes, so remove those first"},{"line_number":6898,"context_line":"            if not dry_run:"},{"line_number":6899,"context_line":"                routers \u003d self.routers(project_id\u003dproject_id)"},{"line_number":6900,"context_line":"                for r in routers:"},{"line_number":6901,"context_line":"                    if len(r.routes) \u003d\u003d 0:"},{"line_number":6902,"context_line":"                        continue"},{"line_number":6903,"context_line":"                    try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"64241687_e3e74810","line":6900,"updated":"2023-10-26 09:37:54.000000000","message":"The logic itself is ok, but the location is wrong. Reason for this ladder of ifs and loops is to give possibility to filter resources (i.e. based on their age). So here you more or less unconditionally drop static router and later it may be figured out that the router must stay. I would rather place this logic exactly before we try to delete certain router (also helps to skip one api roundtrip/loop)","commit_id":"2e7c204d42dca681beafdee8d5c6a75748b4bd88"},{"author":{"_account_id":33634,"name":"Jan Hartkopf","email":"j@hartkopf.io","username":"jhartkopf"},"change_message_id":"a439f445242136fdb8db3d3ae770510bd36bee86","unresolved":false,"context_lines":[{"line_number":6897,"context_line":"            # static routes, so remove those first"},{"line_number":6898,"context_line":"            if not dry_run:"},{"line_number":6899,"context_line":"                routers \u003d self.routers(project_id\u003dproject_id)"},{"line_number":6900,"context_line":"                for r in routers:"},{"line_number":6901,"context_line":"                    if len(r.routes) \u003d\u003d 0:"},{"line_number":6902,"context_line":"                        continue"},{"line_number":6903,"context_line":"                    try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"751fe26e_f9243f07","line":6900,"in_reply_to":"64241687_e3e74810","updated":"2023-10-26 12:15:26.000000000","message":"Ack, moved code right before where interfaces get disconnected from router, as this is the operation that would fail with static routes still present.","commit_id":"2e7c204d42dca681beafdee8d5c6a75748b4bd88"}]}
