Skip to content

🦋 POS pool synching between devices#2397

Merged
Tirodem merged 1 commit intomainfrom
feature/pos_improve_pool_synching_between_devices__2364
Feb 26, 2026
Merged

🦋 POS pool synching between devices#2397
Tirodem merged 1 commit intomainfrom
feature/pos_improve_pool_synching_between_devices__2364

Conversation

@gntw
Copy link
Contributor

@gntw gntw commented Feb 16, 2026

POS terminals now see real-time updates when another device modifies the same pool — adding items, splitting payments, or changing quantities are reflected automatically within ~1 second across all connected devices.

Closes #2364

@gntw gntw force-pushed the feature/pos_improve_pool_synching_between_devices__2364 branch from fcbe73e to 85643d5 Compare February 16, 2026 13:52
@gntw gntw requested a review from roosemberth February 24, 2026 15:32
@gntw gntw force-pushed the feature/pos_improve_pool_synching_between_devices__2364 branch from 85643d5 to f0a4a02 Compare February 25, 2026 11:34
@gntw gntw self-assigned this Feb 25, 2026
@Tirodem
Copy link
Contributor

Tirodem commented Feb 25, 2026

Really solid 😮
I tested on dev-bootik2 with my laptop on one hand and smartphone on the other.
Even pool discount is properly synced.
Performances are really impressive, great job.
BTW I saw a little someting I have to check on main.
When closing a fully paid pool, I land here instead of the main pool interface :
image
I'll tell you in a couple of minutes if it's a regression or not.

@Tirodem
Copy link
Contributor

Tirodem commented Feb 25, 2026

Not on main, probably regression.

SSE-based real-time synchronization for POS pools and session cart:
- New SSE endpoint for orderTabs change stream (watches all pools for sidebar updates)
- Shared pool-sse.ts utility with debounced invalidate (1s) to reduce redundant requests
- Tab page: reactive SSE reconnection on pool switch via switchPoolSSE()
- Split page: SSE connection for real-time payment/item updates
- Session SSE: simplified cart events to trigger-only (client reloads via load()), added initial cart trigger on connect for reconnect consistency
- Removed sending full cart data over SSE (was using formatCart), now uses invalidate() pattern matching the pool SSE approach

Fixes issue #2364
@gntw gntw force-pushed the feature/pos_improve_pool_synching_between_devices__2364 branch from f0a4a02 to c22d2e0 Compare February 25, 2026 15:42
@gntw
Copy link
Contributor Author

gntw commented Feb 25, 2026

@Tirodem bug was found and eliminated

@roosemberth we are ready for code review

@Tirodem
Copy link
Contributor

Tirodem commented Feb 25, 2026

Now iz good 🎉
Pilot is more than happy after the demo.

@Tirodem Tirodem merged commit e3d6b87 into main Feb 26, 2026
7 checks passed
@Tirodem Tirodem deleted the feature/pos_improve_pool_synching_between_devices__2364 branch February 26, 2026 15:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🐛 🦋 Improve pool synching between devices

2 participants