Skip to content

fix(deps): pin prosemirror-view 1.42.3+ and unblock the pnpm audit - #240

Merged
StephenTangCook merged 1 commit into
mainfrom
claude/audit-prosemirror-view
Oct 12, 2026
Merged

StephenTangCook merged 1 commit into
mainfrom
claude/audit-prosemirror-view

Conversation

@StephenTangCook

@StephenTangCook StephenTangCook commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Turns the Audit (pnpm) CI job green again. It has been red on main since at least the 0.10.18 release run, so it fails on every PR. This implements the patch proposed in #237 (comment).

  • prosemirror-view → ^1.42.3 (pnpm override). This clears GHSA-c8x8-7fp4-3x9w (high; XSS via unvalidated clipboard slice context attributes on paste). It reaches the editor through @tiptap/extension-link > @tiptap/pm, whose range still admits the vulnerable versions. The lockfile now resolves 1.42.6.
  • prosemirror-model → ^1.25.12 (pnpm override), which the proposal didn't have. The patched prosemirror-view requires ^1.25.12, while @tiptap/pm was locked to 1.25.11. Without the pin the lockfile held two prosemirror-model copies. Two copies in one bundle make the list and quote commands throw (Can not convert <> to a Fragment). There is now exactly one copy of each.
  • Ignore GHSA-vfj7-8cjw-p6xm (braces <=3.0.3) via pnpm.auditConfig.ignoreGhsas. It has no patched release. It's a build-time-only path (@tailwindcss/cli > @parcel/watcher > micromatch > braces) that only sees the repo's own glob patterns, and it isn't shipped to consumers.

Each entry has a // note in package.json, as the existing esbuild and undici overrides do, saying when to remove it.

Why

A red Audit job on every PR hides real new advisories. The prosemirror-view advisory is a real paste XSS in the editor's own dependency.

Overrides only shape this repo's lockfile, not what consumers install. Hosts must resolve prosemirror-view >=1.42.3 themselves; tightknit-app already pins it (ENG-6316).

Test plan

  • Reproduced first: pnpm audit --audit-level=high reported two highs (braces, prosemirror-view). Now it exits 0 at the root (one finding ignored) and in demo/.
  • pnpm typecheck
  • pnpm lint
  • pnpm test: 647 tests pass (522 unit, 125 Storybook browser), run project by project against a pre-provisioned Chromium. That includes the editor's list and quote command tests, which catch a duplicate prosemirror-model.
  • pnpm build:clean and pnpm demo:build

🤖 Generated with Claude Code

https://claude.ai/code/session_01MTy6g5wxP9DqjWJQshGz51


Generated by Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Clears GHSA-c8x8-7fp4-3x9w (high; prosemirror-view paste XSS) by pinning
prosemirror-view ^1.42.3, and pins prosemirror-model ^1.25.12 with it so
the bundle keeps a single ProseMirror model. Ignores GHSA-vfj7-8cjw-p6xm
(braces), which has no patched release and only reaches the build
toolchain through @tailwindcss/cli.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MTy6g5wxP9DqjWJQshGz51
@github-actions

Copy link
Copy Markdown
Contributor

Cloudflare preview

✅ Deployed 87cd840 · Branch preview · Commit preview · Build logs

@cloudflare-workers-and-pages

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
block-kitchen 87cd840 Commit Preview URL

Branch Preview URL
Oct 12 2026, 02:36 PM

@StephenTangCook
StephenTangCook merged commit c8eb5e1 into main Oct 12, 2026
13 checks passed
@StephenTangCook
StephenTangCook deleted the claude/audit-prosemirror-view branch October 12, 2026 14:59
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.

2 participants