# Fix Pr Review

> Address PR review comments by selecting appropriate skills based on modified files. Use when fixing review feedback on pull requests.

- Skill: `majiayu000/fix-pr-review` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/fix-pr-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/fix-pr-review/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/fix-pr-review

---


# Fix PR Review Workflow

Workflow for addressing review comments on pull requests.

## Prerequisites

- PR number is required
- Use `git-workflow` Skill for commit conventions

## Process Overview

```
1. Fetch PR details
2. Get review comments
3. Classify by file type
4. Load appropriate development skill
5. Fix each comment
6. Run verification
7. Push changes
```

## Step 1: Fetch PR Information

```bash
# Get PR details
gh pr view {pr_number}

# Get PR diff to see modified files
gh pr diff {pr_number} --name-only

# Get review comments
gh api repos/{owner}/{repo}/pulls/{pr_number}/comments
```

## Step 2: Classify by Modified Files

| Files Modified | Development Skill |
|----------------|-------------------|
| `internal/`, `pkg/`, `cmd/`, `*.go` | `go-development` |
| `apps/ripple-lib-server/`, `*.ts` | `typescript-development` |
| `apps/erc20-token/contracts/`, `*.sol` | `solidity-development` |
| `scripts/`, `*.sh` | `shell-scripts` |
| `Makefile`, `make/*.mk` | `makefile-update` |
| `tools/atlas/`, `*.sql`, `*.hcl` | `db-migration` |
| `docs/`, `*.md` | `docs-update` |

## Step 3: Load Development Skill

Based on classification, load the appropriate skill:

| Skill | Path |
|-------|------|
| Go | `.claude/skills/go-development/SKILL.md` |
| TypeScript | `.claude/skills/typescript-development/SKILL.md` |
| Solidity | `.claude/skills/solidity-development/SKILL.md` |
| Shell | `.claude/skills/shell-scripts/SKILL.md` |
| Makefile | `.claude/skills/makefile-update/SKILL.md` |
| Database | `.claude/skills/db-migration/SKILL.md` |
| Docs | `.claude/skills/docs-update/SKILL.md` |

## Step 4: Address Comments

### Priority Order

1. **Security** - Address security concerns first
2. **Functionality** - Fix bugs or logic issues
3. **Code Quality** - Style, naming, documentation

### Comment Categories

| Category | Action |
|----------|--------|
| Bug fix requested | Fix the issue, add test if applicable |
| Refactoring suggestion | Apply if improves readability |
| Style/naming | Follow project conventions |
| Documentation | Add/update comments |
| Question | Respond in code comment or PR |

## Step 5: Run Verification

Run verification commands from the loaded development skill:

### Go Files

```bash
make go-lint && make tidy && make check-build && make gotest
```

### TypeScript Files

```bash
cd apps/ripple-lib-server && npm run lint && npm run build && npm test
```

### Shell Scripts

```bash
make shfmt
```

### Multiple Languages

If PR modifies multiple file types, run all applicable verification commands.

## Step 6: Commit and Push

```bash
# Stage changes
git add .

# Commit with descriptive message
git commit -m "$(cat <<'EOF'
fix(scope): address PR review comments

- Fix: [specific fix 1]
- Fix: [specific fix 2]
- Update: [update description]
EOF
)"

# Push to update PR
git push
```

## Common Review Patterns

### Error Handling (Go)

**Review comment**: "Missing error context"

```go
// Before
return err

// After
return fmt.Errorf("failed to create wallet: %w", err)
```

### Logging Security

**Review comment**: "Don't log sensitive data"

```go
// Before
log.Info("Processing key", "key", privateKey)

// After
log.Info("Processing key", "keyID", keyID)
```

### Code Duplication

**Review comment**: "Extract to helper function"

```go
// Before: Duplicated code in multiple places

// After: Create helper function
func helperFunction(params) result {
    // extracted logic
}
```

## Related Skills

- `go-development` - Go code changes
- `typescript-development` - TypeScript changes
- `shell-scripts` - Shell script changes
- `git-workflow` - Branch and commit workflow

