Skip to content

fix: DateTime overflow in renderer crashes UI (beta.15)#417

Merged
rygel merged 1 commit intodevelopfrom
hotfix/renderer-datetime-overflow
Mar 22, 2026
Merged

fix: DateTime overflow in renderer crashes UI (beta.15)#417
rygel merged 1 commit intodevelopfrom
hotfix/renderer-datetime-overflow

Conversation

@rygel
Copy link
Copy Markdown
Owner

@rygel rygel commented Mar 22, 2026

Summary

HOTFIX — beta.15 crashes with blank UI. Same DateTime overflow bug as beta.12/14 but in a different location: ProviderCardRenderer.GetPaceBadgeText.

The guard was added to UsageMath but not to the renderer's own pace badge method. Also fixes stale pace logic — renderer still used old expected-percent comparison instead of projection.

Test plan

  • Build succeeds
  • CI checks pass

🤖 Generated with Claude Code

@rygel rygel force-pushed the hotfix/renderer-datetime-overflow branch 2 times, most recently from 354e4b3 to 5f7b320 Compare March 22, 2026 08:22
…main

Moved to UsageMath (single source of truth):
- GetPaceBadgeText: was in Renderer, ViewModel, CardDesigner (3 copies)
- GetColorIndicatorPercent: was in Renderer and ViewModel (2 copies)
- GetElapsedDays: was inline in ViewModel tooltip
- FormatAbsoluteTime: was in ViewModel, CardDesigner (2 copies)
- FormatAbsoluteDate: was in CardDesigner
- FormatRelativeTime: was in ViewModel, SubViewModel, CardDesigner, Converter (4 copies)

All callers now delegate to UsageMath. grep confirms zero duplicated
period math, time formatting, or pace logic remains outside UsageMath.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@rygel rygel force-pushed the hotfix/renderer-datetime-overflow branch from 5f7b320 to 0b4c5f1 Compare March 22, 2026 08:33
@rygel rygel merged commit 1bc7661 into develop Mar 22, 2026
17 checks passed
@rygel rygel deleted the hotfix/renderer-datetime-overflow branch March 22, 2026 08:49
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.

2 participants