feat: add multi-device concurrency, server lifecycle CLI, and unified execution stream
- Implement DevicePool and DeviceExecutionLock concurrency modes (per-device FIFO vs global serialization) - Extend ArtemisClient SDK and CLI with explicit device targeting and concurrency strategy configuration - Add server lifecycle management (artemis restart, stop, status) with cross-platform PID discovery - Update MCP server tools to support multi-device dispatch, trace tagging, and per-device execution - Enhance Showcase UI with step-by-step visual replay, playback speed controls, and device serial badges - Add comprehensive unit test coverage and edge-case verification scripts
This commit is contained in:
1 parent
a36a66ce6d
commit
c2c90a6378
84 files changed
+5612
-645
No files matched your search
@@ -14,22 +14,57 @@
|
||||
|
||||
"""Artemis cross-platform runtime and process supervisor subsystem."""
|
||||
|
||||
from artemis.runtime.device_lock import DeviceBusyError, DeviceExecutionLock
|
||||
from artemis.runtime.device_lock import (
|
||||
ConcurrencyMode,
|
||||
DeviceBusyError,
|
||||
DeviceExecutionLock,
|
||||
)
|
||||
from artemis.runtime.device_pool import DevicePool, DeviceStatus, device_pool
|
||||
from artemis.runtime.daemon_client import (
|
||||
ensure_daemon_running,
|
||||
is_daemon_running,
|
||||
submit_task_to_daemon,
|
||||
)
|
||||
from artemis.runtime.awake_service import (
|
||||
ensure_device_awake,
|
||||
sanitize_device_state,
|
||||
screen_awake_service,
|
||||
shutdown_awake_service,
|
||||
start_awake_service,
|
||||
)
|
||||
from artemis.runtime.server_lifecycle import (
|
||||
clear_server_info,
|
||||
find_server_pids,
|
||||
get_server_status,
|
||||
is_port_in_use,
|
||||
read_server_info,
|
||||
stop_server,
|
||||
write_server_info,
|
||||
)
|
||||
from artemis.runtime.supervisor import ProcessSupervisor, process_supervisor
|
||||
|
||||
__all__ = [
|
||||
"ConcurrencyMode",
|
||||
"DeviceBusyError",
|
||||
"DeviceExecutionLock",
|
||||
"DevicePool",
|
||||
"DeviceStatus",
|
||||
"clear_server_info",
|
||||
"device_pool",
|
||||
"ensure_daemon_running",
|
||||
"ensure_device_awake",
|
||||
"find_server_pids",
|
||||
"get_server_status",
|
||||
"is_daemon_running",
|
||||
"is_port_in_use",
|
||||
"ProcessSupervisor",
|
||||
"process_supervisor",
|
||||
"read_server_info",
|
||||
"sanitize_device_state",
|
||||
"screen_awake_service",
|
||||
"shutdown_awake_service",
|
||||
"start_awake_service",
|
||||
"stop_server",
|
||||
"submit_task_to_daemon",
|
||||
"write_server_info",
|
||||
]
|
||||
Reference in new issue
Block a user