Turn on coaching reminders
Turn reminders on for your phone, know what a reminder does and does not say, and work out why one did not arrive when it was due.
Turn reminders on — on your phone
A coaching reminder needs two separate yes answers, and they are easy to mistake for one. The first is the operating system's: this phone will let Achetrace post a notification. The second is your account's: reminders are turned on for you. Delivery needs both, so granting notifications for some other reason never starts reminders on its own.
On iPhone, the Reminders row carries the current state and a Turn on button. It opens an explanation — what the request covers, and what a reminder does and does not say — before iOS is asked anything. Enable reminders is the tap that produces the system prompt.
On Android, Turn on reminders sits in the Permissions card and works the same way: the explanation first, then the system request.
Both of them turn reminders on for your account, not just for the phone in your hand. A second device you sign in on inherits that, and needs only its own notification permission.
What a reminder says, and what it does not
A reminder is a generic invitation to open the app. The wording is fixed and carries no health content at all: "Time for your daily check-in", with a line inviting you to open the app when you have a moment; "Posture check"; "Your weekly summary is ready"; "Weekly plan check-in".
Nothing in a reminder names a symptom, a body area, an intensity, a medication or anything you have logged. The wording is not drawn from your entries at all: it is one of that fixed set, chosen by which kind of check-in is due. The name the reminder is filed under with the operating system is a digest rather than the plan's own wording, so that store never receives a phrase from your plan either. What a reminder is about stays behind your device unlock.
Reminders are scheduled on the device, not pushed from a server. Your account holds the plan; your phone arms it locally. Turning notifications off stops them reaching you, and Achetrace cancels what it had already armed the next time you open the app rather than at the moment you change the setting. If you turn notifications off and back on without opening Achetrace in between, something armed earlier can still arrive.
Why nothing arrives even though reminders are on
The reminders card names the state it is in, and each of these is a different one.
Reminders were never turned on for the account. The phone allows notifications, so nothing looks wrong, but the account's own switch is off and no reminder is armed. The card says reminders are not turned on for this device and that your plan is kept until they are.
Turning them on did not finish. If the permission was granted but your account settings could not be reached, the app says exactly that and asks you to try again once you are back online. It does not report reminders as on — an account that is still opted out would never be sent a plan.
A reminder fell inside your quiet hours. If you move your quiet hours after a plan has been made, anything that now falls inside the window is dropped for that round: your phone does not re-time a reminder itself, so nothing is pushed to the edge of the window. The next plan is built against the hours you chose. How the plan treats quiet hours in the first place is under Quiet hours, frequency and pausing below.
Everything is paused. A pause holds back anything due before it ends. On iPhone and Android the reminders card does not show it and has no Resume control: open Reminder settings, where the pause the server recorded is shown and Resume reminders ends it early.
On Android, the Reminders channel is blocked. Notifications can be allowed for Achetrace as a whole while its Reminders channel is set to no notifications in Android Settings, and a post to a blocked channel is discarded in silence — no error, nothing for the app to notice at the moment it posts. The app reads the channel as well as the app-level switch, and reports a blocked channel in the same state as switched-off notifications, because the remedy is in the same place. So "Reminders are off" on an Android device where you are sure you allowed notifications is worth taking literally: check the channel.
When a reminder actually arrives
Not to the minute, on Android. Reminders are armed as inexact alarms with fifteen minutes of slack, which Android may widen further while the device is dozing. Achetrace does not ask for the exact-alarm permission: a coaching nudge does not warrant it.
The time you chose is a wall clock. The hour and minute are captured once and re-read in whatever zone the phone is in now, so a reminder set for the evening stays in the evening after you fly rather than following the original instant. Scheduled reminders are re-armed at that same wall clock when the device changes zone or crosses a daylight-saving boundary.
Scheduled is not delivered, and the app distinguishes them. "N reminders are scheduled on this device" counts what is armed, not what has arrived. On Android the app re-reads the notification permission and the channel after it posts, because a post to a blocked channel returns as though it worked; if either was off, the reminder is recorded as not delivered. It is then spent: an undelivered reminder is not armed again for later.
Quiet hours, frequency and pausing
Reminder settings opens from the reminders row on iPhone and from the Permissions card on Android. It is reachable whether or not reminders are on, because narrowing them is often what someone wants instead of turning them off.
- Quiet hours are a start and an end. Setting both to the same time means no quiet window at all. When a plan is built, a check-in whose usual time falls inside the window is planned for the moment the window ends rather than being left out of the plan. That is planning, not delivery: whether it then arrives is subject to everything under "Scheduled is not delivered" above, exactly as for any other reminder.
- How often holds two values: the shortest gap between reminders, and a cap per day. A cap of no reminders a day stops them without turning the plan off. Your account's plan is built against both.
- Pause holds everything back for one hour, eight hours or a day. Resume reminders ends a pause early. A new pause never shortens one you already hold, and what the screen shows is the window the server recorded rather than the one that was requested.
Until your account has answered, the screen reads "Not set yet" and the controls are not operable. That is the app declining to show you a window you never chose; a save that fails leaves the values on screen alone and says the save did not land.
Quiet hours are a wall clock, so your account also stores the time zone they are expressed in. When your phone's zone changes, the app writes the new one without asking you to save anything, and the hours you chose stay exactly as they are. If that write is refused, or the phone does not report a zone the app can use, the app names the zone your schedule is still using and tries again next time you open it. It never reinterprets your quiet hours in a zone your account did not accept.
Reminders in the browser
The web app's Reminders page carries a Coaching reminders card, and it does one thing: pause every reminder, or start them again. Pause for one hour, eight hours or a day; Resume reminders ends a pause early. It is the same account-wide pause the phone apps show, and a phone applies it the next time it refreshes its reminders, which it does when you open it.
The browser never delivers a reminder itself. There is no browser notification in this feature, and no permission for one to ask for. Reminders are armed by the phone apps, and the page shows the pause state; when a save does not land it says so and leaves the displayed pause as it was.
What is still unproven
No reminder in this build has been observed firing on a physical handset, or on a simulator or emulator. What is covered by tests is the scheduling and reconciliation logic — which reminders are armed, which are cancelled, and what the app says in each state — and that coverage is not the same claim as a notification having been seen to arrive on a real phone.
That evidence is tracked as issue #464 and is still open. This section stands until it closes, and is the honest limit of what the rest of this article can tell you.