fix(imports): agent_runner MailService→Mail model, fix trace_hooks syntax, fix trace_api_contracts warnings
Check Cross-Plugin Imports / check (push) Has been cancelled

This commit is contained in:
Agent Zero
2026-08-17 07:17:27 +02:00
parent 5b0b1e093a
commit 0a1ba30ed7
7 changed files with 580 additions and 595 deletions
+11 -21
View File
@@ -39,34 +39,24 @@ def find_frontend_api_calls() -> list[dict]:
# Find apiGet/apiPost/apiPut/apiPatch/apiDelete calls with URL patterns
patterns = [
r"apiGet(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"apiPost(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"apiPut(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"apiPatch(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"apiDelete(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"\bM\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"\bj\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"\bSt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"\byt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
r"\bxt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*",
(r"apiGet(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "GET"),
(r"apiPost(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "POST"),
(r"apiPut(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "PUT"),
(r"apiPatch(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "PATCH"),
(r"apiDelete(?:<[^>]+>)?\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "DELETE"),
(r"\bM\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "GET"),
(r"\bj\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "POST"),
(r"\bSt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "PUT"),
(r"\byt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "PATCH"),
(r"\bxt\s*\(\s*[`'\"]([^`'\"]+)[`'\"]\s*", "DELETE"),
]
for pattern in patterns:
for pattern, method in patterns:
for match in re.finditer(pattern, content):
url = match.group(1)
# Normalize URL — remove template literals, query params
url_clean = re.sub(r"\$\{[^}]+\}", "{param}", url)
url_clean = url_clean.split("?")[0].split("#")[0]
# Determine method from function name
method = "GET"
if "Post" in pattern or "\bj\s*" in pattern:
method = "POST"
elif "Put" in pattern:
method = "PUT"
elif "Patch" in pattern or "\byt\s*" in pattern:
method = "PATCH"
elif "Delete" in pattern or "\bxt\s*" in pattern:
method = "DELETE"
calls.append({
"file": rel_path,