Validate source versions in recursive imports
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Implement shared source version checks
|
||||
|
||||
Status: Stages 1–4 complete; recursive import integration has not started.
|
||||
Status: Stages 1–5 complete; direct underlay integration has not started.
|
||||
|
||||
Audience: a Luna coding agent implementing one numbered stage per prompt, in
|
||||
order. The [feature roadmap](source-version-checks.md) owns target behavior and
|
||||
@@ -343,6 +343,27 @@ The engine mode remains private; public options are scheduled separately.
|
||||
Validate: import/glob/destination/accounting/version tests and everyday check.
|
||||
Done: imports use one policy without lost warnings or changed physical traversal.
|
||||
|
||||
Completion evidence: threaded one per-load source-version state through the
|
||||
main import entry and recursive traversal. Each parsed child is checked against
|
||||
its source-local rule before placement; accepted headers are removed from an
|
||||
owned payload while the original root still supplies raw byte/node charges and
|
||||
the processor's original import declarations drive nested traversal. Effective
|
||||
main ownership is checked against the remaining placed payload. Evidence is
|
||||
retained with the acquired SourceID, and warning diagnostics accumulate without
|
||||
stopping traversal. Existing identity, cycle, optional-source, source-record,
|
||||
resource-context, and accounting paths remain in use. Added coverage for nested
|
||||
and glob imports at mounted relative destinations, accepted unequal declarations,
|
||||
rejected hidden declarations, required omissions with source-local locations,
|
||||
optional missing imports, evidence identity, and raw header byte/node charges. The
|
||||
existing default import-version failure coverage also passes. These checks
|
||||
passed with Go `go1.26.8 linux/amd64`:
|
||||
|
||||
- `GOTOOLCHAIN=local GOPROXY=off go test ./internal/engine -run 'SourceVersion|Version|Import|Glob|Destination' -count=1`
|
||||
- `GOTOOLCHAIN=local ./scripts/check.sh`
|
||||
- `git diff --check`
|
||||
|
||||
No environmental limitation affected validation; checks ran on Linux/amd64.
|
||||
|
||||
## Stage 6 — Integrate direct underlays and their strict groups
|
||||
|
||||
1. Thread state through acquireUnderlayGroup/grouped assembly. Direct underlays
|
||||
|
||||
Reference in New Issue
Block a user