BenchRatingChangedPayload bench.rating.changed@1
Generated at from
openvibe-contracts v0.419.0 and
openvibe-sdk v0.161.0.
- Version
- 1.0.0
- Owner
- bench
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/events/payloads/bench.rating.changed.v1.json
bench.rating.changed v1 (OpenVibe.Bench): a rating moved on a benchmark board. Envelope: source bench, subject { type: service, id: bench }, visibility first-party.
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
kind_id | string | yes | ||
category | string | yes | ||
subject | string | yes | ||
elo | number | yes | ||
games | number | yes | ||
wins | number | |||
losses | number | |||
ties | number | |||
win_rate | number | yes | ||
ci_lower | number | |||
ci_upper | number | |||
median_cost_usd | number | null | |||
median_ms | number | null | |||
provisional | boolean | |||
at | string | yes |
|
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: changed
{
"kind_id": "knd_01J8Z3Q4R5S6T7V8W9X0Y1Z2A3",
"category": "model",
"subject": "gpt-4o",
"elo": 1502,
"games": 11,
"win_rate": 0.63,
"at": "2026-10-28T18:05:00.000Z"
}Rejected: missing-elo
{
"kind_id": "knd_01J8Z3Q4R5S6T7V8W9X0Y1Z2A3",
"category": "model",
"subject": "gpt-4o",
"games": 11,
"win_rate": 0.63,
"at": "2026-10-28T18:05:00.000Z"
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('bench.rating.changed@1', value); // { valid, errors: [{ path, message }] }