openvibers/openvibe.contracts Commits

Merge main into agent/contracts-plan-t11-lane-d-follow-up-220754-muq3538u (auto-finish)

OP OpenVibers committed 1 Oct 2026 · c1b9c15a08 · 10 files, +222 −3

# Conflicts:
#	CHANGELOG.md

Changes

ddiff --cc CHANGELOG.md
iindex 22437262,5b999709..e73e5beb
---- a/CHANGELOG.md
++++ b/CHANGELOG.md
@@@@ -10,22 -10,13 +10,29 @@@ Add nine public `platform.*@1` schemas
service instances; runtime, storage, delivery, agent, and harness offers. Each has valid and
invalid fixtures. ADR-034 is proposed. Generated types and bundle include all nine.
++ `platform.usage-sample@1` can carry all 15 plan T5 usage fields in one reading (lane F). It gains four optional
++ fields: `free_allowance_used` (non-negative number in the reading's own `unit`, at most `quantity`),
++ `vibes_charged` (non-negative integer count of vibes-bits, Billing's ledger minor unit; absent means not rated),
++ and `route_epoch` and `trace_id` (same types as in `platform.telemetry-sample@1`). Readings without these fields
++ still validate. New fixtures: `all-fifteen-fields` and `minimal` (valid); a fractional or negative `vibes_charged` and
++ a negative `free_allowance_used` (invalid). Additive.
++
+## Unreleased — the product catalog (plan T11 lane D)
+
+The OpenVibe.Sites catalog (`sites.json`, 33 domains) moves into Contracts so Sites can be deleted. Additive.
+- `registry.service-manifest` 1.1.0: `site` gains the optional `tld`, `accent`, `description`, `pillars`, `faq`,
+ `keywords`, `vision`, `highlight`, `launch` and `relationships` (`service`, `plannedRepo`, `noRepo`, `linksLead`,
+ `links`, `meanwhile`, `statusApi`), defined once in `registry.product@1`'s `$defs`. Filled from the catalog for the
+ ten services whose site presents their catalog domain: news, reviews, tips, vip, trade, host, deals, coupons,
+ openre (openre.stream) and space.
+- `registry.product@1` (new) and `manifests/products/<domain>.json` for the other 23 catalog domains, with no
+ invented service manifests: the Network sub-domains (auth, api, admin, themes), the media-hub brands (video, pics,
+ download), ai.openvibe.network (moved) and ai.openvibe.services, realtime (closed), status, openvibe.events and the
+ planned products (food, quest, rent, homes, services, run, website, help, bot, watch, actor).
+ `relationships.service` names the manifest that serves a domain when one does.
+- `contracts.products` (`manifests`, `get`, `siteDomain`, `catalog()`); `test/product-catalog.test.js` asserts each
+ of the 33 snapshotted Sites domains has exactly one home and every home validates.
+
## 0.83.0 — 2026-09-29
**Host site configuration** (plan T12 J3): the capability `host.site.config` (active, first-party, `host:write`, project