What about the actual output from your program? ;o).
Also, see
https://github.com/koreader/koreader/issues/7994 for a tale of how a dead RTC will screw with you in fun and interesting ways
.
FWIW, nickel itself makes *extensive* use of RTC alarms, so on a sane device, it should Just Work (TM).
c.f.,
KOReader's implementation for some comments about common gotchas, too.
My mushy brain is not up to reviewing anything, so good luck
.