Add Program Deletion with Cascade Module Removal
- Dominant language
- Python
- Stars
- 451
- Forks
- 702
- Avg merge
- 22h 59m
- Merged PRs (30d)
- 91
Description
Community & Support: [LinkedIn Group](https://www.linkedin.com/groups/14656108/) · [Slack #project-nest](https://owasp.slack.com/archives/project-nest)
Active project leaders: Arkadii Yakovets -- [GitHub](https://github.com/arkid15r/) · [LinkedIn](https://www.linkedin.com/in/arkid15r/) · [Slack](https://owasp.slack.com/team/U060W3NKLTF); Kate Golovanova -- [GitHub](https://github.com/kasya/) · [LinkedIn](https://www.linkedin.com/in/kate-golovanova/) · [Slack](https://owasp.slack.com/team/U07PWB1JZ6Z)
[Contributing](https://github.com/owasp/nest/blob/main/CONTRIBUTING.md) · [Code of Conduct](https://github.com/owasp/nest/blob/main/CODE_OF_CONDUCT.md) · [GSoC Mentors](https://github.com/owasp/nest/blob/main/MENTORS.md)
---
**Is your feature request related to a problem? Please describe.**
The mentorship portal currently allows creation and management of programs, but does not provide any way to delete a program.
Deleting a program is a high-impact, destructive action, especially because programs own multiple modules. This task introduces safe program deletion with explicit user confirmation and cascade cleanup.
This issue adds:
- Program deletion for program admins
- Automatic deletion of all modules affiliated with the program
- A strict confirmation flow to prevent accidental data loss
**Describe the solution you'd like**
- Implement functionality to delete a program.
- Only users with program admin permissions can delete a program.
- Add backend permission checks to prevent unauthorized deletions.
- Deleting a program must also delete all affiliated modules (cascade delete).
- Ensure no orphaned records remain in the database.
Add a confirmation modal before program deletion.
Clearly warn the user that:
- All modules affiliated with the program will also be deleted
- This action is irreversible
- Require the user to type the program name (or a fixed keyword like DELETE) to confirm deletion
Similar to GitHub’s repository deletion flow
**Are you going to work on implementing this?**
- [x] Yes
- [ ] No
Contributor guide
Assessment
This issue has not been assessed yet.