Skip to content

Fix cleanup probes and restore temp handling - #3336

Merged
Widthdom merged 7 commits into
mainfrom
fix-issue3023-3024-3174-3032-3030-3029-3031
Jun 6, 2026
Merged

Fix cleanup probes and restore temp handling#3336
Widthdom merged 7 commits into
mainfrom
fix-issue3023-3024-3174-3032-3030-3029-3031

Conversation

@Widthdom

@Widthdom Widthdom commented Jun 6, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes seven cleanup/probe edge cases where temporary probes or staging directories could either leak, mask the original command result, or collide under same-millisecond naming.

Changes

  • Keep MCP and installer write probes from treating cleanup failures as writability failures; cleanup failures now emit warnings.
  • Move case-sensitivity write probes away from workspace-root hidden files while preserving the read-only root path-variant check and cleaning probe-only directories.
  • Surface import/export temporary DB and SQLite sidecar cleanup failures as warnings without changing command outcomes.
  • Preserve checkpoint/restore outcomes when temporary directory cleanup fails, and add GUID-backed restore temp/backup suffixes.
  • Add changelog fragments for each fixed issue.

Validation

  • dotnet test tests/CodeIndex.Tests/CodeIndex.Tests.csproj --filter "FullyQualifiedName~SuggestImprovement_WriteProbeCleanupFailureWarnsWithoutFailing_Issue3023|FullyQualifiedName~CanWriteDirectory_ProbeCleanupFailureWarnsWithoutFailing_Issue3024|FullyQualifiedName~ResolveIgnoreCase_NonRepoProbeAvoidsRootProbeArtifacts_Issue3174|FullyQualifiedName~Constructor_CaseProbeAvoidsRootProbeArtifacts_Issue3174|FullyQualifiedName~Constructor_CaseProbePreservesExistingCdidxDirectory_Issue3174|FullyQualifiedName~RunImport_TemporaryDatabaseCleanupFailureWarnsAndPreservesImportError_Issue3032|FullyQualifiedName~RunExportArchive_TemporaryDatabaseCleanupFailureWarnsWithoutFailing_Issue3032|FullyQualifiedName~Run_CheckpointTempCleanupFailurePreservesOriginalFailure_Issue3029|FullyQualifiedName~Run_RestoreTemporaryNamesIncludeCollisionResistantSuffix_Issue3031|FullyQualifiedName~Run_RestoreTempCleanupFailureWarnsWithoutFailing_Issue3030"
  • dotnet run --project tools/CodeIndex.Changelog -- check
  • dotnet build
  • dotnet ./src/CodeIndex/bin/Debug/net8.0/cdidx.dll status --check --json
  • codex exec --sandbox read-only --ephemeral review --base origin/main

Fixes #3023
Fixes #3024
Fixes #3174
Fixes #3032
Fixes #3030
Fixes #3029
Fixes #3031

@Widthdom
Widthdom marked this pull request as ready for review June 6, 2026 15:12
@Widthdom
Widthdom merged commit 820eda8 into main Jun 6, 2026
10 checks passed
@Widthdom
Widthdom deleted the fix-issue3023-3024-3174-3032-3030-3029-3031 branch June 6, 2026 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment