Reuse validated filesystem facts through acquisition

This commit is contained in:
2026-10-25 14:33:17 +00:00
parent 6440a500f7
commit e585decdb2
6 changed files with 41 additions and 65 deletions

View File

@@ -8,8 +8,9 @@ This note records implementation flow and private identities for maintainers.
Each source's root directive is parsed into presence-aware declarations and
resolved against load-wide defaults. `acquisition.go` owns shared acquisition
policy, load accounting, and per-tier accounting; `import_acquisition.go` owns
reading candidate bytes, declaration traversal, and import admission. Candidate
policy, load-wide accounting, and tier-scoped repetition/namespace state;
`import_acquisition.go` owns reading candidate bytes, declaration traversal,
and import admission. Candidate
selection in `import_selection.go` preserves a normalized
namespace path separately from canonical access identity: overlapping roots
coalesce the same candidate spelling in that namespace, while aliases reached

View File

@@ -98,12 +98,14 @@ version, default-import, and override policy stays distinct from each input's
source, filesystem, destination, and import settings.
[`acquisition.go`](../../internal/engine/acquisition.go) defines acquisition
policy and load-wide and per-tier accounting state. Each input is acquired under
that policy; grouped requests retain acquired underlay scopes until their tier is
composed in [`load_request.go`](../../internal/engine/load_request.go). Live
policy, load-wide accounting, and tier-scoped repetition/namespace state. Each
input is acquired under that policy; grouped requests retain acquired underlay
scopes until their tier is composed in
[`load_request.go`](../../internal/engine/load_request.go). Live
filesystem access handles are confined to acquisition and closed there. Resolved
filesystem facts used to authorize access are separate from passively retained
resource contexts: see
resource contexts. Non-import validation retains those facts on `assembledInput`
for passive-context construction and ordinary-overlay handling: see
[`filesystem_context.go`](../../internal/engine/filesystem_context.go) and
[`source_context.go`](../../internal/engine/source_context.go).

View File

@@ -12,7 +12,7 @@ and full race suite (`go test -race ./...`) passed with Go 1.26.10 on Linux.
## 1. Complete The Non-Import Resolved-Context Handoff
Status: open. Priority: medium. Category: implementation gap and maintainability.
Status: complete (2026-10-25). Priority: medium. Category: implementation gap and maintainability.
No user-facing correctness regression has been established for this finding.
**Target.** Roadmap internal target 2 and implementation Stages 7–9 select one
@@ -76,6 +76,17 @@ only for a consequential gap exposed by the change; do not assert incidental
canonicalization/stat call counts. Run the development check and applicable
ownership race checks after remediation.
**Completion.** Non-import validation now returns its resolved filesystem
description and acquisition retains it for passive contexts and ordinary
overlays, including absent inputs. Absent-host derivation uses the common
resolver; the duplicate validator was removed. Validation timing, directory and
root-open/close checks, and the existing absent-input containment diagnostic
are retained. Internal documentation now distinguishes load-wide accounting
from tier-scoped repetition/namespace state. Existing filesystem, discovery,
overlay, and resource tests, the development check, and `go test -race ./...`
passed with Go 1.26.10 on Linux. No new incidental call-count assertions were
added.
## Algorithmic Audit Scope
Audited worktree: `d898cb1`, with production code at the reviewed implementation
@@ -88,7 +99,8 @@ schema construction.
Findings 2–3 are retained inefficiencies in paths carried through the refactor,
not algorithmic regressions introduced by the consolidation. They warrant
focused follow-up without changing the selected configuration model. The audit
did not identify an additional correctness defect. Finding 1 remains open.
did not identify an additional correctness defect. Finding 1 was open at the
time of that audit; completion is recorded with the finding above.
The selected stable Kahn scheduler, deterministic sorting, composition rules,
scope boundaries, and required ownership copies are not reconsidered here.