undef-engine 2025-11-28
Fix reconnection and broadcast bugs, add NPC system, expand Terrible Psychiatrist
145 files · 8,480+ · 5,310-

Critical engine and broadcast fixes

7 files changed
  • ws_manager.py Reverted reconnection locking that broke broadcasts
  • session_factory.py Fixed dangling stale sessions
  • defaults.py Corrected WebSocket port configuration
  • factory.py Used PubSub factory instead of hardcoded RedisPubSubManager
  • chat_handlers.py Fixed chat broadcast by wiring PubSub into ConnectionManager
  • sessions.py Fixed admin delete to clean up orphaned lobby entries
  • handler.py Fixed broken Sick Day game mode
  • Reverted reconnection locking that broke broadcasts remediate behavioral
    1 file
    • ws_manager.py
  • Fixed dangling stale sessions and corrected WebSocket port remediate behavioral
    2 files
    • session_factory.py
    • defaults.py
  • Fixed chat broadcast by wiring PubSub into ConnectionManager remediate internal
    2 files
    • chat_handlers.py
    • factory.py
  • Fixed admin delete to clean up orphaned lobby entries remediate internal
    1 file
    • sessions.py
  • Fixed broken Sick Day game mode remediate internal
    1 file
    • handler.py

Initial NPC system

3 files changed
  • __init__.py NPC system package
  • player.py NPC player implementation
  • actions.py NPC action handlers

Terrible Psychiatrist sub-components

6 files changed
  • DiagnosisCard.tsx Diagnosis card sub-component
  • DisconnectedPlayerOverlay.tsx Disconnected player overlay
  • PlayerStatusBar.tsx Player status bar
  • RoleBanner.tsx Role banner display
  • ScoreFooter.tsx Score footer component
  • TerriblePsychiatristBoard.tsx Significantly enhanced game board
  • Added DiagnosisCard, DisconnectedPlayerOverlay, PlayerStatusBar, RoleBanner, and ScoreFooter sub-components instantiate internal
    5 files
    • DiagnosisCard.tsx
    • DisconnectedPlayerOverlay.tsx
    • PlayerStatusBar.tsx
    • RoleBanner.tsx
    • ScoreFooter.tsx
  • Significantly enhanced TerriblePsychiatristBoard with decomposed sub-components decouple internal
    1 file
    • TerriblePsychiatristBoard.tsx

Spectator view expansion and deprecated component removal

1 file changed
  • SpectatorView.tsx Expanded live game observation features
  • Expanded SpectatorView with richer live game observation features streamline internal
    1 file
    • SpectatorView.tsx
  • Removed InteractiveCardDemo and NeoBrutalistCard deprecated components deprecate internal
    1 file
    • InteractiveCardDemo.tsx