Why: Valid but underdetermined model claims must become pending without losing the batch or leaking unsupported status text.
Evidence: Mixed-batch, source-input binding, approval-status, tool-receipt and prompt regressions failed before changes; go test ./... -count=1 and selected live-tag fake-provider tests passed.
Impact: Validate all task-bound sources, normalize once, return a safe receipt, and version material processing as v9; no extra provider call.
Refs: Dev task feature/fast-slow-u2-u3-plan; r0.3 evidence implementation plan Task 3