diff --git a/src/agents/launcher.py b/src/agents/launcher.py index 3f9afcb..303a2d4 100644 --- a/src/agents/launcher.py +++ b/src/agents/launcher.py @@ -703,47 +703,6 @@ class AgentLauncher: logger.error(f"Failed to create PR for {branch}: {e}") return None - def _auto_merge_pr(self, repo: str, branch: str, task_id: int, work_item_id: str): - import httpx - owner = settings.gitea_owner - headers = {"Authorization": f"token {settings.gitea_token}"} - base_url = f"{settings.gitea_url}/api/v1" - try: - resp = httpx.get( - f"{base_url}/repos/{owner}/{repo}/pulls", - params={"state": "open", "head": branch}, - headers=headers, timeout=10 - ) - resp.raise_for_status() - prs = resp.json() - if not prs: - pr_number = self._ensure_pr(repo, branch, 0) - if not pr_number: - return False - else: - pr_number = prs[0]["number"] - resp = httpx.post( - f"{base_url}/repos/{owner}/{repo}/pulls/{pr_number}/merge", - json={"Do": "merge"}, - headers=headers, timeout=30 - ) - if resp.status_code in (200, 204): - logger.info(f"PR #{pr_number} merged for {branch}") - update_task_stage(task_id, "done") - notify_stage_change(task_id, "deploy", "done") - plane_notify_stage(work_item_id, "deploy", "done") - from ..notifications import send_telegram - send_telegram(f"\u2705 {work_item_id}: PR #{pr_number} merged! deploy -> done. Task complete.") - return True - else: - logger.error(f"Merge failed for PR #{pr_number}: {resp.status_code} {resp.text}") - from ..notifications import send_telegram - send_telegram(f"\u26a0\ufe0f {work_item_id}: Auto-merge failed (HTTP {resp.status_code}). Manual merge needed.") - return False - except Exception as e: - logger.error(f"Auto-merge failed for {branch}: {e}") - return False - def _write_task_file(self, repo: str, branch: str, task_file: str, content: str): """Write task file directly into the task's worktree.