Files
kk0t9 aaae0508b9 feat(v0.3): Power-сервис на FSM — dev-mock кормит события, grace+durable-barrier
P7.2: service.rs оборачивает PowerFsm — D-Bus state/signals из FSM; apply_event
исполняет действия (эмит сигналов, фоновый grace-таймер, durable-barrier sync).
dev-mock SetAcc/SetIgnition/TriggerShutdown/AbortShutdown кормят входы FSM.
FSM: AccOff → AccChanged(false)+ShutdownImminent (сохранён walking-skeleton-регресс).
Integration: ShutdownImminent + abort. zbus → tokio-executor (default-features=false,
features=["tokio"]) — иначе tokio::spawn в хендлере паникует (async-io). test-integration
--test-threads=1 (тесты владеют одним именем на шине).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>
2026-06-24 23:17:13 +03:00

41 lines
1.6 KiB
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[workspace]
resolver = "2"
# Члены растут по планам реализации. crates/core, crates/apps, crates/tools —
# группировка привилегированного ядра / first-party-апов / dev-инструментов (architecture §3).
members = [
"crates/shturman-common",
"crates/shturman-ipc",
"crates/shturman-sdk",
"crates/core/shturman-firstboot",
"crates/core/shturman-settings",
"crates/core/shturman-power",
"crates/apps/shturman-render",
"crates/apps/shturman-splash",
"crates/apps/shturman-shell",
"crates/tools/shturman-manifest-validator",
]
[workspace.package]
edition = "2021"
license = "MIT"
rust-version = "1.96"
[workspace.dependencies]
tokio = { version = "1", features = ["rt-multi-thread", "macros", "signal", "sync", "time"] }
# tokio-executor у zbus (а не async-io) — сервисы на #[tokio::main]; нужно для tokio::spawn в хендлерах (grace-таймер).
zbus = { version = "4", default-features = false, features = ["tokio"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tracing-journald = "0.3"
anyhow = "1"
thiserror = "1"
clap = { version = "4", features = ["derive"] }
slint = { version = "1", default-features = false, features = ["compat-1-2", "std", "backend-winit", "renderer-software"] }
# dev
tempfile = "3"
futures-util = "0.3"
# slint — добавляется в Плане 4 (вместе с slint GPL-3.0 exception в deny.toml)