From f05c56e202221a6633908e71210c1a6a4fe6467f Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 19 Jun 2026 00:15:03 +0200 Subject: [PATCH] fix(issue-sink): stringify triggering_event_id before JSON encode IssueCoreRestSink.emit() passed task_spec.triggering_event_id straight into the httpx json= payload. When the field is a UUID object (rather than a string), httpx's JSON encoder raised "TypeError: Object of type UUID is not JSON serializable", failing the emission. Guard with str(), preserving None for optional event ids. Co-Authored-By: Claude Opus 4.8 --- src/activity_core/issue_sink.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/activity_core/issue_sink.py b/src/activity_core/issue_sink.py index f9dccd4..73f8f60 100644 --- a/src/activity_core/issue_sink.py +++ b/src/activity_core/issue_sink.py @@ -66,7 +66,11 @@ class IssueCoreRestSink(IssueSink): "due_in_days": task_spec.due_in_days, "source_type": task_spec.source_type, "source_id": task_spec.source_id, - "triggering_event_id": task_spec.triggering_event_id, + "triggering_event_id": ( + str(task_spec.triggering_event_id) + if task_spec.triggering_event_id is not None + else None + ), "activity_definition_id": task_spec.activity_definition_id, } resp = httpx.post(