mirror of
https://github.com/hoshikawa2/compass_backoffice.git
synced 2026-07-09 13:54:20 +00:00
bugfixes
This commit is contained in:
@@ -145,12 +145,23 @@ class BackofficeAgent(AgentRuntimeMixin):
|
||||
{"message": "Backoffice native agent completed", "type": "INFO"},
|
||||
component="agent.backoffice.native.completed",
|
||||
)
|
||||
siebel = self._extract_siebel_result(mcp_results)
|
||||
|
||||
return {
|
||||
"answer": answer,
|
||||
"next_state": self._next_state(normalized_state, mcp_results),
|
||||
"mcp_results": mcp_results,
|
||||
"rag_metadata": rag_metadata,
|
||||
|
||||
"crmProtocol": siebel.get("crmProtocol"),
|
||||
"fieldsToUpdate": siebel.get("fieldsToUpdate"),
|
||||
"transitions": siebel.get("transitions"),
|
||||
|
||||
"metadata": {
|
||||
**(normalized_state.get("metadata") or {}),
|
||||
"siebel_response": siebel.get("siebel_response"),
|
||||
},
|
||||
|
||||
"framework_native": {
|
||||
"agent": self.name,
|
||||
"intent": normalized_state.get("intent"),
|
||||
@@ -419,3 +430,16 @@ Regras obrigatórias:
|
||||
if any(r.get("skipped") for r in mcp_results):
|
||||
return "BACKOFFICE_WAITING_ACTION_TEXT"
|
||||
return "BACKOFFICE_ACTIVE"
|
||||
|
||||
def _extract_siebel_result(self, mcp_results: list[dict[str, Any]]) -> dict[str, Any]:
|
||||
for item in mcp_results:
|
||||
tool = item.get("tool_name") or item.get("tool")
|
||||
if tool in {"registrar_acao_siebel", "abrir_chamado_siebel", "backOfficeSRopening"}:
|
||||
result = item.get("result") or item.get("data") or item
|
||||
return {
|
||||
"crmProtocol": result.get("crmProtocol"),
|
||||
"fieldsToUpdate": result.get("fieldsToUpdate"),
|
||||
"transitions": result.get("transitions") or [],
|
||||
"siebel_response": result,
|
||||
}
|
||||
return {}
|
||||
@@ -117,7 +117,7 @@ class AgentWorkflow:
|
||||
self.embedding_provider = create_embedding_provider(settings)
|
||||
self.rag_service = RagService(settings, telemetry=telemetry)
|
||||
self.router = EnterpriseRouter(settings, llm=llm, telemetry=telemetry)
|
||||
agent_kwargs = {"telemetry": telemetry, "tool_router": getattr(self, "tool_router", None), "rag_service": self.rag_service, "cache": self.cache, "settings": settings, "observer": self.observer}
|
||||
agent_kwargs = {"telemetry": telemetry, "tool_router": self.tool_router, "rag_service": self.rag_service, "cache": self.cache, "settings": settings, "observer": self.observer}
|
||||
self.billing = BillingAgent(llm, **agent_kwargs)
|
||||
self.product = ProductAgent(llm, **agent_kwargs)
|
||||
self.orders = OrdersAgent(llm, **agent_kwargs)
|
||||
|
||||
Reference in New Issue
Block a user