## motiondivision/motion — v13.4.4…v13.4.5

_71 commits._

### Features
- **Add failing test for duplicate onReorder with non-urgent order updates** (1059015)
- **Add Motion Studio section to READMEs** (e5876e9)
- **Add Using Motion with AI section to READMEs and refresh Motion+ details** (09cbb99)
- **Add failing tests for spring NaN with polygon points (#2791)** (1654c3d)
- **Add Playwright tests for progress-only scroll() callbacks** (431219e)
- **Add parity tests for progress-only scroll() callbacks** (3880217)
- **Add tests for a pointermove followed by pointerup within one frame** (1eecdef)
- **Add failing test for snapToCursor drift with initial coordinates (#3805)** (727d9e1)

### Fixes
- **Merge pull request #3854 from motiondivision/cursor/reorder-guard-fix-8dc0** (c7c3e36)
- **Fix AnimatePresence dropping a child added by a transition while an exit completes (#3856)** (7a6c4d8)
- **Fix relative child jumping when a parent layout change interrupts its layout animation (#3839)** (31965ed)
- **Merge pull request #3757 from motiondivision/fix/spring-polygon-points-nan-2791** (bba6384)
- **Fix spring guard after rebase: share time-defined decision with retarget** (f851494)
- **Fix NaN in spring animations with falsy/undefined stiffness or mass (#2791)** (913eef9)
- **Merge pull request #3836 from motiondivision/cursor/fix-flaky-cypress-specs-6089** (096652c)
- **Fix PanSession dropping the final pointermove before pointerup** (b16457c)
- **Fix snapToCursor drift on repeated drags with initial coordinates (#3805)** (4281b03)
- **Fix the nested crossfade layout-shared test like its display: contents sibling** (f828a46)

### Backend
- **v13.4.5** (bc8570a)
- **Updating changelog** (c56786e)
- **Merge pull request #3852 from motiondivision/cursor/drag-to-reorder-final-check-7c67** (147f4f1)
- **Re-query drag-to-reorder's X and Y axis position checks** (423a6f4)
- **Merge pull request #3848 from motiondivision/cursor/simplify-spring-physics-3b8e** (3e128e5)
- **Merge remote-tracking branch 'origin/main' into cursor/drag-to-reorder-final-check-7c67** (ffccfc6)
- **Frame-sync the remaining Cypress drag gestures (fixes drag-layout-reorder-strict flake) (#3847)** (d74bef5)
- **Only clear Reorder.Group's reorder guard when values change** (03bdeab)
- **Retry drag-to-reorder Move around's final position check** (0c2e4f0)
- **Test Reorder when the final move arrives in the same frame as pointerup** (41dfa27)
- **Let the degenerate-physics guard handle findSpring's NaN fallback** (58a18e9)
- **Keep passing getSpringOptions a copy of the spring options** (614d669)
- **updating changelog** (636e725)
- **Updating changelog** (770cceb)
- **Merge pull request #3843 from motiondivision/cursor/scroll-progress-shared-js-fb00** (4866d6d)
- **Merge the spring tests for invalid physics alongside time options** (027f70e)
- **Decide inherited spring velocity in one place** (66bb911)
- **Merge pull request #3846 from motiondivision/cursor/readme-motion-studio-5b5c** (2733a42)
- **Merge branch 'main' into cursor/readme-motion-studio-5b5c** (1284d91)
- **Drop findSpring's constant velocity and mass inputs** (eea5939)
- **Simplify spring option resolution** (cc34a51)
- **Merge pull request #3845 from motiondivision/cursor/readme-ai-section-e510** (68f1ddb)
- **Merge pull request #3844 from motiondivision/cursor/motion-plus-pricing-wording-e510** (ce65fbf)
- **Merge pull request #3838 from motiondivision/cursor/pan-session-final-move-7c67** (ce0fa1b)
- **Pass resolved options to findSpring so invalid mass keeps the duration** (88d58cc)
- **Tighten spring NaN guard tests and cover the React path** (ff716aa)
- **Keep existing spring behaviour for numeric strings and visualDuration: 0** (a9fc30a)
- **Drop CHANGELOG entry for spring physics guard** (d2729b4)
- **Address code review on spring NaN guard (#2791)** (4b3fb44)
- **Notify scrollInfo handlers once per frame after resubscribing** (b0e4bf0)
- **Route progress-only scroll() callbacks through scrollInfo** (2d3f041)
- **Merge pull request #3837 from motiondivision/cursor/snap-to-cursor-drift-adc5** (7c8156b)
- **Use cy.nextFrame() in the drag-release-before-frame spec** (8e47b51)
- **Merge remote-tracking branch 'origin/main' into cursor/pan-session-final-move-7c67** (c77d915)
- **Merge pull request #3835 from motiondivision/cursor/scroll-measure-once-58dd** (a34dd93)
- **Replace JSDOM snapToCursor test with one that models the element's layout box (#3805)** (0a77319)
- **Catch drag-momentum once momentum is visibly running** (7d932a7)
- **Widen the layout-shared instant-transition animation window** (46128d6)
- **Retry drag snap-to-origin end-state checks** (b4d030b)
- **Start the drag-momentum pan before flicking** (0237fe6)
- **Let React 19 finish mounting before the first SVG drag** (9288a38)
- **Give each React 19 Cypress spec its own junit report** (5f50c13)
- **Record layout-group button positions every frame** (fc8951e)
- **Wait two frames after the direction-locking pointermove** (135d45c)
- **Iterate scroll axes via the shared axisKeys map** (6b7b91c)
- **Retry layout-group mid-animation checks instead of timing them** (8567433)
- **Stop layout-shared Cypress racing the animations it interrupts** (f07f59c)
- **Retry layout and unit-conversion mid-animation checks** (51029d5)
- **Wait for the next frame after drag pointermoves in Cypress** (5e384b9)
- **Stop drag-momentum Cypress from racing the release velocity window** (238af80)
- **Clarify Motion+ pricing in READMEs: one-time Personal licence or annual per-seat Business plan** (65d6987)
- **Measure each scroll container once per frame** (afa5af9)
- **Derive scroll offset progress directly instead of via interpolate()** (d00264e)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/motiondivision/motion?utm_source=github-action)._