)]}'
{"snix/cli/store/src/main.rs":[{"author":{"_account_id":1000014,"name":"Brian Olsen","display_name":"griff","email":"brian@maven-group.org","username":"griff"},"change_message_id":"89dab32707d0ed38ac4f4f4452ddc1409cea8143","unresolved":true,"context_lines":[{"line_number":746,"context_line":"                                            nixbase32::encode(path_info.store_path.digest()),"},{"line_number":747,"context_line":"                                        );"},{"line_number":748,"context_line":""},{"line_number":749,"context_line":"                                    let mut directories \u003d directory_service"},{"line_number":750,"context_line":"                                        .get_recursive(\u0026current_root_directory_digest);"},{"line_number":751,"context_line":""},{"line_number":752,"context_line":"                                    let mut builder \u003d DirectoryGraphBuilder::new_root_to_leaves("},{"line_number":753,"context_line":"                                        current_root_directory_digest.to_owned(),"},{"line_number":754,"context_line":"                                    );"},{"line_number":755,"context_line":"                                    while let Some(directory) \u003d directories.try_next().await? {"},{"line_number":756,"context_line":"                                        builder.try_insert(directory)?;"},{"line_number":757,"context_line":"                                    }"},{"line_number":758,"context_line":"                                    let directory_graph \u003d builder.build()?;"},{"line_number":759,"context_line":""},{"line_number":760,"context_line":"                                    let directory_graph \u003d directory_graph.with_recalculated_sizes();"},{"line_number":761,"context_line":"                                    let new_root_directory \u003d directory_graph.root();"}],"source_content_type":"text/x-rustsrc","patch_set":5,"id":"8826b4fd_4b5434c5","line":758,"range":{"start_line":749,"start_character":36,"end_line":758,"end_character":75},"updated":"2026-08-18 14:02:15.000000000","message":"Is this, get directory graph from directory service, not common enough that we could have a helper or extension trait for it?","commit_id":"f8e241d9b3d76d0a0300ed0d3c7572b56da8ba5c"},{"author":{"_account_id":1000004,"name":"Florian Klink","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"483492351bf02e7d33e803e21bb1f00fd4ae730d","unresolved":false,"context_lines":[{"line_number":746,"context_line":"                                            nixbase32::encode(path_info.store_path.digest()),"},{"line_number":747,"context_line":"                                        );"},{"line_number":748,"context_line":""},{"line_number":749,"context_line":"                                    let mut directories \u003d directory_service"},{"line_number":750,"context_line":"                                        .get_recursive(\u0026current_root_directory_digest);"},{"line_number":751,"context_line":""},{"line_number":752,"context_line":"                                    let mut builder \u003d DirectoryGraphBuilder::new_root_to_leaves("},{"line_number":753,"context_line":"                                        current_root_directory_digest.to_owned(),"},{"line_number":754,"context_line":"                                    );"},{"line_number":755,"context_line":"                                    while let Some(directory) \u003d directories.try_next().await? {"},{"line_number":756,"context_line":"                                        builder.try_insert(directory)?;"},{"line_number":757,"context_line":"                                    }"},{"line_number":758,"context_line":"                                    let directory_graph \u003d builder.build()?;"},{"line_number":759,"context_line":""},{"line_number":760,"context_line":"                                    let directory_graph \u003d directory_graph.with_recalculated_sizes();"},{"line_number":761,"context_line":"                                    let new_root_directory \u003d directory_graph.root();"}],"source_content_type":"text/x-rustsrc","patch_set":5,"id":"ef9caa2d_801fc3ce","line":758,"range":{"start_line":749,"start_character":36,"end_line":758,"end_character":75},"in_reply_to":"8826b4fd_4b5434c5","updated":"2026-08-19 15:34:56.000000000","message":"Done in cl/31581 (`DirectoryServiceGraphExt` trait)","commit_id":"f8e241d9b3d76d0a0300ed0d3c7572b56da8ba5c"},{"author":{"_account_id":1000014,"name":"Brian Olsen","display_name":"griff","email":"brian@maven-group.org","username":"griff"},"change_message_id":"89dab32707d0ed38ac4f4f4452ddc1409cea8143","unresolved":true,"context_lines":[{"line_number":776,"context_line":"                                        path_info.node \u003d node_new;"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"                                        if !dry_run {"},{"line_number":779,"context_line":"                                            let mut directory_putter \u003d"},{"line_number":780,"context_line":"                                                directory_service.put_multiple_start();"},{"line_number":781,"context_line":"                                            for directory in directory_graph.drain_leaves_to_root()"},{"line_number":782,"context_line":"                                            {"},{"line_number":783,"context_line":"                                                directory_putter.put(directory).await?;"},{"line_number":784,"context_line":"                                            }"},{"line_number":785,"context_line":"                                            let root_digest \u003d directory_putter.close().await?;"},{"line_number":786,"context_line":"                                            assert_eq!(new_root_directory_digest, root_digest);"},{"line_number":787,"context_line":""},{"line_number":788,"context_line":"                                            path_info_service.put(path_info).await?;"}],"source_content_type":"text/x-rustsrc","patch_set":5,"id":"0ef440c8_cf4da064","line":785,"range":{"start_line":779,"start_character":44,"end_line":785,"end_character":94},"updated":"2026-08-18 14:02:15.000000000","message":"Same with dumping a directory graph to a directory service. Is it not common enough for a helper or extension trait?","commit_id":"f8e241d9b3d76d0a0300ed0d3c7572b56da8ba5c"},{"author":{"_account_id":1000004,"name":"Florian Klink","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"483492351bf02e7d33e803e21bb1f00fd4ae730d","unresolved":false,"context_lines":[{"line_number":776,"context_line":"                                        path_info.node \u003d node_new;"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"                                        if !dry_run {"},{"line_number":779,"context_line":"                                            let mut directory_putter \u003d"},{"line_number":780,"context_line":"                                                directory_service.put_multiple_start();"},{"line_number":781,"context_line":"                                            for directory in directory_graph.drain_leaves_to_root()"},{"line_number":782,"context_line":"                                            {"},{"line_number":783,"context_line":"                                                directory_putter.put(directory).await?;"},{"line_number":784,"context_line":"                                            }"},{"line_number":785,"context_line":"                                            let root_digest \u003d directory_putter.close().await?;"},{"line_number":786,"context_line":"                                            assert_eq!(new_root_directory_digest, root_digest);"},{"line_number":787,"context_line":""},{"line_number":788,"context_line":"                                            path_info_service.put(path_info).await?;"}],"source_content_type":"text/x-rustsrc","patch_set":5,"id":"78635952_05915c0a","line":785,"range":{"start_line":779,"start_character":44,"end_line":785,"end_character":94},"in_reply_to":"0ef440c8_cf4da064","updated":"2026-08-19 15:34:56.000000000","message":"Done in cl/31581 (`DirectoryServiceGraphExt` trait)","commit_id":"f8e241d9b3d76d0a0300ed0d3c7572b56da8ba5c"}],"snix/cli/store/src/rewrite_directories.rs":[{"author":{"_account_id":1000014,"name":"Brian Olsen","display_name":"griff","email":"brian@maven-group.org","username":"griff"},"change_message_id":"664c3ae3af03bdcc2870caaaec274a41db7e81d9","unresolved":true,"context_lines":[{"line_number":27,"context_line":"    PS: PathInfoService,"},{"line_number":28,"context_line":"    DS: DirectoryService,"},{"line_number":29,"context_line":"{"},{"line_number":30,"context_line":"    let (directory_digest, directory_size) \u003d {"},{"line_number":31,"context_line":"        match path_info.node {"},{"line_number":32,"context_line":"            Node::Directory { digest, size } \u003d\u003e (digest, size),"},{"line_number":33,"context_line":"            _ \u003d\u003e return Ok(false),"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    };"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    Span::current()"},{"line_number":38,"context_line":"        .record(\"directory.digest\", directory_digest.to_string())"}],"source_content_type":"text/x-rustsrc","patch_set":8,"id":"05af18fb_4b4bf9f6","line":35,"range":{"start_line":30,"start_character":4,"end_line":35,"end_character":6},"updated":"2026-08-19 21:03:10.000000000","message":"Can also be written:\n\n```suggestion\n    let Node::Directory { digest: directory_digest, size: directory_size } \u003d path_info.node else {\n    \treturn Ok(false),\n    };\n```","commit_id":"bc16d80f1f7f0f91a76513a3683a0e5296691ce1"},{"author":{"_account_id":1000004,"name":"Florian Klink","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"d9f6ea866d712bcc426a751fbe9e8dff95c08f42","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    PS: PathInfoService,"},{"line_number":28,"context_line":"    DS: DirectoryService,"},{"line_number":29,"context_line":"{"},{"line_number":30,"context_line":"    let (directory_digest, directory_size) \u003d {"},{"line_number":31,"context_line":"        match path_info.node {"},{"line_number":32,"context_line":"            Node::Directory { digest, size } \u003d\u003e (digest, size),"},{"line_number":33,"context_line":"            _ \u003d\u003e return Ok(false),"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    };"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    Span::current()"},{"line_number":38,"context_line":"        .record(\"directory.digest\", directory_digest.to_string())"}],"source_content_type":"text/x-rustsrc","patch_set":8,"id":"7d5efafd_909a4235","line":35,"range":{"start_line":30,"start_character":4,"end_line":35,"end_character":6},"in_reply_to":"05af18fb_4b4bf9f6","updated":"2026-08-20 06:31:04.000000000","message":"Done. Also slightly reorganized the variables further down to make it more compact.","commit_id":"bc16d80f1f7f0f91a76513a3683a0e5296691ce1"}]}
