Skip to content

fix(server): handle offline team reviewer sync gracefully#883

Merged
mertilginoglu merged 1 commit intostagingfrom
fix/860-offline-reviewer-sync
Mar 7, 2026
Merged

fix(server): handle offline team reviewer sync gracefully#883
mertilginoglu merged 1 commit intostagingfrom
fix/860-offline-reviewer-sync

Conversation

@mertilginoglu
Copy link
Contributor

Motivation

Issue #860 reports repeated server error logs when team reviewer expansion runs while the GitHub client is offline. These logs are noisy and misleading because offline mode can
be an expected runtime state.

Description

Updated pull request sync logic to treat offline reviewer-team expansion failures as expected behavior instead of hard errors.

Changes:

  • In GitHubPullRequestSyncService, added isOfflineError(IOException) to classify offline errors.
  • For offline reviewer expansion failures, log at DEBUG and continue sync.
  • Kept ERROR logging for non-offline failures.
  • Added unit tests for offline error classification in GitHubPullRequestSyncServiceTest.

Testing Instructions

Prerequisites:

  • Java 21
  • Gradle wrapper available (./gradlew)
  • Checked out branch fix/860-offline-reviewer-sync

Flow:

  1. Run:
    ./gradlew :application-server:test --tests de.tum.cit.aet.helios.pullrequest.github.GitHubPullRequestSyncServiceTest
  2. Verify tests pass.
  3. Optionally run:
    ./gradlew :application-server:test --tests de.tum.cit.aet.helios.branch.github.GitHubBranchComparisonServiceTest
  4. Inspect GitHubPullRequestSyncService and confirm offline cases are handled via debug logging while other IO failures remain error-level.

Screenshots

No UI changes were made.

Checklist

General

Server

  • Code is performant and follows best practices

@codacy-production
Copy link

codacy-production bot commented Feb 23, 2026

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
+0.21% (target: -1.00%) 14.29%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (73b4871) 7927 2126 26.82%
Head commit (62b7766) 7991 (+64) 2160 (+34) 27.03% (+0.21%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#883) 14 2 14.29%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

@github-actions
Copy link

github-actions bot commented Mar 2, 2026

There hasn't been any activity on this pull request recently. Therefore, this pull request has been automatically marked as stale and will be closed if no further activity occurs within seven days. Thank you for your contributions.

@github-actions github-actions bot added the stale label Mar 2, 2026
@mertilginoglu mertilginoglu force-pushed the fix/860-offline-reviewer-sync branch 2 times, most recently from 2228643 to 8c6b993 Compare March 4, 2026 01:34
@mertilginoglu mertilginoglu force-pushed the fix/860-offline-reviewer-sync branch from 8c6b993 to aec3553 Compare March 4, 2026 02:05
@github-actions github-actions bot added size:L and removed size:M labels Mar 4, 2026
@mertilginoglu mertilginoglu force-pushed the fix/860-offline-reviewer-sync branch from aec3553 to 6e4e617 Compare March 4, 2026 02:15
@mertilginoglu mertilginoglu force-pushed the fix/860-offline-reviewer-sync branch from 6e4e617 to 62b7766 Compare March 4, 2026 02:33
@mertilginoglu mertilginoglu merged commit b56595f into staging Mar 7, 2026
16 checks passed
@mertilginoglu mertilginoglu deleted the fix/860-offline-reviewer-sync branch March 7, 2026 19:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

application-server bug Something isn't working size:M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants