Add DDoS mitigation reasons section to Spectrum documentation #18995
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Bonk | |
| on: | |
| issue_comment: | |
| types: [created] | |
| pull_request_review_comment: | |
| types: [created] | |
| pull_request_review: | |
| types: [submitted] | |
| concurrency: | |
| # intentionally hardcoded so that all Bonk workflows coexist peacefully | |
| group: bonk-${{ github.event.pull_request.number || github.event.issue.number || github.ref }} | |
| cancel-in-progress: false | |
| jobs: | |
| check-codeowner: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| outputs: | |
| is-codeowner: ${{ steps.check.outputs.is-codeowner }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | |
| with: | |
| fetch-depth: 1 | |
| - name: Check CODEOWNERS | |
| id: check | |
| uses: ./.github/actions/check-codeowner | |
| with: | |
| GH_ORG_TOKEN: ${{ secrets.GH_ORG_TOKEN }} | |
| bonk: | |
| needs: check-codeowner | |
| if: | | |
| needs.check-codeowner.outputs.is-codeowner == 'true' && | |
| github.event.sender.type != 'Bot' && | |
| contains(github.event.comment.body, '/bonk') && | |
| !contains(github.event.comment.body, '/bigbonk') | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| id-token: write | |
| contents: write | |
| issues: write | |
| pull-requests: write | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | |
| with: | |
| fetch-depth: 1 | |
| - name: Set up pnpm | |
| uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5 | |
| with: | |
| version: 11 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6 | |
| id: setup-node | |
| with: | |
| node-version: 24.x | |
| cache: pnpm | |
| - name: Restore node_modules (cache hit) | |
| id: node-modules-cache | |
| uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5 | |
| with: | |
| path: node_modules | |
| key: node-modules-${{ runner.os }}-node-${{ steps.setup-node.outputs.node-version }}-${{ hashFiles('pnpm-lock.yaml') }}-${{ hashFiles('package.json') }} | |
| - name: Install node_modules (cache miss) | |
| run: pnpm install --frozen-lockfile | |
| if: steps.node-modules-cache.outputs.cache-hit != 'true' | |
| - name: Run Lil Bonk | |
| uses: ask-bonk/ask-bonk/github@main | |
| env: | |
| CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CF_AI_GATEWAY_ACCOUNT_ID }} | |
| CLOUDFLARE_GATEWAY_ID: ${{ secrets.CF_AI_GATEWAY_NAME }} | |
| CLOUDFLARE_API_TOKEN: ${{ secrets.CF_AI_GATEWAY_TOKEN }} | |
| # Auto-approve tool calls in CI only, so Bonk doesn't get stuck on | |
| # approval prompts. This is intentionally not in opencode.jsonc so | |
| # local/interactive sessions keep their normal permission prompts. | |
| OPENCODE_CONFIG_CONTENT: '{"permission":"allow"}' | |
| with: | |
| model: "cloudflare-ai-gateway/workers-ai/@cf/moonshotai/kimi-k2.6" | |
| opencode_version: "1.17.7" | |
| agent: docs | |
| mentions: "/bonk" | |
| permissions: write |