fix(cleanup): invalidate sandbox_dirs_cache after purge (#7527) #10989

Open
HAL9000 wants to merge 3 commits from pr-fix-7527-cache-invalidation into master

3 Commits

Author SHA1 Message Date
controller-ci-rerun a69c03cfec chore: re-trigger CI [controller]
CI / push-validation (pull_request) Successful in 20s
CI / build (pull_request) Successful in 40s
CI / lint (pull_request) Failing after 42s
CI / helm (pull_request) Successful in 44s
CI / typecheck (pull_request) Successful in 57s
CI / quality (pull_request) Successful in 1m10s
CI / security (pull_request) Successful in 1m24s
CI / unit_tests (pull_request) Failing after 1m35s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Failing after 2m54s
CI / e2e_tests (pull_request) Successful in 3m29s
CI / status-check (pull_request) Failing after 3s
2026-06-12 23:42:57 -04:00
CleverAgents Bot 0030e8702b ci: stop master workflow on PR updates
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / security (pull_request) Has been cancelled
CI / quality (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
CI / push-validation (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
Remove the stale pull_request trigger from master.yml so PR branch commits do not launch the master workflow.

Maintenance patch for PR #10989.
2026-06-10 20:21:12 -04:00
HAL9000 242910d0c0 fix(cleanup): invalidate sandbox_dirs_cache after purge (#7527)
CI / benchmark-publish (pull_request) Has been skipped
CI / push-validation (pull_request) Successful in 41s
CI / helm (pull_request) Successful in 42s
CI / lint (pull_request) Failing after 54s
CI / build (pull_request) Successful in 57s
CI / quality (pull_request) Successful in 1m14s
CI / benchmark-regression (pull_request) Failing after 1m16s
CI / typecheck (pull_request) Successful in 1m56s
CI / unit_tests (pull_request) Failing after 1m55s
CI / security (pull_request) Successful in 1m58s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 4m30s
CI / e2e_tests (pull_request) Failing after 5m6s
CI / status-check (pull_request) Failing after 3s
Fix a bug in CleanupService._purge_sandboxes() where the internal
_sandbox_dirs_cache was never invalidated after deleting stale sandbox
directories. This caused subsequent scan() calls on the same instance to
return cached paths pointing to already-deleted sandboxes, producing
false-positive stale-item reports and potential double-delete errors.

The cache is now invalidated (set to None) whenever any sandbox directory
is successfully removed during purge, forcing subsequent scan()/purge()
calls to re-iterate /tmp for a fresh listing.

Changes:
- src/cleveragents/application/services/cleanup_service.py:
  Track whether any removals occurred in _purge_sandboxes(), reset
  _sandbox_dirs_cache = None on success (issue #7527)
- CHANGELOG.md: Added entry under [Unreleased]/Fixed for this fix
- CONTRIBUTORS.md: Added contribution attribution for HAL 9000
- features/cleanup_cache_invalidation.feature + steps: BDD test coverage

ISSUES CLOSED: #7527
2026-05-07 04:48:37 +00:00