From c92b9b957fe281c5f82459a975092ea53e74d765 Mon Sep 17 00:00:00 2001 From: Danilo Leal Date: Wed, 8 Apr 2026 11:03:10 -0300 Subject: [PATCH 1/3] Fix empty path being shown as an item --- crates/workspace/src/multi_workspace.rs | 3 +++ crates/workspace/src/workspace.rs | 3 +++ 2 files changed, 6 insertions(+) diff --git a/crates/workspace/src/multi_workspace.rs b/crates/workspace/src/multi_workspace.rs index e9baccb4d93c94..b937a9733119de 100644 --- a/crates/workspace/src/multi_workspace.rs +++ b/crates/workspace/src/multi_workspace.rs @@ -578,6 +578,9 @@ impl MultiWorkspace { pub fn restore_project_group_keys(&mut self, keys: Vec) { let mut restored: Vec = Vec::with_capacity(keys.len()); for key in keys { + if key.path_list().paths().is_empty() { + continue; + } if !restored.contains(&key) { restored.push(key); } diff --git a/crates/workspace/src/workspace.rs b/crates/workspace/src/workspace.rs index 3d1f67bf69fb81..e6244f63b8b45e 100644 --- a/crates/workspace/src/workspace.rs +++ b/crates/workspace/src/workspace.rs @@ -8778,6 +8778,9 @@ pub async fn restore_multiworkspace( // stale keys from previous sessions get normalized and deduped. let mut resolved_keys: Vec = Vec::new(); for key in project_group_keys.into_iter().map(ProjectGroupKey::from) { + if key.path_list().paths().is_empty() { + continue; + } let mut resolved_paths = Vec::new(); for path in key.path_list().paths() { if let Some(common_dir) = From 2960924eda7509ed1a98b37d221efff98caa3f20 Mon Sep 17 00:00:00 2001 From: Danilo Leal Date: Wed, 8 Apr 2026 13:13:44 -0300 Subject: [PATCH 2/3] Create sidebar_tests.proptest-regressions --- crates/sidebar/src/sidebar_tests.proptest-regressions | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 crates/sidebar/src/sidebar_tests.proptest-regressions diff --git a/crates/sidebar/src/sidebar_tests.proptest-regressions b/crates/sidebar/src/sidebar_tests.proptest-regressions new file mode 100644 index 00000000000000..66552a0885f8b1 --- /dev/null +++ b/crates/sidebar/src/sidebar_tests.proptest-regressions @@ -0,0 +1,7 @@ +# Seeds for failure cases proptest has generated in the past. It is +# automatically read and these particular cases re-run before any +# novel cases are generated. +# +# It is recommended to check this file in to source control so that +# everyone who runs the test benefits from these saved cases. +cc 36183b5df9e5e2521c5366af3f6b295559b5c72b9477169e394f2c640d1d54f5 # shrinks to TestSidebarInvariantsArgs = TestSidebarInvariantsArgs { __seed: 18181010490781345706, raw_operations: [16, 69, 72] } From c4e846f0cfcf93db374a61f531ca038a23b7f073 Mon Sep 17 00:00:00 2001 From: Danilo Leal Date: Wed, 8 Apr 2026 14:01:02 -0300 Subject: [PATCH 3/3] Delete unwanted file --- crates/sidebar/src/sidebar_tests.proptest-regressions | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 crates/sidebar/src/sidebar_tests.proptest-regressions diff --git a/crates/sidebar/src/sidebar_tests.proptest-regressions b/crates/sidebar/src/sidebar_tests.proptest-regressions deleted file mode 100644 index 66552a0885f8b1..00000000000000 --- a/crates/sidebar/src/sidebar_tests.proptest-regressions +++ /dev/null @@ -1,7 +0,0 @@ -# Seeds for failure cases proptest has generated in the past. It is -# automatically read and these particular cases re-run before any -# novel cases are generated. -# -# It is recommended to check this file in to source control so that -# everyone who runs the test benefits from these saved cases. -cc 36183b5df9e5e2521c5366af3f6b295559b5c72b9477169e394f2c640d1d54f5 # shrinks to TestSidebarInvariantsArgs = TestSidebarInvariantsArgs { __seed: 18181010490781345706, raw_operations: [16, 69, 72] }