docs(release): record 0.1.5 validation
This commit is contained in:
parent
246e47ee8f
commit
8f8b361915
4 changed files with 36 additions and 3 deletions
|
|
@ -36,7 +36,7 @@ Programs. Sessions → Programmes remains the technical administration/import,
|
|||
list, detail, archive, and delete surface.
|
||||
Web Exercises administration, the factual Dashboard/Analyse read model, and the
|
||||
synchronized Sleep Diary workspace are the stable v0.1.4 baseline. Version
|
||||
0.1.5 development now has validated persistent CYCPLUS acquisition, the global `♥ BPM` indicator, training exercise timestamps, one-tap Android Sleep capture, dedicated synchronized `cardio` sessions, versioned measured Cardio calibration, fresh-signal BPM-guided phases and factual Web heart-rate timelines in History/Sleep; complete 0.1.5 validation is the current implementation cursor.
|
||||
0.1.5 development now has validated persistent CYCPLUS acquisition, the global `♥ BPM` indicator, training exercise timestamps, one-tap Android Sleep capture, dedicated synchronized `cardio` sessions, versioned measured Cardio calibration, fresh-signal BPM-guided phases and factual Web heart-rate timelines in History/Sleep; software validation is complete; private-device visual review is the current implementation cursor.
|
||||
|
||||
## Releases
|
||||
|
||||
|
|
|
|||
|
|
@ -156,7 +156,8 @@ parallel implementation of its rules.
|
|||
| Cardio calibration | `TRAINLOG_CARDIO_CALIBRATION_V1=PASS`: reserved system Calibration cardio exercise, real measured observed peak, ≥3 min recovery with bounded +1/+2/+3 min factual samples, immutable profile and Android→desktop calibration companion |
|
||||
| Cardio BPM guidance | `TRAINLOG_CARDIO_BPM_GUIDANCE_V1=PASS`: absolute/calibration-derived immutable BPM targets, 2 BPM hysteresis, 3 s confirmation, stale-signal suspension, durable phase/condition history, Android live guidance UI and strict Android→desktop `trainlog-cardio-guidance` V1 sync |
|
||||
| Cardio Web visualization | `TRAINLOG_CARDIO_WEB_VISUALIZATION_V1=PASS`: one bounded factual heart-rate timeline read model/HTTP endpoint powers Web History and Sleep with raw BPM/RR, real session/exercise/Sleep markers, guided targets/instructions and calibration facts; no sleep-stage or medical inference |
|
||||
| Current operational cursor | `TRAINLOG_0_1_5_VALIDATION_V1`: complete Android/native/Web regression, migration, package, sync/replay and private-device smoke validation before any stable release decision |
|
||||
| 0.1.5 validation | `TRAINLOG_0_1_5_VALIDATION_V1=SOFTWARE_PASS / DEVICE_VISUAL_PENDING`: complete native 111/111, Android 300 tests (295 pass + 5 historical skips), Web 183/183 + typecheck/build, vc43 in-place private update with schema v31/integrity/data preservation and live CYCPLUS 94–95 BPM foreground capture validated while locked |
|
||||
| Current operational cursor | `TRAINLOG_0_1_5_DEVICE_VISUAL_REVIEW_V1`: unlock the private phone and visually smoke-test the Android Sommeil, Calibration cardio and active guided-cardio presentation before any stable release decision |
|
||||
| Complete synchronization gap contract | Frozen dependency contract; operational USB/Drive slices required by v0.1.2 are delivered |
|
||||
| Isolated synchronization test environment | `TRAINLOG_SYNC_TEST_ENV_V1=PASS/FROZEN` |
|
||||
| Synchronization characterization | `TRAINLOG_SYNC_CHARACTERIZATION_V1=PASS/FROZEN` |
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ sensor. Heart-rate ingestion must not reuse or overload the frozen Trainlog
|
|||
Bluetooth synchronization transport contract.
|
||||
|
||||
```text
|
||||
CURRENT_OPERATIONAL_CURSOR=TRAINLOG_0_1_5_VALIDATION_V1
|
||||
CURRENT_OPERATIONAL_CURSOR=TRAINLOG_0_1_5_DEVICE_VISUAL_REVIEW_V1
|
||||
```
|
||||
|
||||
The focused `TRAINLOG_SYNC_CAUSAL_DELETE_V1_CLOSEOUT` is complete before this
|
||||
|
|
|
|||
|
|
@ -1862,3 +1862,35 @@ test covers valid empty GET, bad context rejection and GET-only semantics. The
|
|||
2026-09-23 closeout passes the complete native inventory **111/111** and the
|
||||
complete Web inventory **29 files / 183 tests**; Web typecheck and production
|
||||
build also succeed.
|
||||
|
||||
## Trainlog 0.1.5 complete validation
|
||||
|
||||
`TRAINLOG_0_1_5_VALIDATION_V1=SOFTWARE_PASS / DEVICE_VISUAL_PENDING` closes the
|
||||
complete software regression after Cardio Web visualization. The native Meson
|
||||
inventory passes **111/111**. Android reports **300 JVM tests: 295 passed, five
|
||||
historical/external skips, zero failures/errors**, and `assembleDebug`
|
||||
succeeds. Web passes **29 files / 183 tests**, TypeScript typecheck and the
|
||||
production Vite build.
|
||||
|
||||
The authorized SM_G990B was backed up before the final private candidate. The
|
||||
pre-update `trainlog-android.db` was copied while the app was force-stopped and
|
||||
verified at 1,892,352 bytes. Private Trainlog 0.1.5 advanced in place from
|
||||
versionCode 42 to versionCode 43 using the exact same Android debug signing
|
||||
certificate; `adb install -r` succeeded without uninstall or data clear.
|
||||
|
||||
Before and after vc43, the Android store remained schema v31 with identical
|
||||
high-level business counts: 12 completed sessions, 45 catalogue exercises and
|
||||
2 Sleep Diary entries. The four cardio-guidance tables are present after the
|
||||
update, `PRAGMA integrity_check` returns `ok`, and
|
||||
`PRAGMA foreign_key_check` returns no row.
|
||||
|
||||
The locked-device background smoke test confirms both Trainlog foreground
|
||||
services remain alive. `HeartRateSensorService` continued receiving the real
|
||||
CYCPLUS H2 and exposed 94 then 95 BPM through its foreground notification while
|
||||
the phone was dozing, proving the final candidate still acquires live heart
|
||||
rate without requiring the activity to remain visible.
|
||||
|
||||
The phone was locked during the final UI probe, so the visual smoke test of
|
||||
Sommeil, Calibration cardio and active guided-cardio presentation remains
|
||||
`DEVICE_VISUAL_PENDING`. No stable `v0.1.5` tag or release is authorized by
|
||||
this closeout.
|
||||
|
|
|
|||
Loading…
Reference in a new issue