Troubleshooting

March 11, 2026 ยท View on GitHub

Rate Limits

Good Egg retries automatically on GitHub API rate limits with exponential backoff. If you see persistent failures:

  • Use a GitHub App token instead of GITHUB_TOKEN for higher rate limits (5,000 req/hr vs 1,000).
  • Reduce fetch.max_prs in your config to lower API usage per scored user. See configuration.md for details.

Required Permissions

PermissionRequired For
pull-requests: writePosting PR comments
checks: writeCreating check runs (when check-run: true)

Common Errors

ErrorCauseFix
Rate limit exhaustedToo many API callsWait for reset or use App token
User not foundDeleted/renamed accountAction continues with UNKNOWN score
Could not extract PR numberNot a PR eventEnsure workflow triggers on pull_request
Invalid GITHUB_REPOSITORYMalformed env varCheck Actions environment

v3 (Diet Egg) Scoring

v3 score differs from v1 or v2

This is expected. v3 uses alltime merge rate as the sole signal, with no graph construction. Prolific contributors who close many of their own PRs (drafts, experiments) will have lower scores than in v1/v2 because those closed PRs pull down their merge rate.

"Diet Egg" appears in PR comments

PR comments use the "Diet Egg" branding when scoring_model is set to v3 (the default). This is intentional. To use an older model, set scoring_model: v1 or scoring_model: v2.

"Fresh Egg" advisory appears

Accounts under 365 days old get a "Fresh Egg" advisory. This is informational only and does not affect the score. It is not shown for bot accounts or existing contributors.

v2 (Better Egg) Scoring

v2 score differs significantly from v1

This is expected. The v2 model uses a simplified graph (no self-contribution penalty, no language normalization, no diversity/volume adjustment) and combines the graph score with merge rate and account age via logistic regression. The final score is calibrated differently and may be higher or lower than v1 for the same user.

Merge rate is 0 or missing

Merge rate requires both merged and closed PR counts. If the GitHub API returns no closed PRs (e.g. due to rate limits or data availability), merge rate defaults to 0. This can lower the combined score. Check that your token has sufficient rate limit remaining.

"Better Egg" appears in PR comments

PR comments use the "Better Egg" branding when scoring_model is set to v2. This is intentional and helps distinguish v2 results from v1.

Getting Help

If you encounter issues not listed here, please open an issue.