feat(swift-ios): show native crash reports in settings - #11689
Conversation
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This PR adds an always-on MetricKit subscriber, persistent native diagnostic storage, and a new Settings workflow for viewing, copying, sharing, and clearing reports. Because it introduces new production behavior and exposes potentially sensitive crash details, the change warrants human review. You can add or adjust custom eligibility rules. Learn more. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: unavailable · PR result: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
SwiftUI users cannot retrieve native crash and slow-launch reports from the app. Settings now shows reports delivered by Apple's MetricKit, with report preview, copy, share, and clear actions.
The app keeps five reports, capped at 256 KB each. Larger reports retain their reporting period and counts. Reports can arrive on a later launch. The screen does not treat an empty list as proof that no crash occurred. Sharing is explicit because Apple reports can include exception details.
Added focused tests for retention, duplicate delivery, size limits, and clearing. Xcode tests and UI evidence will be checked in the central integration pass. No simulator, device, or build channel was changed here.
Created with Codex.