Skip to content

Fasq Benchmarks and Limitations

This page documents how to measure Fasq behavior without publishing unverified marketing numbers.

  • No synthetic claims without reproducible setup.
  • Always record device profile, payload shape, and network conditions.
  • Publish both best-case and degraded-case outcomes.

Use a fixed harness so results are comparable over time.

  1. Pin Flutter and Dart versions.
  2. Run in profile mode on physical devices (minimum one Android and one iOS target).
  3. Test cache-hit, stale-refetch, mutation, and offline-queue scenarios separately.
  4. Capture frame timings, query latencies, and memory snapshots.
  5. Repeat each scenario multiple runs and report median + p95.

Recommended tracked metrics:

  • Query cold-start latency.
  • Cache-hit latency.
  • Background refetch latency.
  • Mutation completion latency (online and queued replay).
  • Main-thread frame jank during large payload parsing.
  • Memory footprint growth under sustained query churn.

Minimum scenario set:

  • Small payload read (< 20KB) vs large payload read (>= 100KB).
  • Secure query enabled vs disabled.
  • Persistence enabled vs memory-only.
  • Network stable vs intermittent/offline replay.

Each scenario should include query key cardinality and cache-policy parameters used (staleTime, cacheTime, retry settings).

Current docs-level limitations to account for in architecture decisions:

  • Hardware-backed key storage depends on device capabilities and platform support.
  • Isolates help CPU-bound parsing/encryption workloads, but networking itself is already async and non-blocking.
  • Offline queue behavior still needs careful handler registration and replay strategy validation for complex dependency chains.
  • Large payload serialization/encryption can increase latency if not tuned with caching and persistence filters.

When publishing benchmark results, include:

  • Fasq package version and adapter package versions.
  • Flutter, Dart, OS, and device model.
  • Scenario definition and payload schema/size.
  • Median and p95 values for each metric.
  • Explicit caveats or environmental factors.