I think we should clarify that the list is used as-is and thus should be immutable so the MergeResult doesn't suddenly modify due to the caller changing the list and reusing it for some other purpose after making the MergeResult.