Clarify empty path import inspection evidence

This commit is contained in:
2026-10-20 01:06:15 +00:00
parent 31e10af9cb
commit 6903c9e51a
2 changed files with 11 additions and 4 deletions

View File

@@ -1011,8 +1011,9 @@ uses outcome `none`. Records remain in declaration order and are available
through the existing result, load
error, and callback source snapshots. They do not enumerate candidates, explain
why a path was absent, or describe partial omissions. Empty `path: []` succeeds
but does not produce an optional-empty record. Snapshots detach the record paths
and slices.
regardless of requiredness: it produces a `none` record when effectively optional,
and no record when effectively required. Snapshots detach the record paths and
slices.
Each declaration may include `placement: mapping` or
`placement: sequence-item`. Omission means `mapping` for that declaration,

View File

@@ -1,6 +1,6 @@
# Import Integration Correctness Audit
Status: in progress; findings 1 and 2 complete, finding 3 remains.
Status: complete; all three findings addressed in separate validated units.
Reviewed tree: `91db99b` (including the six completed fixes through `5747ec4`).
Scope: import discovery/defaults and shared dependency-ready scheduling, including
@@ -103,7 +103,7 @@ No scheduler or provenance implementation changed. Verified the public composite
origin/history and conflict reproductions, existing scheduled-placement and main/
underlay ordering tests, local documentation links, and `git diff --check`.
## 3. [ ] P3 — Qualify the empty-path inspection exception by requiredness
## 3. [x] P3 — Qualify the empty-path inspection exception by requiredness
Owner: [import inspection contract](../config.md#explicit-imports), around lines
1010–1011.
@@ -127,6 +127,12 @@ required empty path lists. Retain optional empty-list evidence and existing
tests rather than changing production behavior to match the inaccurate sentence.
Preserve the distinction between no selection and missing-file evidence.
Completed: the import inspection contract now states that empty path lists
succeed regardless of requiredness, recording `none` only when effectively
optional. Production behavior and existing tests are unchanged. Verified both
forms through the public API and the existing optional-empty evidence test;
`./scripts/check.sh`, local documentation links, and `git diff --check` passed.
## Validation and remaining architecture
The ordinary development check and an uncached full race run passed on the