Skip to content

fix(OUT-4020): bump tiptap to 3.29.2 to fix RangeError in delete extension - #229

Merged
priosshrsth merged 1 commit into
mainfrom
anit/out-4020-rangeerror-position-1-outside-of-fragment-paragraph
Aug 5, 2026
Merged

fix(OUT-4020): bump tiptap to 3.29.2 to fix RangeError in delete extension#229
priosshrsth merged 1 commit into
mainfrom
anit/out-4020-rangeerror-position-1-outside-of-fragment-paragraph

Conversation

@priosshrsth

@priosshrsth priosshrsth commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Fixes the Sentry crash in OUT-4020 (CLIENT-HOME-V3-1N). @tiptap/core 3.20.0's built-in delete extension called doc.nodeAt(newStart - 1) with no bounds check, so a RemoveMarkStep mapping to position 0 threw RangeError: Position -1 outside of fragment. It runs in a setTimeout, so nothing caught it. Upstream added the newStart > 0 guard in 3.22.0 — this is a dependency bump, no app code changed.

What to look at

  • package.json / pnpm-lock.yaml — the whole @tiptap/* set moves 3.20.0 → 3.29.2, not core alone. starter-kit's transitive extensions float on carets, so pinning core alone would leave them several minors ahead of it. Tree now has a single @tiptap/core. Checked every release 3.20 → 3.29: no breaking changes.
  • Nothing else in the diff.

Verified / not verified

typecheck, lint and build pass; guard confirmed present in the installed dist. Not verified in a real portal — the Sentry event is a single occurrence with no repro steps and reproducing needs a live client session. Since this bumps the editor by 9 minors, the review risk is regression in the editor generally, not in the crash path: worth a pass over the portal and the editor (links/autolink, tables, images, slash commands, autofill fields) rather than trying to reproduce the original error.

2026-08-04.16-51-36.mov

🤖 Generated with Claude Code

…nsion

@tiptap/core 3.20.0's built-in `delete` extension called
`doc.nodeAt(newStart - 1)` without a bounds check, so a RemoveMarkStep
mapping to position 0 threw `RangeError: Position -1 outside of fragment`.
It runs inside a setTimeout, so nothing caught it. Upstream added the
`newStart > 0` guard in 3.22.0.

Bumped the whole @tiptap/* set rather than core alone: starter-kit's
transitive extensions float on carets and would otherwise sit several
minors ahead of a pinned core. No breaking changes across 3.20 -> 3.29.

Fixes CLIENT-HOME-V3-1N

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@linear-code

linear-code Bot commented Aug 4, 2026

Copy link
Copy Markdown

OUT-4020

@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
client-home-v3 Ready Ready Preview Aug 4, 2026 10:29am

Request Review

@greptile-apps

greptile-apps Bot commented Aug 4, 2026

Copy link
Copy Markdown

Greptile Summary

The PR upgrades the complete Tiptap dependency set from 3.20.0-era resolutions to 3.29.2 to incorporate the upstream delete-extension bounds check while retaining one consistent core/PM version.

  • Updates all direct @tiptap/* dependency specifications together.
  • Regenerates the lockfile with Tiptap 3.29.2 and its updated ProseMirror, Floating UI, and related transitive dependencies.
  • No application code changes are included.

Confidence Score: 5/5

The PR appears safe to merge, with no concrete changed-code defect identified in the coordinated dependency upgrade.

The manifest and lockfile resolve the Tiptap core, React integration, extensions, and ProseMirror bundle consistently at 3.29.2, and the investigated transitive changes do not establish a reachable compatibility failure on supported targets.

Important Files Changed

Filename Overview
package.json Coordinately upgrades all direct Tiptap packages to 3.29.2 without leaving mixed declared versions.
pnpm-lock.yaml Resolves a consistent Tiptap 3.29.2 dependency graph; no concrete incompatible peer, engine, build, or runtime path was identified.

Reviews (1): Last reviewed commit: "fix(OUT-4020): bump tiptap to 3.29.2 to ..." | Re-trigger Greptile

@SandipBajracharya SandipBajracharya left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@priosshrsth
priosshrsth merged commit 87522cd into main Aug 5, 2026
8 checks passed
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