-
Notifications
You must be signed in to change notification settings - Fork 65
Expiring Access do not renew #281
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces functionality to mark expiring access as “do not renew” (i.e. reviewed without renewal) by adding a new boolean field (should_expire) and updating both the frontend bulk renewal dialogs and backend operations/notifications. Key changes include modifications to test cases and API schemas, new UI toggles in the Bulk Renewal dialogs, and updates to the database migration and business logic for expiring access.
Reviewed Changes
Copilot reviewed 26 out of 26 changed files in this pull request and generated 1 comment.
File | Description |
---|---|
tests/* | Added tests for “do not renew” functionality |
src/pages/* | Updated BulkRenewal and Expiring pages with new toggle and review display |
api/* | Adjusted API schemas, models, operations and notifications to support the new flag |
migrations/* | Added migration for the new should_expire field in relevant tables |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add back required=True
to members_to_remove
and owners_to_remove
in api/views/schemas/group_memberships.py
Still maybe making minor changes (checking functionality for bugs atm) but more or less ready for review
This new feature makes it so that expiring access can be marked as reviewed without renewing the access. This allows the number of notifications to be reduced (we previously had no way to indicate that something had been reviewed so notifications for reviewed-but-not-renewed access would still be sent) and hopefully reduce conflicts that may come up where one group owner intends to allow access to expire while another owner of the group goes later and renews it anyways.
The biggest change is that the bulk renewal dialogs now feature a Yes/No toggle instead of checkbox selection in order to indicate whether access should be renewed or allowed to expire. Access that has been marked as 'should expire' can still be renewed later if needed.
The default page size for the expiring access pages is still 20 rows. I just reduced it to 10 for the sake of more compact screenshots.
Default expiring access page (doesn't show items marked as 'do not review')

View showing items marked as 'do not renew'

Bulk renewal dialog with new toggle (only showing unreviewed items)

Bulk renewal dialog showing all access (items marked 'do not renew' have 'No' in the toggle pre-selected)
