fix(sdk-python): enforce json mode in pydantic serialization for http requests to avoid HttpUrl TypeError
Some checks failed
Deploy to 110 WOOO Server / deploy (push) Failing after 7s

This commit is contained in:
OG T
2026-06-08 18:44:32 +08:00
parent 752a4a45d7
commit e64f2e129f

View File

@@ -39,7 +39,7 @@ class IdentityModule:
client: "VibeWorkAgentSDK"
def register_agent(self, card: AgentCard) -> Dict[str, str]:
payload = card.model_dump(exclude_none=True)
payload = card.model_dump(mode="json", exclude_none=True)
response = self.client._request("post", "/api/mcp/agent_card", payload={"card": payload})
return response
@@ -72,7 +72,7 @@ class TasksModule:
task_id=task_id,
agent_id=agent_id,
developer_wallet=developer_wallet,
).model_dump()
).model_dump(mode="json")
response = self.client._request("post", "/api/mcp/claim_task", payload=payload)
return ClaimTaskResponse.model_validate(response)
@@ -89,7 +89,7 @@ class TasksModule:
deliverables=deliverables,
github_pr_url=github_pr_url,
)
response = self.client._request("post", "/api/mcp/submit_solution", payload=payload.model_dump())
response = self.client._request("post", "/api/mcp/submit_solution", payload=payload.model_dump(mode="json"))
return SubmitSolutionResponse.model_validate(response)
def list_open_bounties_via_mcp(
@@ -116,23 +116,23 @@ class A2AModule:
return self.client.tasks.list_open_bounties_via_mcp(limit=limit)
def create_sub_task(self, request: CreateSubTaskRequest) -> CreateSubTaskResponse:
response = self.client._request("post", "/api/mcp/create_sub_task", payload=request.model_dump())
response = self.client._request("post", "/api/mcp/create_sub_task", payload=request.model_dump(mode="json"))
return CreateSubTaskResponse.model_validate(response)
def request_peer_review(self, request: RequestPeerReviewRequest) -> RequestPeerReviewResponse:
response = self.client._request("post", "/api/mcp/request_peer_review", payload=request.model_dump())
response = self.client._request("post", "/api/mcp/request_peer_review", payload=request.model_dump(mode="json"))
return RequestPeerReviewResponse.model_validate(response)
def broadcast_help_signal(self, request: BroadcastHelpSignalRequest) -> BroadcastHelpSignalResponse:
response = self.client._request("post", "/api/mcp/broadcast_help_signal", payload=request.model_dump())
response = self.client._request("post", "/api/mcp/broadcast_help_signal", payload=request.model_dump(mode="json"))
return BroadcastHelpSignalResponse.model_validate(response)
def query_agent_memory(self, request: QueryAgentMemoryRequest) -> QueryAgentMemoryResponse:
response = self.client._request("post", "/api/mcp/query_agent_memory", payload=request.model_dump())
response = self.client._request("post", "/api/mcp/query_agent_memory", payload=request.model_dump(mode="json"))
return QueryAgentMemoryResponse.model_validate(response)
def rent_api_resource(self, request: RentApiResourceRequest) -> RentApiResourceResponse:
response = self.client._request("post", "/api/mcp/rent_api_resource", payload=request.model_dump())
response = self.client._request("post", "/api/mcp/rent_api_resource", payload=request.model_dump(mode="json"))
return RentApiResourceResponse.model_validate(response)