openvibers/openvibe.zone Commits

README/STATUS: s3.openvibe.media and api.openvibe.zone have their DNS records (2026-10-21); Zone is deployed (live since 10-14), and STATUS names its own plan (ADR-031), not Games' (#26)

OP OpenVibers committed 23 days ago · ee191283c1 · 3 files, +7 −7

Changes

ddiff --git a/README.md b/README.md
iindex d104b12..c1d9a84 100644
---- a/README.md
++++ b/README.md
@@@ -6,7 +6,8 @@ Private S3-compatible storage zones for OpenVibe projects, at https://openvibe.z
OpenVibe.Contracts, with its amendments of 2026-10-02 and 2026-10-14.
A **zone** is a named object zone of one project environment, sandbox or production. Any S3 tool reaches it as a
--bucket at `https://s3.openvibe.media`, path style (`https://s3.openvibe.network` until that name's DNS record exists).
++bucket at `https://s3.openvibe.media`, path style. That name is DNS-only, so an object may be larger than the 100 MB a
++request Cloudflare's proxy carries; `https://s3.openvibe.network` is the same surface behind Cloudflare.
## Owns
@@@ -54,7 +55,7 @@ Zone never lists keys, never holds bytes and never counts.
## Capabilities and API
--Base `https://openvibe.zone/api/v1`. A caller is either:
++Base `https://openvibe.zone/api/v1` (`https://api.openvibe.zone/api/v1` is the same API). A caller is either:
- a developer app of the project, with the route's capability for audience `openvibe.zone` (a sandbox app reaches only the sandbox), or
- a member of the project: any role reads, and admins and owners change.
ddiff --git a/STATUS.json b/STATUS.json
iindex 8450597..c07d3f7 100644
---- a/STATUS.json
++++ b/STATUS.json
@@@ -3,7 +3,7 @@
"stage": "alpha",
"code": true,
"wave": "T8",
-- "plan": "Plan track T8 (Games), OpenVibe.Games ADR-0007 decision 10 and M5: the platform's game services as their own service",
++ "plan": "ADR-031 in OpenVibe.Contracts and its amendments of 2026-10-02 and 2026-10-14 (OpenVibe.Zone replaces the planned OpenVibe.Data); live since 2026-10-14",
"runtime": "node 22, express 4, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9",
"port": 5050,
"domain": "openvibe.zone",
@@@ -26,12 +26,11 @@
],
"notYet": [
"Per-zone usage series (Media's hourly rollups with the zone's resource name)",
-- "api.openvibe.zone and s3.openvibe.media DNS records (owner)",
"CopyObject and UploadPartCopy on Media's S3 surface"
],
"capabilitiesRegistered": true,
"serviceManifestRegistered": true,
-- "deployed": false,
++ "deployed": true,
"placeholderInSites": false,
"features": [
"Default zone per project environment, created on first use",
@@@ -42,5 +41,5 @@
"Resource index and control (delete) for OpenVibe.Services"
],
"deployment": "openvibe-ovh: unit openvibe-zone.service on 127.0.0.1:5050 (git checkout /opt/openvibe.zone, env /etc/openvibe/zone.env, database ov_zone)",
-- "updated": "2026-10-20"
++ "updated": "2026-10-21"
}
ddiff --git a/deploy/nginx/openvibe.zone.conf b/deploy/nginx/openvibe.zone.conf
iindex 9ff7a6e..e909ed1 100644
---- a/deploy/nginx/openvibe.zone.conf
++++ b/deploy/nginx/openvibe.zone.conf
@@@ -5,7 +5,7 @@
## nginx after changing it. The Node app (port 5050, systemd unit openvibe-zone) renders every page and serves
## the API; nginx terminates TLS with openvibe.zone's own certificate (openvibe.zone and *.openvibe.zone: a repo vhost
## uses the certificate that really covers its name, or Cloudflare answers 526), rate-limits sign-in and the API, keeps
--## /internal/ off the internet, and compresses text. api.openvibe.zone is the same site once its DNS record exists;
++## /internal/ off the internet, and compresses text. api.openvibe.zone (DNS since 2026-10-21) is the same site;
## www.openvibe.zone redirects to the apex. The bytes of a zone never pass here: they go to s3.openvibe.media.
##
## No proxy_cache: the app decides cacheability per response (public for the pages rendered for anonymous