Commit Graph
7 Commits
Author SHA1 Message Date
Nomads_ReachandGitHub 6edc16ed20 Add an end-to-end TCP acceptance harness (issue #15) (#20)
Stand up the real AuthoritativeServer behind the real TCP transport on a
loopback port and drive real SyntheticProtocolClient sockets through it, so the
matrix is exercised over an actual connection rather than in-memory fakes.

Covers the baseline-protocol, TCP-compatibility, and interest-management
sections: welcome->hello->sessionReady handshake, unique/non-spoofable
server-owned ids, malformed and oversized rejection before mutation, rate-limit
tripping, transform/playerState/worldState relay, action events not
replay-cached to late joiners, disconnect/reconnect leaving no stale session,
same-cell relay vs distant interest filtering, multi-client no cross-cell spam,
and handshake-timeout reaping.

The harness runs for real wherever loopback TCP can bind (dev machines, the
self-hosted runner) and skips cleanly otherwise. Wired into a self-hosted CI
job gated by the runtime-policy guard. 60s idle-timeout, 32/64-client load /
packet-loss / reconnect-churn, and GNS sections remain follow-ups.
2026-08-16 19:17:08 -04:00
NomadsReach 1f01e68794 Add Avalonia server-host launcher (MVP scaffold)
Cross-platform C# GUI to replace the Qt/C++ Host GUI, on the same dotnet
toolchain as the server. MVP: load/save commonwealth-server.json, Start/Stop
the CommonwealthOnline.Server process (published exe, then dll, then source
run), and stream its output to a live log. Themed to the Commonwealth Online
brand (near-black + amber). Builds clean on net8.0.

Next: player list + kick/ban via the admin port, then retire the Qt host.
2026-08-16 18:15:40 -04:00
Nomads_Reach 757e614cdd Complete C# server cutover 2026-08-16 02:36:32 -04:00
Nomads_Reach 654e0b405b Ignore generated admin token 2026-08-15 21:27:56 -04:00
Nomads_Reach 68ca975bbe Keep runtime ban data out of source control 2026-08-15 21:02:16 -04:00
andrew 881aa33eef Harden Linux server runtime and packaging
Linux Compatibility / Arch Linux container (push) Has been cancelled
Linux Compatibility / Ubuntu dedicated server (push) Has been cancelled
Adds end-to-end Linux compatibility work for the dedicated server: new CI workflow (Ubuntu + Arch), line-ending/executable safeguards, and a local venv-first startup flow with split dependency files for server vs optional host GUI tooling. Improves runtime resilience with better bind error messages, stricter config validation, writable-state checks, cleaner socket/thread shutdown behavior, and SIGTERM-aware graceful stop handling for headless/systemd use. Updates deployment/startup docs and adds portability/runtime integration tests to lock in these behaviors.
2026-08-01 21:39:23 +12:00
andrew 07cc2e20a3 added server 2026-08-01 18:43:40 +12:00