#5757 - Partner self declare tracker card updates#5850
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the application status tracker to support partner self-declare (including partner “unable to report” flows), harmonizes parent/partner supporting-user models, and fixes missing financial fields by ensuring offeringIntensity is loaded and propagated to the supporting-user forms.
Changes:
- Adds
offeringIntensityto supporting-user payloads across API + web to ensure the correct dynamic supporting-user form behavior. - Refactors “parent/partner info” models to a shared supporting-user details shape (
fullName,status,isAbleToReport), and updates tracker UI logic accordingly. - Updates/extends e2e coverage for the modified application in-progress details responses (students/aest) and aligns expected payload shapes.
Reviewed changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| sources/packages/web/src/types/contracts/supporting-user/SupportingUserContracts.ts | Adds offeringIntensity to the supporting-user web contract. |
| sources/packages/web/src/services/http/dto/Application.dto.ts | Harmonizes supporting-user details DTO shape used by the web app. |
| sources/packages/web/src/components/common/applicationTracker/generic/ApplicationStatusTrackerBanner.vue | Provides defaults for optional banner props to avoid undefined values. |
| sources/packages/web/src/components/common/applicationTracker/InProgress.vue | Updates partner/parent tracker banners and adds partner self-declare navigation + action disabling. |
| sources/packages/web/src/components/common/applicationTracker/ApplicationProgressBar.vue | Normalizes prop/event bindings and passes action-allowed state down to InProgress tracker. |
| sources/packages/web/src/components/common/applicationTracker/ApplicationInProgressChangeRequest.vue | Updates change-request tracker UI to use unified supporting-user details and adds partner self-declare behavior. |
| sources/packages/web/src/components/common/SupportingUserForm.vue | Ensures offeringIntensity is included in the supporting-user form model. |
| sources/packages/backend/apps/api/src/services/supporting-user/supporting-user.service.ts | Loads application.offeringIntensity when fetching identifiable supporting users. |
| sources/packages/backend/apps/api/src/route-controllers/supporting-user/supporting-user.students.controller.ts | Returns offeringIntensity from the identifiable supporting-user endpoint. |
| sources/packages/backend/apps/api/src/route-controllers/supporting-user/models/supporting-user.dto.ts | Adds offeringIntensity to the reported supporting-user DTO contract. |
| sources/packages/backend/apps/api/src/route-controllers/application/models/application.dto.ts | Refactors supporting-user details shape returned from application tracker endpoints. |
| sources/packages/backend/apps/api/src/route-controllers/application/application.controller.service.ts | Centralizes mapping of supporting users into the tracker DTO shape. |
| sources/packages/backend/apps/api/src/route-controllers/application/tests/application.students.controller.getInProgressApplicationDetails.e2e-spec.ts | Updates expectations for new supporting-user details response shape. |
| sources/packages/backend/apps/api/src/route-controllers/application/tests/application.students.controller.getCompletedApplicationDetails.e2e-spec.ts | Updates expectations for new supporting-user details response shape in completed + change request scenarios. |
| sources/packages/backend/apps/api/src/route-controllers/application/tests/application.aest.controller.getInProgressApplicationDetails.e2e-spec.ts | Adds/updates AEST coverage for partner waiting/supporting-user details response shape. |
|
|
||
| it("Should get application in-progress details when the student has a partner who is able to report but the partner has not entered their supporting data.", async () => { | ||
| // Arrange | ||
| const student = await saveFakeStudent(db.dataSource); |
There was a problem hiding this comment.
Minor, student will be created by the saveFakeApplication if one is not provided.
| }, | ||
| }, | ||
| ); | ||
| await db.supportingUser.save([partner]); |
There was a problem hiding this comment.
Minor, no need to be provided as an array.
andrewsignori-aot
left a comment
There was a problem hiding this comment.
Great work, thanks for the refactor to make parents and partners share the same structures, looks good 👍
|



Overview
supportinguserpartner2026-2027.jsonbecause offeringintensity wasn't loaded into the formScreenshots
Student
Application Status Tracker -> Partner Self Declare (26-27)
Application Status Tracker -> Partner Declaration (26-27)
Application Status Tracker -> Partner Declaration (25-26)
Change Request Status Tracker -> Partner Self Declare (26-27)
Change Request Status Tracker -> Partner Declaration (26-27)
Change Request Status Tracker -> Partner Self Declare (25-26)
Change Request Status Tracker -> Partner Declaration (25-26)
Ministry
Application Status Tracker -> Partner Self Declare (26-27)
Application Status Tracker -> Partner Declaration (26-27)
Application Status Tracker -> Partner Declaration (25-26)
E2E Tests
sources/packages/backend/apps/api/src/route-controllers/application/_tests_/application.aest.controller.getInProgressApplicationDetails.e2e-spec.tssources\packages\backend\apps\api\src\route-controllers\application\_tests_\application.students.controller.getCompletedApplicationDetails.e2e-spec.tssources/packages/backend/apps/api/src/route-controllers/application/_tests_/application.students.controller.getInProgressApplicationDetails.e2e-spec.ts