Fasq Benchmarks and Limitations
Benchmark Policy
Section titled “Benchmark Policy”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.
Reproducible Benchmark Setup
Section titled “Reproducible Benchmark Setup”Use a fixed harness so results are comparable over time.
- Pin Flutter and Dart versions.
- Run in profile mode on physical devices (minimum one Android and one iOS target).
- Test cache-hit, stale-refetch, mutation, and offline-queue scenarios separately.
- Capture frame timings, query latencies, and memory snapshots.
- 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.
Scenario Matrix
Section titled “Scenario Matrix”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 Known Limitations
Section titled “Current Known Limitations”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.
Reporting Template
Section titled “Reporting Template”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.