Commit Graph

2 Commits

Author SHA1 Message Date
Blax Software 5eee2f83b8 fix: ConnectionRegistry robust to numeric-string ids
PHP coerces numeric-string array keys ("1") to int keys, so ids()/each()/clear()
could hand ints to remove(string) and TypeError. Cast to string in those paths.
Surfaced by the laravel-ws integration (connection ids are sequential numbers).
Regression test added. Suite: 20 tests.

rel learn-atc #1055 #1057

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 14:04:58 +02:00
Blax Software 9173a8897b feat: PSR-3 logging + ConnectionRegistry backbone primitives
- Kernel now accepts an optional PSR-3 LoggerInterface (default NullLogger),
  exposes logger(), emits boot/running/shutdown lifecycle lines
- Add Support\ConnectionRegistry: transport-agnostic id->connection registry
  (add/remove/get/each/onAdd/onRemove/clear) for presence + broadcast, reused by
  WS channels + WebRTC peers
- Tests: 19 total / 35 assertions (added ConnectionRegistry + logging coverage)
- require psr/log

rel learn-atc #1055

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 13:49:43 +02:00