We start to work in a feature branch, say "foo". Make some changes in a commit, push that branch, make PR # 1 against the "master" branch to do the code review.
Once we approve the code review, we merge branch "foo" into the the "CI" branch, and our CI system builds that branch and runs tests. Once that build finishes successfully, the CI branch creates PR # 2, and merges the "CI" branch into the "master" branch. At that point, the commits from "foo" are in "master" and Bitbucket background task that updates all other PRs that are pointing at "master" goes through and finds the open PR # 1 they had used for code review and now marks it as "merged", but something in that logic is updating PR # 1 incorrectly, which is why the Commits tab doesn't list the commits, and the diff is coming out strange.