Third round of review fixes for the silence-after setting. A backstop that fires while the clock is still behind the ring's start now closes the ring instead of re-arming in a loop until the wall clock catches up. A clock change re-measures a ring in progress before it reschedules: a clock moved back re-arms the backstop at most one window from the moved clock, and one moved forward past the window closes the ring. The engine now owns the alarm setting's write. setAlarmSilenceAfter stores it and re-measures the ring under one lock and without cancellation, so a write can no longer land without the re-measure. A snooze the resolver drops takes its "Snoozed until" notification with it. SNOOZE_GRACE is derived from the default window, and the silence-after picker moves to ui/settings, since it is not a per-alarm override. Refs #17
Clockula — documentation
Clockula is a Material 3 Expressive clock app for Android: alarms, timers,
stopwatch and world clock. Third floret of the bloom, after
Calendula (calendar) and
Agendula (tasks). See the top-level
../README.md for the pitch.
Unlike its siblings, Clockula owns its storage, because there is no open provider behind
a clock. What that costs and how the open-standards commitment is honoured anyway
is the first section of PLAN.md.
Index
| Doc | What it covers |
|---|---|
PLAN.md |
The spec. Thesis, locked decisions, the alarm engine, data model, system interop, identity, pipeline, and how ClockMaster is used. The "why". |
ROADMAP.md |
Status and the work queue: milestones M0–M11 and post-v1. What the build loop works through. |
ARCHITECTURE.md |
How Clockula is built today: layers, the data seam, the alarm engine, DI, build/tooling, manifest. Written from M2 onward. |
RELEASING.md |
How to cut a release. Written at M0 alongside the pipeline. |
PROVENANCE.md |
Third-party code and assets carried in-tree, and under what licence (PLAN.md §11). |
Also: ../CHANGELOG.md (Keep a Changelog format; tag sections
feed the release notes).
How the docs relate
- PLAN is the design decisions (stable; the "why").
- ARCHITECTURE is the current shape of the code (kept in sync as it grows).
- ROADMAP is the moving status layer (updated as milestones land).
- RELEASING is the operational runbook.