)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"7dad00c8375d8bbd081e28885bd3952606312b35","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"01d94627_f76c34d2","updated":"2024-08-27 02:41:35.000000000","message":"LGTM","commit_id":"34c23f658316e464cd761228d66dcbcef6ee531a"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"cc450d7700e45fade1eafbdc1f4d2ebf08d9e57f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1c4b8017_53f24577","updated":"2026-10-07 08:41:48.000000000","message":"recheck unrelated failure","commit_id":"537ed941cdf8dbd5332d4c30fbc8e43198ce4f2a"},{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"change_message_id":"695402a2b95aca8ac5da767edcea8c63f14207b9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b6bbb48b_e1ee6711","updated":"2026-10-07 12:54:59.000000000","message":"LGTM","commit_id":"13d7a79779381380dc7906f8fcd023e459158843"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"0e676031e2d80b542031f39ca8b137a728d3dd88","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"7325f335_b29bf7ef","updated":"2026-10-07 13:02:21.000000000","message":"LGTM Thanks!","commit_id":"13d7a79779381380dc7906f8fcd023e459158843"}],"tox.ini":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"2ccd35dbd5d4ec2cad3998c22bc4dfdd5826abb2","unresolved":true,"context_lines":[{"line_number":44,"context_line":"    coverage xml -o cover/coverage.xml"},{"line_number":45,"context_line":"    coverage report --fail-under\u003d92 --skip-covered"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"[testenv:functional{,-py3,-py310,-py311,-py312,-py313}]"},{"line_number":48,"context_line":"setenv \u003d"},{"line_number":49,"context_line":"    {[testenv]setenv}"},{"line_number":50,"context_line":"    OS_TEST_PATH\u003d{toxinidir}/octavia/tests/functional"}],"source_content_type":"text/x-properties","patch_set":3,"id":"7d4a7f34_f161e115","line":47,"range":{"start_line":47,"start_character":26,"end_line":47,"end_character":53},"updated":"2026-10-06 16:49:48.000000000","message":"jfyi: The list needs to be updated. this may conflict later with https://review.opendev.org/c/openstack/octavia/+/1007684 which updates python jobs. I can rebase the other in case this is merged before that.","commit_id":"537ed941cdf8dbd5332d4c30fbc8e43198ce4f2a"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7184f2d0d7f30240c65c83f78f586980716feba1","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    coverage xml -o cover/coverage.xml"},{"line_number":45,"context_line":"    coverage report --fail-under\u003d92 --skip-covered"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"[testenv:functional{,-py3,-py310,-py311,-py312,-py313}]"},{"line_number":48,"context_line":"setenv \u003d"},{"line_number":49,"context_line":"    {[testenv]setenv}"},{"line_number":50,"context_line":"    OS_TEST_PATH\u003d{toxinidir}/octavia/tests/functional"}],"source_content_type":"text/x-properties","patch_set":3,"id":"26a51f59_e60ca3de","line":47,"range":{"start_line":47,"start_character":26,"end_line":47,"end_character":53},"in_reply_to":"7d4a7f34_f161e115","updated":"2026-10-07 09:22:45.000000000","message":"Done","commit_id":"537ed941cdf8dbd5332d4c30fbc8e43198ce4f2a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"2ccd35dbd5d4ec2cad3998c22bc4dfdd5826abb2","unresolved":true,"context_lines":[{"line_number":62,"context_line":"    # Run security linter"},{"line_number":63,"context_line":"    {[testenv:bandit]commands}"},{"line_number":64,"context_line":"    # Make sure specs follow our template"},{"line_number":65,"context_line":"    find . -type f -name \"*.pyc\" -delete"},{"line_number":66,"context_line":"    python -m unittest specs-tests.test_titles"},{"line_number":67,"context_line":"    sh ./tools/misc-sanity-checks.sh"},{"line_number":68,"context_line":"    {toxinidir}/tools/coding-checks.sh --pylint {posargs}"}],"source_content_type":"text/x-properties","patch_set":3,"id":"00d5d96d_18d29fe2","line":65,"range":{"start_line":65,"start_character":4,"end_line":65,"end_character":40},"updated":"2026-10-06 16:49:48.000000000","message":"We could disable bytecode generation to get rid of it. We may change it separately later.","commit_id":"537ed941cdf8dbd5332d4c30fbc8e43198ce4f2a"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7184f2d0d7f30240c65c83f78f586980716feba1","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    # Run security linter"},{"line_number":63,"context_line":"    {[testenv:bandit]commands}"},{"line_number":64,"context_line":"    # Make sure specs follow our template"},{"line_number":65,"context_line":"    find . -type f -name \"*.pyc\" -delete"},{"line_number":66,"context_line":"    python -m unittest specs-tests.test_titles"},{"line_number":67,"context_line":"    sh ./tools/misc-sanity-checks.sh"},{"line_number":68,"context_line":"    {toxinidir}/tools/coding-checks.sh --pylint {posargs}"}],"source_content_type":"text/x-properties","patch_set":3,"id":"2661f125_e9f85ece","line":65,"range":{"start_line":65,"start_character":4,"end_line":65,"end_character":40},"in_reply_to":"00d5d96d_18d29fe2","updated":"2026-10-07 09:22:45.000000000","message":"Done","commit_id":"537ed941cdf8dbd5332d4c30fbc8e43198ce4f2a"}]}
