Skip to content

chore: FDv2 State Debouncing#344

Draft
aaron-zeisler wants to merge 2 commits intomainfrom
aaronz/SDK-2001/fdv2-state-debouncing
Draft

chore: FDv2 State Debouncing#344
aaron-zeisler wants to merge 2 commits intomainfrom
aaronz/SDK-2001/fdv2-state-debouncing

Conversation

@aaron-zeisler
Copy link
Copy Markdown
Contributor

@aaron-zeisler aaron-zeisler commented Apr 10, 2026

Details Coming Soon


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

Related issues

Provide links to any issues in this repository or elsewhere relating to this pull request.

Describe the solution you've provided

Provide a clear and concise description of what you expect to happen.

Describe alternatives you've considered

Provide a clear and concise description of any alternative solutions or features you've considered.

Additional context

Add any other context about the pull request here.

…ncing

Implements CONNMODE spec 3.5.1-3.5.4: a debounce manager that
coalesces rapid platform state changes (network, lifecycle, requested
mode) into a single reconciliation callback after a 1-second window.

This is a self-contained component with no ConnectivityManager changes.
Wiring into ConnectivityManager follows in the next commit.

Made-with: Cursor
@aaron-zeisler aaron-zeisler force-pushed the aaronz/SDK-2001/fdv2-state-debouncing branch 2 times, most recently from c91fb3b to 39781ed Compare April 10, 2026 20:09
…or FDv2

Integrates the debounce manager into FDv2 data source lifecycle:
- FDv2 network/lifecycle listeners route through debounce instead of
  immediate rebuild (CONNMODE 3.5.1-3.5.4)
- Event processor state updated immediately in listeners (not debounced)
- Events flushed before background transitions (CONNMODE 3.3.1)
- identify() bypasses debounce by destroying/recreating the manager
  (CONNMODE 3.5.6)
- setForceOffline() remains immediate (backward compatibility)
- FDv1 code path is unchanged

Adds integration tests for debounce coalescing, identify bypass,
event flush timing, force-offline bypass, and shutdown cleanup.

Made-with: Cursor
@aaron-zeisler aaron-zeisler force-pushed the aaronz/SDK-2001/fdv2-state-debouncing branch from 39781ed to aa1b6f3 Compare April 10, 2026 20:24
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.

1 participant