new feature: transaction evidence
This commit is contained in:
@@ -463,6 +463,7 @@ async def _process_gateway_message(req: GatewayRequest, emit_sse: bool = False)
|
||||
"domain": result.get("domain"),
|
||||
"mcp_tools": result.get("mcp_tools"),
|
||||
"mcp_results": result.get("mcp_results"),
|
||||
"transaction_evidence": result.get("relevant_transaction_evidence", []),
|
||||
"business_context": business_context.model_dump(),
|
||||
"identity_missing": missing_identity_keys,
|
||||
"judges": result.get("judge_results"),
|
||||
|
||||
@@ -30,6 +30,9 @@ class AgentState(TypedDict, total=False):
|
||||
pending_domain_workflow: dict[str, Any]
|
||||
business_workflows_executed: list[str]
|
||||
transaction_status: str
|
||||
transaction_evidence: list[dict[str, Any]]
|
||||
last_transaction_evidence: dict[str, Any]
|
||||
relevant_transaction_evidence: list[dict[str, Any]]
|
||||
confirmation_required: bool
|
||||
confirmation_received: bool
|
||||
tool_policy_result: dict[str, Any]
|
||||
|
||||
@@ -733,7 +733,11 @@ class AgentWorkflow:
|
||||
):
|
||||
judge_context = dict(state.get("context", {}) or {})
|
||||
judge_context["mcp_results"] = state.get("mcp_results", [])
|
||||
judge_context["evidence"] = state.get("mcp_results", []) or judge_context.get("evidence")
|
||||
relevant_transaction_evidence = list(state.get("relevant_transaction_evidence") or [])
|
||||
judge_context["transaction_evidence"] = relevant_transaction_evidence
|
||||
current_evidence = list(state.get("mcp_results", []) or [])
|
||||
current_evidence.extend(relevant_transaction_evidence)
|
||||
judge_context["evidence"] = current_evidence or judge_context.get("evidence")
|
||||
judge_context["route"] = state.get("route")
|
||||
judge_context["intent"] = state.get("intent")
|
||||
# Judge sampling must see the finalized transaction state. These
|
||||
@@ -879,6 +883,7 @@ class AgentWorkflow:
|
||||
"judges": state.get("judge_results", []),
|
||||
"mcp_tools": state.get("mcp_tools", []),
|
||||
"mcp_results": state.get("mcp_results", []),
|
||||
"transaction_evidence": state.get("relevant_transaction_evidence", []),
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user