Commit Graph
177 Commits
Author SHA1 Message Date
Robert Bond b0004381ed Merged PR 2266: update media tabs display and query
update media tabs display and query

Related work items: #22698
2026-04-22 11:38:04 +00:00
Robert Bond 37a81522d5 Merged PR 2260: refactor(representations): complete slice-based refactor of representations flow
## Representations Refactor — Behaviour-Preserving Structural Improvements

This PR delivers a full refactor of the representations flow, improving structure, readability, and maintainability while preserving all existing behaviour.

The work was completed using a controlled, slice-based approach with strict guardrails and regression validation at each step. No changes have been made to user journeys, payloads, routing, or EN/CY behaviour.

The result is a cleaner, more maintainable codebase with reduced coupling and clearer separation of concerns, ready for future enhancements without increased risk.

---

## What Was Done

The refactor was delivered incrementally across the following slices:

- **R1** — Representation entry logic extraction
- **R2** — Page loader separation (SSR/data orchestration)
- **R3** — Journey step resolution extraction
- **R4** — Flow shell decomposition
- **R5** — Representation elements normalisation
- **R6** — Data/service layer cleanup
- **R7** — Summary rendering proof slice
- **R8** — Submission/finalisation boundary isolation
- **R9** — Summary rollout (Batch 1)

Each slice:
- was isolated to a single concern
- followed strict guardrails
- was validated before merge

Full detail is available in:
`context/representations-refactor-tracker.md`

---

## Key Improvements

- Reduced coupling across the representations journey
- Separated data loading, orchestration, and rendering concerns
- Simplified complex conditional logic into testable helpers
- Standardised summary rendering using shared primitives (`SummaryCard`, `SummaryRow`)
- Isolated submission/finalisation sequencing into explicit boundaries
- Improved overall readability and maintainability

---

## Behaviour Preservation

This refactor does **not** change:

- User journeys (APP / IP / Agent / LPA)
- Route and query behaviour
- Payload contracts and API interactions
- Redux state shape and usage
- Validation rules and messaging
- EN/CY behaviour
- File upload / PDF / email sequencing
- Linked-case logic

All changes are structural only.

---

## Validation

### Automated

- `npm run lint` — passed (warnings only, no new errors)
- `npm run test:reps` — passed (7/7)

### Manual

Validated end-to-end across:

- APP
- IP
- Agent
- LPA

Including:

- representation creation
- editing/resuming representations
- submission flow
- confirmation/completion behaviour
- summary rendering across case types
- EN/CY parity

---

## Risk Management

The refactor targeted several high-risk areas:

- Case summary entry logic
- Representation submission/finalisation sequencing
- Dual-mode entry (new vs existing representation)

Risk was controlled through:

- small, incremental slices
- one branch per slice
- regression validation per slice
- strict behaviour-preservation guardrails
- controlled rollout for summary rendering changes

---

## Reviewer Guidance

Suggested areas to focus on:

- End-to-end representation journey (create → submit → complete)
- S...
2026-04-20 13:09:07 +00:00
robbond bef8f2590b chore(refactor): remove stale legacy actions import comments 2026-03-12 17:41:36 +00:00
robbond 72e4655188 refactor phase 3a myportal representation and case imports 2026-03-12 09:26:34 +00:00
robbond dacf2511f5 refactor phase 3a myportal index targeted actions imports 2026-03-12 09:25:56 +00:00
robbond 5c54220bf8 refactor phase 3a myportal case-by-incident imports 2026-03-12 09:24:10 +00:00
robbond 548c85e339 refactor phase 3a myportal dns imports 2026-03-12 09:22:17 +00:00
robbond 562cffdc59 refactor phase 3a myportal advanced and address search imports 2026-03-12 09:20:33 +00:00
robbond cbcb9549be refactor phase 3a myportal search results imports 2026-03-12 09:20:01 +00:00
robbond 694eab8297 refactor phase 3a myportal contactus targeted actions imports 2026-03-12 09:18:28 +00:00
robbond df311e131a fixed breacrumb and label 2026-03-10 18:02:37 +00:00
robbond 5013b967f3 reinstate sips rep button logic 2026-02-20 07:40:27 +00:00
robbond 5cd3744e52 passing mediaobj to dns case and myportal dns case 2026-02-19 14:12:55 +00:00
robbond 9d355f6f77 passing media obj in myportal search 2026-02-19 13:58:58 +00:00
robbond e6b0b0763a 21099 update filename validation with # 2026-01-20 15:20:54 +00:00
robbond 4710d3e420 21097 remove ui for further details 2026-01-19 13:15:50 +00:00
robbond 9241fe0b84 updated restriction to disallow partial reps and appeals from being submitted when not docapi 2026-01-15 13:20:07 +00:00
robbond 5889c4093b Merge branch 'Development' into SIPS-Development 2025-12-02 14:03:48 +00:00
Robert Bond ab1df81745 Merged PR 2009: partial synch with ph2 updates
partial synch with ph2 updates

