)]}'
{"metropolis/node/core/tconsole/page_logs.go":[{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8d95a450d9f54bbf6bc807777bf1ae2970aa5f56","unresolved":true,"context_lines":[{"line_number":55,"context_line":"\t}"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"\tbacklog :\u003d reader.Backlog"},{"line_number":58,"context_line":"\tslices.Reverse(backlog)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"\treturn backlog"},{"line_number":61,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":1,"id":"443be880_978d7fc3","line":58,"updated":"2025-07-23 14:57:33.000000000","message":"This is unfortunate and I think the WithStartPosition option should just have a second argument for fetching newer and older logs instead of inferring it","commit_id":"31b751261b8410c181fd1c888619cd2ddef0ba88"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"594f3049e0d5276c25eea96e1364cec08b6c335d","unresolved":false,"context_lines":[{"line_number":55,"context_line":"\t}"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"\tbacklog :\u003d reader.Backlog"},{"line_number":58,"context_line":"\tslices.Reverse(backlog)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"\treturn backlog"},{"line_number":61,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":1,"id":"8c776860_bb4b4b3c","line":58,"in_reply_to":"443be880_978d7fc3","updated":"2025-07-23 16:15:29.000000000","message":"Done","commit_id":"31b751261b8410c181fd1c888619cd2ddef0ba88"},{"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":"3855568bf3601b159945823b12ed976e0045707e","unresolved":true,"context_lines":[{"line_number":81,"context_line":"\t\tcase tcell.KeyUp:"},{"line_number":82,"context_line":"\t\t\tscrollInput \u003d -1"},{"line_number":83,"context_line":"\t\tcase tcell.KeyDown:"},{"line_number":84,"context_line":"\t\t\tscrollInput \u003d 2 // Increment by two, as the fetch is inclusive"},{"line_number":85,"context_line":"\t\tcase tcell.KeyPgUp:"},{"line_number":86,"context_line":"\t\t\tscrollInput \u003d -nlines"},{"line_number":87,"context_line":"\t\tcase tcell.KeyPgDn:"}],"source_content_type":"text/x-go","patch_set":4,"id":"4fadf955_6282a667","line":84,"range":{"start_line":84,"start_character":22,"end_line":84,"end_character":65},"updated":"2025-07-31 18:32:03.000000000","message":"This is not true, it scrolls with asymmetric speeds.","commit_id":"b9352b410c979c741ed50350fd5c57ba20047102"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e9fa089561e152a5c48d5491e29d04d1856e97bf","unresolved":false,"context_lines":[{"line_number":81,"context_line":"\t\tcase tcell.KeyUp:"},{"line_number":82,"context_line":"\t\t\tscrollInput \u003d -1"},{"line_number":83,"context_line":"\t\tcase tcell.KeyDown:"},{"line_number":84,"context_line":"\t\t\tscrollInput \u003d 2 // Increment by two, as the fetch is inclusive"},{"line_number":85,"context_line":"\t\tcase tcell.KeyPgUp:"},{"line_number":86,"context_line":"\t\t\tscrollInput \u003d -nlines"},{"line_number":87,"context_line":"\t\tcase tcell.KeyPgDn:"}],"source_content_type":"text/x-go","patch_set":4,"id":"7be2fd44_2645bd0e","line":84,"range":{"start_line":84,"start_character":22,"end_line":84,"end_character":65},"in_reply_to":"4fadf955_6282a667","updated":"2025-08-13 15:02:56.000000000","message":"Done","commit_id":"b9352b410c979c741ed50350fd5c57ba20047102"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":95,"context_line":"}"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"func (p *pageLogs) processScrollInput(lt *logtree.LogTree, scrollInput int, nlines int) {"},{"line_number":98,"context_line":"\t// disable scrolling until the screen is full filled or"},{"line_number":99,"context_line":"\t// the user want\u0027s to disable it."},{"line_number":100,"context_line":"\tif len(p.lines) \u003c nlines || scrollInput \u003d\u003d 0 {"},{"line_number":101,"context_line":"\t\tp.scrollbackBuffer \u003d nil"},{"line_number":102,"context_line":"\t\treturn"},{"line_number":103,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"d06720ea_2f2159ed","line":100,"range":{"start_line":98,"start_character":0,"end_line":100,"end_character":0},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// Disable scrollback if the screen is not full or\n\t// the user wants to exit it.\n\tif len(p.lines) \u003c nlines || scrollInput \u003d\u003d 0 {\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":95,"context_line":"}"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"func (p *pageLogs) processScrollInput(lt *logtree.LogTree, scrollInput int, nlines int) {"},{"line_number":98,"context_line":"\t// disable scrolling until the screen is full filled or"},{"line_number":99,"context_line":"\t// the user want\u0027s to disable it."},{"line_number":100,"context_line":"\tif len(p.lines) \u003c nlines || scrollInput \u003d\u003d 0 {"},{"line_number":101,"context_line":"\t\tp.scrollbackBuffer \u003d nil"},{"line_number":102,"context_line":"\t\treturn"},{"line_number":103,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"007dfa6e_02944763","line":100,"range":{"start_line":98,"start_character":0,"end_line":100,"end_character":0},"in_reply_to":"d06720ea_2f2159ed","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":95,"context_line":"}"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"func (p *pageLogs) processScrollInput(lt *logtree.LogTree, scrollInput int, nlines int) {"},{"line_number":98,"context_line":"\t// disable scrolling until the screen is full filled or"},{"line_number":99,"context_line":"\t// the user want\u0027s to disable it."},{"line_number":100,"context_line":"\tif len(p.lines) \u003c nlines || scrollInput \u003d\u003d 0 {"},{"line_number":101,"context_line":"\t\tp.scrollbackBuffer \u003d nil"},{"line_number":102,"context_line":"\t\treturn"},{"line_number":103,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"3ef9345d_ff0a1c99","line":100,"range":{"start_line":98,"start_character":0,"end_line":100,"end_character":0},"in_reply_to":"d06720ea_2f2159ed","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":105,"context_line":"\t// The position of the most recent line"},{"line_number":106,"context_line":"\tmaxPos :\u003d p.lines[len(p.lines)-1].Position"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"\t// Fetch our current scrollback position from the scrollback buffer or"},{"line_number":109,"context_line":"\t// if we don\u0027t have one take the last printed line as position."},{"line_number":110,"context_line":"\tvar oldPos int"},{"line_number":111,"context_line":"\tif p.scrollbackBuffer !\u003d nil {"},{"line_number":112,"context_line":"\t\toldPos \u003d p.scrollbackBuffer[len(p.scrollbackBuffer)-1].Position"},{"line_number":113,"context_line":"\t} else {"}],"source_content_type":"text/x-go","patch_set":5,"id":"e9db852f_6e01c6da","line":110,"range":{"start_line":108,"start_character":0,"end_line":110,"end_character":0},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// Fetch our current scrollback position from either the scrollback buffer or\n\t// or the most recent streamed line.\n\tvar oldPos int\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":105,"context_line":"\t// The position of the most recent line"},{"line_number":106,"context_line":"\tmaxPos :\u003d p.lines[len(p.lines)-1].Position"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"\t// Fetch our current scrollback position from the scrollback buffer or"},{"line_number":109,"context_line":"\t// if we don\u0027t have one take the last printed line as position."},{"line_number":110,"context_line":"\tvar oldPos int"},{"line_number":111,"context_line":"\tif p.scrollbackBuffer !\u003d nil {"},{"line_number":112,"context_line":"\t\toldPos \u003d p.scrollbackBuffer[len(p.scrollbackBuffer)-1].Position"},{"line_number":113,"context_line":"\t} else {"}],"source_content_type":"text/x-go","patch_set":5,"id":"f759ec19_66dc6f74","line":110,"range":{"start_line":108,"start_character":0,"end_line":110,"end_character":0},"in_reply_to":"e9db852f_6e01c6da","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":114,"context_line":"\t\toldPos \u003d maxPos"},{"line_number":115,"context_line":"\t}"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"\t// If our inputs scroll past the latest streamed line or the user wants to"},{"line_number":118,"context_line":"\t// reset scrollback, disable it."},{"line_number":119,"context_line":"\tif oldPos+scrollInput \u003e maxPos {"},{"line_number":120,"context_line":"\t\tp.scrollbackBuffer \u003d nil"},{"line_number":121,"context_line":"\t\treturn"},{"line_number":122,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"d1fa6be4_cf4a0afa","line":119,"range":{"start_line":117,"start_character":0,"end_line":119,"end_character":0},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// If our inputs scroll past the latest streamed line, disable it.\n\tif oldPos+scrollInput \u003e maxPos {\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":114,"context_line":"\t\toldPos \u003d maxPos"},{"line_number":115,"context_line":"\t}"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"\t// If our inputs scroll past the latest streamed line or the user wants to"},{"line_number":118,"context_line":"\t// reset scrollback, disable it."},{"line_number":119,"context_line":"\tif oldPos+scrollInput \u003e maxPos {"},{"line_number":120,"context_line":"\t\tp.scrollbackBuffer \u003d nil"},{"line_number":121,"context_line":"\t\treturn"},{"line_number":122,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"3f77584f_0f28db06","line":119,"range":{"start_line":117,"start_character":0,"end_line":119,"end_character":0},"in_reply_to":"d1fa6be4_cf4a0afa","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":121,"context_line":"\t\treturn"},{"line_number":122,"context_line":"\t}"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"\t// update and limit the scroll position to the most recent line and"},{"line_number":125,"context_line":"\t// at least a full screen."},{"line_number":126,"context_line":"\tnewPos :\u003d min(maxPos, max(nlines, oldPos+scrollInput))"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"\t// Fetch the actual scrollback from journal if we moved the scrollback position."},{"line_number":129,"context_line":"\tp.scrollbackBuffer \u003d fetchScrollback(lt, nlines, newPos)"}],"source_content_type":"text/x-go","patch_set":5,"id":"9f0b199c_0161f53d","line":126,"range":{"start_line":124,"start_character":0,"end_line":126,"end_character":0},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// Update and limit the scroll position to the most recent line and\n\t// at least a full screen.\n\tnewPos :\u003d min(maxPos, max(nlines, oldPos+scrollInput))\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":121,"context_line":"\t\treturn"},{"line_number":122,"context_line":"\t}"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"\t// update and limit the scroll position to the most recent line and"},{"line_number":125,"context_line":"\t// at least a full screen."},{"line_number":126,"context_line":"\tnewPos :\u003d min(maxPos, max(nlines, oldPos+scrollInput))"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"\t// Fetch the actual scrollback from journal if we moved the scrollback position."},{"line_number":129,"context_line":"\tp.scrollbackBuffer \u003d fetchScrollback(lt, nlines, newPos)"}],"source_content_type":"text/x-go","patch_set":5,"id":"cd685728_4ff47675","line":126,"range":{"start_line":124,"start_character":0,"end_line":126,"end_character":0},"in_reply_to":"9f0b199c_0161f53d","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":125,"context_line":"\t// at least a full screen."},{"line_number":126,"context_line":"\tnewPos :\u003d min(maxPos, max(nlines, oldPos+scrollInput))"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"\t// Fetch the actual scrollback from journal if we moved the scrollback position."},{"line_number":129,"context_line":"\tp.scrollbackBuffer \u003d fetchScrollback(lt, nlines, newPos)"},{"line_number":130,"context_line":"}"},{"line_number":131,"context_line":""}],"source_content_type":"text/x-go","patch_set":5,"id":"a8424fe2_5fc172b3","line":128,"range":{"start_line":128,"start_character":4,"end_line":128,"end_character":81},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// Fetch the actual scrollback from the journal if we moved the scrollback position.\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":125,"context_line":"\t// at least a full screen."},{"line_number":126,"context_line":"\tnewPos :\u003d min(maxPos, max(nlines, oldPos+scrollInput))"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"\t// Fetch the actual scrollback from journal if we moved the scrollback position."},{"line_number":129,"context_line":"\tp.scrollbackBuffer \u003d fetchScrollback(lt, nlines, newPos)"},{"line_number":130,"context_line":"}"},{"line_number":131,"context_line":""}],"source_content_type":"text/x-go","patch_set":5,"id":"bf385987_21a52b4f","line":128,"range":{"start_line":128,"start_character":4,"end_line":128,"end_character":81},"in_reply_to":"a8424fe2_5fc172b3","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":134,"context_line":"\t\t\"\","},{"line_number":135,"context_line":"\t\tlogtree.WithChildren(),"},{"line_number":136,"context_line":"\t\tlogtree.WithBacklog(nlines),"},{"line_number":137,"context_line":"\t\t// Add an offset of one to the position, as we fetching messages before"},{"line_number":138,"context_line":"\t\t// the given position, skipping the given position entirely."},{"line_number":139,"context_line":"\t\tlogtree.WithStartPosition(position+1, logtree.ReadDirectionBefore),"},{"line_number":140,"context_line":"\t)"},{"line_number":141,"context_line":"\t// This should not happen as only invalid argument combinations are capable"},{"line_number":142,"context_line":"\t// of returning an error."}],"source_content_type":"text/x-go","patch_set":5,"id":"bb1800fb_8a8c18d7","line":139,"range":{"start_line":137,"start_character":0,"end_line":139,"end_character":0},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t\t// Add an offset of one to the position, as we are fetching messages before\n\t\t// the given position, skipping the given position entirely.\n\t\tlogtree.WithStartPosition(position+1, logtree.ReadDirectionBefore),\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":134,"context_line":"\t\t\"\","},{"line_number":135,"context_line":"\t\tlogtree.WithChildren(),"},{"line_number":136,"context_line":"\t\tlogtree.WithBacklog(nlines),"},{"line_number":137,"context_line":"\t\t// Add an offset of one to the position, as we fetching messages before"},{"line_number":138,"context_line":"\t\t// the given position, skipping the given position entirely."},{"line_number":139,"context_line":"\t\tlogtree.WithStartPosition(position+1, logtree.ReadDirectionBefore),"},{"line_number":140,"context_line":"\t)"},{"line_number":141,"context_line":"\t// This should not happen as only invalid argument combinations are capable"},{"line_number":142,"context_line":"\t// of returning an error."}],"source_content_type":"text/x-go","patch_set":5,"id":"48c3f031_883d8690","line":139,"range":{"start_line":137,"start_character":0,"end_line":139,"end_character":0},"in_reply_to":"bb1800fb_8a8c18d7","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"}],"metropolis/node/core/tconsole/tconsole.go":[{"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":"c2d62934c6b3fed0310bf473b53882fedbaee9c1","unresolved":true,"context_lines":[{"line_number":162,"context_line":"\t\tfingerprint: \"Waiting...\","},{"line_number":163,"context_line":"\t}"},{"line_number":164,"context_line":"\tpageLogs :\u003d pageLogs{}"},{"line_number":165,"context_line":"\t// Fetch logs before the terminal was available"},{"line_number":166,"context_line":"\tfor _, le :\u003d range c.logReader.Backlog {"},{"line_number":167,"context_line":"\t\tpageLogs.appendLine(le)"},{"line_number":168,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"2b7cb520_ae713b66","line":165,"range":{"start_line":165,"start_character":4,"end_line":165,"end_character":48},"updated":"2025-08-13 15:34:28.000000000","message":"```suggestion\n\t// Fetch backlog\n```","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"b31e19379980528878db87308da53a69e8827975","unresolved":false,"context_lines":[{"line_number":162,"context_line":"\t\tfingerprint: \"Waiting...\","},{"line_number":163,"context_line":"\t}"},{"line_number":164,"context_line":"\tpageLogs :\u003d pageLogs{}"},{"line_number":165,"context_line":"\t// Fetch logs before the terminal was available"},{"line_number":166,"context_line":"\tfor _, le :\u003d range c.logReader.Backlog {"},{"line_number":167,"context_line":"\t\tpageLogs.appendLine(le)"},{"line_number":168,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":5,"id":"70bbe17d_b28c2070","line":165,"range":{"start_line":165,"start_character":4,"end_line":165,"end_character":48},"in_reply_to":"2b7cb520_ae713b66","updated":"2025-08-15 14:42:45.000000000","message":"Fix applied.","commit_id":"82e3b9878981f72d33e730b1370708c71abd19ef"}]}
