[feat](trx-server): add JSON TCP listener for client connections

Add a JSON-over-TCP listener so trx-client can connect to trx-server.
Speaks the ClientEnvelope/ClientResponse protocol from trx-core::client.

- New listener.rs module with per-client connection handling
- ListenConfig/AuthConfig in config.rs (default: 127.0.0.1:4532)
- CLI args --listen and --port for override
- Optional token-based authentication
- Updated example config with [listen] section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Stanislaw Grams <stanislawgrams@gmail.com>
This commit is contained in:
2026-02-07 13:03:19 +01:00
parent 3d137fabb1
commit c4007f16e3
6 changed files with 326 additions and 2 deletions
+14
View File
@@ -48,3 +48,17 @@ max_retries = 3
# Base delay for exponential backoff (milliseconds)
retry_base_delay_ms = 100
[listen]
# Enable the JSON TCP listener for client connections
enabled = true
# IP address to listen on (use "0.0.0.0" for all interfaces)
listen = "127.0.0.1"
# TCP port to listen on
port = 4532
[listen.auth]
# Authentication tokens (empty = no auth required)
tokens = []