Related work items: #20553
2025-11-28 08:50:01 +00:00
robbond 3f4bd8d52e partial synch with ph2 updates 2025-11-28 08:45:13 +00:00
robbond 02a83700ba docoffline dependant appeals and reps 2025-11-10 06:22:31 +00:00
robbond e54a0b2253 updated serching to reduce CRM calls for performance and stability 2025-10-28 11:21:38 +00:00
robbond c0dbaa2c3f reps files to use ticket number not title for case ref 2025-09-11 10:49:47 +01:00
robbond 92ceacb57b Merge branch 'Development' into SIPS-Development 2025-08-20 12:11:55 +01:00
robbond 95d5164b2f updated right click actions 2025-08-18 18:24:42 +01:00
Robert Bond f6bfc4b5d0 Merged PR 1811: use ticket number not title/reference/pinswg_name
Related work items: #18356
2025-08-12 08:42:11 +00:00
robbond 75436837a2 pass ticketnumber as prop 2025-08-12 07:15:31 +01:00
robbond 986d5a382f case ref not case title 2025-08-04 06:27:29 +01:00
robbond a92b0af2db 17143 removed pref from myportal page rely on link for lang 2025-06-18 12:49:38 +01:00
robbond 412f7d2e90 17143 adjsut switcher 2025-06-18 10:17:26 +01:00
robbond ffae7df890 17143 pref lang abck in 2025-06-18 09:29:43 +01:00
robbond 4b92f40018 test language switcher 2025-06-18 09:09:06 +01:00
robbond 46876cdff6 16185 and 16630 language switching 2025-06-13 12:58:38 +01:00
robbond b4451dc7ee build warning fix 2025-06-13 12:53:51 +01:00
robbond a80fa87ea2 refactor 2025-06-11 13:05:18 +01:00
robbond 193da6af2f 17025 unsub issues 2025-06-10 11:25:32 +01:00
robbond f11aa09412 17025 unsub fixes 2025-06-09 14:12:44 +01:00
robbond 408dae0ca3 16937 updated translation for contact us button 2025-06-04 10:03:30 +01:00
robbond cdf48a81a7 16937 welsh contact us form 2025-06-03 19:03:53 +01:00
robbond 1220131cfd 16478 right click view all page titles 2025-06-03 16:11:51 +01:00
robbond f725c811b3 16944 logged contact us 2025-05-28 14:12:56 +01:00
robbond d85b59a25f updated to check language selector cookie and pref language 2025-05-26 06:54:50 +01:00
robbond 29abd0efd0 rioght mouse click on view all 2025-05-22 14:15:42 +01:00
robbond c738d2bde9 added nrw domain as env variable 2025-05-15 10:15:41 +01:00
robbond 81fe090ce0 Merge branch 'Development' into SIPS-Sprint-5-dev-merge-csp 2025-04-16 15:46:10 +01:00
robbond d882e65071 uodated queries to sort deep recursion 2025-04-16 08:44:45 +01:00
robbond 2dc8a721ab Merge branch 'Development' into SIPS-Development 2025-04-16 08:27:06 +01:00
robbond 87f0dcd811 changes sandbox: {} to eval: true, caused errors in evaluated queries 2025-04-15 17:25:14 +01:00
robbond c7c74b6250 language check update 2025-04-15 13:26:53 +01:00
robbond a26313c798 Merge branch 'Development' into SIPS-Development 2025-04-15 13:22:35 +01:00