fix(migrator): add addForeignKeyOptions to PostgreSQL adapter so FK migrations run #809
Workflow file for this run
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: Wheels Bot — Reviewer B | |
| on: | |
| pull_request_review: | |
| types: [submitted] | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: wheels-bot-review-b-${{ github.event.pull_request.number }}-${{ github.event.review.id }} | |
| cancel-in-progress: false | |
| jobs: | |
| review-the-review: | |
| name: Reviewer B | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| # Critiques Reviewer A's reviews on human ready-for-review PRs AND on | |
| # the bot's own PRs (even draft). The bot-PR draft case lets the human | |
| # merge decision benefit from both Reviewer A's findings and Reviewer | |
| # B's quality check before the PR is marked ready. | |
| if: | | |
| vars.WHEELS_BOT_ENABLED == 'true' | |
| && github.event.review.user.login == 'wheels-bot[bot]' | |
| && ( | |
| github.event.pull_request.user.login == 'wheels-bot[bot]' | |
| || github.event.pull_request.draft == false | |
| ) | |
| steps: | |
| # SECURITY: check out the BASE branch, never the reviewed commit. This | |
| # workflow runs on `pull_request_review`, which carries the base repo's | |
| # secrets + write token even for fork PRs. Checking out | |
| # `github.event.review.commit_id` (a fork commit on fork PRs) and then | |
| # running the local `./.github/actions/wheels-bot-skip-check` composite | |
| # action below would execute fork-controlled code with the bot's token | |
| # (the classic pwn-request). The reviewed commit's objects are fetched | |
| # read-only after the token step so the review's git commands still | |
| # resolve; nothing from the fork is ever executed. The marker still keys | |
| # off review.commit_id (passed via `with:`/prompt, not shell), so the gate | |
| # and emitted marker stay aligned with the commit A reviewed (#2848). | |
| - name: Checkout BASE branch (trusted — never the reviewed/fork commit) | |
| uses: actions/checkout@v6 | |
| with: | |
| ref: ${{ github.event.pull_request.base.ref }} | |
| persist-credentials: false | |
| fetch-depth: 0 | |
| - name: Generate App token | |
| id: app-token | |
| uses: actions/create-github-app-token@v2 | |
| with: | |
| app-id: ${{ secrets.WHEELS_BOT_APP_ID }} | |
| private-key: ${{ secrets.WHEELS_BOT_PRIVATE_KEY }} | |
| - name: Fetch PR head commit objects (read-only; never checked out) | |
| env: | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| run: | | |
| set -euo pipefail | |
| if ! [[ "$PR_NUMBER" =~ ^[0-9]+$ ]]; then | |
| echo "::error::PR number is not numeric: $PR_NUMBER" | |
| exit 1 | |
| fi | |
| # Objects only — the working tree stays on the trusted base branch. | |
| # Best-effort: B reviews A's review via gh, so a fetch miss is non-fatal. | |
| git fetch --no-tags origin "refs/pull/${PR_NUMBER}/head" || true | |
| - name: Skip check | |
| id: gate | |
| uses: ./.github/actions/wheels-bot-skip-check | |
| with: | |
| target-type: pr | |
| target-number: ${{ github.event.pull_request.number }} | |
| # Key off the reviewed commit (same SHA checked out above and threaded | |
| # into the prompt) so the gate and the emitted marker agree (#2848). | |
| marker-pattern: 'wheels-bot:review-b:${{ github.event.pull_request.number }}:${{ github.event.review.commit_id }}:' | |
| github-token: ${{ steps.app-token.outputs.token }} | |
| - name: Run Reviewer B | |
| if: steps.gate.outputs.skip == 'false' | |
| uses: anthropics/claude-code-action@v1 | |
| with: | |
| # This workflow is triggered by `wheels-bot[bot]` submitting a review. | |
| # The action defaults to blocking bot-initiated runs; explicitly allow | |
| # our App's bot identity (and github-actions[bot] for any future cron | |
| # triggers). Specific allowlist preferred over '*' — the repo is public. | |
| allowed_bots: 'wheels-bot[bot],github-actions[bot]' | |
| anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} | |
| github_token: ${{ steps.app-token.outputs.token }} | |
| prompt: | | |
| /review-the-review ${{ github.event.pull_request.number }} ${{ github.event.review.id }} ${{ github.event.review.commit_id }} | |
| claude_args: | | |
| --model claude-sonnet-4-6 | |
| --max-turns 300 | |
| --allowedTools "Bash(gh:*),Bash(git log:*),Bash(git diff:*),Bash(git show:*),Bash(git grep:*),Bash(git status),Read,Grep,Glob" |