Integrate source version checks for main inputs
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Implement shared source version checks
|
||||
|
||||
Status: Stages 1–2 complete; source-local extraction has not started.
|
||||
Status: Stages 1–4 complete; recursive import 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
|
||||
@@ -305,6 +305,26 @@ No environmental limitation affected validation; checks ran on Linux/amd64.
|
||||
Validate: load/grouped/version/destination/hook tests and everyday check. Done:
|
||||
private enabled main behavior works without changing old callers.
|
||||
|
||||
Completion evidence: added the private mode to ordinary and layered engine
|
||||
options and the shared load request. Both entry points validate enabled modes
|
||||
and their shared checker before source acquisition; enabled loads build schema
|
||||
before invoking the main checker. The parsed main document is checked at its
|
||||
source-local path before import traversal or layered composition, and its node
|
||||
remains in the application payload. A single semantic destination-prefixed rule
|
||||
now protects mounted main ownership during decoding, inheritance, acquired-input
|
||||
placement, overlays, and CLI overrides; declaration callbacks and diagnostics
|
||||
retain local paths. Default mode keeps its prior post-composition check timing.
|
||||
The per-load assembled input retains main evidence and successful warning
|
||||
diagnostics. NoSource invokes the existing absent-main callback once in either
|
||||
enabled mode. These checks passed with Go `go1.26.8 linux/amd64`:
|
||||
|
||||
- `GOTOOLCHAIN=local GOPROXY=off go test ./internal/engine -run 'SourceVersion|Version|Load|Grouped|Destination|Hook'`
|
||||
- `GOTOOLCHAIN=local ./scripts/check.sh`
|
||||
- `git diff --check`
|
||||
|
||||
No environmental limitation affected validation; checks ran on Linux/amd64.
|
||||
The engine mode remains private; public options are scheduled separately.
|
||||
|
||||
## Stage 5 — Integrate recursive imports, warnings, and accounting
|
||||
|
||||
1. Thread shared state through import entry/traversal. Check each acquired child
|
||||
|
||||
Reference in New Issue
Block a user