-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Add support for exempt partners without POC in retirement reporting #49
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 enhances the partner retirement reporting process by converting Point of Contact (POC) warnings into compliance failures, ensuring proper notification of partners during learner retirement. The change addresses a compliance violation where partners without POCs could not be properly notified.
Key Changes:
- Introduced
ERR_MISSING_POC = -13exit code for compliance failures when POCs are missing - Added
partners_without_poc_requiredconfiguration option to exempt specific partners (e.g., expired/inactive partners) from POC requirements - Updated failure messaging to include "COMPLIANCE FAILURE" alerts for Project Coordinators
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 9 comments.
| File | Description |
|---|---|
| tubular/scripts/retirement_partner_report.py | Added ERR_MISSING_POC constant and compliance failure logic in _add_comments_to_files that fails the job when partners lack POCs unless exempt |
| tubular/scripts/helpers.py | Added support for partners_without_poc_required configuration with Unicode normalization matching existing org_partner_mapping handling |
| tubular/tests/test_retirement_partner_report.py | Updated test_successful_report to ensure all partners have POCs; added test_missing_poc_failure to verify compliance failures; added test_missing_poc_with_exemption to verify exemption logic works correctly |
| tubular/tests/retirement_helpers.py | Extended fake_config_file helper to accept exempted_partners parameter for test configuration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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
Copilot reviewed 4 out of 4 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Description:
Partner retirement reports logged warnings for missing Points of Contact (POCs) but continued processing, creating compliance violations. Partners without POCs cannot be properly notified during learner retirement.
Solution:
ERR_MISSING_POC = -13COMPLIANCE FAILUREmessaging for Project Coordinator alertsImplementation:
retirement_partner_report.py: Added compliance failure logichelpers.py: Added exemption configuration supportPrivate JIRA Link:
BOMS-196