Skip to content

fix: resolve security alerts#464

Merged
thymikee merged 1 commit into
mainfrom
fix/security-alerts
Apr 28, 2026
Merged

fix: resolve security alerts#464
thymikee merged 1 commit into
mainfrom
fix/security-alerts

Conversation

@thymikee

Copy link
Copy Markdown
Member

Summary

Resolve GitHub security alerts by updating vulnerable npm dependencies and disabling debugging on the Android snapshot helper.

  • Bumps fast-xml-parser, Vite/PostCSS resolution, Rspress/Unhead resolution, and isolated example-app transitive overrides for @xmldom/xmldom, postcss, and uuid.
  • Sets the Android snapshot helper manifest to android:debuggable="false" while preserving adb install -t behavior with android:testOnly="true".
  • Updates helper docs to describe the APK as test-only rather than debuggable.

Touched files: 7. Scope stayed within dependency metadata/lockfiles and the Android snapshot helper manifest/docs.

Validation

  • pnpm audit --json
  • pnpm --dir examples/test-app audit --ignore-workspace --json
  • pnpm check:tooling
  • pnpm --dir examples/test-app typecheck
  • pnpm build:android-snapshot-helper
  • aapt2 dump xmltree --file AndroidManifest.xml .tmp/android-snapshot-helper/agent-device-android-snapshot-helper-0.14.0.apk | rg -n "debuggable|testOnly|application"
  • node -e "const { createRequire } = require('node:module'); const req = createRequire(process.cwd() + '/examples/test-app/node_modules/.pnpm/xcode@3.0.1/node_modules/xcode/lib/pbxProject.js'); const uuid = req('uuid'); console.log(typeof uuid.v4, uuid.v4().length)"

@github-actions

github-actions Bot commented Apr 28, 2026

Copy link
Copy Markdown
PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-04-28 20:59 UTC

@thymikee thymikee merged commit 999b475 into main Apr 28, 2026
18 checks passed
@thymikee thymikee deleted the fix/security-alerts branch April 28, 2026 20:56
thymikee added a commit that referenced this pull request Jun 1, 2026
* fix: resolve test-app dependabot alerts

The postcss/uuid overrides added in #464 stopped applying once test-app
ended up nested under the repo-root pnpm-workspace.yaml: pnpm only honors
overrides from a workspace root, so test-app's package.json `pnpm.overrides`
were silently ignored and the lockfile drifted back to vulnerable versions.

Move the overrides into a dedicated examples/test-app/pnpm-workspace.yaml so
test-app is its own pnpm root and the overrides are honored, and add scoped
overrides for the two remaining alerts:

- postcss   8.4.49 -> 8.5.12  (XSS in CSS stringify)
- uuid      7.0.3  -> 14.0.0  (missing buffer bounds check)
- ws@8      8.20.0 -> 8.21.0  (uninitialized memory disclosure)
- brace-expansion@5  5.0.5 -> 5.0.6  (ReDoS / max bypass)

ws and brace-expansion overrides are scoped to the vulnerable majors so the
non-vulnerable ws@7 / brace-expansion@1 copies in the tree are left untouched.

* chore: drop dead lodash-es override, document test-app workspace

- Remove the no-op `lodash-es` override from the root package.json (leftover
  from #368). lodash-es is no longer in the dependency tree, so the override
  resolved to nothing; regenerating the root lockfile is a no-op.
- Add a comment to examples/test-app/pnpm-workspace.yaml explaining why the
  file exists, so it isn't "tidied away" and the override drift reintroduced.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant