0.2.0
nz v0.2.0
feat:
- msgData carries source VPN IP
receivers identify peers by decrypted source IP and auto-correct NAT address drift - relay data carries source/target VPN IP
server corrects its state table on drift instead of source-address lookup - ls probing chain: node Pong reports stale P2P peers, server sends bidirectional PeerIntro to trigger reconnect, status shows reconnecting
- data path falls back to relay and re-probes when a connected peer has no replies for p2pStaleTimeout
- punching-state peers periodically re-issue requestPeerInfo to keep refreshing drifted addresses
- Windows install stops running instance, registers task, and starts it immediately (schtasks /Run), matching Linux restart behavior
- Windows uninstall deletes task and stops the running tray instance via named shutdown event
- ls table and web dashboard gain Route column showing p2p/relay between the local node and each peer
Pong now carries per-peer route modes - server infers route mode from relay activity: online pair with recent relay forwarding shows relay, otherwise p2p, filling gaps where nodes did not report
- local row is now fully blue (status cell included) in both ls table and web dashboard
fix:
- keepalive-triggered setConnected now fills sendKey/recvKey
- server PeerIntro direction was inverted (introduced the target to itself), now introduces the querying peer
- server keepalive ack now refreshes lastSeen of the server peer on nodes
- schtasks delete failure now surfaces as an error
- shutdown event uses SDDL (Everyone EVENT_MODIFY_STATE, Low integrity) so non-elevated CLI can signal elevated tray
- stopRunningInstance ends with taskkill cleanup to remove instances without event listener (old binaries)
- ls table alignment now uses display width (runewidth) instead of byte length for CJK/em-dash cells
- route placeholder changed from em-dash to ASCII hyphen to avoid double-width rendering in CJK fonts
- server row shows p2p by default since nodes always talk to server directly
- protocol version bumped to 0x02
chore:
- remove logToFile file logging from Windows tray
- gitignore adds mobile_nebula