Skip to main content

Troubleshooting

Common issues and how to solve them with diffray's GitHub App integration.

Review Not Starting

Pull request created but no review started.

Check 1: Repository Added

Verify repository is authorized:

  1. Go to diffray dashboardRepositories
  2. Check if your repository is in the "Authorized Repositories" list

If not listed:

Check 2: GitHub App Installed

Verify GitHub App has access:

  1. Dashboard → Repositories → Check "Your Organizations" section
  2. Look for ✓ "App Installed" next to your account/organization

If App not installed:

Check 3: Repository Selected in GitHub App

Verify repository has access:

  1. Go to GitHub: SettingsApplicationsInstalled GitHub Apps
  2. Find "diffray" and click "Configure"
  3. Check if your repository is in the selected list

If not selected:

  • Add the repository to GitHub App access
  • Return to diffray and click "Refresh"

Check 4: Review Limits

Check if you've reached your limit:

  1. Dashboard → Billing
  2. Check "Reviews Remaining" or "Daily Reviews Remaining" (trial)

If no reviews remaining:

  • Wait for daily reset (00:00 UTC for trial)
  • Or upgrade to a paid package
  • See: Limits and Billing

Check 5: Concurrent Reviews

Check concurrent review limit:

If you see an error like:

❌ Too many concurrent reviews running: 2/2

Solution:

  • Wait for existing reviews to complete (5-10 minutes)
  • Or upgrade to package with higher concurrent limit
  • See: Limits

No Comment Posted

Review executed but no comment appeared in PR.

Check 1: Review Status

Check review status in dashboard:

  1. Dashboard → DashboardRecent Reviews
  2. Find your PR and check status

Status meanings:

  • Pending 🟡 - Waiting to start (< 1 min)
  • Processing 🟡 - Analyzing code (5-10 min)
  • Completed ✅ - Should have comment in PR
  • Failed ❌ - See error details

Check 2: GitHub Check Run

In the PR on GitHub:

  1. Scroll to "Checks" section at bottom
  2. Find "diffray Code Review" check
  3. Click "Details" to see logs and errors

Check status:

  • Success - Comment should be posted
  • Failure - Check error message
  • 🟡 In Progress - Wait for completion

Check 3: GitHub App Permissions

Verify App has comment permissions:

  1. GitHub: SettingsApplicationsInstalled GitHub Apps
  2. Click "Configure" on diffray
  3. Scroll to "Permissions" section
  4. Verify:
    • ✅ Pull requests: Read and write
    • ✅ Issues: Read and write (for labels)

If permissions missing:

  • Uninstall and reinstall GitHub App
  • Permissions should be requested during installation

Check 4: Wait Longer

AI analysis takes time:

  • Small PR (1-5 files): 5-7 minutes
  • Medium PR (5-15 files): 7-10 minutes
  • Large PR (15+ files): 10-15 minutes

If > 20 minutes:

  • Check Dashboard for status
  • Review likely failed
  • Check GitHub Check Run for error

Label Issues

Problems with automatic status labels.

Labels vs GitHub Check Run

diffray uses two status indicators that work in parallel:

IndicatorWherePurpose
LabelsPR sidebarQuick visual status, manual rerun trigger
GitHub Check RunPR "Checks" sectionDetailed logs, error messages, CI integration

Key differences:

  • Labels can fail to update due to permission issues, but Check Run usually works
  • Check Run provides detailed error messages and logs
  • Labels allow manual rerun (add diffray-review label)
  • Check Run integrates with branch protection rules

If labels are stuck but Check Run shows completion:

  • Check Run status is authoritative
  • Manually remove/add labels if needed

Labels Not Appearing

Problem: diffray-review-started label not added

Check:

  1. Verify GitHub App has "Issues: Read and write" permission
  2. Repository Settings → Labels → Check if label exists
  3. If label doesn't exist, diffray will try to create it

Solution:

  • Manually create labels with correct names:
    • diffray-review-started (yellow/orange)
    • diffray-review-completed (green)
    • diffray-review-failed (red)
    • diffray-review (blue - for manual triggers)

Label Not Updating

Problem: Label stuck on diffray-review-started for > 20 minutes

Check:

  1. Check GitHub Check Run status - may show actual status
  2. Check Dashboard for review status
  3. Review may have failed but label didn't update

Solution:

  1. Manually remove stuck label
  2. Add diffray-review label to restart
  3. See: Rerun Review

Multiple Status Labels

Problem: Both started and completed labels present

Cause: Race condition or synchronization error

Solution:

  1. Manually remove both labels
  2. Add diffray-review label for clean restart
  3. Should only have one status label at a time

Review Failures

Review fails with error.

"Repository not found" Error

Causes:

  • Repository deleted or renamed
  • diffray lost access to repository
  • Branch deleted

Solutions:

  1. Verify repository exists on GitHub
  2. Check repository is in diffray → Repositories
  3. Verify GitHub App still has access
  4. Check branch exists with: git ls-remote origin <branch-name>

"Permission denied" Error

Causes:

  • GitHub App missing permissions
  • Repository made private
  • Organization policy changed

Solutions:

  1. Reinstall GitHub App with correct permissions
  2. For private repos, verify App has access
  3. Check organization settings if applicable

"Timeout" Error

Causes:

  • Very large PR (> 1000 files)
  • Complex codebase requiring long analysis
  • GitHub API slowness

Solutions:

  1. Split large PRs into smaller ones
  2. Retry the review (may work on second try)
  3. Contact support if consistently timing out

"Clone failed" Error

Causes:

  • Repository too large
  • Git LFS files
  • Network issues

Solutions:

  1. Check repository size (< 5GB recommended)
  2. Ensure Git LFS files are accessible
  3. Retry the review

Note: Clone failures receive automatic refund

GitHub Check Run Issues

Check Never Appears

Problem: No "diffray Code Review" check in PR

Causes:

  • Webhook not delivered from GitHub
  • Repository not added to diffray
  • GitHub App not installed

Solutions:

  1. Verify repository added: Dashboard → Repositories
  2. Verify GitHub App installed on repository
  3. Try manual trigger: Add diffray-review label

Check Stuck on "Queued"

Problem: Check shows "Queued" for > 5 minutes

Causes:

  • Concurrent review limit reached
  • System queue backup (rare)

Solutions:

  1. Check concurrent review limit: Dashboard → Billing
  2. Wait for other reviews to complete
  3. If persists > 15 minutes, contact support

Check Shows "Failure" with No Details

Problem: Check fails but no error message

Causes:

  • Internal error before logging started
  • GitHub Check API issues

Solutions:

  1. Check Dashboard for actual error message
  2. Retry review: Add diffray-review label
  3. Contact support with reviewId

Dashboard Issues

Can't Sign In

Problem: Login fails or redirects endlessly

Solutions:

  1. Clear browser cache and cookies for app.diffray.ai
  2. Try incognito/private window
  3. Disable browser extensions (especially ad blockers)
  4. Try different browser
  5. Check GitHub.com is accessible and you're logged in

Reviews Not Showing

Problem: Dashboard empty but reviews were triggered

Solutions:

  1. Refresh page (F5 or Cmd+R)
  2. Wait a few seconds - data may be loading
  3. Check you're signed in with correct GitHub account
  4. Try signing out and back in

Repository Not in List

Problem: Can't find repository when adding

Solutions:

  1. Click "Refresh" in the modal
  2. Verify GitHub App is installed on that account/organization
  3. Check repository is selected in GitHub App settings:
    • GitHub → Settings → Applications → Installed GitHub Apps → Configure
  4. Private repositories need App installed with access

Webhook Delivery Issues

How to Check Webhook Deliveries

GitHub delivers webhooks to diffray automatically. To verify:

  1. Repository → SettingsWebhooks
  2. Look for webhook with diffray URL (managed by GitHub App)
  3. Click to see recent deliveries

Note: With GitHub App, webhooks are managed automatically. You should not manually create webhooks.

Webhook Shows Failures

If you see webhook delivery failures:

  1. Check error code:

    • 403 Forbidden - Repository not authorized in diffray
    • 404 Not Found - Repository deleted from diffray
    • 429 Too Many Requests - Rate limit (rare)
    • 500 Server Error - Contact support
  2. Solutions:

    • Add repository in Dashboard → Repositories
    • Verify GitHub App still installed
    • Wait a few minutes and check if resolved

Billing Issues

Review Not Counted After Failure

Problem: Review failed but count decreased

Expected: Automatic refund for system failures

Check:

  1. Dashboard → Billing → Transaction History
  2. Look for "refund" transaction
  3. Refunds happen for:
    • Timeout errors
    • GitHub API errors (403, 404, 500)
    • Clone failures
    • Internal errors

Not refunded:

  • Code syntax errors preventing analysis
  • Repository access issues (deleted branch, no permissions)

Unexpected Charge

Problem: Review count decreased unexpectedly

Check what counts as a review:

  • Opening new PR ✅
  • Pushing to existing PR ✅
  • Reopening PR ✅
  • Adding diffray-review label ✅
  • Failed reviews ❌ (refunded)
  • PR comments ❌
  • Label changes ❌

See: Limits and Billing

Performance Issues

Review Taking Too Long

Problem: Review taking > 15 minutes

Typical times:

  • Small PR: 5-7 minutes
  • Medium PR: 7-10 minutes
  • Large PR: 10-15 minutes

If consistently slow:

  1. Check PR size:

    • Files changed > 50: Consider splitting
    • Lines changed > 2000: May be slow
  2. System may be under load:

    • Wait for completion
    • Try again if it times out
  3. Contact support if:

    • Consistently > 20 minutes
    • Small PRs taking long

Getting Help

Before Contacting Support

Gather this information:

  • ✅ Repository name (owner/repo)
  • ✅ PR number
  • ✅ Review ID (from Dashboard)
  • ✅ Error message (from Check Run or Dashboard)
  • ✅ Screenshot of issue
  • ✅ When it happened (date/time)

Self-Service Resources

  1. This troubleshooting guide (you are here!)
  2. Documentation:

Contact Support

Email:

GitHub Issues:

  • For bugs and feature requests
  • Check existing issues first

Common Questions

Can I cancel a running review?

Not currently. Reviews run to completion or fail. If you close the PR, the review will still complete but won't post a comment.

Why did my review fail with no error?

Check Dashboard for actual error message. GitHub Check Run may not show all details.

Can I rerun a failed review?

Yes! Add the diffray-review label to trigger a new review. Failed reviews are automatically refunded.

See: Rerunning Reviews

How do I disable reviews for a repository?

Remove the repository from Dashboard → Repositories → Click "Remove" button.

Can I review PRs from forks?

Currently, only PRs from branches in the same repository are supported. Fork PRs are not yet supported.


Still need help? Email us at support@diffray.ai