From c0754f5b1c677ff128574ee0c95d22b56cd43eda Mon Sep 17 00:00:00 2001 From: houseme Date: Tue, 8 Sep 2026 17:26:11 +0800 Subject: [PATCH] test(heal): preserve EC84 restart semantics (#7478) Keep the EC8+4 background restart lane on the graceful-stop path and assert clean-restart marker absence only for restart scenarios. This prevents the hard evidence gate from silently exercising the crash path when it claims restart coverage. Co-authored-by: zhi22915 --- crates/e2e_test/src/heal_erasure_disk_rebuild_test.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crates/e2e_test/src/heal_erasure_disk_rebuild_test.rs b/crates/e2e_test/src/heal_erasure_disk_rebuild_test.rs index 0b6e30bd6..f8763d482 100644 --- a/crates/e2e_test/src/heal_erasure_disk_rebuild_test.rs +++ b/crates/e2e_test/src/heal_erasure_disk_rebuild_test.rs @@ -1567,7 +1567,10 @@ mod tests { "Restored target endpoint forwarding" ); } else { - if scenario == InterruptionScenario::BackgroundTargetRestart { + if matches!( + scenario, + InterruptionScenario::BackgroundTargetRestart | InterruptionScenario::BackgroundTargetRestartEc84 + ) { cluster.stop_node_gracefully(interruption_node).await?; } else { cluster.stop_node(interruption_node)?; @@ -1589,7 +1592,10 @@ mod tests { if background_enabled { let marker_exists = unclean_shutdown_marker.is_file(); unclean_shutdown_marker_observed = Some(marker_exists); - let expected_marker = !matches!(scenario, InterruptionScenario::BackgroundTargetRestart); + let expected_marker = matches!( + scenario, + InterruptionScenario::BackgroundTargetCrash | InterruptionScenario::BackgroundTargetCrashEc84 + ); assert!( marker_exists == expected_marker, "background restart/crash lane observed unexpected unclean-shutdown marker state"