holochain / holochain/tx5

Fallback SBD Messaging Management, Events, and Testing

Open
#130 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
74
Forks
11
PR merge metrics
No merged PRs in 30d

Description

The only path to entering sbd-fallback-messaging-mode is that we get an error establishing a webrtc connection or sending the first webrtc message.

Write tests that ensure the following:
1. if the first message fails to send, it is sent again over the fallback messaging method
1. if we receive a fallback message (and have not successfully sent one of our own over webrtc) we also switch to fallback, aborting trying to set up webrtc
1. a "Disconnected" event is NOT emitted when we switch to fallback mode
1. if we get any kind of error after the first successful send of a message over webrtc, we do NOT enter fallback mode, but instead the whole connection is closed and a "Disconnected" event is emitted

Contributor guide

Open the contributing guide

Research direction

Locate the SBD fallback messaging and WebRTC connection setup entry points, then trace how the first send, incoming fallback messages, errors, and connection closure are handled. Add tests covering the four listed transitions and event outcomes, and run the relevant Rust test suite to verify fallback retries only before a successful WebRTC send.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
audio-video-rtc, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.