| from __future__ import annotations | |
| from typing import Dict | |
| from services import ( | |
| prepare_translation_context, | |
| review_and_emit_payload, | |
| submit_review_to_github, | |
| run_end_to_end, | |
| ) | |
| def tool_prepare( | |
| github_token: str, | |
| pr_url: str, | |
| original_path: str, | |
| translated_path: str, | |
| ) -> Dict[str, object]: | |
| """ | |
| Tool 1: Fetch Files + Build Prompts | |
| """ | |
| return prepare_translation_context( | |
| github_token=github_token, | |
| pr_url=pr_url, | |
| original_path=original_path, | |
| translated_path=translated_path, | |
| ) | |
| def tool_review_and_emit( | |
| provider: str, | |
| provider_token: str, | |
| model_name: str, | |
| pr_url: str, | |
| translated_path: str, | |
| original: str, | |
| translated: str, | |
| ) -> Dict[str, object]: | |
| """ | |
| Tool 2: LLM Review + Emit Payload | |
| """ | |
| return review_and_emit_payload( | |
| provider=provider, | |
| provider_token=provider_token, | |
| model_name=model_name, | |
| pr_url=pr_url, | |
| translated_path=translated_path, | |
| original=original, | |
| translated=translated, | |
| ) | |
| def tool_submit_review( | |
| github_token: str, | |
| pr_url: str, | |
| translated_path: str, | |
| payload_or_review: Dict[str, object], | |
| allow_self_request_changes: bool = True, | |
| ) -> Dict[str, object]: | |
| """ | |
| Tool 3: Submit Review | |
| """ | |
| return submit_review_to_github( | |
| github_token=github_token, | |
| pr_url=pr_url, | |
| translated_path=translated_path, | |
| payload_or_review=payload_or_review, | |
| allow_self_request_changes=allow_self_request_changes, | |
| ) | |
| def tool_end_to_end( | |
| provider: str, | |
| provider_token: str, | |
| model_name: str, | |
| github_token: str, | |
| pr_url: str, | |
| original_path: str, | |
| translated_path: str, | |
| save_review: bool = False, | |
| save_path: str = "review.json", | |
| submit_review_flag: bool = False, | |
| ) -> Dict[str, object]: | |
| """ | |
| Tool 4: End-to-End | |
| """ | |
| return run_end_to_end( | |
| provider=provider, | |
| provider_token=provider_token, | |
| model_name=model_name, | |
| github_token=github_token, | |
| pr_url=pr_url, | |
| original_path=original_path, | |
| translated_path=translated_path, | |
| save_review=save_review, | |
| save_path=save_path, | |
| submit_review_flag=submit_review_flag, | |
| ) | |