# .gitea/workflows/ai-solve-issue.yml name: AI Issue Solver on: # Ручной запуск workflow_dispatch: inputs: issue_number: description: 'Issue number to solve' required: true type: number # Автоматический запуск по метке issues: types: [labeled] jobs: solve: # Для автоматического запуска по метке if: | (gitea.event_name == 'workflow_dispatch') || (gitea.event_name == 'issues' && contains(gitea.event.issue.labels.*.name, 'ai-solve')) runs-on: opencode steps: - name: Checkout repository uses: actions/checkout@v4 with: token: ${{ secrets.GGITEA_TOKEN }} - name: Debug environment run: | echo "=== Debug Info ===" echo "Gitea context:" echo "event_name: ${{ gitea.event_name }}" echo "repository: ${{ gitea.repository }}" echo "repository_owner: ${{ gitea.repository_owner }}" echo "event.issue: ${{ toJSON(gitea.event.issue) }}" echo "event.inputs: ${{ toJSON(gitea.event.inputs) }}" echo "event.labels: ${{ toJSON(gitea.event.labels) }}" echo "=== End Debug ===" - name: Solve Issue env: GGITEA_URL: ${{ secrets.GGITEA_URL }} GGITEA_TOKEN: ${{ secrets.GGITEA_TOKEN }} # Правильные пути для Gitea REPO_OWNER: ${{ gitea.repository_owner }} REPO_NAME: ${{ gitea.repository }} # Номер issue в зависимости от типа триггера ISSUE_NUMBER: ${{ gitea.event.inputs.issue_number || gitea.event.issue.number }} # Дополнительная информация EVENT_TYPE: ${{ gitea.event_name }} ISSUE_TITLE: ${{ gitea.event.issue.title || '' }} ISSUE_BODY: ${{ gitea.event.issue.body || '' }} run: | echo "=== Starting AI Issue Solver ===" echo "Event type: $EVENT_TYPE" echo "Repository: $REPO_OWNER/$REPO_NAME" echo "Issue number: $ISSUE_NUMBER" echo "Issue title: $ISSUE_TITLE" # Проверяем доступность solve-issue if ! command -v solve-issue &> /dev/null; then echo "ERROR: solve-issue command not found!" echo "Available commands in PATH:" echo "$PATH" | tr ':' '\n' command -v ls exit 1 fi # Запускаем решатель solve-issue echo "=== AI Issue Solver finished ==="