Skip to content

refactor(editor): rebuild diff viewer around code editor kernels - #954

Merged
tonyfettes merged 8 commits into
mainfrom
codex/diff-viewer-alignment-overview
Aug 21, 2026
Merged

refactor(editor): rebuild diff viewer around code editor kernels#954
tonyfettes merged 8 commits into
mainfrom
codex/diff-viewer-alignment-overview

Conversation

@bzy-debug

@bzy-debug bzy-debug commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • replace the public-Viewer-based DiffViewer coordinator with a first-class DiffEditorWidget that owns two code-only CodeEditorWidget kernels and one shared DiffEditorViewModel
  • split rich Markdown into an independent MarkdownViewer surface and make desktop/embedded hosts choose code, Markdown, or diff presentation explicitly
  • introduce the DocumentDiffProvider contract, keep Core as the default provider, expose MoonDiff as optional host-owned Token/Tree modes, and remove fake moves/timeout compatibility
  • make diff updates generation-fenced and transactional across model pairs, decorations, managed ViewZones, viewport restore, overview, and disposal
  • virtualize Inline deleted content with one shared render context and a global DOM budget; add responsive Inline/SideBySide layout, sash, overview, F7 navigation, live status, and pane ARIA
  • remove the legacy DiffViewer/Unified implementations and add an architecture gate preventing DiffEditor from depending on the public Viewer surface

Breaking changes

  • DiffViewer is replaced by DiffEditor; Unified terminology is replaced by Inline
  • public Viewer is code-only; Markdown routing is host-owned through MarkdownViewer
  • no compatibility aliases or adapters are retained

Validation

  • just check
  • just test — native 3182, JS 3043, cram 27
  • just build
  • just editor-test — wasm 1058, JS 1798, native 1186
  • just editor-test-browser — 86 passed
  • desktop frontend tests — 422 passed
  • packaged and codesign-verified the real SeekMoon.app
  • real Proton/CEF QA covered the 900/901 responsive boundary, sash 10–90%, Core/Token/Tree fallback, Ignore Comments, F7/Shift+F7, overview pointer, Markdown routing, and Markdown diff code-only rendering; no page or console errors

Rebased onto main at 84bfd310 before publication.

@bzy-debug
bzy-debug force-pushed the codex/diff-viewer-alignment-overview branch from 288921a to 541e7cb Compare August 21, 2026 02:25
@bzy-debug bzy-debug changed the title feat(editor): align diff scrolling and add overview rail refactor(editor): rebuild diff viewer around code editor kernels Aug 21, 2026
@bzy-debug
bzy-debug force-pushed the codex/diff-viewer-alignment-overview branch from b227e81 to 943df0d Compare August 21, 2026 08:23
@bzy-debug
bzy-debug marked this pull request as ready for review August 21, 2026 08:24

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 943df0d089

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread editor/docs/architecture.md Outdated
@bzy-debug
bzy-debug force-pushed the codex/diff-viewer-alignment-overview branch from 20c206d to c75109e Compare August 21, 2026 09:56
@bzy-debug
bzy-debug force-pushed the codex/diff-viewer-alignment-overview branch from c75109e to 1954b10 Compare August 21, 2026 10:04
@tonyfettes
tonyfettes merged commit ed713ad into main Aug 21, 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