assertFlutterCockpitRecorderBuildMode function

void assertFlutterCockpitRecorderBuildMode({
  1. required FlutterCockpitRecorderConfig config,
  2. required bool releaseMode,
})

Rejects recorder configurations the current build mode cannot honor.

Invoked at runtime initialization (FlutterCockpit.initialize) — the earliest point every configuration path funnels through. releaseMode is a parameter so the guard stays testable in debug builds.

Implementation

void assertFlutterCockpitRecorderBuildMode({
  required FlutterCockpitRecorderConfig config,
  required bool releaseMode,
}) {
  if (config.enabled && releaseMode) {
    throw FlutterError(
      'FlutterCockpitRecorderConfig.enabled must be false in release mode: '
      'interaction recording is a development capability and is not compiled '
      'into release builds.',
    );
  }
}