docs(train): what Train keeps is deleted on the band (ADR 0030, D38)
Polar's sync guideline asks apps to remove what they synced, so D38 revises D37's third point: once the app has sealed a day (yesterday or earlier), the next read deletes it on the band type by type; the background job deletes only what the app confirmed kept; today never. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
ab627efe2c
commit
24de3c0a4e
1 changed files with 19 additions and 2 deletions
|
|
@ -1,9 +1,9 @@
|
|||
# ADR 0030: Halkyon Train, what it does and where its data comes from
|
||||
|
||||
- **Status:** decided 27–28 Oct 2026, by the developer (D1–D37 below). The shell (D12)
|
||||
- **Status:** decided 27–28 Oct 2026, by the developer (D1–D38 below). The shell (D12)
|
||||
is built; recording (D13–D28) is built on Android, iOS waiting for a Mac; Health
|
||||
Connect (D29–D31) is built; the Loop's setup and keeping (7a, D34–D36) is built, its
|
||||
daily data (7b, D37) is being built.
|
||||
daily data (7b, D37, D38) is being built.
|
||||
- **Numbering:** 0025 is held by the federation draft (stashed), 0026–0029 by the .NET
|
||||
rewrite on the local branch `rewrite-dotnet`, abandoned on 27 Oct; Train takes the next
|
||||
free number so that neither is ever read as this one.
|
||||
|
|
@ -650,6 +650,23 @@ Strava. What was found, 27 Oct:
|
|||
(`PHYSDATA.BPB`) without a new user identifier, to be weighed once a real band shows
|
||||
what a new identifier does.
|
||||
|
||||
- **D38 What the band holds is deleted once Train keeps it** (recommended, the
|
||||
developer's; 28 Oct; revises D37's third point, over deleting a day once it is in the
|
||||
phone's file, and over never deleting): Polar's own sync guideline (the SDK's
|
||||
`documentation/SyncImplementationGuideline.md`, 8.3.0) asks apps to remove what they
|
||||
synced, as soon as possible, to free the device's memory and not lose data, sensors
|
||||
such as the Polar 360 holding less than watches; D37 had assumed the band's memory
|
||||
rolls over by itself. So once the app has sealed a day (yesterday or earlier) into
|
||||
the person's database, the next read deletes it on the band, type by type (activity,
|
||||
daily summary, 24/7 samples, sleep and its score, Nightly Recharge, skin temperature
|
||||
and skin contact); the background job reads into the file alone and deletes only
|
||||
what the app confirmed kept; today is never deleted. Each read is framed by the
|
||||
SDK's sync start and stop calls, its calls to the band one after the other, as the
|
||||
guideline asks. The VO2max defaults of 7a are Polar's table too: the SDK's
|
||||
`documentation/FirstTimeUse.md` gives the same tables, without saying which class
|
||||
to take.
|
||||
|
||||
|
||||
## Consequences
|
||||
|
||||
- Train's sensors are one pattern: open profiles read by the app itself, on the phone;
|
||||
|
|
|
|||
Loading…
Reference in a new issue