Add private sequence-item placement
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Implementation Plan: Sequence Placement and Composition
|
||||
|
||||
Status: implementation in progress; stages 1–6 completed.
|
||||
Status: implementation in progress; stages 1–7 completed.
|
||||
|
||||
## Purpose and authority
|
||||
|
||||
@@ -451,6 +451,22 @@ Scope: placement primitives and engine per-input options; not public exposure.
|
||||
Validation: placement/accounting/option tests and `./scripts/check.sh`.
|
||||
Completion: the private operation places a mapping once with correct ownership.
|
||||
|
||||
Completion evidence: added private placement modes to engine options, load
|
||||
requests, and source records, with preflight rejection of unknown modes and
|
||||
item placement at an empty destination. A completed mapping can now be wrapped
|
||||
in one singleton sequence at its destination; nil payloads remain absent and
|
||||
empty mappings remain real items. Wrapper accounting includes both destination
|
||||
mapping nodes and the added sequence depth/node, with limits checked before
|
||||
allocation. Focused tests cover mapping zero-value equivalence, nested paths,
|
||||
empty and absent payloads, invalid modes/destinations, and exact/exceeded
|
||||
allowances. These checks passed with Go `go1.26.9 linux/amd64`:
|
||||
|
||||
- `GOTOOLCHAIN=local GOPROXY=off go test ./internal/engine -run 'Destination|Import|Mounted|PlaceDocument|Options|Layered' -count=1`
|
||||
- `GOTOOLCHAIN=local ./scripts/check.sh`
|
||||
- `git diff --check`
|
||||
|
||||
No environmental limitation affected validation; checks ran on Linux/amd64.
|
||||
|
||||
## Stage 8 — Assemble item scopes and YAML path/glob imports
|
||||
|
||||
Scope: directive parsing and scoped acquisition/composition.
|
||||
|
||||
Reference in New Issue
Block a user