Uh oh!
There was an error while loading. Please reload this page.
improvement(queuing): queuing with retries for sockets ops - #671
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
1 Skipped Deployment
|
There was a problem hiding this comment.
PR Summary
Implements a comprehensive socket operation retry system with exponential backoff to enhance real-time collaboration reliability.
- Added operation queue system in
apps/sim/stores/operation-queue/store.tswith 3-tier retry delays (2s, 4s, 8s) before failover to offline mode - Enhanced socket validation schemas in
apps/sim/socket-server/validation/schemas.tswith operationId tracking for improved traceability - Refactored
apps/sim/hooks/use-collaborative-workflow.tsto handle operation confirmations/failures and manage retry queues - Improved connection status visibility in
apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/control-bar/components/user-avatar-stack/user-avatar-stack.tsx - Updated operation error handling in
apps/sim/socket-server/handlers/operations.tswith detailed failure feedback and retryability flags
10 files reviewed, 6 comments
Edit PR Review Bot Settings | Greptile
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
✅ No security or compliance issues detected. Reviewed everything up to f8000a7. Security Overview
Detected Code Changes
Reply to this PR with |
Uh oh!
There was an error while loading. Please reload this page.
improvement(queuing): queuing with retries for sockets ops
Description
Implements operation retry system with exponential backoff to handle temporary server failures and network issues. Operations that fail or timeout are automatically retried up to 3 times with increasing delays (2s, 4s, 8s) before triggering offline mode.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
All the regular testing for sockets. Add blocks, edges, subflows.
e.g. for subblocks to test:
Test 1: Normal Subblock Update
Type in text field → Should see operation added to queue
Server responds → Should see operation confirmed and removed
Test 2: Subblock Update with Server Down
Kill server → Type in text field
Should see retries → 2s, 4s, 8s delays
After 3 retries → Offline mode
Checklist:
bun run test)Security Considerations: