fix linear connector methods to return status dicts

This commit is contained in:
CREDO23 2026-02-18 19:13:14 +02:00
parent f0e1f3419e
commit 5bb619227e
3 changed files with 132 additions and 82 deletions

View file

@ -197,7 +197,7 @@ def create_create_linear_issue_tool(
linear_client = LinearConnector(
session=db_session, connector_id=actual_connector_id
)
issue = await linear_client.create_issue(
result = await linear_client.create_issue(
team_id=final_team_id,
title=final_title,
description=final_description,
@ -207,15 +207,19 @@ def create_create_linear_issue_tool(
label_ids=final_label_ids if final_label_ids else None,
)
if result.get("status") == "error":
logger.error(f"Failed to create Linear issue: {result.get('message')}")
return {"status": "error", "message": result.get("message")}
logger.info(
f"Linear issue created: {issue.get('identifier')} - {issue.get('title')}"
f"Linear issue created: {result.get('identifier')} - {result.get('title')}"
)
return {
"status": "success",
"issue_id": issue.get("id"),
"identifier": issue.get("identifier"),
"url": issue.get("url"),
"message": f"Issue {issue.get('identifier')} created successfully.",
"issue_id": result.get("id"),
"identifier": result.get("identifier"),
"url": result.get("url"),
"message": result.get("message"),
}
except Exception as e:

View file

@ -234,6 +234,16 @@ def create_update_linear_issue_tool(
if final_new_label_ids is not None
else None,
)
if updated_issue.get("status") == "error":
logger.error(
f"Failed to update Linear issue: {updated_issue.get('message')}"
)
return {
"status": "error",
"message": updated_issue.get("message"),
}
logger.info(
f"update_issue result: {updated_issue.get('identifier')} - {updated_issue.get('title')}"
)
@ -262,11 +272,13 @@ def create_update_linear_issue_tool(
else:
kb_message = ""
identifier = updated_issue.get("identifier")
default_msg = f"Issue {identifier} updated successfully."
return {
"status": "success",
"identifier": updated_issue.get("identifier"),
"identifier": identifier,
"url": updated_issue.get("url"),
"message": f"Issue {updated_issue.get('identifier')} updated successfully.{kb_message}",
"message": f"{updated_issue.get('message', default_msg)}{kb_message}",
}
except Exception as e: