)]}'
{"metropolis/node/core/network/main.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"be40dcdb285690ed28370ec41b352b859ec84085","unresolved":true,"context_lines":[{"line_number":276,"context_line":"\t\tTable:    s.natTable,"},{"line_number":277,"context_line":"\t\tType:     nftables.ChainTypeNAT,"},{"line_number":278,"context_line":"\t})"},{"line_number":279,"context_line":"\t// SNAT/Masquerade all traffic coming from interfaces starting with"},{"line_number":280,"context_line":"\t// veth going to interfaces not starting with veth."},{"line_number":281,"context_line":"\t// This NATs all container traffic going out of the host without"},{"line_number":282,"context_line":"\t// affecting anything else and without needing to care about specific"},{"line_number":283,"context_line":"\t// interfaces. Will need to be changed when we support L3 attachments"}],"source_content_type":"text/x-go","patch_set":2,"id":"b106b1be_a6aafa6f","line":280,"range":{"start_line":279,"start_character":55,"end_line":280,"end_character":52},"updated":"2025-01-31 13:53:32.000000000","message":"This comment needs to be updated.","commit_id":"d623a6fec8ded874f3eba0263e25ea0e6ec8c9ba"},{"author":{"_account_id":1000001,"name":"Lorenz Brun","display_name":"Lorenz","email":"lorenz@monogon.tech","username":"lorenz","avatars":[{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"d14d68c00fe4e86191235dbad44eb5b8d832c4f9","unresolved":false,"context_lines":[{"line_number":276,"context_line":"\t\tTable:    s.natTable,"},{"line_number":277,"context_line":"\t\tType:     nftables.ChainTypeNAT,"},{"line_number":278,"context_line":"\t})"},{"line_number":279,"context_line":"\t// SNAT/Masquerade all traffic coming from interfaces starting with"},{"line_number":280,"context_line":"\t// veth going to interfaces not starting with veth."},{"line_number":281,"context_line":"\t// This NATs all container traffic going out of the host without"},{"line_number":282,"context_line":"\t// affecting anything else and without needing to care about specific"},{"line_number":283,"context_line":"\t// interfaces. Will need to be changed when we support L3 attachments"}],"source_content_type":"text/x-go","patch_set":2,"id":"61773e24_556c89e4","line":280,"range":{"start_line":279,"start_character":55,"end_line":280,"end_character":52},"in_reply_to":"b106b1be_a6aafa6f","updated":"2025-02-04 13:05:57.000000000","message":"Done","commit_id":"d623a6fec8ded874f3eba0263e25ea0e6ec8c9ba"}],"third_party/go/patches/cniplugins-add-linkgroup.patch":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"be40dcdb285690ed28370ec41b352b859ec84085","unresolved":true,"context_lines":[{"line_number":27,"context_line":" \tif err !\u003d nil {"},{"line_number":28,"context_line":" \t\treturn nil, nil, err"},{"line_number":29,"context_line":" \t}"},{"line_number":30,"context_line":"+\tif group !\u003d 0 {"},{"line_number":31,"context_line":"+\t\thostVethLnk, err :\u003d netlink.LinkByName(hostInterface.Name)"},{"line_number":32,"context_line":"+\t\tif err !\u003d nil {"},{"line_number":33,"context_line":"+\t\t\treturn nil, nil, fmt.Errorf(\"failed to get host Veth %q: %v\", hostInterface.Name, err)"}],"source_content_type":"text/x-diff","patch_set":2,"id":"61fb5201_674dd590","line":30,"updated":"2025-01-31 13:53:32.000000000","message":"I would move this block to setupHostVeth below, because that\u0027s where the host side link is configured. There\u0027s already a LinkByName() there.","commit_id":"d623a6fec8ded874f3eba0263e25ea0e6ec8c9ba"},{"author":{"_account_id":1000001,"name":"Lorenz Brun","display_name":"Lorenz","email":"lorenz@monogon.tech","username":"lorenz","avatars":[{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"d14d68c00fe4e86191235dbad44eb5b8d832c4f9","unresolved":false,"context_lines":[{"line_number":27,"context_line":" \tif err !\u003d nil {"},{"line_number":28,"context_line":" \t\treturn nil, nil, err"},{"line_number":29,"context_line":" \t}"},{"line_number":30,"context_line":"+\tif group !\u003d 0 {"},{"line_number":31,"context_line":"+\t\thostVethLnk, err :\u003d netlink.LinkByName(hostInterface.Name)"},{"line_number":32,"context_line":"+\t\tif err !\u003d nil {"},{"line_number":33,"context_line":"+\t\t\treturn nil, nil, fmt.Errorf(\"failed to get host Veth %q: %v\", hostInterface.Name, err)"}],"source_content_type":"text/x-diff","patch_set":2,"id":"931b2483_c7fc2f4b","line":30,"in_reply_to":"61fb5201_674dd590","updated":"2025-02-04 13:05:57.000000000","message":"Done","commit_id":"d623a6fec8ded874f3eba0263e25ea0e6ec8c9ba"},{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"ef8ae08680ef0af4ed9a193d2803c2bb148e05b8","unresolved":true,"context_lines":[{"line_number":1,"context_line":"From bd2da9b3899fb68d2312c38be6ece9d24049314d Mon Sep 17 00:00:00 2001"},{"line_number":2,"context_line":"From: Lorenz Brun \u003clorenz@brun.one\u003e"},{"line_number":3,"context_line":"Date: Thu, 2 Jan 2025 00:36:05 +0100"},{"line_number":4,"context_line":"Subject: [PATCH] Add linkGroup setting"}],"source_content_type":"text/x-diff","patch_set":4,"id":"39386284_90fd5e63","line":1,"updated":"2025-02-05 09:14:40.000000000","message":"You now have two patch files with the same name in different folders. This is the old patch file which should be deleted and replaced by the new one.","commit_id":"44f6ee3c26ed367ab83061075b183bf601472f0f"},{"author":{"_account_id":1000001,"name":"Lorenz Brun","display_name":"Lorenz","email":"lorenz@monogon.tech","username":"lorenz","avatars":[{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/75c04f6e9881c24ee621fba80667eed8.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"5b2da63b44d495e6cc53d62182ab611ed5ac2d80","unresolved":false,"context_lines":[{"line_number":1,"context_line":"From bd2da9b3899fb68d2312c38be6ece9d24049314d Mon Sep 17 00:00:00 2001"},{"line_number":2,"context_line":"From: Lorenz Brun \u003clorenz@brun.one\u003e"},{"line_number":3,"context_line":"Date: Thu, 2 Jan 2025 00:36:05 +0100"},{"line_number":4,"context_line":"Subject: [PATCH] Add linkGroup setting"}],"source_content_type":"text/x-diff","patch_set":4,"id":"a9ffd062_ad0921db","line":1,"in_reply_to":"39386284_90fd5e63","updated":"2025-02-05 14:27:08.000000000","message":"Typo in the mv command, fixed.","commit_id":"44f6ee3c26ed367ab83061075b183bf601472f0f"}]}
