# DEP-001 frontend advisory remediation Updated: 2026-08-10 Status: `VERIFIED LOCALLY`. Remote pull-request run 609 passes the complete CI job, including dependency audit and browser smoke. Live deployment still requires an approved merge-to-main and production verification. ## Trigger The live deployment pipeline failed its frontend dependency audit on five advisories: React Router/@remix-run/router, js-yaml and nanoid. ## Resolution - Upgraded `react-router-dom` from the vulnerable 6.x line to `7.18.2`, covering the subsequently reported React Router advisories. - Refreshed transitive `js-yaml` from `3.15.0` to `3.15.1` and `nanoid` from `3.3.16` to `3.3.18` through normal lockfile resolution. - Removed the obsolete v6 `RouterProvider` future flag. Existing route definitions and URLs were not redesigned. - Supplied Node's `TextEncoder`/`TextDecoder` to Jest's jsdom environment for React Router v7 module initialization. - Did not run `npm audit fix --force`; the explicit upgrade and resolved lockfile were reviewed. ## Verification - `npm.cmd audit`: PASS, zero vulnerabilities. - Focused data-router regression: 6 suites, 24 tests passed. - Full frontend regression: 49 suites, 190 tests passed. - `npm.cmd run build`: PASS, production compilation, TypeScript and static generation. - Resolved versions: `react-router-dom`/`react-router` `7.18.2`, `js-yaml` `3.15.1`, `nanoid` `3.3.18`. - Commit: `b55a592` (pushed to `release-readiness`). - Gitea pull-request run 608: `Audit frontend dependencies` PASS; the job advanced through frontend tests and failed later at `Test browser smoke flows` because `e2e/smoke.spec.ts` still expected intentionally removed page copy. - Corrected smoke assertion: full local Playwright suite 4/4 passed against disposable local API/frontend data. - Smoke correction commit: `75bf144` (pushed to `release-readiness`). - Gitea replacement run 609: complete pull-request test job PASS in 4m20s. The deploy job was skipped by its intentional `push`/`main` condition. ## Remaining gate Merge only when the full release-readiness branch is approved, then observe the `main` deploy and run production route smoke. No production access or deployment was performed in this session. ## Rollback Reverting `b55a592` restores the previous router/test setup but also restores known vulnerable packages and the deployment-blocking audit result. Prefer fixing any v7 compatibility regression forward; do not suppress the audit without a reviewed exception.