openvibers/openvibe.contracts Commits
Add user-owned trust class to fabric contracts and release 0.87.0 (#14)
Changes
@@@ -7,12 +7,15 @@ the notes were in the tag and commit messages (`git tag -n1`).## 0.87.0 — 2026-10-03**User-owned trust class and the estate table** (plan T1 step 3; ADR-034 §5 control plane/data plane; the Fabric ADR,--ADR-046, is still to write).--- `platform.resource-offer@1` 1.1.0 and `platform.workload-requirements@1` 1.1.0 add the trust class `user-owned`-- (a user's own node or machine), ordered `first-party`, `user-owned`, `partner`, `community`, `external`. Additive:-- a producer or consumer that knows only the previous four values is unchanged. New valid fixtures `user-owned-node`-- (an offer with `trust: "user-owned"`) and `user-owned-only` (requirements whose `trust` is `["user-owned"]`); the-- existing first-party `owned-node` fixture stays.++ADR-046, is still to write). A person's own node or machine is now a trust class of its own in Contracts, between++`first-party` and `partner`. The SDK placement planner's runtime already honours an explicit `trust: ["user-owned"]`++requirement, but its default trust list and its TypeScript `Offer` type omit the value, so the SDK needs code and type++changes as well as a pin to this release to route to user-owned nodes by default.++- `platform.resource-offer@1` 1.1.0 and `platform.workload-requirements@1` 1.1.0 add `user-owned` to their `trust`++ enum, ordered `first-party`, `user-owned`, `partner`, `community`, `external`. Additive: a producer or consumer that++ knows only the previous four values is unchanged, and no existing offer or requirement is invalidated. New valid++ fixtures `user-owned-node` (an offer with `trust: "user-owned"`) and `user-owned-only` (requirements whose `trust` is++ `["user-owned"]`); the existing first-party `owned-node` fixture stays.- `platform.usage-sample@1`: `route_epoch` and `trace_id` gain descriptions; their types and shape are unchanged.- `docs/ESTATE.md`: the plan §1.1 estate table as a data-only document (repository, product, authority, runtime,database, domain, SDK/Contracts pin, deployment, public/private, current track). Step 2 replaces it with the table
@@ -7,12 +7,15 @@ the notes were in the tag and commit messages (`git tag -n1`).
@@ -7,12 +7,15 @@ the notes were in the tag and commit messages (`git tag -n1`).
## 0.87.0 — 2026-10-03
## 0.87.0 — 2026-10-03
**User-owned trust class and the estate table** (plan T1 step 3; ADR-034 §5 control plane/data plane; the Fabric ADR,
**User-owned trust class and the estate table** (plan T1 step 3; ADR-034 §5 control plane/data plane; the Fabric ADR,
-ADR-046, is still to write).
-- `platform.resource-offer@1` 1.1.0 and `platform.workload-requirements@1` 1.1.0 add the trust class `user-owned`
- (a user's own node or machine), ordered `first-party`, `user-owned`, `partner`, `community`, `external`. Additive:
- a producer or consumer that knows only the previous four values is unchanged. New valid fixtures `user-owned-node`
- (an offer with `trust: "user-owned"`) and `user-owned-only` (requirements whose `trust` is `["user-owned"]`); the
- existing first-party `owned-node` fixture stays.
+ADR-046, is still to write). A person's own node or machine is now a trust class of its own in Contracts, between
+`first-party` and `partner`. The SDK placement planner's runtime already honours an explicit `trust: ["user-owned"]`
+requirement, but its default trust list and its TypeScript `Offer` type omit the value, so the SDK needs code and type
+changes as well as a pin to this release to route to user-owned nodes by default.
+- `platform.resource-offer@1` 1.1.0 and `platform.workload-requirements@1` 1.1.0 add `user-owned` to their `trust`
+ enum, ordered `first-party`, `user-owned`, `partner`, `community`, `external`. Additive: a producer or consumer that
+ knows only the previous four values is unchanged, and no existing offer or requirement is invalidated. New valid
+ fixtures `user-owned-node` (an offer with `trust: "user-owned"`) and `user-owned-only` (requirements whose `trust` is
+ `["user-owned"]`); the existing first-party `owned-node` fixture stays.
- `platform.usage-sample@1`: `route_epoch` and `trace_id` gain descriptions; their types and shape are unchanged.
- `platform.usage-sample@1`: `route_epoch` and `trace_id` gain descriptions; their types and shape are unchanged.
- `docs/ESTATE.md`: the plan §1.1 estate table as a data-only document (repository, product, authority, runtime,
- `docs/ESTATE.md`: the plan §1.1 estate table as a data-only document (repository, product, authority, runtime,
database, domain, SDK/Contracts pin, deployment, public/private, current track). Step 2 replaces it with the table
database, domain, SDK/Contracts pin, deployment, public/private, current track). Step 2 replaces it with the table