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
@@ -123,12 +123,13 @@ class AgentConfig(BaseModel):
|
||||
|
||||
flash: FlashProfileConfig = Field(default_factory=FlashProfileConfig)
|
||||
pro: ProProfileConfig = Field(default_factory=ProProfileConfig)
|
||||
|
||||
explorer: ExplorerConfig = Field(default_factory=ExplorerConfig)
|
||||
explorer_versions: dict[str, Literal["flash", "pro", "ultra"]]
|
||||
denylisted_tools: dict[str, list[str]]
|
||||
enable_video_ledger: bool = True
|
||||
video_analyzer: VideoAnalyzerConfig = Field(default_factory=VideoAnalyzerConfig)
|
||||
concurrency_mode: Literal["global", "per_device"] = "per_device"
|
||||
max_concurrency: int | None = None
|
||||
|
||||
model_config = {"arbitrary_types_allowed": True}
|
||||
|
||||
|
||||
@@ -96,7 +96,7 @@ class TaskRequestBase(BaseModel):
|
||||
model_config = {"ignored_types": (CyFunctionDetector,)}
|
||||
max_steps: int = RECURSION_LIMIT
|
||||
record_trace: bool = True
|
||||
trace_path: Path = Path("artemis-traces")
|
||||
trace_path: Path = Path("traces")
|
||||
llm_output_path: Path | None = None
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user