Description
Recursive manifest discovery can abort when a nested directory is inaccessible or removed during enumeration. The exception occurs outside the per-file load handler, preventing manifests in accessible sibling directories from being returned.
Expected behavior
Discovery should skip unavailable directories, log the failure, and continue scanning accessible locations without suppressing cancellation.
Acceptance criteria
- Continue after
UnauthorizedAccessException and filesystem IOException failures for individual directories.
- Discover manifests in accessible sibling directories.
- Preserve cancellation behavior.
- Apply consistent traversal behavior to both filesystem discovery paths.
- Add deterministic filesystem tests for inaccessible and concurrently removed directories.
- Avoid unrelated manifest parsing or cache refactoring.
Description
Recursive manifest discovery can abort when a nested directory is inaccessible or removed during enumeration. The exception occurs outside the per-file load handler, preventing manifests in accessible sibling directories from being returned.
Expected behavior
Discovery should skip unavailable directories, log the failure, and continue scanning accessible locations without suppressing cancellation.
Acceptance criteria
UnauthorizedAccessExceptionand filesystemIOExceptionfailures for individual directories.