[Bug] Cannot resolve threads on deleted comments which were attached to a file removed from the commit history
Summary
Whilst working on Create new analytics dashboards app (!112196 - merged) the maintainer was unable to merge the MR. They had to use the Create issue to resolve all threads
feature to make the MR mergeable and then close the threads issue.
This seems to be because there were comments in that MR which had since been deleted. These comments were specifically tied to files which were dropped out of the MR to reduce its size, therefore I deleted the comments to them as well to reduce the noise in the MR. But because the file no longer exists in the commit history, I assume that the comments themselves were left dangling somehow.
Possibly related to Can't do anything with a review comment on a de... (#11025 - closed)
Steps to reproduce
- Create an MR with some files
- Comment on a file
- Remove the file from your MR, rebase to remove the commit that removes the file, and then force push the change
- Comment should still be resolvable.
- Delete the comment and refresh the page.
- Comment is now unresolvable and blank:
Example Project
The original MR that made the issue known: Create new analytics dashboards app (!112196 - merged)
Tested in a separate repo with threads required to merge: Test unresolved threads failure (rob.hunt/test-bed!1)
What is the current bug behavior?
When a comment is deleted that was attached to a file that is no longer in the commit history, the comment cannot be resolved, and prevents merging.
What is the expected correct behavior?
When a comment is deleted that was attached to a file that is no longer in the commit history, the comment should be fully deleted and not left dangling.
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
Results of GitLab application Check
Possible fixes
Known workarounds
- Use the
Create issue to resolve all threads
feature to get the comments closed. The newly created issue can then be closed as it will be blank.