What to build
让 slkd 的事件接收任务在等待内核事件时不持有 SharedState mutex。
当前事件循环先锁住 AdapterState,再 await next_event。在没有事件时,同一把锁上的所有 D-Bus 方法都可能无限等待,事件接收 Interface 与业务状态 Implementation 被错误耦合。
建议由独立 event receiver 拥有专用订阅 fd 或 Adapter,收到事件后才短暂获取 SharedState 更新状态与发出 D-Bus signal。
Acceptance criteria
Blocked by
None - can start immediately.
What to build
让 slkd 的事件接收任务在等待内核事件时不持有 SharedState mutex。
当前事件循环先锁住 AdapterState,再 await next_event。在没有事件时,同一把锁上的所有 D-Bus 方法都可能无限等待,事件接收 Interface 与业务状态 Implementation 被错误耦合。
建议由独立 event receiver 拥有专用订阅 fd 或 Adapter,收到事件后才短暂获取 SharedState 更新状态与发出 D-Bus signal。
Acceptance criteria
Blocked by
None - can start immediately.