Stop recursive symlink expansion and honor cancellation
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Shared validation foundation remediation
|
||||
|
||||
Status: Findings pending remediation.
|
||||
Status: Remediation in progress; finding 1 addressed, findings 2–6 pending.
|
||||
|
||||
Reviewed committed implementation `f53354b`, covering the eight foundation
|
||||
commits after `0c7129a`, against the [implementation plan](implementation.md),
|
||||
@@ -31,6 +31,12 @@ that subsequent checkers will use.
|
||||
|
||||
## 1. P2: Expanding symlink cycles do not terminate or honor cancellation
|
||||
|
||||
**Resolution:** Addressed. The resolver tracks active symlink expansions,
|
||||
releases them before traversing the remaining destination, and checks context
|
||||
cancellation during traversal. Regression coverage includes direct and mutual
|
||||
expanding cycles, finite repeated links, and cancellation.
|
||||
`go test ./internal/validation` passed.
|
||||
|
||||
**Owner:** [candidate destination resolver](../../internal/validation/tree.go),
|
||||
`CandidateTree.ResolveDestination`, especially the restart loop and cycle key.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user