feat: Add FDv2 data system support to NodeClient#1775
Conversation
|
@launchdarkly/js-client-sdk-common size report |
|
@launchdarkly/js-sdk-common size report |
|
@launchdarkly/js-client-sdk size report |
|
@launchdarkly/browser size report |
|
@cursor review |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 14bd7e4. Configure here.
65b044a to
c4aa363
Compare
f4a4c39 to
bc6706f
Compare
fix: Restore FDv2 connection mode when an offline transition fails fix: Await in-flight FDv2 transition on duplicate-mode setConnectionMode
bc6706f to
254d1a2
Compare
SDK-2468
Note
Medium Risk
Touches flag data ingestion and connection/offline transitions for FDv2-enabled clients; FDv1 is isolated but incorrect mode or flush handling could affect live updates and events.
Overview
NodeClient can use the shared FDv2 data stack when
dataSystemis configured, while the existing FDv1NodeDataManagerpath stays unchanged.Construction wires
createFDv2DataManagerBasewith desktop defaults, transition table, and abuildQueryParamshook (auth/hfor client-side ID; empty params and hash warnings for mobile key). Connection mode is tracked on the client (getConnectionMode/isOffline); FDv2setConnectionModevalidates modes, no-ops after close or on duplicate mode, serializes concurrent transitions (flush before offline, then event sending toggles), and still delegates to the FDv2 data manager.CI runs FDv1 contract tests without stopping the harness service, then adds a FDv2 harness run (
v3) withtestharness-suppressions-fdv2.txt. The contract test service advertisesclient-event-source-http-errorsand documents deferredfdv1-fallbacksupport. Unit coverage lives inNodeClientFDv2.test.ts.Reviewed by Cursor Bugbot for commit 254d1a2. Bugbot is set up for automated code reviews on this repo. Configure here.