From 9143b84daa286f92384ca9e402142a6cb4b75638 Mon Sep 17 00:00:00 2001 From: Benjamin Admin Date: Tue, 3 Mar 2026 16:22:05 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20CAST=20statt=20::jsonb=20in=20obligation?= =?UTF-8?q?=5Froutes.py=20(SQLAlchemy-Kompatibilit=C3=A4t)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SQLAlchemy interpretiert '::' als Parameter-Trenner — CAST(:param AS jsonb) verwenden. Co-Authored-By: Claude Sonnet 4.6 --- backend-compliance/compliance/api/obligation_routes.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend-compliance/compliance/api/obligation_routes.py b/backend-compliance/compliance/api/obligation_routes.py index 3ce409d..74008e7 100644 --- a/backend-compliance/compliance/api/obligation_routes.py +++ b/backend-compliance/compliance/api/obligation_routes.py @@ -201,7 +201,7 @@ async def create_obligation( status, priority, responsible, linked_systems, assessment_id, rule_code, notes) VALUES (:tenant_id, :title, :description, :source, :source_article, :deadline, - :status, :priority, :responsible, :linked_systems::jsonb, :assessment_id, :rule_code, :notes) + :status, :priority, :responsible, CAST(:linked_systems AS jsonb), :assessment_id, :rule_code, :notes) RETURNING * """), { "tenant_id": tenant_id, @@ -255,7 +255,7 @@ async def update_obligation( for field, value in payload.model_dump(exclude_unset=True).items(): if field == "linked_systems": updates["linked_systems"] = json.dumps(value or []) - set_clauses.append("linked_systems = :linked_systems::jsonb") + set_clauses.append("linked_systems = CAST(:linked_systems AS jsonb)") else: updates[field] = value set_clauses.append(f"{field} = :{field}")