read_ema() no longer errors when a timestamp cannot be parsed at all;
such records now come back as NA with the documented warning, so one
corrupted row cannot take down the import of an otherwise good export.inst/CITATION entry alongside CITATION.cff.First release.
design_schedule(): exact uniform sampling of balanced, run-constrained
randomization schedules by dynamic programming, reproducible from a required
seed.check_schedule(): design diagnostics (counts, run lengths, alternations,
lag-1 autocorrelation).write_schedule(): JSON export in the format read by the companion mobile
collection tools.sim_power(): simulation-based power and false-positive rates under AR(1)
errors, analysed with and without the dependence, for both randomized and
user-supplied schedules.read_ema(): tidy import of EMA exports (CSV or JSON), with a study-day
index derived from the start date and an error when a file's own index
disagrees with the calendar.validate_ema(): structured integrity checks, including day indices that
have drifted out of step with the calendar.compliance(): prompt-level compliance against response windows, with
off-window records reported separately.