@openpond/evals 0.5.0 → 0.7.0

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.
Files changed (118) hide show
  1. package/CONTRACT.md +13 -1
  2. package/LEARNING.md +106 -0
  3. package/README.md +28 -2
  4. package/conformance/telemetry/v1/invalid-batch.json +17 -0
  5. package/conformance/telemetry/v1/valid-batch.json +58 -0
  6. package/dist/graders.js +26 -5
  7. package/dist/index.js +8 -0
  8. package/dist/javascript-verifier-contract.js +7 -0
  9. package/dist/javascript-verifier-node.js +56 -0
  10. package/dist/javascript-verifier-worker-source.js +1 -0
  11. package/dist/javascript-verifier-worker.js +6 -0
  12. package/dist/javascript-verifier.js +64 -0
  13. package/dist/learned-preference.js +334 -0
  14. package/dist/learning/admission.js +209 -0
  15. package/dist/learning/assets.js +37 -0
  16. package/dist/learning/contracts.js +267 -0
  17. package/dist/learning/errors.js +12 -0
  18. package/dist/learning/grade-worker.js +99 -0
  19. package/dist/learning/index.js +9 -0
  20. package/dist/learning/operations.js +33 -0
  21. package/dist/learning/repository.js +48 -0
  22. package/dist/learning/service.js +367 -0
  23. package/dist/learning/transport.js +25 -0
  24. package/dist/preferences.js +77 -11
  25. package/dist/rewards.js +230 -0
  26. package/dist/task-schema.js +142 -0
  27. package/dist/tasksets.js +3 -0
  28. package/dist/telemetry/index.js +4 -0
  29. package/dist/telemetry-analysis.js +183 -0
  30. package/dist/telemetry-bundle.js +60 -0
  31. package/dist/telemetry-catalog.js +50 -0
  32. package/dist/telemetry.js +112 -0
  33. package/dist/types/builtin-benchmarks/harness-refiner.d.ts +7 -0
  34. package/dist/types/builtin-benchmarks/harness-refiner.d.ts.map +1 -1
  35. package/dist/types/conformance.d.ts +14 -0
  36. package/dist/types/conformance.d.ts.map +1 -1
  37. package/dist/types/execution-contracts.d.ts +14 -0
  38. package/dist/types/execution-contracts.d.ts.map +1 -1
  39. package/dist/types/graders.d.ts.map +1 -1
  40. package/dist/types/index.d.ts +8 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/types/javascript-verifier-contract.d.ts +9 -0
  43. package/dist/types/javascript-verifier-contract.d.ts.map +1 -0
  44. package/dist/types/javascript-verifier-node.d.ts +5 -0
  45. package/dist/types/javascript-verifier-node.d.ts.map +1 -0
  46. package/dist/types/javascript-verifier-worker-source.d.ts +2 -0
  47. package/dist/types/javascript-verifier-worker.d.ts +2 -0
  48. package/dist/types/javascript-verifier-worker.d.ts.map +1 -0
  49. package/dist/types/javascript-verifier.d.ts +15 -0
  50. package/dist/types/javascript-verifier.d.ts.map +1 -0
  51. package/dist/types/learned-preference.d.ts +282 -0
  52. package/dist/types/learned-preference.d.ts.map +1 -0
  53. package/dist/types/learning/admission.d.ts +335 -0
  54. package/dist/types/learning/admission.d.ts.map +1 -0
  55. package/dist/types/learning/assets.d.ts +49 -0
  56. package/dist/types/learning/assets.d.ts.map +1 -0
  57. package/dist/types/learning/contracts.d.ts +2149 -0
  58. package/dist/types/learning/contracts.d.ts.map +1 -0
  59. package/dist/types/learning/errors.d.ts +8 -0
  60. package/dist/types/learning/errors.d.ts.map +1 -0
  61. package/dist/types/learning/grade-worker.d.ts +31 -0
  62. package/dist/types/learning/grade-worker.d.ts.map +1 -0
  63. package/dist/types/learning/index.d.ts +10 -0
  64. package/dist/types/learning/index.d.ts.map +1 -0
  65. package/dist/types/learning/operations.d.ts +2061 -0
  66. package/dist/types/learning/operations.d.ts.map +1 -0
  67. package/dist/types/learning/repository.d.ts +1143 -0
  68. package/dist/types/learning/repository.d.ts.map +1 -0
  69. package/dist/types/learning/service.d.ts +22 -0
  70. package/dist/types/learning/service.d.ts.map +1 -0
  71. package/dist/types/learning/transport.d.ts +2139 -0
  72. package/dist/types/learning/transport.d.ts.map +1 -0
  73. package/dist/types/preferences.d.ts +55 -7
  74. package/dist/types/preferences.d.ts.map +1 -1
  75. package/dist/types/review-conformance.d.ts +5 -5
  76. package/dist/types/rewards.d.ts +611 -0
  77. package/dist/types/rewards.d.ts.map +1 -0
  78. package/dist/types/task-schema.d.ts +18 -0
  79. package/dist/types/task-schema.d.ts.map +1 -0
  80. package/dist/types/tasksets.d.ts +28 -0
  81. package/dist/types/tasksets.d.ts.map +1 -1
  82. package/dist/types/telemetry/index.d.ts +5 -0
  83. package/dist/types/telemetry/index.d.ts.map +1 -0
  84. package/dist/types/telemetry-analysis.d.ts +116 -0
  85. package/dist/types/telemetry-analysis.d.ts.map +1 -0
  86. package/dist/types/telemetry-bundle.d.ts +309 -0
  87. package/dist/types/telemetry-bundle.d.ts.map +1 -0
  88. package/dist/types/telemetry-catalog.d.ts +269 -0
  89. package/dist/types/telemetry-catalog.d.ts.map +1 -0
  90. package/dist/types/telemetry.d.ts +266 -0
  91. package/dist/types/telemetry.d.ts.map +1 -0
  92. package/package.json +40 -3
  93. package/schemas/learning/v1/asset.schema.json +89 -0
  94. package/schemas/learning/v1/batch.schema.json +132 -0
  95. package/schemas/learning/v1/binding.schema.json +207 -0
  96. package/schemas/learning/v1/command-request.schema.json +2414 -0
  97. package/schemas/learning/v1/decision.schema.json +440 -0
  98. package/schemas/learning/v1/definition.schema.json +397 -0
  99. package/schemas/learning/v1/evidence.schema.json +317 -0
  100. package/schemas/learning/v1/example-submission.schema.json +253 -0
  101. package/schemas/learning/v1/feedback-submission.schema.json +114 -0
  102. package/schemas/learning/v1/feedback.schema.json +233 -0
  103. package/schemas/learning/v1/grade.schema.json +412 -0
  104. package/schemas/learning/v1/iteration.schema.json +236 -0
  105. package/schemas/learning/v1/package.schema.json +776 -0
  106. package/schemas/learning/v1/policy.schema.json +373 -0
  107. package/schemas/learning/v1/read-request.schema.json +101 -0
  108. package/schemas/learning/v1/reward.schema.json +302 -0
  109. package/schemas/learning/v1/source.schema.json +198 -0
  110. package/schemas/telemetry/v1/evidence-completeness.schema.json +82 -0
  111. package/schemas/telemetry/v1/evidence-reference.schema.json +41 -0
  112. package/schemas/telemetry/v1/metric-definition.schema.json +96 -0
  113. package/schemas/telemetry/v1/metric-observation.schema.json +182 -0
  114. package/schemas/telemetry/v1/run-metric-summary.schema.json +98 -0
  115. package/schemas/telemetry/v1/run-telemetry-batch.schema.json +405 -0
  116. package/schemas/telemetry/v1/run-telemetry-event.schema.json +201 -0
  117. package/schemas/telemetry/v1/telemetry-cohort.schema.json +100 -0
  118. package/schemas/telemetry/v1/telemetry-export-bundle.schema.json +655 -0
