RagLeap
ragleap-core · release notes

ragleap-core v0.12.1

ragleap-core v0.12.1 (security release)

Security fix: the voice channel had no authentication (advisory GHSA-fg9g-772q-rr9c)

The voice channel's WebSocket server accepted every connection, and the Twilio setup needs it reachable from the internet. Affected: v0.1.0 to v0.12.0, for installs that expose the voice port. Fixed in this release:

  • A call is accepted only when the address it connects to ends in a secret, wss://your-domain.com:8765/<VOICE_WS_TOKEN>. A missing or wrong token gets a plain HTTP 401 and never becomes a call. With no token set, the voice server refuses every call.
  • Limits: VOICE_MAX_CALLS (default 10), VOICE_MAX_CALL_MINUTES (default 30), and 64 KiB per message.
  • Spoken feedback ("good answer" / "bad answer") is ignored on the voice channel, because callers are anonymous.

If you use the voice channel, you must do this after upgrading:

  1. Put a long random value in .env as VOICE_WS_TOKEN (for example from openssl rand -hex 24). New installs get one from the installer.
  2. Change the Twilio <Connect><Stream> address to wss://your-domain.com:8765/<VOICE_WS_TOKEN> (use wss).
  3. Rebuild and restart the voice service. If the token ever leaks, change it in .env and in the Twilio address.

Also in this release (merged since v0.12.0)

  • Single sign-on with OpenID Connect, off by default: OIDC core with PKCE and strict ID token checks and an optional second-factor rule (#1076), identities, sessions, login routes and audit (#1080), and the dashboard button, Users tab and admin guide docs/single-sign-on.md (#1097).
  • SHARED_KEY_DISABLED switch to refuse the shared API key once an owner has a personal key (#1050).
  • Link a person to a Telegram, WhatsApp or Discord chat so channel approvals name them (#1057).
  • Request metrics at GET /metrics (off by default) and an X-Request-ID header (#1058); an HTTP throughput check in benchmarks/ (#1064).
  • The Neo4j password now comes from NEO4J_PASSWORD in .env, with a warning for the public default (#1059).
  • Offline install: a bundle builder, install.sh --offline, and an offline and GPU guide with an optional NVIDIA compose override (#1071, #1072, #1073).

Upgrade notes

  • Apply db/schema.sql (idempotent) to existing databases (back up first). It adds user_channels, user_identities, user_sessions and sso_logins.
  • Rebuild the app image. Single sign-on and metrics stay off until you set their settings.

Known limits

  • Single-tenant. Single sign-on has been tested against a fake provider only, not Keycloak, Entra ID or Okta. The offline install has not been tried on an air-gapped machine and the GPU override has not been tried on a real GPU. Not independently security reviewed.
View on GitHub Package page All releases
← v0.12.0v0.13.0 →

Release notes mirrored from GitHub Releases.