Connect TCP with an invalid address is silent in the event log

Open Beginner friendly
#241 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 3 days

@PRINCEKK122 is already working on this.

Since Oct 18, 2026.

  • #242 by @PRINCEKK122 — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
77/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
rust
Domain
desktop, devtools

Research direction

Start with connect_tcp_with_validation_and_save in relay/src/update.rs, then read tcp_validation_text in relay/src/view.rs and validate_tcp_addr in relay/src/state.rs. Trace how connection failures reach the event log and how validation errors are displayed. Done means rejected empty and malformed addresses appear in Recent events with distinct messages.

Written by the indexing model from the issue text.

Description

Describe the bug

Pressing Connect TCP with an empty or malformed address does nothing visible in the event log. No connection is attempted and no entry is recorded, so the GUI looks like it ignored the press.

connect_tcp_with_validation_and_save (relay/src/update.rs:13) validates first. On failure it sets tcp_addr_validation_error and returns without calling tcp_connect, so none of the paths that normally report a connection problem are reached. The only feedback is one line of plain text rendered by tcp_validation_text (relay/src/view.rs:192), between the address box and the buttons, which is easy to miss.

The event log panel added in #183 exists so connection failures are visible. This is the one connection failure that never reaches it.

To Reproduce

  1. Start the relay.
  2. Leave the address box untouched. The greyed 127.0.0.1:9999 is placeholder text, not a value, so the field is empty.
  3. Press Connect TCP.
  4. Nothing appears in Recent events. The mock server never reports a connection. Pressing Check TCP Connection Status does nothing, because there is no connection to check.

Expected behavior

A rejected address is recorded in the event log like every other connection failure, and the message distinguishes an empty field from a malformed one.

Additional context

The empty-field case is the one that costs time, because validate_tcp_addr (relay/src/state.rs:345) returns the same "Invalid IP address" text for an empty string as for a typo, which reads as though something was typed wrong rather than not typed at all.

Hit while testing #234: roughly half an hour went to diagnosing a relay that appeared not to connect, with nothing in the log to work from.

Dominant language
Python
Stars
4
Forks
9
Avg merge
4d 17h
Merged PRs (30d)
7

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from oss-slu/PilotDataSynchronization

All issues in oss-slu/PilotDataSynchronization

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.