fix(runtime): recover awake ownership and batch model failures

This commit is contained in:
chenmingxuan committed 2026-10-28 11:50:05 +08:00
1 parent 6b2c0f199d
commit baf069854b
17 files changed
+477 -32

No files matched your search

+29
View File
@@ -163,6 +163,35 @@ def test_cli_trace_help():
assert "view" in result.output
@pytest.mark.asyncio
async def test_worker_initialization_failure_is_persisted_and_cleaned(monkeypatch):
from unittest.mock import AsyncMock, MagicMock
import artemis.interfaces.cli.commands.run as run_module
from artemis.runtime import task_result
monkeypatch.setenv("ARTEMIS_SESSION_ID", "test-session")
monkeypatch.setenv("ARTEMIS_TASK_INGRESS", "test")
fake_agent = MagicMock()
fake_agent.init = AsyncMock(side_effect=PermissionError("device initialization denied"))
fake_agent.clean = AsyncMock()
fake_agent.run_task = AsyncMock()
monkeypatch.setattr(run_module, "initialize_llm_config", MagicMock())
monkeypatch.setattr(run_module, "AgentProfile", MagicMock())
monkeypatch.setattr(run_module, "Builders", MagicMock())
monkeypatch.setattr(run_module, "Agent", MagicMock(return_value=fake_agent))
save = MagicMock()
monkeypatch.setattr(task_result, "save_failure_result", save)
with pytest.raises(PermissionError, match="initialization denied"):
await run_module.execute_task(
"inspect", execution_target="computer", session_id="test-session"
)
save.assert_called_once_with(
"test-session", "device initialization denied", code="initialization_failed"
)
fake_agent.clean.assert_awaited_once()
fake_agent.run_task.assert_not_awaited()
def test_cli_mcp_help():
"""Verify 'artemis mcp --help' lists server options."""
result = runner.invoke(app, ["mcp", "--help"])