From ca97840e1deb3d5d274690c2145dcf9bfb1d7b65 Mon Sep 17 00:00:00 2001 From: OoO Date: Wed, 13 May 2026 16:03:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=88=E4=BD=8F=20Agent=20Actions=20?= =?UTF-8?q?=E5=8B=95=E6=85=8B=E7=99=BD=E5=90=8D=E5=96=AE=E9=82=8A=E7=95=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/test_agent_actions.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/test_agent_actions.py b/tests/test_agent_actions.py index 0ccf9af..c10667c 100644 --- a/tests/test_agent_actions.py +++ b/tests/test_agent_actions.py @@ -1,3 +1,27 @@ +def test_agent_action_registries_keep_l2_and_l3_boundaries(): + import services.agent_actions as actions + + assert set(actions.SAFE_ACTIONS) == { + "retry_task", + "query_km", + "silence_alert", + "flag_for_human_review", + "route_to_km", + "mark_for_relearn", + } + assert set(actions.OPS_ACTIONS) == { + "pause_task", + "resume_task", + "force_retry_now", + } + assert set(actions.SAFE_ACTIONS).isdisjoint(actions.OPS_ACTIONS) + + for action_name, func in actions.SAFE_ACTIONS.items(): + assert getattr(actions, action_name) is func + for action_name, func in actions.OPS_ACTIONS.items(): + assert getattr(actions, action_name) is func + + def test_flag_for_human_review_writes_pending_memory(monkeypatch): import services.agent_actions as actions import services.openclaw_learning_service as learning