Skip to content

v2.72.0

Brinda Sasikumar edited this page May 11, 2026 · 1 revision

Release v2.72.0

Date: 2026-05-08 Tag: v2.72.0 Commits since v2.71.2: 80 Version type: Minor bump (biweekly) — contains BREAKING schema changes


⚠️ GraphQL Breaking Changes

This release renames a community interest field, removes duplicate development-program fields on Community, restructures the SitewideAnnouncement type into a first-class Announcement model, and removes the createCommunityDevelopmentProgram mutation. Any client query using the fields or mutations below will error after deploy.

Field / Type Change
CommunityInterest.financeAdditionalDuties RenamedadditionalDuties
CreateCommunityInterestInput.financeAdditionalDuties RenamedadditionalDuties
UpdateCommunityInterestInput.financeAdditionalDuties RenamedadditionalDuties
Community.communityDevelopmentPrograms Removed
Community.developmentPrograms (via developmentProgramsThroughPivot) Removed
SitewideAnnouncement.isEnabled / publishDate / expiryDate / updatedAt / isDismissible Removed — replaced by Announcement model
SitewideAnnouncementInput Replaced — new SitewideAnnouncementInput @validator with updated shape
createCommunityDevelopmentProgram mutation Removed
UpdateTalentNominationEventInput Modified — some fields removed

Migration Rollback Safety

Referenced by the Rollback Procedure during incidents. Check this before running migrate:rollback.

Migration Safe to rollback? Notes
2026_04_22_233423_procurement_community_interest_changes ✅ Yes Renames additional_duties back to finance_additional_duties; drops nullable procurement_is_sdo — no data loss
2026_04_27_000000_create_announcements_table ⚠️ Partial down() recreates settings from announcements — any edits to announcements made post-deploy are permanently lost; only the seeded sitewide_announcement entry is restored
2026_04_30_152311_add_email_backup_columns ✅ Yes Drops nullable email_backup and work_email_backup columns — no user-visible data loss if rollback happens before backup data is written
2026_05_01_212040_community_development_program_add_soft_deletes ⚠️ Partial Drops deleted_at column — any soft-deleted development-program pivot records reappear as active after rollback

🚚 Deployment Steps

Deployment order

1. Update IaC env vars  ← before deploy (see below)
2. Deploy artifact
3. php artisan migrate

PR #16675 — In-app auth migration feature flag

Source: #16675 Label: deployment

Add the following environment variable in IaC before deploy, set to false to keep existing auth behaviour:

FEATURE_AUTH_IN_APP_MIGRATION=false

PR #16681 — Remove application email verification feature flag

Source: #16681 Label: deployment

Remove FEATURE_APPLICATION_EMAIL_VERIFICATION flag from IaC in Azure — the feature flag has been deleted from the codebase and the variable is no longer read.


🧪 Test Plan

Pre-deploy checklist

  • FEATURE_AUTH_IN_APP_MIGRATION=false set in IaC for each environment
  • FEATURE_APPLICATION_EMAIL_VERIFICATION removed from IaC

Deployment verification

  • php artisan migrate — 4 migrations applied cleanly
  • procurement_community_interest_changes ran without errors — verify community_interests.additional_duties column exists
  • create_announcements_table ran — verify announcements table exists and settings table is gone; check sitewide_announcement row was migrated correctly
  • add_email_backup_columns ran — verify users.email_backup and users.work_email_backup columns exist
  • community_development_program_add_soft_deletes ran — verify deleted_at column exists on community_development_program

Community interests — Procurement

  • Procurement community interest form shows additionalDuties field (not financeAdditionalDuties)
  • New procurementIsSdo field visible and saveable for Procurement community interest
  • Finance community interest still shows financeIsChief field correctly
  • No references to old financeAdditionalDuties in network requests

Announcements model

  • Site-wide announcement admin page loads and saves without errors
  • Existing announcement content (title, message, enabled state) preserved after migration
  • settings table no longer exists in the database

Email backup

  • Archiving a user backs up their email to email_backup and work_email to work_email_backup
  • Restoring an archived user restores the email addresses and marks them unverified
  • Email-collision scenario on login backs up the colliding address correctly

Development programs — soft delete

  • Admin can soft-delete a community development program pivot
  • Soft-deleted programs no longer appear in active program lists
  • Soft-deleted experience skills can be restored (#16606)

Professionalization tab

  • Professionalization tab renders on the relevant profile page (#16702)
  • Bilingual language option fields display correctly (#16694)
  • Employee verification admin profile page loads (#16710)

Talent events

  • Admin can create a talent event (#16366)
  • Admin can edit a talent event
  • Talent event validator rejects invalid inputs (#16626)

Applications

  • Candidate can delete an in-progress application (#16691)
  • Closed jobs page displays expired postings (#16656)
  • Expand-all on task cards works (#16695)

Auth migration flag

  • With FEATURE_AUTH_IN_APP_MIGRATION=false, existing auth flow is unchanged
  • Feature flag is readable from the app config (no runtime error)

Regression

  • Application submission flow end-to-end
  • Talent nomination form submits correctly
  • Community admin can access talent management view (#16685)
  • CSP header present on index.html; absent on other assets (#16696)
  • No Azure noisy log entries from storage/Azure client (#16598)

📋 What's Changed

Features

  • [Feature] Professionalization tab (#16702)
  • [Feature] Link experience into development programs interest (#16680)
  • [Feat] Add employee verification admin profile page (#16710)
  • [Feat] Add various bilingual language option (#16694)
  • [Feature] Introduce soft deleting of community development programs (#16692)
  • [Feature] Create, Edit UI for Talent event (#16366)
  • [Feat] Allow deletion of applications (#16691)
  • [Feature] Procurement - community interest customization (#16601)
  • [Feature] Back up emails instead of mangling (#16684)
  • [Feature] In-app auth migration feature flag (#16675)
  • [Feature] Closed jobs page (#16656)
  • [Feature] Updates comptrollership executives page (#16640)
  • [Feat] Restore soft deleted experience skills (#16606)
  • [Feat] Expand all action task card (#16695)
  • [Feat] Dev docker container (#16482)
  • [Refactor] Full Announcement model (#16617)

Refactor / Debt

  • [Refactor] Team-aware role checks for departments (#16701)
  • [Refactor] Talent request sidebar (#16703)
  • [Refactor] Nomination form UI updates (#16603)
  • [Fix] Removes FEATURE_APPLICATION_EMAIL_VERIFICATION (#16681)

Bug Fixes

  • [Bug] Set CSP on index.html only (#16696)
  • [Bug] Stop Azure logging noise (#16598)
  • [Bug] Allow Community admin to view talent management (#16685)
  • [Bug] Improve talent event validators (#16626)
  • [Bug] Fix id ambiguous error (#16622)
  • [Fix] Dialog title close overlap (#16627)
  • [Fix] More nomination page styling (#16648)
  • [Fix] Deadline date styles (#16688)
  • [Fix] Custom policy response for creating a nomination (#16623)
  • [Fix] Theme provider type (#16687)
  • Fix error cause propagation, communityId fallback in UpdateCommunityPage (#16488)
  • remove unsaved from aria attribute computation (#16689)

Copy

  • [Copy] Updates IT Training fund page (#16686)
  • [Copy] Updates Instructor-led training opportunities page (#16683)
  • [Copy] Updates Certification exam vouchers page (#16682)
  • [Copy] Removes duplicate keys, updates key to disambiguate (#16733, #16734)
  • Fix translations (#16709)
  • Fix typos (#16699)