OpenVibe.Shared releases

Release 4.113.0

6 Nov 2026 · pinned package [email protected]

4.113.0

  • Bot API calls can be counted at ingest, not stored row by row. AnalyticsTrackerPg takes countBotApiAtIngest (off by default): a bot's API call increments analytics_bot_api_hourly and analytics_bot_api_daily by endpoint group, status class and bot family at flush instead of writing a raw analytics_events row. The hourly and daily rollups add those counters to raw rows, so a day's api_calls, bot_hits and error_count are what the raw rows gave before, and a day recomputed at close counts each call once. The admin's bot breakdown, status classes and sub-day summary include the counters; a raw page view by a bot still keeps its row, and the option off changes nothing. New tables are expand-only: analyticsSchema() creates them for a new install, and an existing service adds them in a migration.
  • Phone minimums in the kit (the fleet phone sweep of 11-05/06): .ovk-badge is 12 px (was 11.2 px), and a room's own links (.ov-room > a) are 44 px tall on touch screens (were 40.6 px).
  • Bot API calls can be counted at ingest, not stored row by row. AnalyticsTrackerPg takes countBotApiAtIngest (off by default): a bot's API call increments analytics_bot_api_hourly and analytics_bot_api_daily by endpoint group, status class and bot family at flush instead of writing a raw analytics_events row. The hourly and daily rollups add those counters to raw rows, so a day's api_calls, bot_hits and error_count are what the raw rows gave before, and a day recomputed at close counts each call once. The admin's bot breakdown, status classes and sub-day summary include the counters; a raw page view by a bot still keeps its row, and the option off changes nothing. New tables are expand-only: analyticsSchema() creates them for a new install, and an existing service adds them in a migration.

PagesThe kit

Rules20 Status is a word, never colour alone.43 A count means it is for you; a dot means there is something new.

All releases