Native crashes (#638, PR #659) are captured on the next app launch. Event properties like $app_version and $os_version come from the new process, not the one that crashed. If the app or OS updated in between, the event points investigation at the wrong version.
The docs call this out as a known limitation for now. The fix is to do what the iOS SDK does for hard crashes:
- During each run, persist a small snapshot of the volatile properties (
$app_version, $app_build, $os_version, $lib_version).
- On the next launch, match each recovered crash record to the snapshot that was current when it crashed (exit timestamp vs snapshot window), and use those values on the event.
- Fall back to current-process values when no snapshot matches (e.g. first release with this feature).
Needs a small design pass: when to write the snapshot (startup only vs on change), how many old snapshots to keep and when to clean up, and whether identity (distinct id, session id) should be snapshotted too or stay a documented limitation.
Raised in #659 (comment).
Native crashes (#638, PR #659) are captured on the next app launch. Event properties like
$app_versionand$os_versioncome from the new process, not the one that crashed. If the app or OS updated in between, the event points investigation at the wrong version.The docs call this out as a known limitation for now. The fix is to do what the iOS SDK does for hard crashes:
$app_version,$app_build,$os_version,$lib_version).Needs a small design pass: when to write the snapshot (startup only vs on change), how many old snapshots to keep and when to clean up, and whether identity (distinct id, session id) should be snapshotted too or stay a documented limitation.
Raised in #659 (comment).