Proposal
The clock timer can fire slightly before or after the exact second boundary, which becomes visible when users include fractional seconds in the format string. For example, a format with high-precision fractions may show values like .9909825 instead of a clean .0000000.
Update the timer/tick path so each timer tick carries a normalized whole-second timestamp representing the intended clock second. The display, sound checks, and pixel-shift checks should use that same timestamp for the entire tick instead of each method reading DateTime.Now independently.
Why
The app presents itself as a second-aligned clock, but timer scheduling jitter leaks into the displayed value when advanced date/time formats include fractional seconds. Normalizing the tick timestamp keeps the display stable and internally consistent without pretending the system timer is perfectly precise.
Proposal
The clock timer can fire slightly before or after the exact second boundary, which becomes visible when users include fractional seconds in the format string. For example, a format with high-precision fractions may show values like
.9909825instead of a clean.0000000.Update the timer/tick path so each timer tick carries a normalized whole-second timestamp representing the intended clock second. The display, sound checks, and pixel-shift checks should use that same timestamp for the entire tick instead of each method reading
DateTime.Nowindependently.Why
The app presents itself as a second-aligned clock, but timer scheduling jitter leaks into the displayed value when advanced date/time formats include fractional seconds. Normalizing the tick timestamp keeps the display stable and internally consistent without pretending the system timer is perfectly precise.