Repository navigation
Conversation
When a sync pulls an edit whose create change the remote withheld, applying the pull throws and the push never runs, so the commit counts never change and every later sync fails the same way. These tests fail until both directions are applied independently. Three scenarios that stay stuck even then are skipped as known blockers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
SyncWith and SyncMany now apply pulled and pushed commits independently and rethrow afterwards: one error as is, several as an AggregateException. A pull that can't be applied, e.g. an edit whose create change was withheld, no longer blocks the push, so the next sync plans differently and can recover. SyncMany now also skips empty batches, as SyncWith already did. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 54 minutes. View limit details
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
WalkthroughSyncWith and SyncMany now continue applying commit batches after an application failure and report collected failures after attempting the synchronization directions. A single failure retains its original exception details; multiple failures produce an AggregateException. New tests cover recovery across repeated sync attempts, SyncMany, and bidirectional failures. Three additional scenarios are added as skipped tests. Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to
|
Both batches are computed before either is applied, so the two directions don't depend on each other. TryAddRange still returns each direction's error, since awaiting Task.WhenAll would rethrow only the first. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
[Claude, autonomous]
Apply pulled and pushed commits independently, so a pull that can't be applied (an edit whose create the remote withheld) no longer blocks the push and leaves the sync stuck forever: the push changes the commit counts, so the next sync sends the missing create.
AggregateException. A follow-up replaces that with aSyncExceptioncarryingPullError/PushError.SyncWithcan now throw after the push landed. FW Lite only stampsSyncDatewhen it returns, so pushed commits keep showing as pending until a sync fully succeeds.🤖 Generated with Claude Code