Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Status
Points for consideration:
What's changed?
Project.users: Refactored to correctly fetch student users for multiple schools by grouping user IDs per school and making individual API calls, preventing data loss when projects span different schools.SchoolClass.with_teachers: Corrected the scope to filter onclass_teachers.teacher_idinstead ofteachers.idto accurately identify teachers associated with a class, resolving false negatives.StudentRemovalService: Modified to only skip student removal if projects exist within the current school and optimized the check using.exists?to prevent unnecessary data loading and ensure students without in-school work can be removed.Steps to perform after deploying to production
If the production environment requires any extra work after this PR has been deployed detail it here. This could be running a Rake task, a migration, or upgrading a Gem. That kind of thing.