Skip to content

refactor(layout): move change detection into resolved layout stage#2814

Open
tupizz wants to merge 1 commit intotadeu/sd-2563-04-border-datafrom
tadeu/sd-2563-05-change-detection
Open

refactor(layout): move change detection into resolved layout stage#2814
tupizz wants to merge 1 commit intotadeu/sd-2563-04-border-datafrom
tadeu/sd-2563-05-change-detection

Conversation

@tupizz
Copy link
Copy Markdown
Contributor

@tupizz tupizz commented Apr 14, 2026

Summary

  • Add version field to all resolved item types
  • Create versionSignature.ts and hashUtils.ts in layout-resolved (moved from painter)
  • deriveBlockVersion() and fragmentSignature() now compute during resolution
  • Painter uses resolved version for change detection with legacy fallback

PR Stack (SD-2563: Dumb Painter Refactor)

# PR Title Status
1 #2810 Lift page metadata into ResolvedPage
2 #2811 Lift fragment metadata into resolved paint items
3 #2812 Pre-compute SDT container keys in resolved layout
4 #2813 Pre-compute paragraph border data in resolved layout
5 #2814 Move change detection into resolved layout stage 👈 this PR
6 #2818 Lift paragraph/list block and measure into resolved items
7 #2819 Extract block/measure resolution helper
8 #2820 Remove body blocks/measures from DomPainterInput

Test plan

  • 94/94 layout-resolved tests pass (10 new)
  • painter-dom types compile cleanly
  • No rendering behavior changes

@linear
Copy link
Copy Markdown

linear bot commented Apr 14, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant