mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 14:00:37 +00:00
Compare integer and floating forms exactly for scalar values, points and selection rectangles. A library update that only changes their numeric representation must not create changes or an undo entry. Preserve every nonzero difference, including real subpixel moves. Add the reduced resize/library-sync regression and a subpixel control, plus async frontend undo/redo replay. Review and update eight golden states in case N: only equal integer/float representations changed. The recreated seed-712 audit leaves all 61 syncs and undo depths unchanged. Common JVM 1,914 tests/31,146 assertions and JS 1,845/29,810 pass. Frontend 1,563/10,880, its added replay, backend 1,610/8,104 and exporter 14/32 pass. Lint and formatting pass. Exporter needs its test-only secret. Benchmark ratios against the unchanged baseline: mains 10/100/1000 0.54/0.61/0.61, levels 0.53, chain 0.55, library 0.55, many shapes 0.62, variant switch 0.65. No regression flag. AI-assisted-by: gpt-6