Skip to content

Conversation

@tanderson-ld
Copy link
Contributor

@tanderson-ld tanderson-ld commented Dec 16, 2025

Requirements

  • I have added test coverage for new or changed functionality
  • I have followed the repository's pull request submission guidelines
  • I have validated my changes against all supported platform versions
    Will be done as final integration testing

Note

Adds FDv1 fallback to FDv2 data sources, triggered by the x-ld-fd-fallback header and configured via SDK DataSystem to use a polling fallback synchronizer.

  • FDv2 data source fallback:
    • Add FDv1FallbackActionApplier in FDv2DataSource to switch from FDv2 synchronizers to FDv1 synchronizers when ErrorInfo.FDv1Fallback is true.
    • Include optional FDv1 synchronizers composite in the combined CompositeSource.
  • Error signaling:
    • Add DataSourceStatus.ErrorInfo.FDv1Fallback flag.
    • Set this flag in FDv2PollingDataSource and FDv2StreamingDataSource when the x-ld-fd-fallback header is present on HTTP errors.
  • SDK config wiring (contract tests):
    • In SdkClientEntity, configure FDv1 polling fallback synchronizer derived from the selected synchronizer and align global polling ServiceEndpoints when a custom polling base URI is provided.
  • Tests:
    • Add tests covering header parsing, fallback triggering, and FDv1 synchronizer activation across polling/streaming and composite behavior.
    • Update test-supressions-fdv2.txt to reflect new FDv1 fallback handling.
  • Dependencies:
    • Bump LaunchDarkly.EventSource to 5.3.0 and LaunchDarkly.InternalSdk to 3.6.0.

Written by Cursor Bugbot for commit 25910ad. This will update automatically on new commits. Configure here.

@tanderson-ld tanderson-ld requested a review from a team as a code owner December 16, 2025 20:09
@tanderson-ld tanderson-ld changed the title Ta/sdk 1591/fdv1 fallback chore: adds FDv1 Fallback support to FDv2 Data Source Dec 16, 2025
@tanderson-ld
Copy link
Contributor Author

Need to update references pointing to EventSource of Internal before this merges.

Base automatically changed from rlamb/sdk1586/fdv2-data-system to main December 16, 2025 21:43
Copy link
Member

@kinyoklion kinyoklion left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The couple comments that cursor bot made seem accurate, but if those are addressed, then it looks good.

@kinyoklion
Copy link
Member

Can we pass any more contract tests now?

@tanderson-ld tanderson-ld merged commit ac41228 into main Dec 17, 2025
17 of 18 checks passed
@tanderson-ld tanderson-ld deleted the ta/SDK-1591/fdv1-fallback branch December 17, 2025 22:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants