Wrong diff in gitlab mr after rebase

Summary

I made a merge request from a single commit. Then I made some more changes and rebased my commit. Now some of my new changes are missing in https://gitlab.example.com/group/repo/-/merge_requests/35/diffs.

Steps to reproduce

I created a merge request which affected three files. Later, my reviewer told me to add tests, so I did. This affected two other files (both previously existed). Then I rebased on master. The rebase picked up changes only to files not touched in this MR. Then I pushed. When I go to the diffs view, I see changes (5) in the changes tab. But there are only the original three files listed in the tree view and in the diffs. Those files do have my new changes. When I click the commits tab, it shows one commit, with sha 9829d1e6671e9a1e81908c5d3a0983929fb78252. When I do git show --numstat 9829d1e6671e9a1e81908c5d3a0983929fb78252, I see (actual filenames etc redacted obviously):

commit 9829d1e6671e9a1e81908c5d3a0983929fb78252
Author: A U Thor <author@example.com>
Date:   Wed Jun 30 19:01:28 2021 +0000

    Reticulate splines
   
1	0	spline/reticulate.h
16	0	spline/reticulate.c
34	8	spline/foo/bar.c
69	45	spline/test/test1.c
319	119	spline/test/test2.c

Example Project

The bug did not survive anonymization. I tried to export the repo with git fast-export --anonymize, and repro on gitlab.com, but sadly, I could not repro -- all five files appeared.

What is the current bug behavior?

I see three changed files.

What is the expected correct behavior?

I should see five.

Relevant logs and/or screenshots

I know this looks like a PEBCAK. Oh, you forgot to git add the new files or something. But I promise that I have triple-checked and had a colleague do so as well.

Output of checks

Results of GitLab environment info

Expand for output related to GitLab environment info

this is too big; I will attach files.

Results of GitLab application Check

Expand for output related to the GitLab application check

this is too big; I will attach files.