rtr-bench 0.1.5 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +166 -58
- package/data/splits/v1.json +184 -0
- package/dist/cli.js +1441 -56
- package/docs/development-pilot-2026-11-14.json +262 -0
- package/docs/distribution.md +102 -0
- package/docs/final-run-plan-8000.json +900 -0
- package/docs/final-run-plan-8000.md +73 -0
- package/docs/learn-room.md +188 -0
- package/docs/npm-release.md +37 -0
- package/docs/preflight-audit.md +81 -0
- package/docs/preflight-providers-2026-11-14.json +497 -0
- package/package.json +15 -3
- package/results/leaderboard-scatter.png +0 -0
- package/tests/fixtures/distribution-pilot.json +7 -0
- package/tests/fixtures/learn-room-four-strategies.json +58 -0
- package/tests/fixtures/learn-room-pilot.json +16 -0
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
{
|
|
2
|
+
"createdAt": "2026-11-14T22:47:51.731Z",
|
|
3
|
+
"purpose": "Development compatibility pilot; not a model ranking or final evaluation",
|
|
4
|
+
"protocol": {
|
|
5
|
+
"partition": "development",
|
|
6
|
+
"targets": [
|
|
7
|
+
100,
|
|
8
|
+
101,
|
|
9
|
+
102
|
|
10
|
+
],
|
|
11
|
+
"strategy": "all",
|
|
12
|
+
"budget": 3,
|
|
13
|
+
"seed": 7,
|
|
14
|
+
"maxModelCalls": 8,
|
|
15
|
+
"maxActions": 8,
|
|
16
|
+
"maxTokens": 4000,
|
|
17
|
+
"agentPolicy": "transfer-check-v1"
|
|
18
|
+
},
|
|
19
|
+
"models": [
|
|
20
|
+
{
|
|
21
|
+
"model": "z-ai/glm-5.3",
|
|
22
|
+
"provider": "wafer/us",
|
|
23
|
+
"quantization": "fp4",
|
|
24
|
+
"catalogStatus": 0,
|
|
25
|
+
"source": "https://openrouter.ai/api/v1/models/z-ai/glm-5.3/endpoints",
|
|
26
|
+
"estimateUsd": 0.024543114233333333,
|
|
27
|
+
"reservationUsd": 0.07889546239999999,
|
|
28
|
+
"capUsd": 0.2,
|
|
29
|
+
"spending": {
|
|
30
|
+
"version": "reserved-context-v1",
|
|
31
|
+
"limitUsd": 0.2,
|
|
32
|
+
"providerTag": "wafer/us",
|
|
33
|
+
"contextTokens": 1048576,
|
|
34
|
+
"inputUsdPerToken": 6.99e-08,
|
|
35
|
+
"outputUsdPerToken": 1.4e-06
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"model": "minimax/minimax-m3.1-flash",
|
|
40
|
+
"provider": "inferact-vllm/nvfp4",
|
|
41
|
+
"quantization": "nvfp4",
|
|
42
|
+
"catalogStatus": 0,
|
|
43
|
+
"source": "https://openrouter.ai/api/v1/models/minimax/minimax-m3.1-flash/endpoints",
|
|
44
|
+
"estimateUsd": 0.006733225,
|
|
45
|
+
"reservationUsd": 0.0798432,
|
|
46
|
+
"capUsd": 0.15,
|
|
47
|
+
"spending": {
|
|
48
|
+
"version": "reserved-context-v1",
|
|
49
|
+
"limitUsd": 0.15,
|
|
50
|
+
"providerTag": "inferact-vllm/nvfp4",
|
|
51
|
+
"contextTokens": 1048576,
|
|
52
|
+
"inputUsdPerToken": 7.5e-08,
|
|
53
|
+
"outputUsdPerToken": 3e-07
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"model": "xiaomi/mimo-v2.6-flash",
|
|
58
|
+
"provider": "xiaomi/fp8",
|
|
59
|
+
"quantization": "fp8",
|
|
60
|
+
"catalogStatus": 0,
|
|
61
|
+
"source": "https://openrouter.ai/api/v1/models/xiaomi/mimo-v2.6-flash/endpoints",
|
|
62
|
+
"estimateUsd": 0.008003380000000001,
|
|
63
|
+
"reservationUsd": 0.14792064000000002,
|
|
64
|
+
"capUsd": 0.2,
|
|
65
|
+
"spending": {
|
|
66
|
+
"version": "reserved-context-v1",
|
|
67
|
+
"limitUsd": 0.2,
|
|
68
|
+
"providerTag": "xiaomi/fp8",
|
|
69
|
+
"contextTokens": 1048576,
|
|
70
|
+
"inputUsdPerToken": 1.4e-07,
|
|
71
|
+
"outputUsdPerToken": 2.8e-07
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"model": "deepseek/deepseek-v4.1-flash-1017",
|
|
76
|
+
"provider": "sail-research/fp4/us",
|
|
77
|
+
"quantization": "fp4",
|
|
78
|
+
"catalogStatus": 0,
|
|
79
|
+
"source": "https://openrouter.ai/api/v1/models/deepseek/deepseek-v4.1-flash-1017/endpoints",
|
|
80
|
+
"estimateUsd": 0.0035467375200000004,
|
|
81
|
+
"reservationUsd": 0.07668444672000001,
|
|
82
|
+
"capUsd": 0.1,
|
|
83
|
+
"spending": {
|
|
84
|
+
"version": "reserved-context-v1",
|
|
85
|
+
"limitUsd": 0.1,
|
|
86
|
+
"providerTag": "sail-research/fp4/us",
|
|
87
|
+
"contextTokens": 1048576,
|
|
88
|
+
"inputUsdPerToken": 7.272e-08,
|
|
89
|
+
"outputUsdPerToken": 1.08e-07
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"model": "tencent/hy3",
|
|
94
|
+
"provider": "gmicloud/bf16",
|
|
95
|
+
"quantization": "bf16",
|
|
96
|
+
"catalogStatus": 0,
|
|
97
|
+
"source": "https://openrouter.ai/api/v1/models/tencent/hy3/endpoints",
|
|
98
|
+
"estimateUsd": 0.01289478,
|
|
99
|
+
"reservationUsd": 0.039020160000000005,
|
|
100
|
+
"capUsd": 0.1,
|
|
101
|
+
"spending": {
|
|
102
|
+
"version": "reserved-context-v1",
|
|
103
|
+
"limitUsd": 0.1,
|
|
104
|
+
"providerTag": "gmicloud/bf16",
|
|
105
|
+
"contextTokens": 262144,
|
|
106
|
+
"inputUsdPerToken": 1.4e-07,
|
|
107
|
+
"outputUsdPerToken": 5.8e-07
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"model": "google/gemini-3.8-flash",
|
|
112
|
+
"provider": "google-ai-studio",
|
|
113
|
+
"quantization": "unknown",
|
|
114
|
+
"catalogStatus": 0,
|
|
115
|
+
"source": "https://openrouter.ai/api/v1/models/google/gemini-3.8-flash/endpoints",
|
|
116
|
+
"estimateUsd": 0.07956075,
|
|
117
|
+
"reservationUsd": 0.801432,
|
|
118
|
+
"capUsd": 1.05,
|
|
119
|
+
"spending": {
|
|
120
|
+
"version": "reserved-text-v2",
|
|
121
|
+
"limitUsd": 1.05,
|
|
122
|
+
"providerTag": "google-ai-studio",
|
|
123
|
+
"contextTokens": 1048576,
|
|
124
|
+
"inputUsdPerToken": 7.5e-07,
|
|
125
|
+
"outputUsdPerToken": 3.75e-06,
|
|
126
|
+
"model": "google/gemini-3.8-flash",
|
|
127
|
+
"temperatureSupported": true,
|
|
128
|
+
"maxCompletionTokens": 65536,
|
|
129
|
+
"pricing": {
|
|
130
|
+
"audio": "0.00000075",
|
|
131
|
+
"completion": "0.00000375",
|
|
132
|
+
"discount": 0.5,
|
|
133
|
+
"image": "0.00000075",
|
|
134
|
+
"input_audio_cache": "0.000000075",
|
|
135
|
+
"input_cache_read": "0.000000075",
|
|
136
|
+
"input_cache_write": "0.0000000416666666666667",
|
|
137
|
+
"internal_reasoning": "0.00000375",
|
|
138
|
+
"prompt": "0.00000075",
|
|
139
|
+
"web_search": "0.014"
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"model": "openai/gpt-6-luna",
|
|
145
|
+
"provider": "openai",
|
|
146
|
+
"quantization": "unknown",
|
|
147
|
+
"catalogStatus": 0,
|
|
148
|
+
"source": "https://openrouter.ai/api/v1/models/openai/gpt-6-luna/endpoints",
|
|
149
|
+
"estimateUsd": 0.010608099999999999,
|
|
150
|
+
"reservationUsd": 0.13275,
|
|
151
|
+
"capUsd": 0.2,
|
|
152
|
+
"spending": {
|
|
153
|
+
"version": "reserved-text-v2",
|
|
154
|
+
"limitUsd": 0.2,
|
|
155
|
+
"providerTag": "openai/flex",
|
|
156
|
+
"contextTokens": 1050000,
|
|
157
|
+
"inputUsdPerToken": 1.25e-07,
|
|
158
|
+
"outputUsdPerToken": 3.75e-07,
|
|
159
|
+
"model": "openai/gpt-6-luna",
|
|
160
|
+
"temperatureSupported": false,
|
|
161
|
+
"maxCompletionTokens": 128000,
|
|
162
|
+
"pricing": {
|
|
163
|
+
"completion": "0.00000025",
|
|
164
|
+
"discount": 0,
|
|
165
|
+
"input_cache_read": "0.000000005",
|
|
166
|
+
"input_cache_write": "0.0000000625",
|
|
167
|
+
"overrides": [
|
|
168
|
+
{
|
|
169
|
+
"completion": "0.000000375",
|
|
170
|
+
"input_cache_read": "0.00000001",
|
|
171
|
+
"input_cache_write": "0.000000125",
|
|
172
|
+
"min_prompt_tokens": 272000,
|
|
173
|
+
"prompt": "0.0000001"
|
|
174
|
+
}
|
|
175
|
+
],
|
|
176
|
+
"prompt": "0.00000005",
|
|
177
|
+
"web_search": "0.01"
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
"model": "anthropic/claude-haiku-5.5",
|
|
183
|
+
"provider": "anthropic",
|
|
184
|
+
"quantization": "unknown",
|
|
185
|
+
"catalogStatus": 0,
|
|
186
|
+
"source": "https://openrouter.ai/api/v1/models/anthropic/claude-haiku-5.5/endpoints",
|
|
187
|
+
"estimateUsd": 0.010608099999999999,
|
|
188
|
+
"reservationUsd": 1.01,
|
|
189
|
+
"capUsd": 1.05,
|
|
190
|
+
"spending": {
|
|
191
|
+
"version": "reserved-text-v2",
|
|
192
|
+
"limitUsd": 1.05,
|
|
193
|
+
"providerTag": "anthropic",
|
|
194
|
+
"contextTokens": 1000000,
|
|
195
|
+
"inputUsdPerToken": 1e-06,
|
|
196
|
+
"outputUsdPerToken": 2.5e-06,
|
|
197
|
+
"model": "anthropic/claude-haiku-5.5",
|
|
198
|
+
"temperatureSupported": false,
|
|
199
|
+
"maxCompletionTokens": 128000,
|
|
200
|
+
"pricing": {
|
|
201
|
+
"completion": "0.0000005",
|
|
202
|
+
"discount": 0,
|
|
203
|
+
"input_cache_read": "0.00000001",
|
|
204
|
+
"input_cache_write": "0.000000125",
|
|
205
|
+
"input_cache_write_1h": "0.0000002",
|
|
206
|
+
"overrides": [
|
|
207
|
+
{
|
|
208
|
+
"completion": "0.0000025",
|
|
209
|
+
"input_cache_read": "0.00000005",
|
|
210
|
+
"input_cache_write": "0.000000625",
|
|
211
|
+
"input_cache_write_1h": "0.000001",
|
|
212
|
+
"min_prompt_tokens": 100000,
|
|
213
|
+
"prompt": "0.0000005"
|
|
214
|
+
}
|
|
215
|
+
],
|
|
216
|
+
"prompt": "0.0000001",
|
|
217
|
+
"web_search": "0.01"
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"model": "thinkingmachines/inkling-small",
|
|
223
|
+
"provider": "deepinfra/fp4",
|
|
224
|
+
"quantization": "fp4",
|
|
225
|
+
"catalogStatus": 0,
|
|
226
|
+
"source": "https://openrouter.ai/api/v1/models/thinkingmachines/inkling-small/endpoints",
|
|
227
|
+
"estimateUsd": 0.03061655,
|
|
228
|
+
"reservationUsd": 0.2407296,
|
|
229
|
+
"capUsd": 0.35,
|
|
230
|
+
"spending": {
|
|
231
|
+
"version": "reserved-context-v1",
|
|
232
|
+
"limitUsd": 0.35,
|
|
233
|
+
"providerTag": "deepinfra/fp4",
|
|
234
|
+
"contextTokens": 524288,
|
|
235
|
+
"inputUsdPerToken": 4.5e-07,
|
|
236
|
+
"outputUsdPerToken": 1.2e-06
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"model": "openai/gpt-oss-120b",
|
|
241
|
+
"provider": "primeintellect/fp4",
|
|
242
|
+
"quantization": "fp4",
|
|
243
|
+
"catalogStatus": 0,
|
|
244
|
+
"source": "https://openrouter.ai/api/v1/models/openai/gpt-oss-120b/endpoints",
|
|
245
|
+
"estimateUsd": 0.0021967023333333336,
|
|
246
|
+
"reservationUsd": 0.005165664,
|
|
247
|
+
"capUsd": 0.05,
|
|
248
|
+
"spending": {
|
|
249
|
+
"version": "reserved-context-v1",
|
|
250
|
+
"limitUsd": 0.05,
|
|
251
|
+
"providerTag": "primeintellect/fp4",
|
|
252
|
+
"contextTokens": 131072,
|
|
253
|
+
"inputUsdPerToken": 3.7e-08,
|
|
254
|
+
"outputUsdPerToken": 7.9e-08
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
],
|
|
258
|
+
"estimateUsd": 0.18931143908666667,
|
|
259
|
+
"capUsd": 3.45,
|
|
260
|
+
"output": "results/development-preflight-2026-11-14",
|
|
261
|
+
"execution": "Sequential; identical commands resume saved records. Stop each model at its cap; never automatically raise caps, delete attempts, or launch final evaluation."
|
|
262
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# Distribution prediction protocol v1
|
|
2
|
+
|
|
3
|
+
For the public Predict track, use `node src/cli.ts predict <model>`; see the [Quickstart](../README.md#quickstart). This uses the shared Learn runner’s no-example condition with an 8,000-token default in version 0.2.1 and support for `--max-usd`. `read-the-room <model>` runs Predict and Learn together. The legacy `distribution` command and its fixture format remain available unchanged.
|
|
4
|
+
|
|
5
|
+
This is a separate RTR-bench track. The original winning-quadrant benchmark retains its prompts, scoring, and result paths. [Learn the Room](learn-room.md) reuses this protocol's probability validation and scorer for its interactive environment and initial baseline comparisons.
|
|
6
|
+
|
|
7
|
+
## Dataset and frozen split
|
|
8
|
+
|
|
9
|
+
`data/splits/v1.json` pins the exact `data/windows.json` bytes with SHA-256. The loader checks counts, complete coverage, disjoint groups, and chronology before a run or report.
|
|
10
|
+
|
|
11
|
+
| Partition | Days | Windows | Purpose |
|
|
12
|
+
|---|---|---:|---|
|
|
13
|
+
| Reference | 1–99, included dataset windows only | 90 | Estimate the constant baseline; future evidence pool |
|
|
14
|
+
| Development | 100–129 | 30 | Prompt and implementation development |
|
|
15
|
+
| Evaluation | 130–174 | 45 | Final comparison after settings are fixed |
|
|
16
|
+
|
|
17
|
+
The cutoffs use chronology, not crowd labels. Both Elon Musk windows (days 30 and 99) remain in reference. Prompt grouping trims, lowercases, and collapses whitespace, with an explicit alias map for reviewed same-entity variants. The current alias map is empty after reviewing the prompt list. Related concepts are not collapsed merely because they are thematically similar.
|
|
18
|
+
|
|
19
|
+
Every reference window predates every target. Development outcomes never enter the reference baseline or later evidence pool. This public dataset has already been used for the original benchmark: these partitions control evidence access and tuning in the new experiment, but do not establish unseen training data. The chronological split may also expose changes in the audience over time.
|
|
20
|
+
|
|
21
|
+
No separate training partition or RL experiment is defined in v1. A limited pilot selects the first N windows of its declared partition and records those IDs before execution.
|
|
22
|
+
|
|
23
|
+
## Output and scoring
|
|
24
|
+
|
|
25
|
+
Return a JSON object containing exactly four numeric probabilities:
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{
|
|
29
|
+
"performed+uniting": 0.20,
|
|
30
|
+
"honest+uniting": 0.30,
|
|
31
|
+
"performed+dividing": 0.40,
|
|
32
|
+
"honest+dividing": 0.10
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Values must be finite numbers in [0, 1]. No string coercion, prose, code fences, extra keys, or percentage values are accepted. A sum within 0.001 of one, inclusive, is normalized to one; the original sum and raw response are retained. Larger deviations fail validation.
|
|
37
|
+
|
|
38
|
+
For each target, derive the observed shares from integer quadrant counts divided by submissions. Sum the four squared differences between predicted and observed shares. Average errors equally across the declared targets, then report `100 * (1 - mean_error / 2)`. A score of 100 is an exact match; 0 is the global worst case. This is not percentage accuracy, and 50 is not a chance baseline.
|
|
39
|
+
|
|
40
|
+
Final invalid, missing, or API-failed predictions receive penalty 2 (zero points) and stay in the denominator. The report distinguishes an assigned failure penalty from a measured distribution error. Pending targets make a run incomplete; an incomplete run has no aggregate headline score. Reports separately show valid-response error, invalid-output rate, overall failure rate, and valid/invalid/missing/pending counts.
|
|
41
|
+
|
|
42
|
+
Secondary winning-quadrant accuracy accepts every crowd co-winner. When a prediction has K exactly tied maxima, its credit is the fraction of those K quadrants that are crowd co-winners. This is the expected accuracy of a uniform tie-break, without introducing randomness. A uniform prediction against one crowd winner earns 0.25 credit.
|
|
43
|
+
|
|
44
|
+
Always report both baselines on the exact same targets:
|
|
45
|
+
|
|
46
|
+
- Uniform: 0.25 per quadrant.
|
|
47
|
+
- Constant reference: the arithmetic mean of the 90 reference-window distributions. Each reference window has equal weight, irrespective of submission count.
|
|
48
|
+
|
|
49
|
+
Report gains over baselines in score points. Confidence intervals use 2,000 bootstrap samples of entity groups with seed 7. Paired gains resample matching target differences together. These intervals describe variation across targets, not uncertainty about independent people in this self-selected audience. Five-target pilots are setup checks, not model rankings.
|
|
50
|
+
|
|
51
|
+
## Calls, failures, and reproducibility
|
|
52
|
+
|
|
53
|
+
The v1 prompt is frozen in `src/tracks/distribution/prompt.ts`. Only the target word, audience description, quadrant definitions, and output instructions enter the API messages. The runner sends neither reference labels nor target labels for direct distribution prediction.
|
|
54
|
+
|
|
55
|
+
API runs use temperature 0, a 2,000-token output cap, and one prediction per window. There are no option rotations or automatic prompt-repair attempts. A requested provider is pinned with fallback disabled. Unpinned runs record actual serving providers. Unsupported settings fail explicitly rather than silently changing the request.
|
|
56
|
+
|
|
57
|
+
Each target has at most three attempts. Only transport failures and HTTP 429/500/502/503/504 are retried, with 1- and 2-second backoffs and a 60-second timeout per attempt. Successful API responses with malformed or absent model content are terminal failures. An interrupted attempt consumes an attempt slot, since its API outcome and charge may be unknown.
|
|
58
|
+
|
|
59
|
+
Each request and every attempt are saved, including raw responses, errors, provider, timestamps, and available usage. Reports sum known cost and tokens over all attempts and count attempts with unknown cost or tokens separately. Fixture runs make zero API calls and are visibly labeled synthetic.
|
|
60
|
+
|
|
61
|
+
A deterministic run ID hashes dataset and split fingerprints, target/reference IDs, model and requested provider, prompt and scorer versions, generation/retry settings, and fixture contents when applicable. Identical commands resume terminal records, including failures, without rerolling them. Changing a target set or configuration produces a separate run. Increment protocol/runner versions when changing behavior.
|
|
62
|
+
|
|
63
|
+
Writes use a temporary file and rename. An exclusive `run.lock` prevents simultaneous writers. After an unclean process exit, first confirm the recorded PID is no longer running, then remove that run's stale lock before resuming. Saved API responses can be recovered without another call. These controls reproduce configuration and scoring, not necessarily identical outputs from nondeterministic model services.
|
|
64
|
+
|
|
65
|
+
## Commands
|
|
66
|
+
|
|
67
|
+
Source commands require Node.js 22.18 or newer. The bundled CLI can also run these commands after `npm run build`.
|
|
68
|
+
|
|
69
|
+
Run the five-target, zero-cost fixture pilot:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
node src/cli.ts distribution --fixture tests/fixtures/distribution-pilot.json --limit 5
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
The fixture intentionally includes three valid outputs, one invalid sum, and one empty response. It is a pipeline demonstration, not a model result.
|
|
76
|
+
|
|
77
|
+
For a future paid API pilot, after selecting a model/provider:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
node src/cli.ts distribution <model-id> --split development --limit 5 --provider <provider-name>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Omit `--limit` to cover the full partition. Use `--split evaluation` only after development decisions are frozen. `--output <directory>` changes the output root, which defaults to `results/distribution/`. Each run directory contains `manifest.json`, per-target `records/`, and JSON/Markdown/HTML reports. The HTML report supports prompt filtering and inspection of every request and attempt.
|
|
84
|
+
|
|
85
|
+
Regenerate a report without network access:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
node src/cli.ts distribution-report <run-directory>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Verify locally without API spending:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npm test
|
|
95
|
+
npm run build
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Evaluation status
|
|
99
|
+
|
|
100
|
+
Both tracks have completed development validation and a [first final evaluation](../results/learn-room/z-ai-glm-5-3-flash-e9d0327447ef1856/README.md) on all 45 frozen evaluation targets. GLM 5.3 Flash through Relace scored **87.93/100** for direct distribution prediction, using the identical no-example condition in Learn the Room without duplicate calls. All 45 direct predictions were valid. Uniform and constant reference-distribution baselines scored 85.39 and 85.56, respectively; these scores are not percentage accuracy.
|
|
101
|
+
|
|
102
|
+
The same run evaluated all three evidence conditions, for 180 valid predictions total. The transfer-check agent scored 85.57; see the linked report for paired comparisons, uncertainty, usage, and the frozen protocol. The original RTR score remains separate. Future models should use the same declared settings; any policy development informed by these final outcomes must disclose that this holdout has been used.
|