Skip to content

Workouts not populated even if there's data #28

Description

@DumbleDodge

NOOP version

8.3.1-staging

Platform

Android

OS version

Android 17

WHOOP strap model

WHOOP 5.0

Where the data is coming from

Live Bluetooth (strap connected)

Test Centre profile

Not a test-mode bug

What happens

Entering workouts screen doesn't display workouts data, the app has workouts logged bot those are not displayed

Image Image

What you expected instead

Workouts displayed

Steps to reproduce

1.check data sources to check if workouts data are present
2.check workouts screen
3.

Strap log

<details><summary>Strap log (last 40 lines, redacted)</summary>


11:52:39  strap: enabled
 19, 176271089: BLE_CMD: Command Get Data 
11:52:39  strap: Range
 19, 176271569: BLE_CMD: Command Send Histor
11:52:39  Backfill: historical records use layout v18
11:52:39  → HISTORICAL_DATA_RESULT payload=01c7e400000c000000 (puffin)
11:52:39  Backfill: acked chunk trim=58567
11:52:39  Backfill: session ended — reason=HISTORY_COMPLETE
11:52:39  Backfill: session persisted 61 rows (14 with motion, 14 skin-temp) across 1 night(s).
11:52:39  Backfill: auto-continuing (#364/#451) — the trim advanced and the strap is still handing over real records (frontier 1783417957, strap-reported newest ?); re-kicking offload 1/6 without waiting the 15-min floor.
11:52:39  → GET_DATA_RANGE payload= (puffin)
11:52:39  Backfill: session started — historical offload requested
11:52:39  Backfill: GET_DATA_RANGE → PENDING(2) (waiting)
11:52:39  Command response: GET_DATA_RANGE(34) → PENDING(2)
11:52:39  Get Data Range raw frame (#451 — for offset analysis): aa010c000100271124ae220f0200000091e0b76d
11:52:39  Backfill: GET_DATA_RANGE SUCCESS — requesting history
11:52:39  → SEND_HISTORICAL_DATA payload=00 (puffin)
11:52:39  Get Data Range raw frame (#451 — for offset analysis): aa014c00010032d124af220f010100e50000c7e40000c7e40000c7e400000c000000000002000000000000001e00c3f876697a54000059cc4c6af568000059cc4c6af568000065cc4c6af56800000000e62fe5be
11:52:39  Backfill: strap reported no flash cursor (trim=0xFFFFFFFF) - it has no banked history to offload. This is a clock/charge state on the strap, not a decode problem; fully charge it and reconnect so it starts banking.
11:52:39  → HISTORICAL_DATA_RESULT payload=01ffffffffffffffff (puffin)
11:52:39  Backfill: acked chunk trim=4294967295
11:52:39  Backfill: completed but the strap banked no sensor history (metadata-only, 0 sensor rows persisted); consecutive empty syncs = 1.
11:52:39  Backfill: session ended — reason=HISTORY_COMPLETE
11:52:40  → TOGGLE_REALTIME_HR payload=00 (puffin)
11:52:43  rhr day=2026-07-07 floor=55 nightMean=64 inBedSamples=25569 (floor = WHOOP-style lowest-sustained = NOOP RHR; mean = sleeping-HR-app number)
11:52:45  rhr day=2026-07-06 floor=54 nightMean=65 inBedSamples=24926 (floor = WHOOP-style lowest-sustained = NOOP RHR; mean = sleeping-HR-app number)
11:52:46  rhr day=2026-07-05 floor=62 nightMean=72 inBedSamples=6568 (floor = WHOOP-style lowest-sustained = NOOP RHR; mean = sleeping-HR-app number)
11:52:46  sleep day=2026-07-07 totalSleepMin=381 matched=1 source=computed
11:52:46  sleep day=2026-07-06 totalSleepMin=381 matched=2 source=computed
11:52:46  sleep day=2026-07-05 totalSleepMin=87 matched=1 source=computed
11:52:46  Backfill: post-sync scoring pass done
11:52:46  Backfill: 15 day(s) banked; newest=2026-07-07, dashboard-today=2026-07-07 (present)
11:56:17  → TOGGLE_REALTIME_HR payload=01 (puffin)
11:56:17  Reading standard Battery Level (0x2A19)
11:56:22  → TOGGLE_REALTIME_HR payload=00 (puffin)
=== Capture check ===
universal: MISSING (dayOwner day=)
workouts: MISSING (session event=)
INCOMPLETE: missing workouts
bundle ok files=2 report=present meta=present screenshot=present crash=present leaks=0

</details>

Before you submit

  • I attached my exported NOOP .zip (not a screenshot of the Live screen). If my bug is a clearly reproducible UI issue I described exactly how to see it instead.
  • I attached or pasted a strap log above — or my bug is a clearly reproducible UI issue that doesn't need one (e.g. a typo, a button that does nothing) and I've described exactly how to see it.
  • I checked the Troubleshooting guide — especially "history syncs but no data" (most often the strap isn't banking history to flash; charge it to 100% and reconnect).
  • I checked the FAQ and — if I'm on a WHOOP 5.0 / MG — the 5.0/MG status page, and this isn't an already-known limit (e.g. SpO₂, or recovery/sleep on the 5/MG).
  • I've left out anything personal (strap serial, account email, raw export).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions