fix(devices): address release-PR review on device sync#3387
Merged
Conversation
- available-providers: one batched connections query for all providers (newest-first, resolved in memory) instead of up to two point lookups per provider - device-sync select is controlled (value guarded to listed items) so the open dropdown marks the saved selection for keyboard and screen-reader users - older-API test fixture now genuinely omits connectionStatus instead of inheriting 'active' from the base fixture
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
claudfuen
pushed a commit
that referenced
this pull request
Jul 10, 2026
# [3.100.0](v3.99.3...v3.100.0) (2026-07-10) ### Bug Fixes * **devices:** address cubic review on device-sync connection status ([4fa7598](4fa7598)) * **devices:** address release-PR review on device sync ([#3387](#3387)) ([f0c9f2c](f0c9f2c)) * **devices:** show reconnect hint when device-sync connection is errored ([d41bb5c](d41bb5c)) * **devices:** surface broken saved sync source on the closed trigger ([d59f0a0](d59f0a0)) ### Features * **devices:** count imported devices in the compliance chart ([#3384](#3384)) ([f94f02a](f94f02a)) * **devices:** universal source-reported compliance + last-seen for device sync ([#3383](#3383)) ([c45fa5f](c45fa5f))
Contributor
|
🎉 This PR is included in version 3.100.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-ups for the three cubic findings on the production deploy PR (#3382) — verified all three as valid:
N+1 queries in
available-providers— the endpoint made one query per provider plus a second for each unconnected one. Now a single batched query fetches every provider's connections (newest first) and status is resolved in memory. Semantics preserved and spec-tested, including the stale-error-under-newer-disconnect case and a new active-beats-newer-broken-row case.Uncontrolled select hid the saved selection — the device-sync select renders directly on the page (the popover-dismissal reason for the uncontrolled people-sync selects doesn't apply), so it's now controlled: the open dropdown marks the saved provider as selected for keyboard/screen-reader users. The value is guarded to items that actually exist — a saved-but-no-longer-listed provider falls back to no selection instead of breaking the select. Test asserts
aria-selectedon the open dropdown.Test fixture didn't omit
connectionStatus— the older-API test inherited'active'from the base fixture and passed by coincidence; it now explicitly setsundefined.Tests: api 5/5, app devices 90/90, typecheck clean.
Summary by cubic
Batch the device sync provider connection lookup to remove N+1 queries and make the device sync select controlled so the saved provider stays selected. Also fixes a test fixture to correctly omit connectionStatus for older API cases.
findMany(newest-first) and resolve status in memory; prefer an active row over newer non-active ones, and don’t resurface stale error under a newer disconnect.DeviceSyncProviderSelectorcontrolled and guardvalueto listed items so the open dropdown marks the saved provider (aria-selected) and doesn’t break if the saved provider is missing.connectionStatus(usesundefined) to reflect real responses.Written for commit 094a918. Summary will update on new commits.