Releases: superdoc-dev/superdoc
Releases · superdoc-dev/superdoc
Release list
v1.44.0
Based on my analysis of the commits and codebase changes, here are the release notes:
What's New
- Side-targeted tracked change decisions — Accept or reject only the inserted or deleted half of a paired replacement via
trackChanges.decide()with thesideparameter ('inserted'/'deleted'), leaving the other half as a standalone pending change. - Tracked paragraph property changes in review API — Tracked numbering and alignment changes (w:pPrChange) now surface in
trackChanges.list()and can be accepted/rejected viatrackChanges.decide(). - List numbering metadata —
blocks.listreturns computed numbering (marker, path, kind) for numbered list items and numbered headings, plus aparagraphNumberingreference field so agents can read legal clause numbers. - Paragraph indentation metadata —
blocks.listnow exposes paragraph indentation (left, right, firstLine, hanging in twips) for layout-aware document analysis. - Visible text model for blocks.list — Text, length, preview, and ref now use the visible text model (tracked deletions excluded), matching how edit refs resolve and eliminating offset drift.
- Tracked list attach —
lists.attach()now supports tracked mode for list property changes. - Citation hyperlinks round-trip — Tracked citation hyperlinks export and import correctly through DOCX with full revision history preserved.
- LLM tools core preset — CLI and MCP expose the
execute-codecommand for running JavaScript directly against documents in headless mode.
Fixes
- Synthetic tracked-change rows no longer leak as empty comments in
comments.list()export. - Cell-scoped
tablesClearShading()now removes the background attribute correctly. - Formatting samples from
blocks.listskip deleted runs — no longer reports styling from pending deletions. - Redlined blocks with tracked deletions at the start no longer throw "offset out of range" when edited via ref.
- Headless mode skips whole-document linked-style decorations for ~3x faster large-document load (38-page redline: 50s → 16s).
- Merge conflict markers in painter-dom border-utils resolved; build no longer fails after main-into-stable merge.
vscode-v2.16.0
What's New
- Tracked-change side-targeted decisions —
trackChanges.decide()now accepts asideselector to reject only theinsertedordeletedhalf of a replacement. - Tracked paragraph-property changes — Tracked numbering and alignment changes (w:pPrChange) now appear in
trackChanges.list()and can be accepted or rejected viatrackChanges.decide(). - Tracked list operations —
lists.attach()now supports tracked changes. - Comment export — Comments and comment replies now export to DOCX, including comments on tracked changes.
- List numbering metadata —
blocks.list()now returnsnumberingandindentfields so agents can read computed list markers and legal clause numbers. - Visible text model —
blocks.list()returns the visible text model (skips tracked deletions), matching how the plan engine applies edits. Eliminates text offset drift on redlined documents. - CLI preset commands — New commands to introspect, configure, and dispatch preset operations:
preset list,preset get-catalog,preset get-tools,preset get-system-prompt,preset get-mcp-prompt,preset dispatch. - CLI execute-code command — New command to execute arbitrary operations on a document.
- LLM tools core preset — New preset providing AI-agent-optimized operations for document manipulation.
Improvements
- Large-document performance in headless mode — linked-style decorations are skipped when the editor runs view-only (~50s → ~16s on a 38-page redline).
blocks.list()length, preview, and block references now use the visible text model, eliminating stale offset calculations on edited blocks.- Tracked change decision validation tightened —
sideselector on id-target changes fails closed if the targeted half was already resolved. - Tracked paragraph-property changes now sync both paragraph and top-level numbering properties on reject.
- Block formatting sampling now draws from visible runs only, skipping tracked deletions.
- Comment export filters synthetic tracked-change rows from the comments list.
Fixes
- Citation hyperlinks now export and import correctly as tracked changes.
- Merge conflict markers in border-utils resolved.
- Cell shading clear operations now properly remove the
backgroundattribute on cell-scoped clears. - Border rendering aligned with SD-3028 authored-width specification.
- Tracked paragraph-property changes export with Word-safe decimal IDs instead of UUIDs.
- One-sided replacement survivors now downgrade to plain insertions or deletions instead of failing.
- Tracked paragraph-property changes inside kept tracked tables now resolve via ID-based decisions instead of the mark-based child planner.
- Tracked changes without a user are now guarded to prevent blank author stamps.
react-v1.15.0
Based on my analysis of the commits and changed files, here are the release notes:
What's New
- Agent tools for document automation —
superdoc_inspectandsuperdoc_perform_actiontools expose the full Document API to language models. Run headless in Node.js; bring your own LLM for redlining, template workflows, and document automation. - Comment API and export — Full CRUD on comments: create, edit, delete, resolve/reopen, move between ranges. Comments export to DOCX, including comments anchored to tracked changes. Anchor comments to tracked-change IDs directly without calculating text ranges.
- Side-targeted tracked-change decisions — Accept or reject just the inserted or deleted branch of a replacement, leaving the other half as a standalone change. Decide by id or by range.
- Tracked paragraph-property changes in the review API — Tracked numbering and alignment changes (w:pPrChange) now surface in
trackChanges.listand can be accepted/rejected viatrackChanges.decide, matching tracked text behavior. - List and paragraph numbering metadata —
blocks.listreturns computed numbering (marker, path, kind) for clause-numbered headings and list items, plus paragraph indentation for layout-aware agents. - Agent presets for OpenAI, Anthropic, Vercel, and generic providers — Tool catalog and system prompt selection by preset; dispatch tool calls through the preset's validated schema.
- CLI commands for agent presets —
preset list,preset get-catalog,preset get-tools,preset get-system-prompt,preset get-mcp-prompt,preset dispatch. - Tracked citation hyperlinks — Export and import tracked hyperlinks with revision marks preserved, so Word round-trips linked tracked text correctly for reviewable citations.
Improvements
- Large-document performance — Skip linked-style decorations in headless mode; ~50s → ~16s on a 38-page redline.
- Visible text model in blocks.list — Text, length, ref, and formatting now use visible text (skipping tracked-deleted runs), so agents resolve offsets against the same text the plan engine applies against.
- Word-safe revision IDs — Tracked changes export with decimal IDs instead of UUIDs, so Word accepts them without repair.
- Better tracked-change edge cases — Handle one-sided replacement survivors, pPrChange inside kept tracked tables, and no-user guards for tracked operations.
Bug Fixes
- Resolve merge conflict markers in border-utils that broke the build.
- Citation hyperlinks now export with correct revision mark wrapping (w:hyperlink containing w:ins/w:del).
- Reject a tracked table by id now cascades to contained paragraph-property changes.
- Cell background shading now clears on cell-scoped
tables.setShading({ color: null }). - Tracked changes no longer leak as spurious empty comments in export.
- Formatted text from styled tracked-deleted runs no longer bleeds into blocks.list formatting.