Resolve Windows rooted search paths with Go

This commit is contained in:
2026-10-24 19:24:30 +00:00
parent 2fedb0307f
commit 0369111d30
3 changed files with 84 additions and 5 deletions

View File

@@ -1,6 +1,6 @@
# Configuration Discovery Review Findings
Status: findings 1–4 complete; finding 5 remains open.
Status: complete. All five findings have been addressed in separate commits.
Reviewed commit: `e50fee2`, including the discovery implementation commits after
`424c897`. The review compared the implementation with the
@@ -185,7 +185,15 @@ code, not a new Windows support promise or native-platform release gate.
## 5. Preserve Drive-Root-Relative Windows Path Meaning
Priority: P3. Status: open. Algorithmic audit: correctness finding.
Priority: P3. Status: complete. Algorithmic audit: correctness finding.
**Completed:** drive-root-relative Windows paths now use `filepath.Abs` alongside
drive-relative paths, preserving native host interpretation. Windows regression
tests compare candidates and loaded files with explicit `File` for relative,
drive-root-relative (both separators), drive-relative, and absolute paths, through
both `Paths` and `SearchDirectory`. Existing Unix path/short-circuit tests and
`./scripts/check.sh` passed. The Windows engine test binary cross-compiled; no
native Windows execution or new release gate was introduced.
**Location:** [discovery.go](../../internal/engine/discovery.go),
`absoluteCandidate`, lines 380–391; also used for literal directory searches.
@@ -257,8 +265,8 @@ ordinary file acquisition. It did not benchmark or reopen those choices.
No unplanned quadratic algorithm or other actionable asymptotic regression was
identified. Findings 4 and 5 record the additional ordinary correctness issues
found while examining those algorithms; findings 1–3 were carried forward from
the earlier review. Existing configuration-tree algorithms outside the discovery changes
were not re-audited as new feature work.
the earlier review. Existing configuration-tree algorithms outside the discovery
changes were not re-audited as new feature work.
## Review Validation
@@ -278,3 +286,13 @@ were not re-audited as new feature work.
helper regression overlay described in finding 4. It collected no timing or
allocation measurements. Findings 4 and 5 are platform-specific correctness
findings, not claims of a native Windows validation run.
## Completed Remediation Validation
All five fixes include focused regression coverage and per-issue completion
markers above. The final `./scripts/check.sh` and `go test -race ./...` passed
with Go 1.26.10 on Linux. The Windows engine tests also cross-compiled with
`GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go test -c`, with the binary kept outside
the repository. No native Windows or macOS run was performed or made a gate.
The implementation preserves the public API, candidate ordering, optional
absence, and existing composition/version/ownership contracts.