Replaced polling with a single queued cursor worker, timeout recovery,
backoff, deduplication, chronological insertion, and capped DOM history
in cyberchat-v4.js.
Removed Groups UI, API, configuration, tier features, admin controls,
and archive exposure.
Legacy group records remain stored but inaccessible.
Added configurable polling limits in config.json.
Fixed polling after voice/text sends.
Changes include:
Stalled polls abort and retry automatically.
Polling now schedules after each completed request.
Local sends no longer advance the server cursor and skip interleaved
messages.
Sends trigger immediate reconciliation.
API requests bypass browser caches.
When disabled:
Group navigation and channel selector are hidden.
Group API operations are blocked.
Active sessions update automatically.
Existing groups and messages remain preserved.
Static and browser tests passed with no console errors.