What problem does this address?
#77954 (Syncpack dependency alignment) downgraded @ariakit/react from ^0.4.22 to ^0.4.21 in packages/components/package.json and pinned the lockfile to 0.4.21.
Reason for the downgrade: aligning the declared range invalidated the existing lockfile entry, so npm install re-resolved @ariakit/react to the highest matching version (0.4.29). One of the patches between 0.4.22 and 0.4.29 introduced a selectOnMove: false regression in controlled Tabs. When the controlling component changes selectedId, the newer ariakit syncs the composite active-item (DOM focus target) to match the new selection — even though selectOnMove: false is supposed to keep keyboard focus decoupled from selection. This broke 4 unit tests in packages/components/src/tabs/test/index.tsx under Tabs › keyboard interactions › When 'selectedId' is changed by the controlling component [Controlled] › and 'selectOnMove' is false.
Pinning to ^0.4.21 unblocked the alignment PR but parks an unresolved upgrade.
What is your proposed solution?
Bump @ariakit/react to the latest 0.4.x in packages/components and either:
- Confirm the regression has been fixed upstream and the existing tests pass unchanged, or
- File an upstream bug against
@ariakit/react and adjust our Tabs composite to manage activeId explicitly so selectOnMove: false stays decoupled from selection.
What problem does this address?
#77954 (Syncpack dependency alignment) downgraded
@ariakit/reactfrom^0.4.22to^0.4.21inpackages/components/package.jsonand pinned the lockfile to0.4.21.Reason for the downgrade: aligning the declared range invalidated the existing lockfile entry, so
npm installre-resolved@ariakit/reactto the highest matching version (0.4.29). One of the patches between0.4.22and0.4.29introduced aselectOnMove: falseregression in controlledTabs. When the controlling component changesselectedId, the newer ariakit syncs the composite active-item (DOM focus target) to match the new selection — even thoughselectOnMove: falseis supposed to keep keyboard focus decoupled from selection. This broke 4 unit tests inpackages/components/src/tabs/test/index.tsxunderTabs › keyboard interactions › When 'selectedId' is changed by the controlling component [Controlled] › and 'selectOnMove' is false.Pinning to
^0.4.21unblocked the alignment PR but parks an unresolved upgrade.What is your proposed solution?
Bump
@ariakit/reactto the latest0.4.xinpackages/componentsand either:@ariakit/reactand adjust ourTabscomposite to manageactiveIdexplicitly soselectOnMove: falsestays decoupled from selection.