Skip to content

v1.8.0 - Fix Oura Sleep Data Accuracy & Flag-Based Architecture

Choose a tag to compare

@jonathanpberger jonathanpberger released this 22 Sep 15:55
· 3 commits to main since this release

gday v1.8.0 Release Notes

🎯 Major Bug Fixes

βœ… Fixed Oura Ring Sleep Data Accuracy

  • Sleep duration now matches Oura app exactly - Fixed duration mismatches (e.g., 4h 25m instead of incorrect 3:02)
  • Realistic wake times - Fixed impossible wake times like 11:41AM, now shows accurate times like 6:50AM
  • Proper date alignment - Sleep data now correctly corresponds to the requested date
  • Accurate sleep scores - All metrics now match Oura Ring app values

πŸ—οΈ Architectural Improvements

Flag-Based Command Architecture

  • New syntax: gday health --yesterday instead of gday health yesterday
  • Composable commands: Mix commands and flags flexibly (gday --friday health)
  • Multiple flags: gday --sort-interleaved --yesterday
  • Backward compatibility: All old syntax still works (gday yesterday β†’ gday --yesterday)

Enhanced Argument Parsing

  • Improved error messages - Clear, helpful feedback for invalid flags/arguments
  • Case-insensitive weekdays - TUE, tue, Tuesday all work
  • Flexible flag ordering - gday --yesterday health and gday health --yesterday both work

🩺 Enhanced Sleep Data Processing

  • Fixed date calculation logic - Now properly aligns with Oura's session labeling (by end date)
  • Better session detection - Correctly identifies and merges cross-day sleep sessions
  • Improved wake time calculation - Uses last sleep segment end time for accurate wake times
  • Duration validation - Sleep totals now match Oura's reported durations

πŸ”§ Updated Help Documentation

  • New flag syntax examples - Shows modern --yesterday flag usage
  • Legacy support section - Documents backward compatibility
  • Clear usage patterns - Better examples of command combinations

πŸ“‹ Testing & Quality

  • Updated test suite to match new error messages and flag behavior
  • All core functionality verified with real Oura data
  • Backward compatibility thoroughly tested

Key User Impact: Sleep data in gday now perfectly matches your Oura Ring app - no more confusing duration mismatches or impossible wake times!