Project deletion job never successful if deleting user removed before job runs
Problem to solve
A project can be scheduled for delayed deletion by a user, then that user's membership to the project can be removed before deletion occurs. In that case, the deletion job will run unsuccessfully, every day, forever.
Proposal
If a scheduled project deletion job finds that the triggering user has been removed from the project, the job should be deleted.
This proposal is not perfect because generally, if an action is permitted, then its results should be permitted. This proposal represents an exception to that rule: an action is permitted, then the results are not. We believe this is appropriate because the results are highly destructive. A highly destructive result should not occur if there is any indication it is malicious or mistaken.
This proposal is also not perfect because the deletion job is silently deleted. In a future enhancement we may introduce some sort of admin notification for this circumstance.
Related links
- This problem was identified by @ifarkas in !19684 (comment 254645984)
- The same problem exists with groups; #39504 (closed)