ATL-2026-004experimentrepeatable
Compare three explicit ownership policies when a real Flutter route closes before a controlled asynchronous source finishes.
async-operation-after-route-close
Exact experiment revision
open8381011/experiments/async-operation-after-route-close ↗9f52fc820fb8578341227e6d12b3448a5946a71cEVIDENCE SIGNATURE
a365aa26a37fcf2b0629207cf56139129325cb6ea646fed9c530f25005d58e092026-09-03Environment
- os
- macOS 26.5.1 (25F80)
- architecture
- arm64
- flutter
- 3.47.2 stable (d3b14c876900e553bc736ca19295fc09e3853e8e)
- dart
- 3.13.2 stable
- usecase_forge
- 1.0.0
Execution
./tool/run_checks.shInputs
https://api.flutter.dev/flutter/widgets/BuildContext/mounted.html ↗https://api.flutter.dev/flutter/widgets/State/dispose.html ↗https://api.dart.dev/dart-async/Future-class.html ↗https://api.dart.dev/dart-async/StreamSubscription/cancel.html ↗Observed result
0eecda610ab6eeab755613e7a1fa56fbfbd05b8f64da673f20d6b0f8d1800a2a1×Limitations
- The controlled source proves application sequencing but not the cancellation semantics of any HTTP, database, isolate, or platform API.
- Widget disposal is not process death, and the in-memory stored result is not durable persistence.