The server's doors hold: a ceiling on a seat's actions, twenty sockets an address, silent sockets closed, slow requests cut off, and rooms kept beside the project wherever it is started
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jm2auWk6RP71CjaAb4FMoG
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
d97d709212
commit
8ba02006ca
+5
-2
@@ -170,8 +170,11 @@ One Node process per game, on its own port, run from source with `tsx` as
|
||||
a sandboxed systemd service, behind Caddy `handle` blocks that route `/api`
|
||||
and `/ws` before the static files. Rooms in memory are evicted after a week
|
||||
idle and come back from disk on the next visit. Rate limits sit on the doors
|
||||
a stranger can knock on (rooms, seats, talk, the desk); a table of friends
|
||||
never nears them. A seat token is minted once, sent once, and compared by
|
||||
a stranger can knock on (rooms, seats, talk, the desk), and a looser one
|
||||
on a seat's own actions, each a ledger line; a table of friends never nears
|
||||
them. An address holds at most twenty sockets, a socket that stops
|
||||
answering pings is closed, and a request has seconds, not minutes, to
|
||||
arrive. A seat token is minted once, sent once, and compared by
|
||||
hash in constant time ever after; a shared link carries none. Room codes
|
||||
are checked against the disk as well as memory, so an evicted room's code
|
||||
is never reissued over its ledger. A game may refuse a move with a reason
|
||||
|
||||
Reference in New Issue
Block a user