@@ -0,0 +1,440 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "openpond.taskAdmissionDecision.v1"
8
+ },
9
+ "id": {
10
+ "$ref": "#/$defs/__schema0"
11
+ },
12
+ "revision": {
13
+ "type": "integer",
14
+ "exclusiveMinimum": 0,
15
+ "maximum": 9007199254740991
16
+ },
17
+ "evidence": {
18
+ "$ref": "#/$defs/__schema1"
19
+ },
20
+ "supersedes": {
21
+ "anyOf": [
22
+ {
23
+ "$ref": "#/$defs/__schema1"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ]
29
+ },
30
+ "actor": {
31
+ "type": "object",
32
+ "properties": {
33
+ "kind": {
34
+ "type": "string",
35
+ "enum": [
36
+ "human",
37
+ "qualified_policy"
38
+ ]
39
+ },
40
+ "id": {
41
+ "$ref": "#/$defs/__schema0"
42
+ },
43
+ "policy": {
44
+ "anyOf": [
45
+ {
46
+ "$ref": "#/$defs/__schema1"
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ]
52
+ }
53
+ },
54
+ "required": [
55
+ "kind",
56
+ "id",
57
+ "policy"
58
+ ],
59
+ "additionalProperties": false
60
+ },
61
+ "evidenceValidity": {
62
+ "type": "string",
63
+ "enum": [
64
+ "valid",
65
+ "invalid",
66
+ "pending"
67
+ ]
68
+ },
69
+ "taskAdmissibility": {
70
+ "type": "string",
71
+ "enum": [
72
+ "approved",
73
+ "rejected",
74
+ "pending"
75
+ ]
76
+ },
77
+ "observedQuality": {
78
+ "type": "string",
79
+ "enum": [
80
+ "passed",
81
+ "failed",
82
+ "unscored",
83
+ "unavailable"
84
+ ]
85
+ },
86
+ "targetApproval": {
87
+ "type": "string",
88
+ "enum": [
89
+ "approved",
90
+ "rejected",
91
+ "pending",
92
+ "not_required"
93
+ ]
94
+ },
95
+ "approvedTarget": {
96
+ "anyOf": [
97
+ {
98
+ "type": "object",
99
+ "propertyNames": {
100
+ "type": "string"
101
+ },
102
+ "additionalProperties": {
103
+ "$ref": "#/$defs/__schema3"
104
+ }
105
+ },
106
+ {
107
+ "type": "null"
108
+ }
109
+ ]
110
+ },
111
+ "grade": {
112
+ "anyOf": [
113
+ {
114
+ "$ref": "#/$defs/__schema4"
115
+ },
116
+ {
117
+ "type": "null"
118
+ }
119
+ ]
120
+ },
121
+ "targetGrade": {
122
+ "anyOf": [
123
+ {
124
+ "$ref": "#/$defs/__schema4"
125
+ },
126
+ {
127
+ "type": "null"
128
+ }
129
+ ]
130
+ },
131
+ "note": {
132
+ "type": "string",
133
+ "maxLength": 20000
134
+ },
135
+ "decidedAt": {
136
+ "type": "string",
137
+ "format": "date-time",
138
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
139
+ },
140
+ "contentHash": {
141
+ "$ref": "#/$defs/__schema2"
142
+ }
143
+ },
144
+ "required": [
145
+ "schemaVersion",
146
+ "id",
147
+ "revision",
148
+ "evidence",
149
+ "supersedes",
150
+ "actor",
151
+ "evidenceValidity",
152
+ "taskAdmissibility",
153
+ "observedQuality",
154
+ "targetApproval",
155
+ "approvedTarget",
156
+ "grade",
157
+ "targetGrade",
158
+ "note",
159
+ "decidedAt",
160
+ "contentHash"
161
+ ],
162
+ "additionalProperties": false,
163
+ "$defs": {
164
+ "__schema0": {
165
+ "type": "string",
166
+ "minLength": 1,
167
+ "maxLength": 240
168
+ },
169
+ "__schema1": {
170
+ "type": "object",
171
+ "properties": {
172
+ "id": {
173
+ "$ref": "#/$defs/__schema0"
174
+ },
175
+ "contentHash": {
176
+ "$ref": "#/$defs/__schema2"
177
+ },
178
+ "revision": {
179
+ "type": "integer",
180
+ "exclusiveMinimum": 0,
181
+ "maximum": 9007199254740991
182
+ }
183
+ },
184
+ "required": [
185
+ "id",
186
+ "contentHash",
187
+ "revision"
188
+ ],
189
+ "additionalProperties": false
190
+ },
191
+ "__schema2": {
192
+ "type": "string",
193
+ "pattern": "^[a-f0-9]{64}$"
194
+ },
195
+ "__schema3": {
196
+ "anyOf": [
197
+ {
198
+ "type": "string"
199
+ },
200
+ {
201
+ "type": "number"
202
+ },
203
+ {
204
+ "type": "boolean"
205
+ },
206
+ {
207
+ "type": "null"
208
+ },
209
+ {
210
+ "type": "array",
211
+ "items": {
212
+ "$ref": "#/$defs/__schema3"
213
+ }
214
+ },
215
+ {
216
+ "type": "object",
217
+ "propertyNames": {
218
+ "type": "string"
219
+ },
220
+ "additionalProperties": {
221
+ "$ref": "#/$defs/__schema3"
222
+ }
223
+ }
224
+ ]
225
+ },
226
+ "__schema4": {
227
+ "type": "object",
228
+ "properties": {
229
+ "schemaVersion": {
230
+ "type": "string",
231
+ "const": "openpond.rewardComposition.v1"
232
+ },
233
+ "binding": {
234
+ "$ref": "#/$defs/__schema1"
235
+ },
236
+ "taskHash": {
237
+ "$ref": "#/$defs/__schema2"
238
+ },
239
+ "outputHash": {
240
+ "$ref": "#/$defs/__schema2"
241
+ },
242
+ "results": {
243
+ "minItems": 1,
244
+ "maxItems": 100,
245
+ "type": "array",
246
+ "items": {
247
+ "$ref": "#/$defs/__schema5"
248
+ }
249
+ },
250
+ "training": {
251
+ "type": "object",
252
+ "properties": {
253
+ "status": {
254
+ "type": "string",
255
+ "enum": [
256
+ "scored",
257
+ "unscorable",
258
+ "not_configured"
259
+ ]
260
+ },
261
+ "score": {
262
+ "anyOf": [
263
+ {
264
+ "type": "number",
265
+ "minimum": 0,
266
+ "maximum": 1
267
+ },
268
+ {
269
+ "type": "null"
270
+ }
271
+ ]
272
+ },
273
+ "passed": {
274
+ "anyOf": [
275
+ {
276
+ "type": "boolean"
277
+ },
278
+ {
279
+ "type": "null"
280
+ }
281
+ ]
282
+ }
283
+ },
284
+ "required": [
285
+ "status",
286
+ "score",
287
+ "passed"
288
+ ],
289
+ "additionalProperties": false
290
+ },
291
+ "evaluation": {
292
+ "type": "object",
293
+ "properties": {
294
+ "status": {
295
+ "type": "string",
296
+ "enum": [
297
+ "scored",
298
+ "unscorable",
299
+ "not_configured"
300
+ ]
301
+ },
302
+ "score": {
303
+ "anyOf": [
304
+ {
305
+ "type": "number",
306
+ "minimum": 0,
307
+ "maximum": 1
308
+ },
309
+ {
310
+ "type": "null"
311
+ }
312
+ ]
313
+ },
314
+ "passed": {
315
+ "anyOf": [
316
+ {
317
+ "type": "boolean"
318
+ },
319
+ {
320
+ "type": "null"
321
+ }
322
+ ]
323
+ }
324
+ },
325
+ "required": [
326
+ "status",
327
+ "score",
328
+ "passed"
329
+ ],
330
+ "additionalProperties": false
331
+ },
332
+ "contentHash": {
333
+ "$ref": "#/$defs/__schema2"
334
+ }
335
+ },
336
+ "required": [
337
+ "schemaVersion",
338
+ "binding",
339
+ "taskHash",
340
+ "outputHash",
341
+ "results",
342
+ "training",
343
+ "evaluation",
344
+ "contentHash"
345
+ ],
346
+ "additionalProperties": false
347
+ },
348
+ "__schema5": {
349
+ "type": "object",
350
+ "properties": {
351
+ "graderId": {
352
+ "$ref": "#/$defs/__schema0"
353
+ },
354
+ "reward": {
355
+ "$ref": "#/$defs/__schema1"
356
+ },
357
+ "role": {
358
+ "type": "string",
359
+ "enum": [
360
+ "training",
361
+ "evaluation"
362
+ ]
363
+ },
364
+ "status": {
365
+ "type": "string",
366
+ "enum": [
367
+ "scored",
368
+ "pending",
369
+ "unavailable",
370
+ "failed"
371
+ ]
372
+ },
373
+ "rawScore": {
374
+ "anyOf": [
375
+ {
376
+ "type": "number"
377
+ },
378
+ {
379
+ "type": "null"
380
+ }
381
+ ]
382
+ },
383
+ "normalizedScore": {
384
+ "anyOf": [
385
+ {
386
+ "type": "number",
387
+ "minimum": 0,
388
+ "maximum": 1
389
+ },
390
+ {
391
+ "type": "null"
392
+ }
393
+ ]
394
+ },
395
+ "passed": {
396
+ "anyOf": [
397
+ {
398
+ "type": "boolean"
399
+ },
400
+ {
401
+ "type": "null"
402
+ }
403
+ ]
404
+ },
405
+ "evidenceHashes": {
406
+ "maxItems": 1000,
407
+ "type": "array",
408
+ "items": {
409
+ "$ref": "#/$defs/__schema2"
410
+ }
411
+ },
412
+ "message": {
413
+ "anyOf": [
414
+ {
415
+ "type": "string",
416
+ "maxLength": 20000
417
+ },
418
+ {
419
+ "type": "null"
420
+ }
421
+ ]
422
+ }
423
+ },
424
+ "required": [
425
+ "graderId",
426
+ "reward",
427
+ "role",
428
+ "status",
429
+ "rawScore",
430
+ "normalizedScore",
431
+ "passed",
432
+ "evidenceHashes",
433
+ "message"
434
+ ],
435
+ "additionalProperties": false
436
+ }
437
+ },
438
+ "$id": "urn:openpond:learning:v1:decision",
439
+ "$comment": "Generated from @openpond/evals. Cross-resource identity, authorization, idempotency, admission, grading and split constraints are enforced by the shared domain service in addition to this structural schema."
440
+ }