feat: add realtime websocket core #61

Closed
sealad886 wants to merge 6 commits from sealad886/realtime-core into main AGit
Contributor

Summary

  • add a shared realtime/WebSocket core with injected transport, async token provider, connection state, and typed event parsing
  • support Grindr-style command refs, token-bearing command payloads, response matching, command timeouts, and pending-command rejection on disconnect
  • add subscription dispatch for notification events and tests for close/token races

Stack

Depends on #59 and #60.

Validation

  • bun run test
  • bun run build
  • git diff --check

Note: bun run check still reports existing origin/main Svelte type errors in NavBar.svelte and ImageCarousel.svelte; this PR does not change those files.

## Summary - add a shared realtime/WebSocket core with injected transport, async token provider, connection state, and typed event parsing - support Grindr-style command refs, token-bearing command payloads, response matching, command timeouts, and pending-command rejection on disconnect - add subscription dispatch for notification events and tests for close/token races ## Stack Depends on #59 and #60. ## Validation - `bun run test` - `bun run build` - `git diff --check` Note: `bun run check` still reports existing `origin/main` Svelte type errors in `NavBar.svelte` and `ImageCarousel.svelte`; this PR does not change those files.
Owner

Pending changes in #59 and #60 before reviewing

Pending changes in #59 and #60 before reviewing
Author
Contributor

Base blockers are updated now: #59 was addressed in 11feccb, and #60 was addressed in 85ba445. Ready for review.

Base blockers are updated now: #59 was addressed in `11feccb`, and #60 was addressed in `85ba445`. Ready for review.
sealad886 force-pushed sealad886/realtime-core from e04fc0e0cf to 1c8284f200 2026-05-12 23:11:41 +02:00 Compare
sealad886 force-pushed sealad886/realtime-core from 1c8284f200 to 1bfa30f9be 2026-05-13 00:10:09 +02:00 Compare
Author
Contributor

Updated stack after the pending base/review comments. Rebased onto current origin/main, replayed over #60 fixes (AppCache profile cache storage, Tauri 2.11 Rust/JS alignment), and force-pushed the refreshed AGit ref. This PR now has clean git merge-tree against origin/main and passes: git diff --check, bun run test:unit, bun run test:rust, bun run build. Ready for review.

Updated stack after the pending base/review comments. Rebased onto current `origin/main`, replayed over #60 fixes (AppCache profile cache storage, Tauri 2.11 Rust/JS alignment), and force-pushed the refreshed AGit ref. This PR now has clean `git merge-tree` against `origin/main` and passes: `git diff --check`, `bun run test:unit`, `bun run test:rust`, `bun run build`. Ready for review.
Owner

Superceded, websocket now lives in the grindr crate, though ref-correlation is a valid future issue.

Superceded, websocket now lives in the grindr crate, though ref-correlation is a valid future issue.
hloth closed this pull request 2026-07-19 21:47:50 +02:00

Pull request closed

Sign in to join this conversation.
No description provided.