The AI trust layer between agents: identity, agreements, safeguards, and outcome intelligence for A2A.

Viewing files at commit 6df07fcdd05cCommit detailsView latest

benchmarks/tau3/test_openclasp_agent.py 43 lines · 1.4 KB · python
1
from __future__ import annotations
2
3
import unittest
4
from unittest.mock import patch
5
6
from tau2.data_model.message import AssistantMessage, SystemMessage, UserMessage
7
8
from openclasp_agent import OpenClaspAgentState, OpenClaspReviewAgent
9
10
11
class GenericReviewTests(unittest.TestCase):
12
    def test_anthropic_review_has_a_non_system_message(self):
13
        captured = []
14
15
        def fake_generate(**kwargs):
16
            captured.extend(kwargs["messages"])
17
            return AssistantMessage(role="assistant", content="Review result", cost=0.01)
18
19
        agent = OpenClaspReviewAgent(
20
            tools=[],
21
            domain_policy="Visible policy",
22
            llm="claude-sonnet-5",
23
            llm_args={},
24
            task_id="0",
25
            simulation_id="simulation-id",
26
            mode="generic-review",
27
        )
28
        state = OpenClaspAgentState(
29
            system_messages=[SystemMessage(role="system", content=agent.system_prompt)],
30
            messages=[UserMessage(role="user", content="Please cancel it")],
31
            simulation_id="simulation-id",
32
        )
33
34
        with patch("openclasp_agent.generate", side_effect=fake_generate):
35
            result, cost = agent._generic_review(state, '{"type":"user_response"}')
36
37
        self.assertEqual(result, "Review result")
38
        self.assertEqual(cost, 0.01)
39
        self.assertTrue(any(isinstance(message, UserMessage) for message in captured))
40
41
42
if __name__ == "__main__":
43
    unittest.main()