quadratic
quadratic copied to clipboard
Implement a "delete file" lifecycle
When a user deletes a file, we need to think about what the ramifications of this action are (beyond just marking the file as 'deleted' in the database). For example:
- Delete all outstanding invites to the file
- Delete all users who belong to the file
- Delete the file in s3
If we're going to delete the file from s3, then we'll also need to remove any outstanding transaction from Redis, or we'll end up w/quadratic-files continuously failing to download the file as it attempts to process those transactions (I got into this state while working locally).
Is there a good argument for doing nothing for 7 days other than "marking for deletion" which could hide it in the UI and then after 7 days (prob much higher for paid) actually delete from s3, remove transactions from Redis, etc.
Related to #1050