• xtrn/syncdoom/lobby.js syncdoom_lib.js

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wednesday, July 01, 2026 23:24:33
    https://gitlab.synchro.net/main/sbbs/-/commit/e4be037a9e1065a3553a5276
    Modified Files:
    xtrn/syncdoom/lobby.js syncdoom_lib.js
    Log Message:
    syncdoom: converge lobby onto shared game_lobby.js

    Rewrite syncdoom_lib.js as a thin DOOM-specific layer over the shared exec/load/game_lobby.js (as SyncDuke already is), deleting its own copies of logic the shared lib provides -- string/time helpers, [net] config overlay + defaults, UDP port allocation, address resolution, the game-registry read, node paging, the live who's-online panel primitives, and events.jsonl read/prune -- and repointing lobby.js's call sites at gl.*. Only genuinely DOOM-specific code stays (the wad-set catalog, map-warp args, the frag/level/death event taxonomy, and the panel/activity composition), its internals rewired to gl.*.

    Two intended behavior changes come with adopting the shared registry/prune: a game entry with no heartbeat now ages by file mtime (gl.entry_age) instead of being reaped immediately, and the events-log prune round-trips lines through JSON
    (normalizing malformed lines) instead of copying raw text. game_lobby.js itself is unchanged, so SyncDuke is unaffected.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net