Skip to content

Conversation

@V3RON
Copy link
Contributor

@V3RON V3RON commented Jan 7, 2026

Description

Introduces Plugin Bridge v2, a major improvement to the Rozenite plugin communication system. The new version provides a more reliable and robust communication layer with a handshake protocol, message buffering, and zero message loss guarantees. Key improvements include:

  • Handshake Protocol: Leader/follower roles ensure both DevTools UI and React Native app are ready before message exchange
  • Message Buffering: Prevents message loss during connection establishment with order preservation
  • Auto/Manual Ready Modes: Flexible initialization control for different plugin needs
  • Zero Message Loss: Guarantees all messages are delivered regardless of timing
  • Type Safety: Full TypeScript support with generic event maps
  • Automatic Reconnection: Handles reloads and connection interruptions gracefully

Context

The v1 plugin bridge suffered from race conditions where messages could be lost if sent before listeners were attached or during connection establishment. The handshake protocol with leader/follower roles ensures proper sequencing and prevents these issues.

Testing

  • Unit Tests: Test suite covering handshake protocol, message buffering, auto/manual modes, and reconnection scenarios

@vercel
Copy link

vercel bot commented Jan 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Review Updated (UTC)
rozenite Skipped Skipped Jan 9, 2026 0:28am

@V3RON V3RON force-pushed the feat/new-plugin-client branch from 084a918 to 012e8eb Compare January 9, 2026 12:28
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.

2 participants