same-repo PR merges now avoid constructing/passing a separate sourceRepo, so they no longer trigger object copying for the common case. Fork/cross-repo fast-forward now copies only missing objects reachable from the PR head instead of recursively copying the entire source objects directory. The new test proves an unrelated source branch commit is not copied into the target during merge