Down-tier delayed deletion to core
## Goal Extend the pending deletion state to all pricing tiers, including free tier projects and groups, creating a consistent experience throughout GitLab. This change will introduce a pending deletion period before permanent deletion for all entities. ### User Benefits * Protection against accidental deletions for all users regardless of pricing tier * Consistent experience when deleting items across the platform * Opportunity to recover from mistaken deletions without support intervention ### GitLab Benefits * Reduced support ticket volume for deletion recovery requests * More consistent codebase with standardized deletion behavior * Improved user satisfaction across all pricing tiers ## Requirements * Database schema changes to track deletion state across all entity types * Storage mechanism for preserving deleted content during the pending period * Consistent deletion flow implementation for free tier projects and groups * Backend logic to automatically transition from pending to permanent deletion * Testing across all entity types and pricing tiers to ensure consistent behavior * Pending deletion period for a namespace is dependent on the [instance setting](https://docs.gitlab.com/user/project/working_with_projects/#delayed-project-deletion): * Ensure the instance setting is exposed for the free tier. If possible, set the default to 30 days for self-managed (or keep their existing selection). On SaaS, the default would be 7 days as per https://docs.gitlab.com/user/project/working_with_projects/#delayed-project-deletion. We will enhance it later to [30 days](https://gitlab.com/groups/gitlab-org/-/epics/17375). * Ensure the instance setting covers free tier namespaces moving forward. Related to: https://gitlab.com/gitlab-com/Product/-/issues/14057
epic