Skip to content
This repository was archived by the owner on Oct 1, 2026. It is now read-only.

Fix recurring windows across repeated-hour gaps - #61

Merged
KalyteraSystems merged 1 commit into
mainfrom
fix/recurring-dst-repeated-hour-gaps
Sep 30, 2026
Merged

KalyteraSystems merged 1 commit into
mainfrom
fix/recurring-dst-repeated-hour-gaps

Conversation

@KalyteraSystems

Copy link
Copy Markdown
Owner

Summary

Correct the daily/weekly recurring-window evaluation after the contributor schedule integration in #59. On the fall-back day, a 00:30–01:15 window was incorrectly active at the first 01:30: the two occurrences of the 01:15 end had been joined into one continuous UTC interval. A 01:45–02:15 window had the corresponding repeated pre-start gap.

The evaluator now splits those windows at the actual time-zone offset transition, preserving the first and second valid segments without marking the intervening wall-clock gap active. It ignores a zero-length second segment when an end falls exactly on the transition. No persisted schedule contract or time-zone selection changes.

Verification

  • Reproduced the 00:30–01:15 defect on current main before the fix for both Daily and Weekly.
  • Added deterministic custom-zone regressions for both end-ambiguous and start-ambiguous gaps, including the exact transition boundary and NextStartUtc.
  • dotnet restore IPCamLapse.sln --locked-mode: pass.
  • dotnet build IPCamLapse.sln -c Release --no-restore: zero warnings/errors.
  • dotnet test IPCamLapse.sln -c Release --no-restore: 176 passed, none skipped.
  • dotnet format IPCamLapse.sln --verify-no-changes --no-restore and git diff --check: pass.

Refs #33. Keep #33 open until the integrated behavior and linked-issue state are rechecked after this fix merges.

@KalyteraSystems
KalyteraSystems merged commit 1de55dc into main Sep 30, 2026
6 checks passed
@KalyteraSystems
KalyteraSystems deleted the fix/recurring-dst-repeated-hour-gaps branch October 1, 2026 06:16
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants