feat(codegen): struct/list containers — TASK-29 Phase B (Tasks 1–2 of 4) #15
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: Claude PR review | |
| # On-demand: comment "/review" on a pull request and the review starts. | |
| # Deliberately NOT "@claude" — that would also trigger the official Claude app | |
| # installed on this repo and you'd get two reviews per mention. | |
| on: | |
| issue_comment: | |
| types: [created] | |
| pull_request_review_comment: | |
| types: [created] | |
| # One review per PR — a fresh /review cancels the in-flight run instead of stacking. | |
| concurrency: | |
| group: claude-review-${{ github.event.issue.number || github.event.pull_request.number }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| id-token: write # claude-code-action fetches an OIDC token for auth | |
| actions: read # let the reviewer read this PR's CI results | |
| jobs: | |
| review: | |
| # Only on a PR (not a plain issue), only when someone comments "/review". | |
| if: | | |
| (github.event_name == 'issue_comment' && github.event.issue.pull_request && contains(github.event.comment.body, '/review')) || | |
| (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '/review')) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 # review skill diffs against the merge-base | |
| - uses: anthropics/claude-code-action@v1 | |
| with: | |
| claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} | |
| trigger_phrase: "/review" | |
| allowed_bots: claude-agent-ahrzb # allow our agents to /review too, not just humans | |
| plugin_marketplaces: https://github.com/anthropics/claude-plugins-official.git | |
| plugins: superpowers@claude-plugins-official | |
| # Grant the comment tools — without these the agent has no way to | |
| # write anything back to the PR (this was the "nothing gets posted" bug). | |
| claude_args: >- | |
| --model claude-sonnet-5 --max-turns 30 | |
| --allowedTools "mcp__github_inline_comment__create_inline_comment,Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*)" | |
| track_progress: true # tracking comment + PR context | |
| prompt: | | |
| Someone requested a code review of this pull request by commenting | |
| "/review". Use the superpowers:requesting-code-review skill for the | |
| review methodology. Determine the PR's base branch and its diff with | |
| `gh pr view` and `gh pr diff`. | |
| Then POST the review to GitHub — a review that isn't posted is useless: | |
| - inline comments (mcp__github_inline_comment__create_inline_comment) | |
| for specific, line-level issues | |
| - one top-level PR comment (`gh pr comment`) for the overall summary | |
| and assessment | |
| Report only what you verified in the diff. No speculative findings, no | |
| style nits. If nothing needs changing, post a one-line top-level | |
| comment saying so. |