Expand description
Host façade over the diff subsystem, which now lives in the
lattice-diff crate (moved out of lattice-host at BC.6/DX.6).
The pure algorithm (Hunk, HunkIndex, compute_diff) and — since
DX.6 — the host-attached subsystem (DiffSubsystem + DiffSession
lifecycle, diff-mode, and the overlay/filler/fold/pane-group
presentation providers) both live in lattice-diff. This module
re-exports those crate modules under the historical crate::diff::*
paths so existing host call sites (dispatch, boot, the TUI + GPUI
renderers) are unchanged. DX.7 collapses the boot wiring into
lattice_diff::install(boot) and begins retiring these shims.
The one piece that stays host-side is resolver: the
BufferRegistry-backed impls of the subsystem’s
BufferTextProvider / DocumentBufferResolver seams (coupling C6;
they reference the host BufferRegistry, so they can’t move). They
are re-exported under subsystem so
crate::diff::subsystem::BufferRegistry{TextProvider,DocumentResolver}
still resolves everywhere.
See docs/dev/architecture/diff-extraction.md for the cut and
docs/dev/operations/slice-plans/diff-extraction.md for sequencing.
Modules§
- filler
- D.4.c (2026-05-29) / D.6.b (2026-05-31): hunk-alignment filler rows.
- fold
- D.3.f.1 (2026-05-29) / DX.3-C7 (2026-06-24):
HunkFoldSource. - mode
diff-modeminor mode + the host-side bridge that toggles it on participating buffers asDiffSessions open and close.- overlay
- D.3.a (2026-05-29) —
DiffOverlayVirtualRowProvider. - pane_
group - D.4.b (2026-05-29) / D.6.b (2026-05-31):
HunkRowMapper. - resolver
- Host-owned
BufferRegistry-backed impls of the diff subsystem’s resolver seams (DX.6, coupling C6). - subsystem
crate::diff::subsystem— the movedlattice_diff::subsystemsurface PLUS the host-ownedBufferRegistry-backed resolver impls, so everycrate::diff::subsystem::*call site (includingBufferRegistryTextProvider/BufferRegistryDocumentResolver) resolves unchanged after the DX.6 move.