For example, Garmin Fenix 5 gives a data reading every 2 minutes: With a study that asks for HR every 3 days, it only captures 1.5 days' worth of data for some reason.
I don't think it's a limitation of JS (max size of array is 2^32 which we don't hit). Potentially it's the maximum amount of data the HealthKit API can return in one go?