Skip to content
forked from OpenStrap/edge

About

Data integrity and device lifecycle in an OpenStrap Edge fork: imported-record ownership and iOS accessory authorization.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

2,195 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenStrap Edge: data integrity and device lifecycle

A fork of OpenStrap Edge maintained by Artem Polovyi. OpenStrap is a local-first wearable application. My work addresses two boundaries where incomplete state can look like success: replacing imported health records and authorizing a Bluetooth device.

Replace data only when the replacement is ready

Imported history and newly measured data can describe the same day. A new measurement is not automatically a complete replacement, but a finalized import must not prevent measured data from ever taking ownership.

I changed derivation to reopen imported days when measurements arrive, preserve the imported snapshot while the measured result is incomplete or unsettled, and allow replacement once it is complete and settled. I also made imports seed the canonical logarithmic HRV baseline used by readiness calculations. The regression test follows the transition from import through partial measurements to a settled replacement.

Implementation and data-integrity tests.

Treat authorization, not presentation, as pairing success

Displaying the iOS accessory picker does not mean a device has been authorized. I separated session activation and picker lifecycle state, resolving pairing against authorized accessories when the picker closes. Attempt identity keeps stale completions from resolving a newer request; cancellation, concurrent attempts and setup failures have explicit outcomes.

Native Swift tests exercise the lifecycle transitions, while Dart tests cover the Flutter boundary. The application waits for authorization before continuing with device provisioning and persistence.

Pairing implementation and native/Dart tests.

Project documentation

This work spans Flutter/Dart, SQLite-backed derivation and the native Swift integration with iOS AccessorySetupKit.

About

Data integrity and device lifecycle in an OpenStrap Edge fork: imported-record ownership and iOS accessory authorization.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages