)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000010,"name":"Mateusz Zalega","display_name":"msgctl","email":"mateusz@monogon.tech","username":"mateusz","avatars":[{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3d0388a316b7989257ac547725ca7c3131b14a6a","unresolved":true,"context_lines":[{"line_number":15,"context_line":"And, after checking all code paths, to my surprise... no, not really."},{"line_number":16,"context_line":"Why did we ever do it? Perhaps because we started differently structured"},{"line_number":17,"context_line":"cluster bootstrap codebase that caused it to be a hard requirement. Or"},{"line_number":18,"context_line":"maybe it was just a momentary lapse of reason. Regardless, with the"},{"line_number":19,"context_line":"current codebase, it makes no sense: we always have Node credentials"},{"line_number":20,"context_line":"available, and we run the Curator on all network interfaces. So why not"},{"line_number":21,"context_line":"just connect over loopback and use TLS?"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"8e3584ea_df84e4a9","line":18,"updated":"2022-03-10 15:29:51.000000000","message":"accompanied by a delicate sound of thunder?","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"},{"author":{"_account_id":1000010,"name":"Mateusz Zalega","display_name":"msgctl","email":"mateusz@monogon.tech","username":"mateusz","avatars":[{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1628923643060363ec0eb3e785b7e57fb789f407","unresolved":false,"context_lines":[{"line_number":15,"context_line":"And, after checking all code paths, to my surprise... no, not really."},{"line_number":16,"context_line":"Why did we ever do it? Perhaps because we started differently structured"},{"line_number":17,"context_line":"cluster bootstrap codebase that caused it to be a hard requirement. Or"},{"line_number":18,"context_line":"maybe it was just a momentary lapse of reason. Regardless, with the"},{"line_number":19,"context_line":"current codebase, it makes no sense: we always have Node credentials"},{"line_number":20,"context_line":"available, and we run the Curator on all network interfaces. So why not"},{"line_number":21,"context_line":"just connect over loopback and use TLS?"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ce824127_5582f3be","line":18,"in_reply_to":"8e3584ea_df84e4a9","updated":"2022-03-10 15:30:13.000000000","message":"Done","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"}],"metropolis/node/core/curator/listener.go":[{"author":{"_account_id":1000010,"name":"Mateusz Zalega","display_name":"msgctl","email":"mateusz@monogon.tech","username":"mateusz","avatars":[{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3d0388a316b7989257ac547725ca7c3131b14a6a","unresolved":true,"context_lines":[{"line_number":86,"context_line":"\t\t// Respond to requests and status updates."},{"line_number":87,"context_line":"\t\tfor {"},{"line_number":88,"context_line":"\t\t\tselect {"},{"line_number":89,"context_line":"\t\t\tcase \u003c-ctx.Done():"},{"line_number":90,"context_line":"\t\t\t\treturn"},{"line_number":91,"context_line":"\t\t\tcase r :\u003d \u003c-l.dispatchC:"},{"line_number":92,"context_line":"\t\t\t\t// Handle request."}],"source_content_type":"text/x-go","patch_set":2,"id":"875e0612_26528064","line":89,"updated":"2022-03-10 15:29:51.000000000","message":"This looks unrelated, but that\u0027s OK.","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"},{"author":{"_account_id":1000002,"name":"Serge Bazanski","display_name":"Serge","email":"serge@monogon.tech","username":"serge","avatars":[{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c5c8a873c8f2e7ebeeb54f57fc9e771bba7373fd","unresolved":false,"context_lines":[{"line_number":86,"context_line":"\t\t// Respond to requests and status updates."},{"line_number":87,"context_line":"\t\tfor {"},{"line_number":88,"context_line":"\t\t\tselect {"},{"line_number":89,"context_line":"\t\t\tcase \u003c-ctx.Done():"},{"line_number":90,"context_line":"\t\t\t\treturn"},{"line_number":91,"context_line":"\t\t\tcase r :\u003d \u003c-l.dispatchC:"},{"line_number":92,"context_line":"\t\t\t\t// Handle request."}],"source_content_type":"text/x-go","patch_set":2,"id":"7e7d6e16_bf0421f6","line":89,"in_reply_to":"7af3ccd2_394583c1","updated":"2022-03-11 10:59:54.000000000","message":"Oh yeah, this was me making sure the listener exits cleanly on context cancel (more related to CR/625).","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"},{"author":{"_account_id":1000010,"name":"Mateusz Zalega","display_name":"msgctl","email":"mateusz@monogon.tech","username":"mateusz","avatars":[{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1628923643060363ec0eb3e785b7e57fb789f407","unresolved":false,"context_lines":[{"line_number":86,"context_line":"\t\t// Respond to requests and status updates."},{"line_number":87,"context_line":"\t\tfor {"},{"line_number":88,"context_line":"\t\t\tselect {"},{"line_number":89,"context_line":"\t\t\tcase \u003c-ctx.Done():"},{"line_number":90,"context_line":"\t\t\t\treturn"},{"line_number":91,"context_line":"\t\t\tcase r :\u003d \u003c-l.dispatchC:"},{"line_number":92,"context_line":"\t\t\t\t// Handle request."}],"source_content_type":"text/x-go","patch_set":2,"id":"7af3ccd2_394583c1","line":89,"in_reply_to":"875e0612_26528064","updated":"2022-03-10 15:30:13.000000000","message":"Done","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"}],"metropolis/node/core/roleserve/worker_controlplane.go":[{"author":{"_account_id":1000010,"name":"Mateusz Zalega","display_name":"msgctl","email":"mateusz@monogon.tech","username":"mateusz","avatars":[{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/30cae8ca0782f23ce0a60ac80fda3dd9.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3d0388a316b7989257ac547725ca7c3131b14a6a","unresolved":true,"context_lines":[{"line_number":316,"context_line":"\t\t\t\t\treturn fmt.Errorf(\"when creating bootstrap node credentials: %w\", err)"},{"line_number":317,"context_line":"\t\t\t\t}"},{"line_number":318,"context_line":"\t\t\t\tsupervisor.Logger(ctx).Infof(\"Control plane bootstrap complete, starting curator...\")"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"\t\t\t} else {"},{"line_number":321,"context_line":"\t\t\t\t// Not bootstrapping, just starting consensus with credentials we already have."},{"line_number":322,"context_line":""}],"source_content_type":"text/x-go","patch_set":2,"id":"e25b2b4c_fbf68b7a","line":319,"updated":"2022-03-10 15:29:51.000000000","message":"whitespace","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"},{"author":{"_account_id":1000002,"name":"Serge Bazanski","display_name":"Serge","email":"serge@monogon.tech","username":"serge","avatars":[{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c5c8a873c8f2e7ebeeb54f57fc9e771bba7373fd","unresolved":false,"context_lines":[{"line_number":316,"context_line":"\t\t\t\t\treturn fmt.Errorf(\"when creating bootstrap node credentials: %w\", err)"},{"line_number":317,"context_line":"\t\t\t\t}"},{"line_number":318,"context_line":"\t\t\t\tsupervisor.Logger(ctx).Infof(\"Control plane bootstrap complete, starting curator...\")"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"\t\t\t} else {"},{"line_number":321,"context_line":"\t\t\t\t// Not bootstrapping, just starting consensus with credentials we already have."},{"line_number":322,"context_line":""}],"source_content_type":"text/x-go","patch_set":2,"id":"f96af21a_2c23460c","line":319,"in_reply_to":"e25b2b4c_fbf68b7a","updated":"2022-03-11 10:59:54.000000000","message":"Done","commit_id":"4c250886bb7e69db2aa13cdf5cd1a2bcb01a6446"}]}
