Alarm Configuration
The alarm system is the heartbeat of CommitT’s enforcement loop. Alarms are configured on the FinalScreen under the “Alarms” settings section and are dispatched through the native KotlinAlarmScheduler module.
Configuration Options
Persistence Guarantees
CommitT alarms are not standard Android notifications that can be silenced or snoozed. They are hardware-level alarms registered through theAlarmManager exact scheduling API:
- Survives App Kill: Alarms are bound to
PendingIntentobjects in the Android system. Even if the user force-stops CommitT, the OS still fires the alarm. - Survives Phone Restart: A
BOOT_COMPLETEDbroadcast receiver re-registers all active alarms after device reboot. - Locked Screen Bypass: Alarms use
WakeLockto force the screen on and display the verification prompt, even when the phone is locked.
The Alarm Pipeline
The alarm is the third and final step of the Triple-Write Protocol. It is only registered after both the cloud and local writes succeed.Example
Wake-up commitment alarm config:
- When to Start: 5 minutes before (alarm at 5:55 AM for a 6:00 AM slot)
- Frequency: Every 2 minutes (if Stay Throughout mode)
- Persistence: Survives overnight charging, phone restart, and app kill