med-det-samme/app
Ole-Morten Duesund 63f1ecd9fd Schedule engine: pure occurrence/supply/renewal math with 22 unit tests
Milestone 3. Single authority for DoseTime semantics: weekly mask
(bit 0 = Sunday) vs every-N-days from anchor (mask ignored when
intervalDays > 1). nextOccurrence is strictly-after by contract so the
alarm layer can pass the occurrence it just fired and never re-arm the
same minute. Wall-clock LocalDateTime throughout — instant conversion
happens at the alarm edge, so an 08:00 dose stays 08:00 across DST.
Consumption rate is prospective (from schedule) because days-of-supply
predicts forward; historical consumption stays in the DAO.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 13:36:51 +02:00
..
schemas/no.naiv.meddetsamme.data.MedDatabase Data layer: Room entities, DAOs, database with exported schema 2026-06-10 13:34:41 +02:00
src Schedule engine: pure occurrence/supply/renewal math with 22 unit tests 2026-06-10 13:36:51 +02:00
build.gradle.kts Data layer: Room entities, DAOs, database with exported schema 2026-06-10 13:34:41 +02:00