framePerfReader top-level property
Reader for the current frame-performance data and liveness signal.
Defaults to a function returning an empty frame list and a liveness counter of 0, so a host without the perf integration wired gets a structurally-complete empty result rather than a null or a thrown error.
Hosts that ship fluttersdk_telescope wire the real source by writing:
framePerfReader = () => {
'frames': TelescopeStore.recentFramePerf().map((r) => r.toJson()).toList(),
'livenessCounter': FramePerfWatcher.livenessCounter,
};
Contract: set-once-per-isolate from MagicPerfIntegration.install().
Reset to this no-op default by MagicPerfIntegration.resetForTesting() so
downstream tests asserting the missing-integration default do not see
leaked bindings. Returns exactly
{'frames': List<Map<String, Object?>>, 'livenessCounter': int}; the
liveness counter is REQUIRED, not optional, because ext.dusk.perf_end's
stalled-engine refusal is computed from it.
Implementation
Map<String, Object?> Function() framePerfReader = () => <String, Object?>{
'frames': <Map<String, Object?>>[],
'livenessCounter': 0,
};