)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"8adc43ac2d14dd369cd146964c109b3fe8b6ab27","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4cca13f1_3f86ff0e","updated":"2023-08-16 15:20:10.000000000","message":"forgot about this issue. thanks a lot!","commit_id":"5121282002c6c6d7487bdcda35844404223adf69"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"49a707a64e9d45fe5d757b488dfa845708d8af8e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"de5e7629_e30b8474","updated":"2023-11-01 17:17:36.000000000","message":"recheck\n\nupgrades fixed","commit_id":"370713955a0efcc7db56458029eb88efaa59ff5a"}],"kayobe/ansible.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"be56bf2912cb2ff0407652452e49b8ae8d46d941","unresolved":true,"context_lines":[{"line_number":304,"context_line":"    \"\"\"Sanitise a host variable.\"\"\""},{"line_number":305,"context_line":"    if isinstance(var, AnsibleVaultEncryptedUnicode):"},{"line_number":306,"context_line":"        return \"******\""},{"line_number":307,"context_line":"    # Recursively sanitise dicts."},{"line_number":308,"context_line":"    if isinstance(var, dict):"},{"line_number":309,"context_line":"        return {k: _sanitise_hostvar(v) for k, v in var.items()}"},{"line_number":310,"context_line":"    return var"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"66f1059b_6e24bb8a","line":309,"range":{"start_line":307,"start_character":0,"end_line":309,"end_character":64},"updated":"2023-11-30 08:34:44.000000000","message":"We should sanitise lists too.","commit_id":"370713955a0efcc7db56458029eb88efaa59ff5a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"aa1a6167a6c1016d44d3b248aa3f0e093d1fe239","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    \"\"\"Sanitise a host variable.\"\"\""},{"line_number":305,"context_line":"    if isinstance(var, AnsibleVaultEncryptedUnicode):"},{"line_number":306,"context_line":"        return \"******\""},{"line_number":307,"context_line":"    # Recursively sanitise dicts."},{"line_number":308,"context_line":"    if isinstance(var, dict):"},{"line_number":309,"context_line":"        return {k: _sanitise_hostvar(v) for k, v in var.items()}"},{"line_number":310,"context_line":"    return var"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7cfac372_8912b95f","line":309,"range":{"start_line":307,"start_character":0,"end_line":309,"end_character":64},"in_reply_to":"2b3f12d9_ec9570f8","updated":"2023-11-30 10:45:21.000000000","message":"It looks sensible to me, thanks.","commit_id":"370713955a0efcc7db56458029eb88efaa59ff5a"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"01fc0b3352d18bd07fd1bc608fb25ac65ac1fe62","unresolved":true,"context_lines":[{"line_number":304,"context_line":"    \"\"\"Sanitise a host variable.\"\"\""},{"line_number":305,"context_line":"    if isinstance(var, AnsibleVaultEncryptedUnicode):"},{"line_number":306,"context_line":"        return \"******\""},{"line_number":307,"context_line":"    # Recursively sanitise dicts."},{"line_number":308,"context_line":"    if isinstance(var, dict):"},{"line_number":309,"context_line":"        return {k: _sanitise_hostvar(v) for k, v in var.items()}"},{"line_number":310,"context_line":"    return var"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"81ff2978_f20b727f","line":309,"range":{"start_line":307,"start_character":0,"end_line":309,"end_character":64},"in_reply_to":"66f1059b_6e24bb8a","updated":"2023-11-30 08:59:01.000000000","message":"@Mark: what are your thoughts on this updated change?","commit_id":"370713955a0efcc7db56458029eb88efaa59ff5a"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"cb55f9e401d63739c2366b5fd2eac8cfd39242b0","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    \"\"\"Sanitise a host variable.\"\"\""},{"line_number":305,"context_line":"    if isinstance(var, AnsibleVaultEncryptedUnicode):"},{"line_number":306,"context_line":"        return \"******\""},{"line_number":307,"context_line":"    # Recursively sanitise dicts."},{"line_number":308,"context_line":"    if isinstance(var, dict):"},{"line_number":309,"context_line":"        return {k: _sanitise_hostvar(v) for k, v in var.items()}"},{"line_number":310,"context_line":"    return var"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"2b3f12d9_ec9570f8","line":309,"range":{"start_line":307,"start_character":0,"end_line":309,"end_character":64},"in_reply_to":"81ff2978_f20b727f","updated":"2023-11-30 09:14:44.000000000","message":"this should work too","commit_id":"370713955a0efcc7db56458029eb88efaa59ff5a"}]}
