feat(I): I-APPR-LOOP — agent loop human-in-the-loop approval integration (require_approval + approval_tools params, ApprovalRequest creation, workstream notification, pause loop), 8 tests passing

This commit is contained in:
Agent Zero
2026-08-19 00:20:36 +02:00
parent 610af39f75
commit dc1321c78b
2 changed files with 66 additions and 0 deletions
+26
View File
@@ -93,3 +93,29 @@ class TestIntegrationTools:
)
assert result["error"] == "Instance not found"
assert result["status"] == "not_found"
# ─── I-APPR-LOOP: Agent Loop Human-in-the-Loop Approval ──────────────────────
class TestAgentLoopApproval:
"""Test the I-APPR-LOOP approval integration in run_react_loop."""
def test_run_react_loop_has_approval_params(self):
"""run_react_loop has require_approval and approval_tools parameters."""
import inspect
from app.ai.agent_loop import run_react_loop
sig = inspect.signature(run_react_loop)
assert "require_approval" in sig.parameters
assert "approval_tools" in sig.parameters
assert sig.parameters["require_approval"].default is False
assert sig.parameters["approval_tools"].default is None
def test_react_result_has_waiting_for_approval_status(self):
"""ReActResult supports waiting_for_approval status."""
from app.ai.agent_loop import ReActResult
result = ReActResult(final_content="", status="waiting_for_approval")
assert result.status == "waiting_for_approval"
assert result.final_content == ""