Skip to content

fix(steps): distinguish missing day rows - #1470

Open
bhelm wants to merge 1 commit into
ryanbr:mainfrom
bhelm:fix/issue-85-steps-empty-day
Open

fix(steps): distinguish missing day rows#1470
bhelm wants to merge 1 commit into
ryanbr:mainfrom
bhelm:fix/issue-85-steps-empty-day

Conversation

@bhelm

@bhelm bhelm commented Aug 19, 2026

Copy link
Copy Markdown

Summary

  • preserve the existing no-step-counter explanation for truly empty input
  • emit an honest noRowsForDay trace when non-empty input contains no rows for the requested local day
  • avoid device-absence and motion-estimation claims in that filtered-empty case
  • add mirrored Swift and Android public-contract tests for empty, out-of-day, one-row, and normal-total behavior

The current production live path remains guarded by day-bounded inputs and a non-empty check; this fixes the public helper contract without changing production wiring.

Verification

  • Swift RED: out-of-day case produced noRawCounter plus three misleading device/motion claims
  • Kotlin unchanged RED control: focused test failed on the same contract
  • Swift focused: passed
  • Swift trace class: 14/14 passed
  • Swift full StrandAnalytics: 1,496/1,496 passed
  • Kotlin focused and trace class: passed
  • Kotlin full :app:testFullDebugUnitTest: 4,091/4,091 passed
  • independent frozen-delta review: no P0-P2 findings
  • git diff --check: clean

Android execution was serial and bounded: JDK 17, no daemon, one worker, no parallel execution, Kotlin in-process, 1536 MiB heap. Temporary Linux-only Swift build gates were fully reverted before commit.

Tracks bhelm#85

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant