Repository navigation
fix: repair lockfile, widen deps overrides, add dep-graph drift check, document scripts suite - #1242
Merged
vjuliaife merged 3 commits intoOct 18, 2026
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…836-844-845 # Conflicts: # package-lock.json
|
@dimka90 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
…836-844-845 # Conflicts: # CONTRIBUTING.md # Makefile # package-lock.json
This branch had an error being deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue 845: npm run test:scripts is not referenced by any root aggregate test command or CI-facing convention doc
Problem:
scripts/__tests__has real coverage wired vianpm run test:scripts, butCONTRIBUTING.md's Testing table only listed the contract/API/SDK/e2e suites — a contributor changingscripts/*.tshad no documented signal that a dedicated suite exists.Resolution: Added an Operational scripts row to the Testing table (
npm run test:scripts, node-only, no external services). Documented that no workflow under.github/workflows/currently invokestest:scripts(explicit gap, with a run-before-push instruction), and listed thescripts/*.tsfiles that have no corresponding test inscripts/__tests__/for future coverage tracking. Verifiednpm run test:scriptsruns clean afternpm install(75 tests, 0 fail).Closes #845
Issue 844: No CI or pre-commit check that docs/dep-graph.svg stays in sync with scripts/dep-graph.ts output
Problem:
make dep-graphregeneratesdocs/dep-graph.svg, but nothing detects a forgotten regeneration, so the artifact silently drifts from the real workspace graph.Resolution: Added
scripts/check-dep-graph.ts(npmcheck:dep-graph, Makecheck-dep-graph): it regenerates the graph viascripts/dep-graph.ts, renders it with Graphviz, and diffs against the committeddocs/dep-graph.svg, failing (exit 1) if they differ or the file is missing. It guards Graphviz availability first — whendotis absent it prints a clear install hint and exits 0 (non-blocking), matching the "optional initially" criterion. The generator-version comment is stripped so the comparison isn't sensitive to the exact Graphviz build. Documented the check inCONTRIBUTING.mdalongside the existing lint/typecheck items.Closes #844
Issue 836: Security: dependency vulnerability found — 2026-08-03
Problem: The scheduled security audit flagged NPM vulnerabilities, including a critical
taradvisory. The root cause is that the committedpackage-lock.jsonwas corrupt JSON (a bad merge left a malformed@next/swc-*/sharpentry at line ~2295), sonpm auditandnpm cicould not read it and the existingoverrideswere never actually applied.Resolution: Repaired the lockfile: removed the corrupt committed
package-lock.jsonand regenerated a valid one (npm install --package-lock-only). This makes the pre-existingoverrideseffective. Also fixed the install blocker that prevented regeneration —lightningcss-darwin-arm64was wrongly listed as a harddependency(breaking non-mac installs withEBADPLATFORM); moved it tooptionalDependencies. Result:npm auditnow reports 0 critical (thetarcritical is resolved) andnpm audit --audit-level=critical(thedependency_scan.ymlgate) passes. Added a low-risktomloverride (^4.2.0, fixes@stellar/stellar-sdk'stomladvisories), dropping total vulnerabilities from 27→25 high.Closes #836
Issue 833: Security: dependency vulnerability found — 2026-08-02
Problem: A second scheduled-audit report listing the same NPM dependency vulnerabilities (all high, no critical). The audit could not act on them for the same reason — the committed lockfile was invalid JSON.
Resolution: The repaired, regenerate-able lockfile together with the widened
overridesaddresses this report:npm audit --audit-level=criticalpasses (0 critical). Remaining high/moderate findings are warnings only — the audit workflow (audit.yml) fails solely on critical NPM vulnerabilities and treats high as warnings, and the rest are the@opentelemetry/*family (requires a breaking major bump ofapps/apitracing) plus dev-onlysemantic-releasetransitives. These are documented as follow-ups rather than forced with risky major-version overrides.Closes #833
Verification
npm run test:scripts→ 75 tests, 22 suites, 0 fail.npm run check:dep-graph→ runs; prints non-blocking Graphviz-missing hint and exits 0 in this environment (dotnot installed).npm auditon the repaired lockfile →{critical:0, high:25, moderate:46};npm audit --audit-level=critical→ PASS.package-lock.jsonvalidated as well-formed JSON.Notes
package-lock.jsonis regenerated wholesale (it was previously invalid); it is excluded from thepr-sizecheck by.prsize-ignore.lightningcss-darwin-arm64platform fix and lockfile repair were required to make the security overrides effective and to unblocknpm ci/npm audit.