1.2 KiB
1.2 KiB
Performance & Stability Baseline (Phase 1)
Last updated: 2026-05-13
Baseline observations
Performance
- Loader-heavy pages (myportal/representation/new appeal) perform multiple external calls per SSR request.
- Form XML is read/normalized repeatedly from disk in SSR path.
- Some large components still combine orchestration + rendering, increasing rerender work.
Stability
- Several SSR/data paths assume nested API response shapes without guard rails.
- Representation resume/new loader had crash/redirect fragility around missing contact/representation objects.
- Logging noise can mask actionable failure signals.
Changes started in this phase
- Added in-memory XML cache in
lib/forms/readFormXml.js(safe, process-local). - Added null/redirect guards in
lib/representation/pageLoaders.jsfor missing user/contact and missing representation entry. - Began auth-path de-duplication and redirect hardening (see auth reliability doc).
Next baseline improvements
- Add guarded defaults in remaining loader paths (
loadNewAppealPage, myportal page loaders). - Introduce structured non-sensitive SSR failure telemetry for dependency failures.
- Expand bounded concurrency/parallelism where safe and contract-preserving.