openvibers/openvibe.events Commits
openvibe-shared v4.107.0 (was v4.106.2) (#226)
Changes
@@@ -406,7 +406,7 @@ implemented service.Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).<!-- versions:start -->--- openvibe-contracts: v0.222.0++- openvibe-contracts: v0.280.0- openvibe-sdk: v0.82.0--- openvibe-shared: v4.106.2++- openvibe-shared: v4.107.0<!-- versions:end -->@@@ -7,9 +7,9 @@"runtime": "node 22, express, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9","port": 4300,"domain": "openvibe.events",-- "contracts": "openvibe-contracts v0.222.0",++ "contracts": "openvibe-contracts v0.280.0","sdk": "openvibe-sdk v0.82.0",-- "shared": "openvibe-shared v4.106.2",++ "shared": "openvibe-shared v4.107.0","capabilities": ["events.event.publish","events.subscription.manage",@@@ -37,5 +37,5 @@"carrier fabric (ADR-042): the pg-v1 poll beside a valkey-v1 push carrier for QUEUE (streams) and TOPIC (SSE fan-out) an optional nats-v1 NATS Core TOPIC carrier (NATS_URL) and an optional nats-js-v1 JetStream STREAM carrier (NATS_URL, NATS_JETSTREAM; deploy/nats) and an optional cloud-v1 SQS-compatible QUEUE carrier (CLOUD_QUEUE_URL; SigV4, no dependency), with a placement planner, per-key pinning, delivery_placements history and a GET /api/v1/placement explain API; EVENTS_CARRIERS[_DISABLED] switches it","at_most_once delivery semantics (a failed attempt is final)"],-- "updated": "2026-11-02"++ "updated": "2026-11-03"}@@@ -14,7 +14,7 @@"iovalkey": "^0.4.0","openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0","openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",-- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",++ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0","pg": "^8.23.0"},"devDependencies": {@@@ -1147,9 +1147,9 @@}},"node_modules/openvibe-shared": {-- "version": "4.106.2",-- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",-- "integrity": "sha512-sKq3TnkO0IaaKdgR5sLfkEwRL9DGYdT6etxTw4/9NKrp2HECvaDrPtOQw/xsrS0vtYwIm5z5BSp2+EVRt5MLQg==",++ "version": "4.107.0",++ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0",++ "integrity": "sha512-S0Um9G8a0jl/yL8Sox4e+xZtLHyMjiv1WcwUIlml6hgMKAPq9aGIzcUA9Cb/d6SppJaxCKIAKmsF5Slbz6UyZg==","license": "MIT","dependencies": {"jsonwebtoken": "^9.0.0",@@@ -26,7 +26,7 @@"iovalkey": "^0.4.0","openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0","openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",-- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",++ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0","pg": "^8.23.0"},"engines": {@@@ -47,6 +47,22 @@ function createApp({ config, store, auth, keys, worker, realtime, metrics, dnsLo// content-addressed /shared/* URLs, from this repo's pinned openvibe-shared. Mounted before the// routers and outside the per-actor limiter: it is static and unauthenticated.app.use('/shared', ovServe.handler());++ // Terms, Privacy and DMCA in this site's own words (openvibe-shared/legal, profile 'service'; 11-03: the footer's++ // legal links answered 404 here). The facts must match the code: change both together.++ const legal = require('openvibe-shared/legal');++ app.get(legal.PATHS, legal.handler({++ "host": "openvibe.events",++ "name": "OpenVibe.Events",++ "id": "events",++ "service": "events",++ "profile": "service",++ "what": "Publish an event once and every subscriber gets it, signed, retried and replayable: webhooks, a pull API with a cursor, dead letters and realtime streams for the browser.",++ "makes": [++ "your topics, subscriptions and webhook endpoints",++ "the events you publish, kept so subscribers can replay them"++ ],++ "fetches": true++ }));// The account export/deletion consumer (ADR-033, ./account-data.js): the two account topics, signed and loopback// only. No body parser before it: the v2 signature covers the raw body.
@@ -406,7 +406,7 @@ implemented service.
@@ -406,7 +406,7 @@ implemented service.
Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).
Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).
<!-- versions:start -->
<!-- versions:start -->
-- openvibe-contracts: v0.222.0
+- openvibe-contracts: v0.280.0
- openvibe-sdk: v0.82.0
- openvibe-sdk: v0.82.0
-- openvibe-shared: v4.106.2
+- openvibe-shared: v4.107.0
<!-- versions:end -->
<!-- versions:end -->
@@ -7,9 +7,9 @@
@@ -7,9 +7,9 @@
"runtime": "node 22, express, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9",
"runtime": "node 22, express, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9",
"port": 4300,
"port": 4300,
"domain": "openvibe.events",
"domain": "openvibe.events",
- "contracts": "openvibe-contracts v0.222.0",
+ "contracts": "openvibe-contracts v0.280.0",
"sdk": "openvibe-sdk v0.82.0",
"sdk": "openvibe-sdk v0.82.0",
- "shared": "openvibe-shared v4.106.2",
+ "shared": "openvibe-shared v4.107.0",
"capabilities": [
"capabilities": [
"events.event.publish",
"events.event.publish",
"events.subscription.manage",
"events.subscription.manage",
@@ -37,5 +37,5 @@
@@ -37,5 +37,5 @@
"carrier fabric (ADR-042): the pg-v1 poll beside a valkey-v1 push carrier for QUEUE (streams) and TOPIC (SSE fan-out) an optional nats-v1 NATS Core TOPIC carrier (NATS_URL) and an optional nats-js-v1 JetStream STREAM carrier (NATS_URL, NATS_JETSTREAM; deploy/nats) and an optional cloud-v1 SQS-compatible QUEUE carrier (CLOUD_QUEUE_URL; SigV4, no dependency), with a placement planner, per-key pinning, delivery_placements history and a GET /api/v1/placement explain API; EVENTS_CARRIERS[_DISABLED] switches it",
"carrier fabric (ADR-042): the pg-v1 poll beside a valkey-v1 push carrier for QUEUE (streams) and TOPIC (SSE fan-out) an optional nats-v1 NATS Core TOPIC carrier (NATS_URL) and an optional nats-js-v1 JetStream STREAM carrier (NATS_URL, NATS_JETSTREAM; deploy/nats) and an optional cloud-v1 SQS-compatible QUEUE carrier (CLOUD_QUEUE_URL; SigV4, no dependency), with a placement planner, per-key pinning, delivery_placements history and a GET /api/v1/placement explain API; EVENTS_CARRIERS[_DISABLED] switches it",
"at_most_once delivery semantics (a failed attempt is final)"
"at_most_once delivery semantics (a failed attempt is final)"
],
],
- "updated": "2026-11-02"
+ "updated": "2026-11-03"
}
}
@@ -14,7 +14,7 @@
@@ -14,7 +14,7 @@
"iovalkey": "^0.4.0",
"iovalkey": "^0.4.0",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",
- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",
+ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0",
"pg": "^8.23.0"
"pg": "^8.23.0"
},
},
"devDependencies": {
"devDependencies": {
@@ -1147,9 +1147,9 @@
@@ -1147,9 +1147,9 @@
}
}
},
},
"node_modules/openvibe-shared": {
"node_modules/openvibe-shared": {
- "version": "4.106.2",
- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",
- "integrity": "sha512-sKq3TnkO0IaaKdgR5sLfkEwRL9DGYdT6etxTw4/9NKrp2HECvaDrPtOQw/xsrS0vtYwIm5z5BSp2+EVRt5MLQg==",
+ "version": "4.107.0",
+ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0",
+ "integrity": "sha512-S0Um9G8a0jl/yL8Sox4e+xZtLHyMjiv1WcwUIlml6hgMKAPq9aGIzcUA9Cb/d6SppJaxCKIAKmsF5Slbz6UyZg==",
"license": "MIT",
"license": "MIT",
"dependencies": {
"dependencies": {
"jsonwebtoken": "^9.0.0",
"jsonwebtoken": "^9.0.0",
@@ -26,7 +26,7 @@
@@ -26,7 +26,7 @@
"iovalkey": "^0.4.0",
"iovalkey": "^0.4.0",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.280.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.82.0",
- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.106.2",
+ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.107.0",
"pg": "^8.23.0"
"pg": "^8.23.0"
},
},
"engines": {
"engines": {
@@ -47,6 +47,22 @@ function createApp({ config, store, auth, keys, worker, realtime, metrics, dnsLo
@@ -47,6 +47,22 @@ function createApp({ config, store, auth, keys, worker, realtime, metrics, dnsLo
// content-addressed /shared/* URLs, from this repo's pinned openvibe-shared. Mounted before the
// content-addressed /shared/* URLs, from this repo's pinned openvibe-shared. Mounted before the
// routers and outside the per-actor limiter: it is static and unauthenticated.
// routers and outside the per-actor limiter: it is static and unauthenticated.
app.use('/shared', ovServe.handler());
app.use('/shared', ovServe.handler());
+ // Terms, Privacy and DMCA in this site's own words (openvibe-shared/legal, profile 'service'; 11-03: the footer's
+ // legal links answered 404 here). The facts must match the code: change both together.
+ const legal = require('openvibe-shared/legal');
+ app.get(legal.PATHS, legal.handler({
+ "host": "openvibe.events",
+ "name": "OpenVibe.Events",
+ "id": "events",
+ "service": "events",
+ "profile": "service",
+ "what": "Publish an event once and every subscriber gets it, signed, retried and replayable: webhooks, a pull API with a cursor, dead letters and realtime streams for the browser.",
+ "makes": [
+ "your topics, subscriptions and webhook endpoints",
+ "the events you publish, kept so subscribers can replay them"
+ ],
+ "fetches": true
+ }));
// The account export/deletion consumer (ADR-033, ./account-data.js): the two account topics, signed and loopback
// The account export/deletion consumer (ADR-033, ./account-data.js): the two account topics, signed and loopback
// only. No body parser before it: the v2 signature covers the raw body.
// only. No body parser before it: the v2 signature covers the raw body.