Skip to content

Resolve "Deleting a user shouldn't delete associated records"

What does this MR do?

Supplement #12726 (closed)/!7393 (merged) by migrating a user's merge requests, notes, award emoji, and abuse reports to the ghost user before the user is destroyed.

Are there points in the code the reviewer needs to double check?

Tasks

  • Implementation
    • Refactor / general cleanup
    • Migrate
      • Merge requests
      • Notes
      • Abuse reports
        • When User A reports an "abuse report" against User B, and User A is blocked, the abuse report's target changes to User A. Why? (#30514 (closed))
      • Award emoji
        • Is this possible with the current ghost user implementation?
  • Tests
    • Added
    • Passing
  • Verification
    • Make sure no uniqueness validations are going to conflict with the ghost user
      • Award emoji
      • Merge requests
      • Notes
      • Abuse reports
    • Verify from the UI
      • Merge requests
      • Notes
        • Merge request
        • Issue
        • Snippet
      • Abuse reports
      • Award emoji
        • Make sure the award emoji uniqueness change doesn't break anything in the UI
          • Snippet
          • Note
            • Merge request
            • Issue
            • Snippet
          • Issues
          • Merge requests
  • Meta
    • CHANGELOG entry created
    • API support added
    • Branch has no merge conflicts with master
    • Squashed related commits together
    • Added screenshots
    • Documentation added/updated
    • Check for clean merge with EE
      • Create EE branch
      • Create EE merge request
      • Make sure ee_compat_check passes
  • Review
    • Miniboss
    • Endboss
  • Wait for merge

What are the relevant issue numbers?

Merge request reports