When multiple legacy rows share the same Sample (same SamplePtID), they can disagree on Volume / VolumeUnit. The transfer does not define a deterministic conflict policy (e.g. first non-null wins, or error on mismatch).
Requested action: Either (a) document the current behavior (e.g. in code or in transfers/README.md) and accept it, or (b) add a BDD scenario that creates two legacy rows for the same SamplePtID with different Volume/VolumeUnit and assert the chosen behavior (e.g. first wins, or log-and-skip). This avoids undefined behavior and makes future changes intentional.