Same fingerprint as computeSourceFingerprint, computed from a
Blob/File via bounded slice().arrayBuffer() reads instead of a
fully-loaded buffer. Used where only the browser File handle is on hand
(e.g. FederatedModel.sourceFile) and reading the whole file again just to
key a lookup would be wasteful — this still only ever touches the same
~160KB spread sampleWindows defines, regardless of file size.
Same fingerprint as computeSourceFingerprint, computed from a
Blob/Filevia boundedslice().arrayBuffer()reads instead of a fully-loaded buffer. Used where only the browserFilehandle is on hand (e.g.FederatedModel.sourceFile) and reading the whole file again just to key a lookup would be wasteful — this still only ever touches the same ~160KB spread sampleWindows defines, regardless of file size.