openvibers/openvibe.chat STATUS.json
STATUS.json
| 1 | { |
| 2 | "repository": "OpenVibers/OpenVibe.Chat", |
| 3 | "stage": "alpha", |
| 4 | "code": true, |
| 5 | "wave": "W6", |
| 6 | "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026)", |
| 7 | "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)", |
| 8 | "port": 4400, |
| 9 | "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)", |
| 10 | "contracts": "openvibe-contracts v0.419.0", |
| 11 | "sdk": "openvibe-sdk v0.161.0", |
| 12 | "shared": "openvibe-shared v4.235.0", |
| 13 | "capabilities": [ |
| 14 | "chat.message.send", |
| 15 | "chat.event.publish", |
| 16 | "chat.moderation.write", |
| 17 | "chat.cache.invalidate", |
| 18 | "chat.presence.read", |
| 19 | "chat.live_bridge.write", |
| 20 | "chat.stats.read", |
| 21 | "chat.messages.read", |
| 22 | "chat.analysis.read", |
| 23 | "chat.moderation.queue.read", |
| 24 | "chat.sounds.read", |
| 25 | "chat.sounds.write", |
| 26 | "chat.resource.read" |
| 27 | ], |
| 28 | "capabilitiesUsed": [ |
| 29 | "live.chat_context.read", |
| 30 | "live.chat_effects.write", |
| 31 | "events.event.publish", |
| 32 | "events.subscription.manage", |
| 33 | "vip.entitlement.check", |
| 34 | "network.modules.read", |
| 35 | "network.modules.write", |
| 36 | "tools.tool.run", |
| 37 | "tools.job.read", |
| 38 | "search.query.delegate" |
| 39 | ], |
| 40 | "capabilitiesRegistered": true, |
| 41 | "events": [ |
| 42 | "chat.message.created", |
| 43 | "chat.message.deleted", |
| 44 | "chat.dm.created", |
| 45 | "chat.moderation.action", |
| 46 | "chat.room.message.created", |
| 47 | "chat.room.message.deleted" |
| 48 | ], |
| 49 | "eventsConsumed": "live.release.deployed, network.module.updated, network.user.token_valid_after, vip.membership.changed, network.block.changed, 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)", |
| 50 | "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)", |
| 51 | "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", |
| 52 | "preferences": "Chat preferences in the Network user module chat.preferences, plus chat.tts_defaults, chat.dm_settings and chat.presence_prefs (server/prefs/: /api/chat/preferences and siblings with Chat's service token, cached 60 s, If-Match on every write). Needs the grants chat network.modules.read/write", |
| 53 | "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)", |
| 54 | "deployed": true, |
| 55 | "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", |
| 56 | "features": [ |
| 57 | "Live's global, stream and channel chat (authority since 2026-09-23; Live reads Chat's internal read API)", |
| 58 | "DMs and group DMs, participants only", |
| 59 | "rooms: public and private, roles, invitations, slow mode, unread counts", |
| 60 | "moderation: bans, timeouts, purges, filters, slow, sub-only and member-only modes, audited log access", |
| 61 | "TTS, sounds and soundboard with persisted queues", |
| 62 | "calls ported from Live (off until the calls cutover)", |
| 63 | "openvibe.chat site: global chat, messages, rooms, settings, history download", |
| 64 | "chat preferences in Network user modules", |
| 65 | "VIP subscriber badges", |
| 66 | "network blocks, revocation, export and deletion from Network events", |
| 67 | "openvibe-sdk service_outbox events and chat.room.message.* on the realtime plane", |
| 68 | "N-1 compatibility tests", |
| 69 | "per-actor limits (openvibe-sdk/limits)", |
| 70 | "Vibe search through the Search Fabric (network and web scopes, cited provider/date/URL; pre-fabric fallbacks)" |
| 71 | ], |
| 72 | "updated": "2026-11-13" |
| 73 | } |
| 74 |