From 38c0df70b5ce50358b26617ce6e54e40a885820d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=20Ha=CC=88nninen?= Date: Tue, 10 Feb 2026 12:04:40 +0200 Subject: [PATCH] all changes --- actions/agent-connector/CHANGELOG.md | 9 ++++++++- actions/agent-connector/actions.py | 14 ++++++++++---- actions/agent-connector/package.yaml | 4 ++-- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/actions/agent-connector/CHANGELOG.md b/actions/agent-connector/CHANGELOG.md index 048bc36e..9ef3682e 100644 --- a/actions/agent-connector/CHANGELOG.md +++ b/actions/agent-connector/CHANGELOG.md @@ -5,7 +5,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/) and this project adheres to [Semantic Versioning](https://semver.org/). -### [4.2.0] - 2026-01-27 +### [4.2.1] - 2026-02-10 + +### Changed + +- Updated `create_work_item_for_agent()` payload parameter from `dict` to `WorkItemPayload` Pydantic model with `extra="allow"` for flexible payload structure +- Updated sema4ai-actions to `1.6.6` + +### [4.1.1] - 2026-01-27 ### Added diff --git a/actions/agent-connector/actions.py b/actions/agent-connector/actions.py index 05498a1c..8d290917 100644 --- a/actions/agent-connector/actions.py +++ b/actions/agent-connector/actions.py @@ -1,4 +1,4 @@ -from pydantic import BaseModel +from pydantic import BaseModel, ConfigDict from sema4ai.actions import ( ActionError, Response, @@ -115,6 +115,12 @@ class WorkItemResponse(BaseModel): agent_name: str agent_id: str + +class WorkItemPayload(BaseModel): + """Payload for creating a work item. Accepts any additional properties.""" + + model_config = ConfigDict(extra="allow") + @action def ask_agent( agent_name: str, @@ -312,7 +318,7 @@ def send_message( @action def create_work_item_for_agent( agent_name: str, - payload: dict, + payload: WorkItemPayload, sema4_api_key: Secret, attachments: list[str] | None = None, work_item_api_url: str | None = None, @@ -321,7 +327,7 @@ def create_work_item_for_agent( Args: agent_name: The name of the agent to run the Work Item - payload: JSON payload to send as the Work Item payload + payload: JSON payload to send as the Work Item payload (any properties allowed) sema4_api_key: The API key for the Sema4 API if running in cloud. Use LOCAL if in Studio or SDK! attachments: Optional list of file paths to attach to the Work Item work_item_api_url: Optional Work Item API URL override @@ -337,7 +343,7 @@ def create_work_item_for_agent( agent = agent_result.agent work_item = client.create_work_item( agent_id=agent.id, - payload=payload, + payload=payload.model_dump(exclude_none=True), attachments=attachments, work_item_api_url=work_item_api_url, ) diff --git a/actions/agent-connector/package.yaml b/actions/agent-connector/package.yaml index 7fc87fc8..6ae307de 100644 --- a/actions/agent-connector/package.yaml +++ b/actions/agent-connector/package.yaml @@ -5,7 +5,7 @@ name: Agent Connector description: Actions to connect agents with each other # Package version number, recommend using semver.org -version: 4.1.1 +version: 4.2.1 # The version of the `package.yaml` format. spec-version: v2 @@ -18,7 +18,7 @@ dependencies: - python=3.11.11 - uv=0.6.11 pypi: - - sema4ai-actions=1.4.2 + - sema4ai-actions=1.6.6 packaging: # By default, all files and folders in this directory are packaged when uploaded.