feat(alarm): complete musical alarm flows
Build & Deploy Pluriwave / Análisis de código (push) Successful in 15s
Build & Deploy Pluriwave / Build APK + AAB release (push) Successful in 4m21s

This commit is contained in:
2026-05-22 00:39:50 +02:00
parent 7f1874f873
commit a3a648c633
25 changed files with 1458 additions and 167 deletions
+22 -20
View File
@@ -1,31 +1,33 @@
# Tasks: alarm-clock-module
## Phase 1: domain and tests
- [ ] Add alarm domain models: alarm, vacation range, skip/exception, execution status.
- [ ] Add recurrence calculator with tests for one-shot, weekdays, vacations, skip-next, snooze.
- [ ] Add alarm persistence service with tests.
- [x] Add alarm domain models: alarm, vacation range, skip/exception, execution status.
- [x] Add recurrence calculator for one-shot dates, weekdays, vacations, skip-next, snooze.
- [x] Add alarm persistence service.
## Phase 2: Android scheduling bridge
- [ ] Add MethodChannel scheduler interface in Flutter.
- [ ] Add Kotlin scheduler using AlarmManager/setAlarmClock.
- [ ] Add BroadcastReceiver for alarm firing and pre-alarm actions.
- [ ] Add manifest permissions and receiver declarations.
- [ ] Add diagnostics method for exact alarm permission.
- [x] Add MethodChannel scheduler interface in Flutter.
- [x] Add Kotlin scheduler using AlarmManager/setAlarmClock.
- [x] Add BroadcastReceiver foundation for alarm firing and pre-alarm actions.
- [x] Add manifest permissions and receiver declarations.
- [x] Add diagnostics method for exact alarm permission.
## Phase 3: app state and UI
- [ ] Add `EstadoAlarmas` or integrate alarm slice without bloating `EstadoRadio`.
- [ ] Add alarms tab/entry point.
- [ ] Add alarm list, editor, vacation ranges UI, and diagnostics panel.
- [ ] Add ringing screen with stop/snooze 3/5/10.
- [x] Add `EstadoAlarmas` or integrate alarm slice without bloating `EstadoRadio`.
- [x] Add alarms tab/entry point.
- [x] Add alarm list, editor, automatic refresh, next execution/skip indication, and compact diagnostics access.
- [x] Add vacation ranges UI.
- [x] Add ringing screen with stop/snooze 3/5/10.
## Phase 4: audio fallback
- [ ] Add bundled internal alarm sounds under assets.
- [ ] Implement fallback sequence with timeouts.
- [ ] Add optional fallback station selection.
- [ ] Add volume/fade-in behavior.
- [x] Add premium generated alarm icon assets under assets.
- [x] Add bundled internal alarm sounds under assets.
- [x] Implement fallback sequence with timeouts.
- [x] Add optional fallback station selection.
- [x] Add volume behavior.
## Phase 5: verification
- [ ] Run `dart format`.
- [ ] Run `flutter analyze --no-fatal-infos`.
- [ ] Run targeted tests if local runner does not hang.
- [ ] Document Android limitations and permission flow.
- [x] Run `dart format` attempt; local formatter timed out in this environment.
- [x] Run `flutter analyze --no-fatal-infos`.
- [x] Run targeted static verification through analyzer; no build executed.
- [x] Document Android limitations and permission flow.