molluskandClaude Opus 4.8 b436b57f13 feat: remember last nickname + sanitize chat input
Remember last nickname: a new serde-default AppConfig.username field is
pre-filled into the launch-screen nickname field, and saved when a room is
joined or created (i.e. when the name is actually used), so it carries across
launches.

Sanitize chat: a pure sanitize_chat() drops control characters (ANSI escapes,
NUL, stray CR/LF/TAB), collapses whitespace runs to single spaces, trims, and
caps length (2000 chars). Applied to our outgoing text on submit AND to incoming
peer messages on receive — peer content is untrusted, so the sender's name and
text are both sanitized before display; empty-after-sanitize messages are
dropped. Unit tests for sanitize_chat (control/whitespace/unicode/empty + length
cap) and a config backward-compat assertion for username.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 23:02:08 -04:00
S
Description
No description provided
MIT
16 MiB
2026-08-22 19:08:47 +00:00
Languages
Rust 98.8%
Shell 0.4%
Nix 0.4%
Inno Setup 0.2%
Python 0.2%