networkStartupRetryBudgetMill property

int get networkStartupRetryBudgetMill

Cold-start reachability retry wall-clock budget (ms). Replaces the old _networkCheckTimeout const; the 10s value is preserved as the default so the existing startup budget stays intact while becoming tunable.

Can be set via:

  • Code: AppConfigBase.networkStartupRetryBudgetMillDefault = 10000
  • Build flag: --dart-define dreamic_network_startup_retry_budget_mill=10000
  • Firebase Remote Config: dreamic_network_startup_retry_budget_mill

Default: 10000 (bounds 3000-60000 — floor raised above the Step-4 probe floor per NET-022). The env/dart-define path is clamped to bounds.

Implementation

static int get networkStartupRetryBudgetMill {
  final bounds = configBounds['dreamic_network_startup_retry_budget_mill']!;
  const envValue = int.fromEnvironment(
    'dreamic_network_startup_retry_budget_mill',
    defaultValue: -1,
  );
  if (envValue != -1) {
    return envValue.clamp(bounds.min, bounds.max);
  } else {
    final remoteValue =
        g<RemoteConfigRepoInt>().getInt('dreamic_network_startup_retry_budget_mill');
    if (remoteValue > 0) {
      return remoteValue.clamp(bounds.min, bounds.max);
    } else {
      return defaultRemoteConfig['dreamic_network_startup_retry_budget_mill'] as int;
    }
  }
}