This makes a number of changes to the HealthKit integration code. Most notably:
All code directly working with HealthKit now uses async/await instead of callbacks. This makes control flow easier to follow, and fixes a number of bugs where success/failure callbacks were being called multiple times.
This makes a number of changes to the HealthKit integration code. Most notably:
Test Plan: Have launched app, and checked manual sync buttons work for a variety of goals.
Will be running a build with these changes on my device for a few days without merging to test background sync behavior.