tracebloc delete prints ✔ Removed local tracebloc data and config after removeHostDataDir() (os.RemoveAll(config.Dir())) returns nil — but a nil RemoveAll is not proof the tree is gone (racing writer, mount, masked partial failure). Claiming a clean wipe we didn't achieve is exactly the offboard-hygiene gap RFC-0003 flags (§2.4 / §3.3).
Fix: after RemoveAll, stat the dir; treat "still present" (or an unexpected stat error) as a failure so the caller prints the warn + manual-rm hint instead of ✔. Added an osStat seam + a test proving delete does NOT claim success on an unverified wipe.
The cli-side follow-up from tracebloc/client#367 (RFC-0003 Option C). Under node-local the heavy multi-path wipe is unnecessary; this is the honesty fix that stands regardless. Design: backend#1151. RFC: #366.
tracebloc deleteprints✔ Removed local tracebloc data and configafterremoveHostDataDir()(os.RemoveAll(config.Dir())) returns nil — but a nil RemoveAll is not proof the tree is gone (racing writer, mount, masked partial failure). Claiming a clean wipe we didn't achieve is exactly the offboard-hygiene gap RFC-0003 flags (§2.4 / §3.3).Fix: after RemoveAll, stat the dir; treat "still present" (or an unexpected stat error) as a failure so the caller prints the warn + manual-
rmhint instead of✔. Added anosStatseam + a test proving delete does NOT claim success on an unverified wipe.The cli-side follow-up from tracebloc/client#367 (RFC-0003 Option C). Under node-local the heavy multi-path wipe is unnecessary; this is the honesty fix that stands regardless. Design: backend#1151. RFC: #366.