Read blob sizes only for selected validation inputs

This commit is contained in:
2026-10-10 15:29:29 +00:00
parent 6c7b77970b
commit f27abcb53e
10 changed files with 129 additions and 40 deletions

View File

@@ -1,6 +1,6 @@
# Remediation: module release implementation review
Status: open; issues 1–14 are complete, and issue 15 requires remediation.
Status: complete; all fifteen findings addressed and verified.
The initial review examined `90559fe`, compared with planning baseline `dbfae9e`.
The follow-up repository audit examined `6b0b8ce`, including those corrections.
@@ -544,7 +544,18 @@ network-capable preparation must continue to work.
## Issue 15: Limit blob availability requirements to selected validation inputs (P2)
Status: open. Category: module-scope leakage through eager metadata enrichment.
Status: complete. Category: module-scope leakage through eager metadata enrichment.
**Completion:** Tree enumeration now acquires path/type/mode/object metadata
independently of blobs. The size check requests sizes only for selected,
non-excluded blobs; other checks read contents and references when needed.
Filtered sparse-clone regressions cover formatting, sizes, workspace metadata,
explicit shared selection, exclusions, required shared contents, and required
Markdown references. They failed before the correction and now preserve each
check's scope and error identity without transport or object-database changes.
Existing size, symlink, gitlink, vendor, boundary, reader/cache, and cancellation
tests pass. The complete offline suite, compiled API/dependency check,
documentation links, and whitespace checks pass for all four follow-up fixes.
**Evidence:** [ReadCandidateTreeForScope](../../internal/validation/tree.go)
calls [ReadTree](../../internal/git/source.go) before constructing module and