Skip to content

feat(ci): add GitHub workflow for translation review#17234

Merged
wackerow merged 3 commits into
devfrom
gh-action-review-translations
Feb 5, 2026
Merged

feat(ci): add GitHub workflow for translation review#17234
wackerow merged 3 commits into
devfrom
gh-action-review-translations

Conversation

@wackerow
Copy link
Copy Markdown
Member

@wackerow wackerow commented Feb 4, 2026

Description

Add dedicated workflow for reviewing translation imports via Claude.

Triggers:

  • Manual: @claude /review-translations comment on any PR
  • Automatic: PRs with title starting "i18n:" (restricted to authorized users, i18n/* branches, same-repo only)

Features:

  • Parallel Task agents (one per language) for faster reviews
  • Posts quality scores and findings as PR comment
  • Includes copy/paste command to request fixes if critical issues found
  • Read-only permissions (no auto-fixing)

Also updates claude.yml to skip /review-translations commands, which are now handled by the dedicated workflow.

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

Add dedicated workflow for reviewing translation imports via Claude.

Triggers:
- Manual: `@claude /review-translations` comment on any PR
- Automatic: PRs with title starting "i18n:" (restricted to authorized
  users, i18n/* branches, same-repo only)

Features:
- Parallel Task agents (one per language) for faster reviews
- Posts quality scores and findings as PR comment
- Includes copy/paste command to request fixes if critical issues found
- Read-only permissions (no auto-fixing)

Also updates claude.yml to skip /review-translations commands, which are now handled by the dedicated workflow.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@netlify
Copy link
Copy Markdown

netlify Bot commented Feb 4, 2026

Deploy Preview for ethereumorg ready!

Name Link
🔨 Latest commit 672541d
🔍 Latest deploy log https://app.netlify.com/projects/ethereumorg/deploys/6984dfabdb990600083a5946
😎 Deploy Preview https://deploy-preview-17234.ethereum.it
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
7 paths audited
Performance: 55 (🔴 down 4 from production)
Accessibility: 94 (no change from production)
Best Practices: 100 (🟢 up 1 from production)
SEO: 100 (no change from production)
PWA: 59 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions github-actions Bot added the tooling 🔧 Changes related to tooling of the project label Feb 4, 2026
@wackerow
Copy link
Copy Markdown
Member Author

wackerow commented Feb 4, 2026

Code Review - Translation Review Workflow

Overview

This PR adds a dedicated GitHub Actions workflow for automated translation reviews with proper security boundaries and flexible triggering options.

✅ Strong Security Implementation

Authorization Controls (Lines 17-35)

  • Manual triggers require authorized user list for @claude /review-translations commands
  • Automatic triggers include triple-layer protection:
    • Branch must match i18n/* pattern
    • Must originate from same repository (blocks forks)
    • User must be in authorized list
  • Prevents unauthorized workflow execution ✅

Permission Model (Line 111)

allowed_tools: "Task,Glob,Grep,LS,Read,Bash(git status:*),Bash(git diff:*),Bash(git log:*),Bash(git worktree:*),Bash(gh api:*),Bash(gh pr view:*)"

Read-only operations only - no write/commit/push capabilities. Proper least-privilege approach ✅

✅ Well-Structured Design

Workflow Separation

  • claude-review-translations.yml - Dedicated translation reviews
  • claude.yml - Updated to skip /review-translations commands
  • Clean separation of concerns with no overlap issues

Flexible Configuration

  • Supports --language, --scope, and --model flags
  • Model selection: opus (default), sonnet, or haiku
  • 120-minute timeout for large translation PRs

Parallel Processing

  • Uses Task tool to spawn one agent per language
  • Efficient review of multi-language imports

💡 Optional Considerations

Cost Management (Line 66)
Auto-triggered reviews default to Opus (highest quality, highest cost). Consider sonnet default for automatic reviews if budget is a concern, reserving opus for manual
reviews.

Maintenance (Lines 21, 28, 35)
Authorized user list appears in three locations. Could extract to environment variable or GitHub team for easier updates.

Verdict

Well-designed workflow with proper security controls and read-only permissions. Ready to merge! 🚀


Reviewed-By: Claude Sonnet 4.5 noreply@anthropic.com

Copy link
Copy Markdown
Member

@pettinarip pettinarip left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wackerow LGTM, left minor comments

Comment thread .github/workflows/claude-review-translations.yml Outdated
Comment thread .github/workflows/claude-review-translations.yml Outdated
@wackerow wackerow merged commit ff87549 into dev Feb 5, 2026
2 checks passed
@wackerow wackerow deleted the gh-action-review-translations branch February 5, 2026 18:21
@wackerow wackerow mentioned this pull request Feb 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

tooling 🔧 Changes related to tooling of the project

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants