feat(reminder): add reminder engine core (domain + application) - #259
Closed
LUPENGHAN wants to merge 3 commits into
Closed
feat(reminder): add reminder engine core (domain + application)#259LUPENGHAN wants to merge 3 commits into
LUPENGHAN wants to merge 3 commits into
Conversation
Native Android modules for the reminder engine's device layer: timeflow-alarm (AlarmManager scheduling, ring UI, boot rescheduling) and timeflow-baidu-location (continuous positioning bridge). Includes the Expo config plugins that wire them into the native build, app.config.js (replaces static app.json so the Baidu API key can come from an env var), and the new package deps/patches these modules need. No app code references these yet -- pure addition, nothing wired in.
Three unrelated bugs in the already-merged voice/location-search path (PR 1024XEngineer#243), fixed together since they're small and independent of the reminder engine work in this stack: - reuse a recent position during voice handshake instead of blocking on a fresh fix (backend location tools + realtime agent) - preserve newly-started TTS after an interruption instead of letting the old stream clobber it - remove stale push-to-talk listeners left on the shared WebSocket connection after a session ends
LocalReminderApplication and its ports (AlarmSchedulerPort, LocationMonitorPort, DeviceCapabilityPort, NotificationChannels, ReminderDeliveryPort, ReminderApplicationPort), plus the domain layer (reminder.ts, strengthDelivery.ts) that drives arm/fire/confirm state transitions and recurring-schedule advancement. Pure logic layer: no device-specific adapters yet, nothing wired into the app. shared/time gains format.ts (used by the delivery strength calc); MockClock/MockTimeListener are removed since nothing in this stack still needs a fake clock once the real engine lands.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Author
|
拆分粒度还是太粗(这个都还有 55 个文件改动),先撤回去重新想怎么拆,关掉这个。 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #255
拆分 #245 的第 2/4 层:提醒引擎核心(domain + application),依赖 #258(原生模块 + 脚手架)先合。
标了 draft:这个分支的历史包含 #258 还没合的提交,所以现在 diff 会显示两层加起来的内容。等 #258 合了、这个分支 rebase 到最新 main,diff 会瘦身到只剩这一层,到时候再转成 ready for review。
范围
features/reminder/domain/**features/reminder/application/LocalReminderApplication.ts+ 全部端口接口shared/time/format.ts,删除MockClock/MockTimeListener纯逻辑层,尚未接任何设备适配器,不影响现有功能。
拆分顺序