Skip to content

feat: harden and instrument realtime client - #420

Merged
OxDev-max merged 2 commits into
Refract-Protocol:mainfrom
dev-kiki0:issues/276-277-278-279-realtime
Oct 23, 2026
Merged

OxDev-max merged 2 commits into
Refract-Protocol:mainfrom
dev-kiki0:issues/276-277-278-279-realtime

Conversation

@dev-kiki0

Copy link
Copy Markdown
Contributor

Summary

  • Add gated realtime query/session overrides for off, WebSocket, SSE, and mock-server modes, endpoint selection, a visible QA badge, and a reset action. Production still honors the remote realtime kill switch.
  • Make topic subscriptions reference-counted and cleanup idempotent across StrictMode remounts; add bounded frame decoding, hostile-input coverage, sequence deduplication, and fallback handling.
  • Add a vendor-neutral, bounded, sampled analytics event sink with coarse topic labels and privacy safeguards.
  • Document the QA workflow and add a Playwright walkthrough.

Issues

Closes #279
Closes #278
Closes #277
Closes #276

Validation

  • Focused realtime and analytics Vitest suites: 12 tests passed.
  • Scoped TypeScript check for changed realtime and analytics modules: passed.
  • git diff --check: passed.
  • Full repository tests, full typecheck, lint, and Playwright are blocked by existing upstream failures: empty core hook modules (including useOracleStatus), an invalid global-error import, unrelated TypeScript syntax errors, and an ESLint selector parse error. The Playwright app could not boot because useOracleStatus is not implemented in the base checkout.

@drips-wave

drips-wave Bot commented Oct 21, 2026

Copy link
Copy Markdown

@dev-kiki0 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

…279-realtime

# Conflicts:
#	src/hooks/useRealtimeTopic.ts
#	src/lib/realtime/client.ts
@OxDev-max
OxDev-max merged commit 3d61e5b into Refract-Protocol:main Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants