Conversation
This comment was marked as outdated.
This comment was marked as outdated.
|
Claude finished @mayuran-deriv's task in 3m 18s —— View job PR Review: fix: security issues
SummaryThis is a security dependency update touching only Changes since previous review (this synchronize commit): removed preemptive 🔴 High Priority1.
|
|
Check | Result
-- | --
Exists on npm | Yes — both lodash and lodash-es at 4.17.23
Published by | jdalton — John David Dalton, the original creator/maintainer of lodash
Maintainers | Same 3 maintainers as 4.17.21: mathias, jdalton, bnjmnt4n
Publish date | 2026-01-21 (about a month ago)
npm signature | Signed with keyid SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U (standard npm registry signing key)
Previous version | 4.17.21 published 2021-02-20 — ~5 year gap explains unfamiliarity
|
|
Claude finished @mayuran-deriv's task in 1m 59s —— View job PR Review: fix: security issues
SummaryThis PR updates Changes vs base (master):
🟢 All overrides verified correct
All overrides resolve to expected versions in the lock file. React Router bump to 🟡 Medium PriorityMissing PR descriptionThe PR has no description, making it impossible to audit which CVEs or 🟢 Low Priority
|
|
Claude finished @mayuran-deriv's task in 2m 15s —— View job PR Review: fix: security issues
SummaryThis PR updates New in the latest commit (382a5fd) compared to prior reviewed state:
All other overrides ( 🟡 Medium Priority
|
| Override | Resolved | Vulnerability |
|---|---|---|
minimatch ^10.2.3 |
10.2.4 |
ReDoS (minimatch CVEs) |
qs ^6.14.2 |
6.15.0 |
Prototype pollution (CVE-2022-24999) |
lodash ^4.17.23 |
4.17.23 |
Prototype pollution/RCE — confirmed legitimate publish by jdalton on 2026-01-21 |
lodash-es ^4.17.23 |
4.17.23 |
Same as above |
undici ^6.23.0 |
6.23.0 |
Fetch CVEs |
diff ^8.0.3 |
8.0.3 |
ReDoS (CVE-2024-56358) |
serialize-javascript ^7.0.3 |
7.0.3 |
XSS/injection (CVE-2019-16769, CVE-2020-7660) |
webpack ^5.104.1 |
5.105.3 |
Dev-only security updates |
webpack-dev-server ^5.2.3 |
5.2.3 |
Dev-only |
react-router-dom ^6.30.3 |
6.30.3 |
No breaking changes in 6.25→6.30 range |
🟢 Low Priority (pre-existing, non-blocking)
glob: "10.5.0" exact pin — All new overrides use ^ ranges, but glob remains an exact pin preventing automatic patch security updates. Consider "^10.5.0" in a follow-up.
Verdict
Approved with one verification step. The security intent is correct throughout. Before merging, manually verify chart functionality on the preview deployment to confirm the lodash.set → full lodash alias doesn't break @deriv/deriv-charts at runtime. If charts work correctly, this is safe to merge.
|
Claude finished @mayuran-deriv's task in 2m 36s —— View job PR Review: fix: security issues
SummaryThe latest commit ( "@semantic-release/npm": {
".": "^13.1.2",
- "npm": "npm:tiny-invariant@^1.3.3"
+ "npm": "npm:lodash@4.17.23"
},All other overrides were reviewed and approved in prior review cycles. 🔴 High Priority1.
|
| Override | Resolved | Vulnerability |
|---|---|---|
minimatch ^10.2.3 |
10.2.4 |
ReDoS (minimatch CVEs) |
qs ^6.14.2 |
6.15.0 |
Prototype pollution (CVE-2022-24999) |
lodash ^4.17.23 |
4.17.23 |
Prototype pollution/RCE — confirmed legitimate publish by jdalton on 2026-01-21 |
lodash-es ^4.17.23 |
4.17.23 |
Same as above |
undici ^6.23.0 |
6.23.0 |
Fetch CVEs |
diff ^8.0.3 |
8.0.3 |
ReDoS (CVE-2024-56358) |
serialize-javascript ^7.0.3 |
7.0.3 |
XSS/injection (CVE-2019-16769, CVE-2020-7660) |
webpack ^5.104.1 |
5.105.3 |
Dev-only security updates |
webpack-dev-server ^5.2.3 |
5.2.3 |
Dev-only |
react-router-dom ^6.30.3 |
6.30.3 |
No breaking changes in 6.25→6.30 range |
Verdict
Request changes on two blocking items before merging:
- Fix the
@semantic-release/npmnested override — replace"npm": "npm:lodash@4.17.23"with either a real npm version pin (e.g."npm": "^11.1.0") or remove the nested override entirely. - Regenerate the lock file —
package.jsonandpackage-lock.jsonare currently out of sync; the lock file must be updated to match thepackage.jsonchanges before merging.
|
Claude finished @mayuran-deriv's task in 2m 32s —— View job PR Review: fix: security issues
SummaryThe latest commit (
🔴 High Priority1.
|
| Override | Resolved | Vulnerability |
|---|---|---|
minimatch ^10.2.3 |
10.2.4 |
ReDoS (minimatch CVEs) |
qs ^6.14.2 |
6.15.0 |
Prototype pollution (CVE-2022-24999) |
lodash ^4.17.23 |
4.17.23 |
Prototype pollution/RCE — confirmed legitimate publish by jdalton on 2026-01-21 |
lodash-es ^4.17.23 |
4.17.23 |
Same as above |
undici ^6.23.0 |
6.23.0 |
Fetch CVEs |
diff ^8.0.3 |
8.0.3 |
ReDoS (CVE-2024-56358) |
serialize-javascript ^7.0.3 |
7.0.3 |
XSS/injection (CVE-2019-16769, CVE-2020-7660) |
webpack ^5.104.1 |
5.105.3 |
Dev-only security updates |
webpack-dev-server ^5.2.3 |
5.2.3 |
Dev-only |
react-router-dom ^6.30.3 |
6.30.3 |
No breaking changes in 6.25→6.30 range |
Verdict
Request changes on two items before merging:
- Fix the
@semantic-release/npmnpmoverride —"npm": "npm:lodash@4.17.23"inside@semantic-release/npmreplaces the npm CLI with lodash and has now been promoted to the top-levelnode_modules/npm, widening the blast radius. Either remove the nestednpmkey entirely, or replace it with a real npm version pin. - Reconsider the
lodash.settop-level override — Promoting it from nested (under@deriv/deriv-charts) to top-level increases the API incompatibility risk for all consumers oflodash.set. Scope it back to@deriv/deriv-chartsor remove if no CVE applies.
|
Claude finished @mayuran-deriv's task in 2m 13s —— View job PR Review: fix: security issues
SummaryThe latest commit ( "node_modules/npm": {
"name": "lodash",
- "version": "4.17.23",
+ "version": "99.0.0",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz",
"integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==",All two structural problems from the prior review remain. 🔴 High Priority1. Lock file is internally inconsistent —
|
| Override | Resolved | Vulnerability |
|---|---|---|
minimatch ^10.2.3 |
10.2.4 |
ReDoS (minimatch CVEs) |
qs ^6.14.2 |
6.15.0 |
Prototype pollution (CVE-2022-24999) |
lodash ^4.17.23 |
4.17.23 |
Prototype pollution/RCE — confirmed legitimate publish by jdalton on 2026-01-21 |
lodash-es ^4.17.23 |
4.17.23 |
Same as above |
undici ^6.23.0 |
6.23.0 |
Fetch CVEs |
diff ^8.0.3 |
8.0.3 |
ReDoS (CVE-2024-56358) |
serialize-javascript ^7.0.3 |
7.0.3 |
XSS/injection (CVE-2019-16769, CVE-2020-7660) |
webpack ^5.104.1 |
5.105.3 |
Dev-only security updates |
webpack-dev-server ^5.2.3 |
5.2.3 |
Dev-only |
react-router-dom ^6.30.3 |
6.30.3 |
No breaking changes in 6.25→6.30 range |
🟢 Low Priority (pre-existing, non-blocking)
glob: "10.5.0" exact pin — All new overrides use ^ ranges, but glob remains an exact pin preventing automatic patch security updates. Consider "^10.5.0" in a follow-up.
Verdict
Request changes on three items before merging:
- Remove the lock file inconsistency —
node_modules/npmhasversion: "99.0.0"butresolvedpoints tolodash-4.17.23.tgz. A version number that doesn't exist on the registry, used to misrepresent what's installed, must not be in a production lock file. - Fix the
@semantic-release/npmnpmoverride —"npm": "npm:lodash@4.17.23"replaces the npm CLI with lodash and has been promoted to top-levelnode_modules/npm. Either remove the nested"npm"key entirely or use a real npm version pin (e.g."npm": "^10.9.2"). - Reconsider the
lodash.settop-level override — Scope it to@deriv/deriv-chartsor remove it if no CVE applies.
|
Claude finished @mayuran-deriv's task in 1m 29s —— View job PR Review: fix: security issues
SummaryThe latest commit (
🟡 Medium Priority (one remaining open item)
|
| Override | Resolved | Vulnerability |
|---|---|---|
minimatch ^10.2.3 |
10.2.4 |
ReDoS (minimatch CVEs) |
qs ^6.14.2 |
6.15.0 |
Prototype pollution (CVE-2022-24999) |
lodash ^4.17.23 |
4.17.23 |
Prototype pollution/RCE — confirmed legitimate publish by jdalton on 2026-01-21 |
lodash-es ^4.17.23 |
4.17.23 |
Same as above |
undici ^6.23.0 |
6.23.0 |
Fetch CVEs |
diff ^8.0.3 |
8.0.3 |
ReDoS (CVE-2024-56358) |
serialize-javascript ^7.0.3 |
7.0.3 |
XSS/injection (CVE-2019-16769, CVE-2020-7660) |
webpack ^5.104.1 |
5.105.3 |
Dev-only security updates |
webpack-dev-server ^5.2.3 |
5.2.3 |
Dev-only |
react-router-dom ^6.30.3 |
6.30.3 |
No breaking changes in 6.25→6.30 range |
@semantic-release/npm ^13.1.2 |
✅ Fixed — nested npm override removed | Dev-only release tooling |
Verdict
Approved with one medium-priority note. Both blocking items from the prior review have been resolved:
- ✅ The
@semantic-release/npmnested override replacingnpmCLI with lodash is gone. - ✅ The inconsistent
node_modules/npmlock file entry (version99.0.0pointing to lodash) is removed.
The remaining lodash.set top-level override is non-blocking given the successful build — the only confirmed consumer (@deriv/deriv-charts) ships pre-bundled. Consider scoping it to @deriv/deriv-charts in a follow-up for hygiene.
|
No description provided.