Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/akii180499_integratingteamsandslack.json

1 line
38 KiB
JSON

{"repo": "akii180499/integratingteamsandslack", "files": {".github/workflows/mulesoft-code-review.yml": {"aae86f2c8e68ab389e26d285e2b44d8de8599d1a": {"t": 1785747024.6164606, "n": 4271, "h": "ab851c0f6676ef5f", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: mulesoft-buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Cache pip dependencies\n uses: actions/cache@v4\n with:\n path: ~/.cache/pip\n key: ${{ runner.os }}-pip-${{ hashFiles('mulesoft-buddy-reviewer/requirements.txt') }}\n restore-keys: |\n ${{ runner.os }}-pip-\n\n - name: Install dependencies\n run: pip install -r mulesoft-buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: mulesoft-buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: akii180499/mulesoft-buddy-reviewer\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n # Optional model overrides (leave blank to use provider defaults)\n #LLM_ANALYSIS_MODEL: ${{ vars.LLM_ANALYSIS_MODEL }}\n #LLM_FIX_MODEL: ${{ vars.LLM_FIX_MODEL }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1\n"}, "0e233e2f988581a9a30a05054cb241f7252f9c22": {"t": 1785769876.9453328, "n": 4201, "h": "21b7d665a1577b0e", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: mulesoft-buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Cache pip dependencies\n uses: actions/cache@v4\n with:\n path: ~/.cache/pip\n key: ${{ runner.os }}-pip-${{ hashFiles('mulesoft-buddy-reviewer/requirements.txt') }}\n restore-keys: |\n ${{ runner.os }}-pip-\n\n - name: Install dependencies\n run: pip install -r mulesoft-buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: mulesoft-buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: akii180499/mulesoft-buddy-reviewer\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n # Optional model overrides (leave blank to use provider defaults)\n #LLM_ANALYSIS_MODEL: ${{ vars.LLM_ANALYSIS_MODEL }}\n #LLM_FIX_MODEL: ${{ vars.LLM_FIX_MODEL }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1\n"}, "5d2cd3cac117775bc4680d9d322bf61394172957": {"t": 1785769878.11547, "n": 4200, "h": "d8131da95f550567", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: mulesoft-buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Cache pip dependencies\n uses: actions/cache@v4\n with:\n path: ~/.cache/pip\n key: ${{ runner.os }}-pip-${{ hashFiles('mulesoft-buddy-reviewer/requirements.txt') }}\n restore-keys: |\n ${{ runner.os }}-pip-\n\n - name: Install dependencies\n run: pip install -r mulesoft-buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: mulesoft-buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: ${{ github.repository }}\n GITHUB_TOKEN: ${{ secrets.BUDDY_GITHUB_TOKEN }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n # Optional model overrides (leave blank to use provider defaults)\n #LLM_ANALYSIS_MODEL: ${{ vars.LLM_ANALYSIS_MODEL }}\n #LLM_FIX_MODEL: ${{ vars.LLM_FIX_MODEL }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1\n"}, "a6bd29f0fd92bd13eed91d1b452099933d0ec5df": {"t": 1785769879.4356747, "n": 3815, "h": "71f51de2f2c99ca4", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n cache: pip\n cache-dependency-path: mulesoft-buddy-reviewer/requirements.txt\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Install dependencies\n run: pip install -r mulesoft-buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: akii180499/integratingTeamsandSlack\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1\n"}, "d9d7c5f688ce12777e77b853cd348ec9b1e6f9a2": {"t": 1785769880.6339192, "n": 3803, "h": "4d7043d2d854343e", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n cache: pip\n cache-dependency-path: mulesoft-buddy-reviewer/requirements.txt\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Install dependencies\n run: pip install -r mulesoft-buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: ${{ github.repository }}\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1\n"}, "f812310a548ee2a10589d2e1b1e5bfa2479580d7": {"t": 1785769883.3485737, "n": 3784, "h": "53e1b55faabf7d74", "c": "# ─────────────────────────────────────────────────────────────────────────────\n# Buddy Reviewer — AI-assisted MuleSoft PR Code Review\n#\n# Drop this file into your MuleSoft project at:\n# .github/workflows/buddy-reviewer.yml\n#\n# Required secrets (Settings → Secrets → Actions):\n# BUDDY_GITHUB_TOKEN Personal Access Token with repo + pull_requests scope.\n# Must NOT be GITHUB_TOKEN — that token cannot post\n# review comments on PRs from forks or trigger re-runs.\n#\n# At least ONE LLM key:\n# GEMINI_API_KEY Google AI Studio key (recommended — cheapest)\n# OPENAI_API_KEY OpenAI key (GPT-4o)\n# DEEPSEEK_API_KEY DeepSeek key (cheapest, good quality)\n#\n# Optional secrets / variables (Settings → Variables → Actions):\n# LLM_ANALYSIS_MODEL Override the analysis model e.g. gemini-2.5-pro\n# LLM_FIX_MODEL Override the fix suggestion model\n# ─────────────────────────────────────────────────────────────────────────────\n\nname: Buddy Reviewer\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n # Scope to file types Buddy Reviewer understands.\n # Remove this filter if you want it to run on every PR.\n paths:\n - \"**.xml\"\n - \"**.dwl\"\n - \"**.dw\"\n - \"**.yaml\"\n - \"**.yml\"\n - \"**.properties\"\n - \"pom.xml\"\n\n # Allow manual re-runs from the Actions tab (useful after updating secrets)\n workflow_dispatch:\n\njobs:\n buddy-review:\n name: AI Code Review\n runs-on: ubuntu-latest\n\n # Don't block the PR if the review job fails — it's advisory, not a gate.\n # Change to false if you want CRITICAL issues to block merge.\n continue-on-error: true\n\n permissions:\n contents: read # checkout the reviewer repo\n pull-requests: write # post comments (only works with PAT, not GITHUB_TOKEN)\n\n steps:\n # ── 1. Check out the Buddy Reviewer source ────────────────────────────\n - name: Check out Buddy Reviewer\n uses: actions/checkout@v4\n with:\n repository: akii180499/mulesoft-buddy-reviewer # ← change to your reviewer repo\n ref: main\n token: ${{ secrets.PAT_TOKEN }}\n path: buddy-reviewer\n\n # ── 2. Set up Python ──────────────────────────────────────────────────\n - name: Set up Python\n uses: actions/setup-python@v5\n with:\n python-version: \"3.11\"\n cache: pip\n cache-dependency-path: buddy-reviewer/requirements.txt\n\n # ── 3. Install dependencies ───────────────────────────────────────────\n - name: Install dependencies\n run: pip install -r buddy-reviewer/requirements.txt\n\n # ── 4. Run the review ─────────────────────────────────────────────────\n - name: Run Buddy Reviewer\n working-directory: buddy-reviewer\n env:\n # Repo being reviewed — GitHub injects this automatically\n GITHUB_REPOSITORY: ${{ github.repository }}\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n\n # LLM keys — the reviewer auto-detects whichever is set.\n # Set all three if you want fallback behaviour.\n GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}\n\n run: python main.py\n\n # ── 5. Surface exit code ──────────────────────────────────────────────\n # Buddy Reviewer exits with code 1 when CRITICAL issues are found.\n # Uncomment the block below to make CRITICAL issues block the PR merge.\n #\n # - name: Fail on critical issues\n # if: failure()\n # run: |\n # echo \"::error::Buddy Reviewer found CRITICAL issues. Merge is blocked.\"\n # exit 1"}, "e90e122170fa86f82af106561561a9d84a11fa66": {"t": 1785769885.559982, "n": 1476, "h": "49e8bfbee11ba8a4", "c": "name: Mulesoft Code Review\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n branches:\n - main\n - develop\n - 'release/**'\n\njobs:\n mulesoft-code-review:\n runs-on: ubuntu-latest\n \n steps:\n - name: Checkout Code Review Repository\n uses: actions/checkout@v4\n with:\n repository: akii180499/buddy-reviewer # ⚠️ CHANGE THIS!\n ref: main\n path: code-review\n token: ${{ secrets.PAT_TOKEN }}\n \n - name: Checkout Target Repository (PR Code)\n uses: actions/checkout@v4\n with:\n path: target-repo\n fetch-depth: 0\n \n - name: Set up Python\n uses: actions/setup-python@v4\n with:\n python-version: '3.11'\n \n - name: Install Dependencies\n run: |\n cd code-review\n pip install -r requirements.txt\n \n - name: Run Mulesoft Code Review\n env:\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n REPO_NAME: ${{ github.repository }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n run: |\n cd code-review\n python mulesoft_enhanced_validation.py\n \n - name: Upload Review Artifacts\n if: always()\n uses: actions/upload-artifact@v4\n with:\n name: code-review-results\n path: code-review/review-results.json\n retention-days: 30\n"}, "92606a4e8322ed84f17470a633f7d79f13570e21": {"t": 1785769887.826278, "n": 1474, "h": "412374651a8d8767", "c": "name: Mulesoft Code Review\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n branches:\n - main\n - develop\n - 'release/**'\n\njobs:\n mulesoft-code-review:\n runs-on: ubuntu-latest\n \n steps:\n - name: Checkout Code Review Repository\n uses: actions/checkout@v4\n with:\n repository: akii180499/code-reviewer # ⚠️ CHANGE THIS!\n ref: main\n path: code-review\n token: ${{ secrets.PAT_TOKEN }}\n \n - name: Checkout Target Repository (PR Code)\n uses: actions/checkout@v4\n with:\n path: target-repo\n fetch-depth: 0\n \n - name: Set up Python\n uses: actions/setup-python@v4\n with:\n python-version: '3.11'\n \n - name: Install Dependencies\n run: |\n cd code-review\n pip install -r requirements.txt\n \n - name: Run Mulesoft Code Review\n env:\n GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n REPO_NAME: ${{ github.repository }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n run: |\n cd code-review\n python mulesoft_enhanced_validation.py\n \n - name: Upload Review Artifacts\n if: always()\n uses: actions/upload-artifact@v4\n with:\n name: code-review-results\n path: code-review/review-results.json\n retention-days: 30"}, "bfb71ff0f38ad5ad1a760b11897597b7321b3ee7": {"t": 1785769889.319375, "n": 1484, "h": "68bc2f08cd208f29", "c": "name: Mulesoft Code Review\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n branches:\n - main\n - develop\n - 'release/**'\n\njobs:\n mulesoft-code-review:\n runs-on: ubuntu-latest\n \n steps:\n - name: Checkout Code Review Repository\n uses: actions/checkout@v4\n with:\n repository: akii180499/code-reviewer # ⚠️ CHANGE THIS!\n ref: main\n path: code-review\n token: ${{ secrets.REVIEW_BOT_TOKEN }}\n \n - name: Checkout Target Repository (PR Code)\n uses: actions/checkout@v4\n with:\n path: target-repo\n fetch-depth: 0\n \n - name: Set up Python\n uses: actions/setup-python@v4\n with:\n python-version: '3.11'\n \n - name: Install Dependencies\n run: |\n cd code-review\n pip install -r requirements.txt\n \n - name: Run Mulesoft Code Review\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n REPO_NAME: ${{ github.repository }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n run: |\n cd code-review\n python mulesoft_enhanced_validation.py\n \n - name: Upload Review Artifacts\n if: always()\n uses: actions/upload-artifact@v4\n with:\n name: code-review-results\n path: code-review/review-results.json\n retention-days: 30"}, "bd1e66509371ae1077b9829d45c336eb5f7a41bc": {"t": 1785769891.1963902, "n": 1503, "h": "a79020e0967e7ea0", "c": "name: Mulesoft Code Review\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n branches:\n - main\n - develop\n - 'release/**'\n\njobs:\n mulesoft-code-review:\n runs-on: ubuntu-latest\n \n steps:\n - name: Checkout Code Review Repository\n uses: actions/checkout@v4\n with:\n repository: https://github.com/akii180499/code-reviewer # ⚠️ CHANGE THIS!\n ref: main\n path: code-review\n token: ${{ secrets.REVIEW_BOT_TOKEN }}\n \n - name: Checkout Target Repository (PR Code)\n uses: actions/checkout@v4\n with:\n path: target-repo\n fetch-depth: 0\n \n - name: Set up Python\n uses: actions/setup-python@v4\n with:\n python-version: '3.11'\n \n - name: Install Dependencies\n run: |\n cd code-review\n pip install -r requirements.txt\n \n - name: Run Mulesoft Code Review\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n REPO_NAME: ${{ github.repository }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n run: |\n cd code-review\n python mulesoft_enhanced_validation.py\n \n - name: Upload Review Artifacts\n if: always()\n uses: actions/upload-artifact@v4\n with:\n name: code-review-results\n path: code-review/review-results.json\n retention-days: 30"}, "bf72e1e6fbbe42eafacf0356995bae8f6f180f8a": {"t": 1785769893.0534797, "n": 1503, "h": "90261dae7ce4726e", "c": "name: Mulesoft Code Review\n\non:\n pull_request:\n types: [opened, synchronize, reopened]\n branches:\n - main\n - develop\n - 'release/**'\n\njobs:\n mulesoft-code-review:\n runs-on: ubuntu-latest\n \n steps:\n - name: Checkout Code Review Repository\n uses: actions/checkout@v4\n with:\n repository: https://github.com/akii180499/code-reviewer # ⚠️ CHANGE THIS!\n ref: main\n path: code-review\n token: ${{ secrets.REVIEW_BOT_TOKEN }}\n \n - name: Checkout Target Repository (PR Code)\n uses: actions/checkout@v4\n with:\n path: target-repo\n fetch-depth: 0\n \n - name: Set up Python\n uses: actions/setup-python@v4\n with:\n python-version: '3.11'\n \n - name: Install Dependencies\n run: |\n cd code-review\n pip install -r requirements.txt\n \n - name: Run Mulesoft Code Review\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n REPO_NAME: ${{ github.repository }}\n PR_NUMBER: ${{ github.event.pull_request.number }}\n run: |\n cd code-review\n python mulesoft_enhanced_validation.py\n \n - name: Upload Review Artifacts\n if: always()\n uses: actions/upload-artifact@v3\n with:\n name: code-review-results\n path: code-review/review-results.json\n retention-days: 30"}}}}