openvibers/openvibe.chat Commits

openvibe-contracts v0.112.0 (was v0.103.0) (#30)

OP OpenVibers committed 7 Oct 2026 · 2c0563d129 · 4 files, +38 −10

Opened by scripts/pin-bump.js in OpenVibers/OpenVibe.Shared after the v0.112.0 release.

Changes

ddiff --git a/README.md b/README.md
iindex eb33bb9..bf6b2fc 100644
---- a/README.md
++++ b/README.md
@@@ -589,3 +589,9 @@ left OpenVibe.Sites, and this repository's vhost serves it.
---
Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).
++
++<!-- versions:start -->
++- openvibe-contracts: v0.112.0
++- openvibe-sdk: v0.26.0
++- openvibe-shared: v2.13.0
++<!-- versions:end -->
ddiff --git a/STATUS.json b/STATUS.json
iindex a70c0f4..d2fc15c 100644
---- a/STATUS.json
++++ b/STATUS.json
@@@ -7,8 +7,23 @@
"runtime": "node 22, express, ws, PostgreSQL through openvibe-sdk/db (DATABASE_URL via PgBouncer, DATABASE_DIRECT_URL for migrations/; embedded PGlite outside production), Valkey for the per-actor limits (VALKEY_URL); better-sqlite3 gone (plan T3)",
"port": 4400,
"domain": "openvibe.chat (Chat's own site: global chat, messages, rooms, settings; the service manifest records it live since 2026-09-24) and openvibe.live (/ws/chat, /api/chat/, /api/dm/, /api/tts/, /api/sounds via an nginx include in openvibe.live's vhost)",
-- "contracts": "openvibe-contracts v0.103.0",
-- "capabilities": ["chat.message.send", "chat.event.publish", "chat.moderation.write", "chat.cache.invalidate", "chat.presence.read", "chat.live_bridge.write", "chat.stats.read", "chat.messages.read", "chat.analysis.read", "chat.moderation.queue.read", "chat.sounds.read", "chat.sounds.write"],
++ "contracts": "openvibe-contracts v0.112.0",
++ "sdk": "openvibe-sdk v0.26.0",
++ "shared": "openvibe-shared v2.13.0",
++ "capabilities": [
++ "chat.message.send",
++ "chat.event.publish",
++ "chat.moderation.write",
++ "chat.cache.invalidate",
++ "chat.presence.read",
++ "chat.live_bridge.write",
++ "chat.stats.read",
++ "chat.messages.read",
++ "chat.analysis.read",
++ "chat.moderation.queue.read",
++ "chat.sounds.read",
++ "chat.sounds.write"
++ ],
"capabilitiesUsed": [
"live.chat_context.read",
"live.chat_effects.write",
@@@ -21,7 +36,14 @@
"tools.job.read"
],
"capabilitiesRegistered": true,
-- "events": ["chat.message.created", "chat.message.deleted", "chat.dm.created", "chat.moderation.action", "chat.room.message.created", "chat.room.message.deleted"],
++ "events": [
++ "chat.message.created",
++ "chat.message.deleted",
++ "chat.dm.created",
++ "chat.moderation.action",
++ "chat.room.message.created",
++ "chat.room.message.deleted"
++ ],
"eventsConsumed": "live.release.deployed, network.module.updated, network.user.token_valid_after, vip.membership.changed, network.block.changed, network.subject.merged, network.account.export_requested and network.account.deleted at POST /internal/events (signature v2, openvibe-sdk inbox); subscriptions created at boot when missing (CHAT_EVENTS_SECRET and the Network grant chat events.subscription.manage openvibe.events)",
"liveAuthorityFlag": "CHAT_AUTHORITY=chat is required in every mode since the cutover (2026-09-23 02:03 UTC): Live mounts no local chat routes and there is no rollback to Live; Live reads Chat's chat tables through Chat's internal read API (the read mirror was retired on 2026-10-05, so the cutover rollback through it no longer exists)",
"vip": "Member badges from OpenVibe.VIP (server/vip/badges.js: entitlements/check with product chat, cached 60 s, never blocks sending, fails closed; vip.membership.changed drops the cache). Needs the Network grant chat vip.entitlement.check openvibe.vip",
@@@ -29,7 +51,6 @@
"calls": "Live's call server, call routes and stream hooks ported to server/calls/ with a calls lifecycle table (WS-I task 1). Off unless CHAT_CALLS=1; the switch is CHAT_CALLS=1, Live CALLS_AUTHORITY=chat and the nginx include deploy/nginx/calls/openvibe.live-calls.locations.conf (docs/calls-cutover.md)",
"deployed": true,
"deployment": "Deployed with `sudo ovhost deploy chat`: /opt/openvibe.chat, unit openvibe-chat, 127.0.0.1:4400 (loopback); public through the openvibe.chat vhost and openvibe.live's nginx include for the chat paths; EVENTS_URL set (chat.message.created reaches OpenVibe.Events); restore drill passed 2026-09-23",
-- "updated": "2026-10-07",
"features": [
"Live's global, stream and channel chat (authority since 2026-09-23; Live reads Chat's internal read API)",
"DMs and group DMs, participants only",
@@@ -44,5 +65,6 @@
"outbox events and chat.room.message.* on the realtime plane",
"N-1 compatibility tests",
"per-actor limits (openvibe-sdk/limits)"
-- ]
++ ],
++ "updated": "2026-10-07"
}
ddiff --git a/package-lock.json b/package-lock.json
iindex 051dccc..62337d0 100644
---- a/package-lock.json
++++ b/package-lock.json
@@@ -16,7 +16,7 @@
"express-rate-limit": "^7.5.0",
"iovalkey": "^0.4.0",
"multer": "^2.0.2",
-- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.103.0",
++ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.112.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.26.0",
"openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v2.13.0",
"pg": "^8.23.0",
@@@ -1020,9 +1020,9 @@
}
},
"node_modules/openvibe-contracts": {
-- "version": "0.103.0",
-- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.103.0",
-- "integrity": "sha512-kTsKojjjtCmJr5uXDIM+ocnhLF5CiAMBGbRSVGmvhfeBGHs5jxldGJc+ozw+S5W2bOQp8/BkT2PVI/fr8eNirQ==",
++ "version": "0.112.0",
++ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.112.0",
++ "integrity": "sha512-ujIdCjv+oHfwg/+Hw0tyt2erVnornjDiKVPN8snHvybfysR/DBZQ2G32bQj8oAaK90s12ADEpdrXT1eust3eAw==",
"license": "AGPL-3.0-only",
"dependencies": {
"ajv": "^8.17.1",
ddiff --git a/package.json b/package.json
iindex 1dddb48..ee4c5d9 100644
---- a/package.json
++++ b/package.json
@@@ -29,7 +29,7 @@
"express-rate-limit": "^7.5.0",
"iovalkey": "^0.4.0",
"multer": "^2.0.2",
-- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.103.0",
++ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.112.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.26.0",
"openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v2.13.0",
"pg": "^8.23.0",