feat(gui): circuit connections - #1198
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f498d46. Configure here.
| .with_other_transport(|_| transport)? | ||
| .with_behaviour(|_| behaviour)? | ||
| .with_relay_client(noise::Config::new, yamux::Config::default)? | ||
| .with_behaviour(|_, relay| build_behaviour(relay))? |
There was a problem hiding this comment.
Relay hop exhausts yamux stream limit
Medium Severity
Outbound circuit dials open a long-lived hop stream on the existing connection to the relay, which still uses the CLI transport’s yamux cap of MAX_NUM_STREAMS (5). That cap was sized for a couple of short-lived protocol streams, not one hop stream per relayed peer. Connecting to more than a few makers through the same relay, which is the usual public-relay layout, will fail stream opens and drop those dials.
Reviewed by Cursor Bugbot for commit f498d46. Configure here.


Summary
A relayed maker address has the form
<relay-address>/p2p/<relay-peer-id>/p2p-circuit/p2p/<maker-peer-id>.Testing
cargo check --all-featurescargo check --testscargo check --all-targetsyarn test --run src/utils/parseUtils.test.tsyarn tscyarn eslint src/utils/parseUtils.ts src/utils/parseUtils.test.tsyarn buildThe Docker
happy_pathtest was started, but its native Monero dependency build had not completed when this PR was opened.AI assistance: OpenAI Codex was used to help implement and test this change.