openvibers/openvibe.watch Commits

openvibe-shared v4.107.0 (was v4.106.2) (#191)

OP OpenVibers committed 10 days ago · 6076a642d2 · 5 files, +24 −8

* openvibe-shared v4.107.0 (was v4.106.2)

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

* Terms, Privacy and DMCA in this site's own words (openvibe-shared/legal, profile service)

The footer's legal links answered 404 here (the 11-02 sweep). 4.107.0's profile says what the site does and keeps.

Changes

ddiff --git a/README.md b/README.md
iindex 7bc100f..bd8b4c1 100644
---- a/README.md
++++ b/README.md
@@@ -546,5 +546,5 @@ POSTs have their own per-address limit zones (nginx refuses `limit_req` inside `
<!-- versions:start -->
- openvibe-contracts: v0.222.0
- openvibe-sdk: v0.82.0
--- openvibe-shared: v4.106.2
++- openvibe-shared: v4.107.0
<!-- versions:end -->
ddiff --git a/STATUS.json b/STATUS.json
iindex 3e25bf3..67d335d 100644
---- a/STATUS.json
++++ b/STATUS.json
@@@ -9,7 +9,7 @@
"domain": "openvibe.watch (a public server-rendered site + a loopback-only API; vhost in deploy/nginx; README \"Public site\" and \"Public host\")",
"contracts": "openvibe-contracts v0.222.0 (actor-agent requires v0.143.0)",
"sdk": "openvibe-sdk v0.82.0",
-- "shared": "openvibe-shared v4.106.2",
++ "shared": "openvibe-shared v4.107.0",
"capabilities": [
"watch.watch.read",
"watch.watch.manage",
@@@ -82,5 +82,5 @@
"usage readings (check operations): one platform.usage-sample@1 check-operation reading per completed check run, relayed to OpenVibe.Billing (billing.usage.record) by openvibe-sdk/usage; off by default (WATCH_BILLING_INTERVAL_MS)",
"the public site: Network sign-in (PKCE S256, web_sessions with only the token hash), server-rendered pages complete without JavaScript, the four create templates, watch management, observation history and check runs, how-it-works and the changelog, robots/sitemap/llms.txt"
],
-- "updated": "2026-11-02"
++ "updated": "2026-11-03"
}
ddiff --git a/package-lock.json b/package-lock.json
iindex b25170e..fefc620 100644
---- a/package-lock.json
++++ b/package-lock.json
@@@ -14,7 +14,7 @@
"fast-xml-parser": "^4.5.3",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.222.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": {
@@@ -1088,9 +1088,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",
ddiff --git a/package.json b/package.json
iindex a8f9431..6c9c99d 100644
---- a/package.json
++++ b/package.json
@@@ -26,7 +26,7 @@
"fast-xml-parser": "^4.5.3",
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.222.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": {
ddiff --git a/server/app.js b/server/app.js
iindex 0d6f273..c1dd59c 100644
---- a/server/app.js
++++ b/server/app.js
@@@ -114,6 +114,22 @@ function createApp({ config, db, registry, check, observations, scheduler, auth,
// ── Static assets (content-hashed ?v= → immutable) ──
app.use('/shared', require('openvibe-shared/serve').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.watch",
++ "name": "OpenVibe.Watch",
++ "id": "watch",
++ "service": "watch",
++ "profile": "service",
++ "what": "Watch a page, a feed or a JSON API and get told when the value you care about changes or crosses the line you set, checked politely on your cadence.",
++ "makes": [
++ "the watches you set",
++ "what each check found, and the alerts it sent"
++ ],
++ "fetches": true
++ }));
app.use(express.static(PUBLIC_DIR, {
index: false, redirect: false,
setHeaders(res, filePath) {