grid_score
Carry forecasts forward over a frozen time grid and average within one question.
Contract
Updates and grid times must increase strictly. A forecast must exist at the first grid point. Extra posts between grid points do not gain additional weight; the caller chooses a valid event-window grid.
Fields
| Field | Type | Required |
|---|---|---|
grid | array of integer | Yes |
op | "grid_score" | Yes |
outcome | boolean | Yes |
updates | array of Snapshot | Yes |
This operation needs no existing question or forecast. Use --memory for a calculation-only session.
Request
Send this object on one line. It is expanded below for readability.
{
"version": 1,
"id": "example",
"command": {
"op": "grid_score",
"updates": [
{
"at": 0,
"probability": 0.2
},
{
"at": 5,
"probability": 0.7
}
],
"grid": [
0,
10,
20
],
"outcome": true
}
}
Response
This response is generated by executing the example against the current binary. Commit timestamps, when present, are shown as <runtime UTC seconds>; the actual protocol returns integer UTC seconds.
{
"version": 1,
"id": "example",
"result": {
"binary_brier": 0.27333333333333343,
"grid_points": 3
}
}
Verification
The documentation gate executes the setup and request, then checks the following result fields against independently specified expectations:
JSON pointer within result | Expected |
|---|---|
/binary_brier | 0.2733333333333333 |
/grid_points | 3 |
Float comparisons use a 1e-12 tolerance. Request schema validation and cross-record validation still apply. See errors and recovery for failure handling.