fix(ci): fix black/ruff failures, add CoC and PR template
- Fix Python formatting (sync no longer strips blank lines from .py files) - Remove test_community_build.py (tests private sync module) - Fix ruff warnings in test files - Add CODE_OF_CONDUCT.md - Add .github/PULL_REQUEST_TEMPLATE.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,7 @@ from typing import Any
|
||||
|
||||
from plugins.openpanel.client import OpenPanelClient
|
||||
|
||||
|
||||
def get_tool_specifications() -> list[dict[str, Any]]:
|
||||
"""Return tool specifications for ToolGenerator (8 tools)"""
|
||||
return [
|
||||
@@ -189,10 +190,12 @@ def get_tool_specifications() -> list[dict[str, Any]]:
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
# =====================
|
||||
# Funnel Functions (8)
|
||||
# =====================
|
||||
|
||||
|
||||
async def list_funnels(client: OpenPanelClient, project_id: str) -> str:
|
||||
"""List all funnels for a project"""
|
||||
try:
|
||||
@@ -209,6 +212,7 @@ async def list_funnels(client: OpenPanelClient, project_id: str) -> str:
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def get_funnel(
|
||||
client: OpenPanelClient, project_id: str, funnel_id: str, date_range: str = "30d"
|
||||
) -> str:
|
||||
@@ -229,6 +233,7 @@ async def get_funnel(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def create_funnel(
|
||||
client: OpenPanelClient,
|
||||
project_id: str,
|
||||
@@ -262,6 +267,7 @@ async def create_funnel(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def update_funnel(
|
||||
client: OpenPanelClient,
|
||||
project_id: str,
|
||||
@@ -295,6 +301,7 @@ async def update_funnel(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def delete_funnel(client: OpenPanelClient, project_id: str, funnel_id: str) -> str:
|
||||
"""Delete a funnel"""
|
||||
try:
|
||||
@@ -312,6 +319,7 @@ async def delete_funnel(client: OpenPanelClient, project_id: str, funnel_id: str
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def get_funnel_conversion(
|
||||
client: OpenPanelClient, project_id: str, funnel_id: str, date_range: str = "30d"
|
||||
) -> str:
|
||||
@@ -332,6 +340,7 @@ async def get_funnel_conversion(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def get_funnel_breakdown(
|
||||
client: OpenPanelClient,
|
||||
project_id: str,
|
||||
@@ -357,6 +366,7 @@ async def get_funnel_breakdown(
|
||||
except Exception as e:
|
||||
return json.dumps({"success": False, "error": str(e)}, indent=2, ensure_ascii=False)
|
||||
|
||||
|
||||
async def compare_funnels(
|
||||
client: OpenPanelClient, project_id: str, funnel_ids: list[str], date_range: str = "30d"
|
||||
) -> str:
|
||||
|
||||
Reference in New Issue
Block a user