Resolve module paths consistently through symlinks

This commit is contained in:
2026-10-10 15:13:00 +00:00
parent 7216fb5f98
commit c0a3f55f12
4 changed files with 70 additions and 16 deletions

View File

@@ -1,6 +1,6 @@
# Remediation: module release implementation review
Status: open; issues 1–11 are complete, and issues 12–15 require remediation.
Status: open; issues 1–12 are complete, and issues 13–15 require remediation.
The initial review examined `90559fe`, compared with planning baseline `dbfae9e`.
The follow-up repository audit examined `6b0b8ce`, including those corrections.
@@ -423,7 +423,15 @@ transport stub, and a local HTTP server. The artifact-read evidence also used
## Issue 12: Resolve module paths consistently across declaration sources (P2)
Status: open. Category: inconsistent release-unit selection.
Status: complete. Category: inconsistent release-unit selection.
**Completion:** Filesystem selection follows symlinks before processing parent
components, matching committed traversal. Public build, candidate check, and
hosted page delivery now agree on the selected module and tag for `link/..`;
dependency preparation executes in that same module. The new regression cases
failed before the correction and pass afterward. Focused API/preparation tests
and the complete identity/Git suites pass offline, including aliases, separate
declaration sources, sparse selection, cycles, boundaries, and cancellation.
**Evidence:** [Filesystem selection](../../internal/releaseidentity/identity.go)
cleans the joined module path before following symlinks. Committed selection