feat(v0.4): проводка thermal+coprocessor циклов + D-Bus ThermalState/ThermalChanged + dev-mock

spawn_loops (thermal-монитор + coprocessor heartbeat/wait/safe-to-cut/B09) в main после
регистрации интерфейса; PowerService += thermal_state + хендлы fsm/thermal_state + mock(temp,copro);
dev-mock += SetTemp/HangSoc/McuLinkLoss; proxy.rs += thermal_state/thermal_changed. Existing
integration-тесты подогнаны под mock(temp,copro).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>
This commit is contained in:
2026-06-25 15:36:19 +03:00
parent 2e6144c54f
commit cd2442f672
4 changed files with 182 additions and 7 deletions
+4
View File
@@ -22,10 +22,14 @@ pub trait Power1 {
fn uptime(&self) -> zbus::Result<u64>;
#[zbus(property)]
fn power_source(&self) -> zbus::Result<String>;
#[zbus(property)]
fn thermal_state(&self) -> zbus::Result<String>;
#[zbus(signal)]
fn acc_changed(&self, on: bool) -> zbus::Result<()>;
#[zbus(signal)]
fn thermal_changed(&self, state: String, celsius: i32) -> zbus::Result<()>;
#[zbus(signal)]
fn shutdown_imminent(&self, seconds: u32, reason: String) -> zbus::Result<()>;
#[zbus(signal)]
fn shutdown_aborted(&self) -> zbus::Result<()>;