Hot Desking in Wayland - mirror
Find a file
Till Wegmueller d59411ca60 Add session lifecycle, token-based identity, and client token support
Core session management infrastructure for Phase 3:

- Session module: SessionId, SessionToken, SessionState enum with
  validated transitions (Creating→Active⇄Suspended→Destroyed),
  Session struct with timeout tracking, SessionRegistry with O(1)
  lookup by ID and token (10 unit tests)

- Protocol: ClientHello gains optional token field, ServerHello gains
  resumed flag and token echo, SessionStatus/SessionEvent enums added
  to ControlMessage for session state notifications

- Server: SessionRegistry in headless CalloopData, sessions created on
  client connect (with token lookup for resumption), suspended on
  disconnect (not destroyed), periodic cleanup of expired sessions

- Client: --token CLI flag, persistent token at ~/.config/wayray/token
  with auto-generation (random 16-byte hex), token sent in ClientHello,
  resumed state logged from ServerHello
2026-04-09 21:14:48 +02:00
book Rename binaries to illumos-style short names 2026-03-29 00:34:19 +01:00
crates Add session lifecycle, token-based identity, and client token support 2026-04-09 21:14:48 +02:00
docs Update roadmap: track remaining WM protocol TODOs in correct phases 2026-04-07 22:58:05 +02:00
vm Fix VM setup: add X11 fallback, libxkbcommon-x11 2026-04-07 14:31:12 +02:00
.gitignore Initial commit 2026-03-28 18:53:00 +01:00
Cargo.lock Add session lifecycle, token-based identity, and client token support 2026-04-09 21:14:48 +02:00
Cargo.toml Implement pluggable window management protocol (Phase 2.5) 2026-04-07 22:29:19 +02:00
CLAUDE.md Rename binaries to illumos-style short names 2026-03-29 00:34:19 +01:00
RESEARCH.md Add project documentation, architecture decisions, and usage book 2026-03-28 20:47:16 +01:00