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
|
# 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
|
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
|
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
|
- **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
|
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.
|
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
|
(`PHYSDATA.BPB`) without a new user identifier, to be weighed once a real band shows
|
||||||
what a new identifier does.
|
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
|
## Consequences
|
||||||
|
|
||||||
- Train's sensors are one pattern: open profiles read by the app itself, on the phone;
|
- Train's sensors are one pattern: open profiles read by the app itself, on the phone;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue