@openpond/evals 0.7.6 → 0.8.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 (48) hide show
  1. package/LEARNING.md +30 -0
  2. package/dist/learning/authoring-service.js +1 -1
  3. package/dist/learning/authoring.js +9 -0
  4. package/dist/learning/index.js +4 -0
  5. package/dist/learning/operations.js +3 -1
  6. package/dist/learning/repository.js +2 -0
  7. package/dist/learning/reward-authoring.js +120 -0
  8. package/dist/learning/reward-check-service.js +31 -0
  9. package/dist/learning/reward-check-worker.js +114 -0
  10. package/dist/learning/reward-checks.js +81 -0
  11. package/dist/learning/reward-fixture-executor.js +29 -0
  12. package/dist/learning/service.js +7 -0
  13. package/dist/rewards.js +3 -0
  14. package/dist/types/learning/admission.d.ts +12 -0
  15. package/dist/types/learning/admission.d.ts.map +1 -1
  16. package/dist/types/learning/authoring-service.d.ts +172 -0
  17. package/dist/types/learning/authoring-service.d.ts.map +1 -1
  18. package/dist/types/learning/authoring.d.ts +121 -0
  19. package/dist/types/learning/authoring.d.ts.map +1 -1
  20. package/dist/types/learning/contracts.d.ts +12 -0
  21. package/dist/types/learning/contracts.d.ts.map +1 -1
  22. package/dist/types/learning/index.d.ts +4 -0
  23. package/dist/types/learning/index.d.ts.map +1 -1
  24. package/dist/types/learning/operations.d.ts +128 -0
  25. package/dist/types/learning/operations.d.ts.map +1 -1
  26. package/dist/types/learning/repository.d.ts +109 -0
  27. package/dist/types/learning/repository.d.ts.map +1 -1
  28. package/dist/types/learning/reward-authoring.d.ts +18 -0
  29. package/dist/types/learning/reward-authoring.d.ts.map +1 -0
  30. package/dist/types/learning/reward-check-service.d.ts +17 -0
  31. package/dist/types/learning/reward-check-service.d.ts.map +1 -0
  32. package/dist/types/learning/reward-check-worker.d.ts +27 -0
  33. package/dist/types/learning/reward-check-worker.d.ts.map +1 -0
  34. package/dist/types/learning/reward-checks.d.ts +177 -0
  35. package/dist/types/learning/reward-checks.d.ts.map +1 -0
  36. package/dist/types/learning/reward-fixture-executor.d.ts +9 -0
  37. package/dist/types/learning/reward-fixture-executor.d.ts.map +1 -0
  38. package/dist/types/learning/service.d.ts.map +1 -1
  39. package/dist/types/learning/transport.d.ts +173 -1
  40. package/dist/types/learning/transport.d.ts.map +1 -1
  41. package/dist/types/rewards.d.ts +24 -0
  42. package/dist/types/rewards.d.ts.map +1 -1
  43. package/package.json +1 -1
  44. package/schemas/learning/v1/command-request.schema.json +412 -248
  45. package/schemas/learning/v1/draft.schema.json +96 -0
  46. package/schemas/learning/v1/read-request.schema.json +1 -0
  47. package/schemas/learning/v1/reward.schema.json +3 -0
  48. package/schemas/learning/v1/reward_check.schema.json +343 -0
@@ -211,6 +211,13 @@
211
211
  },
212
212
  "maximum": {
213
213
  "type": "string"
214
+ },
215
+ "fixtures": {
216
+ "maxItems": 50,
217
+ "type": "array",
218
+ "items": {
219
+ "$ref": "#/$defs/__schema12"
220
+ }
214
221
  }
215
222
  },
216
223
  "required": [
@@ -555,6 +562,95 @@
555
562
  "type": "string",
556
563
  "format": "date-time",
557
564
  "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)))$"
565
+ },
566
+ "__schema12": {
567
+ "type": "object",
568
+ "properties": {
569
+ "id": {
570
+ "$ref": "#/$defs/__schema0"
571
+ },
572
+ "name": {
573
+ "type": "string",
574
+ "maxLength": 500
575
+ },
576
+ "input": {
577
+ "type": "string"
578
+ },
579
+ "output": {
580
+ "type": "string"
581
+ },
582
+ "expectedOutput": {
583
+ "type": "string"
584
+ },
585
+ "evaluatorContext": {
586
+ "type": "string"
587
+ },
588
+ "artifactRefs": {
589
+ "maxItems": 100,
590
+ "type": "array",
591
+ "items": {
592
+ "$ref": "#/$defs/__schema13"
593
+ }
594
+ },
595
+ "runtimeEventRefs": {
596
+ "maxItems": 100,
597
+ "type": "array",
598
+ "items": {
599
+ "$ref": "#/$defs/__schema14"
600
+ }
601
+ },
602
+ "infrastructureError": {
603
+ "type": "string",
604
+ "maxLength": 20000
605
+ },
606
+ "expectedStatus": {
607
+ "type": "string",
608
+ "enum": [
609
+ "scored",
610
+ "pending",
611
+ "unavailable",
612
+ "failed"
613
+ ]
614
+ },
615
+ "minimumScore": {
616
+ "type": "string"
617
+ },
618
+ "maximumScore": {
619
+ "type": "string"
620
+ },
621
+ "expectedPassed": {
622
+ "type": "string",
623
+ "enum": [
624
+ "true",
625
+ "false",
626
+ "any"
627
+ ]
628
+ }
629
+ },
630
+ "required": [
631
+ "id",
632
+ "name",
633
+ "input",
634
+ "output",
635
+ "expectedOutput",
636
+ "evaluatorContext",
637
+ "artifactRefs",
638
+ "runtimeEventRefs",
639
+ "infrastructureError",
640
+ "expectedStatus",
641
+ "minimumScore",
642
+ "maximumScore",
643
+ "expectedPassed"
644
+ ],
645
+ "additionalProperties": false
646
+ },
647
+ "__schema13": {
648
+ "type": "string",
649
+ "maxLength": 500
650
+ },
651
+ "__schema14": {
652
+ "type": "string",
653
+ "maxLength": 500
558
654
  }
559
655
  },
560
656
  "$id": "urn:openpond:learning:v1:draft",
@@ -122,6 +122,7 @@
122
122
  "type": "string",
123
123
  "enum": [
124
124
  "draft",
125
+ "reward_check",
125
126
  "asset",
126
127
  "definition",
127
128
  "reward",
@@ -227,6 +227,9 @@
227
227
  "$ref": "#/$defs/__schema1"
228
228
  }
229
229
  },
230
+ "fixtureSetRef": {
231
+ "$ref": "#/$defs/__schema1"
232
+ },
230
233
  "contentHash": {
231
234
  "$ref": "#/$defs/__schema2"
232
235
  }
@@ -0,0 +1,343 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "openpond.rewardCheckRun.v1"
8
+ },
9
+ "id": {
10
+ "$ref": "#/$defs/__schema0"
11
+ },
12
+ "revision": {
13
+ "type": "integer",
14
+ "exclusiveMinimum": 0,
15
+ "maximum": 9007199254740991
16
+ },
17
+ "draft": {
18
+ "$ref": "#/$defs/__schema1"
19
+ },
20
+ "reward": {
21
+ "$ref": "#/$defs/__schema1"
22
+ },
23
+ "snapshotHash": {
24
+ "$ref": "#/$defs/__schema2"
25
+ },
26
+ "fixtureRefs": {
27
+ "minItems": 1,
28
+ "maxItems": 50,
29
+ "type": "array",
30
+ "items": {
31
+ "$ref": "#/$defs/__schema3"
32
+ }
33
+ },
34
+ "status": {
35
+ "type": "string",
36
+ "enum": [
37
+ "queued",
38
+ "running",
39
+ "completed",
40
+ "failed",
41
+ "cancelling",
42
+ "cancelled"
43
+ ]
44
+ },
45
+ "runtime": {
46
+ "anyOf": [
47
+ {
48
+ "type": "object",
49
+ "properties": {
50
+ "id": {
51
+ "$ref": "#/$defs/__schema0"
52
+ },
53
+ "packageVersion": {
54
+ "type": "string",
55
+ "minLength": 1,
56
+ "maxLength": 100
57
+ },
58
+ "engine": {
59
+ "type": "string",
60
+ "minLength": 1,
61
+ "maxLength": 200
62
+ }
63
+ },
64
+ "required": [
65
+ "id",
66
+ "packageVersion",
67
+ "engine"
68
+ ],
69
+ "additionalProperties": false
70
+ },
71
+ {
72
+ "type": "null"
73
+ }
74
+ ]
75
+ },
76
+ "results": {
77
+ "maxItems": 50,
78
+ "type": "array",
79
+ "items": {
80
+ "$ref": "#/$defs/__schema4"
81
+ }
82
+ },
83
+ "matchesExpectations": {
84
+ "anyOf": [
85
+ {
86
+ "type": "boolean"
87
+ },
88
+ {
89
+ "type": "null"
90
+ }
91
+ ]
92
+ },
93
+ "failure": {
94
+ "anyOf": [
95
+ {
96
+ "type": "string",
97
+ "maxLength": 20000
98
+ },
99
+ {
100
+ "type": "null"
101
+ }
102
+ ]
103
+ },
104
+ "timeoutMs": {
105
+ "type": "integer",
106
+ "minimum": 100,
107
+ "maximum": 300000
108
+ },
109
+ "maximumSpendUsd": {
110
+ "type": "number",
111
+ "minimum": 0,
112
+ "maximum": 1000
113
+ },
114
+ "leaseOwner": {
115
+ "anyOf": [
116
+ {
117
+ "$ref": "#/$defs/__schema0"
118
+ },
119
+ {
120
+ "type": "null"
121
+ }
122
+ ]
123
+ },
124
+ "leaseExpiresAt": {
125
+ "anyOf": [
126
+ {
127
+ "$ref": "#/$defs/__schema5"
128
+ },
129
+ {
130
+ "type": "null"
131
+ }
132
+ ]
133
+ },
134
+ "attemptCount": {
135
+ "type": "integer",
136
+ "minimum": 0,
137
+ "maximum": 9007199254740991
138
+ },
139
+ "createdAt": {
140
+ "$ref": "#/$defs/__schema5"
141
+ },
142
+ "updatedAt": {
143
+ "$ref": "#/$defs/__schema5"
144
+ }
145
+ },
146
+ "required": [
147
+ "schemaVersion",
148
+ "id",
149
+ "revision",
150
+ "draft",
151
+ "reward",
152
+ "snapshotHash",
153
+ "fixtureRefs",
154
+ "status",
155
+ "runtime",
156
+ "results",
157
+ "matchesExpectations",
158
+ "failure",
159
+ "timeoutMs",
160
+ "maximumSpendUsd",
161
+ "leaseOwner",
162
+ "leaseExpiresAt",
163
+ "attemptCount",
164
+ "createdAt",
165
+ "updatedAt"
166
+ ],
167
+ "additionalProperties": false,
168
+ "$defs": {
169
+ "__schema0": {
170
+ "type": "string",
171
+ "minLength": 1,
172
+ "maxLength": 240
173
+ },
174
+ "__schema1": {
175
+ "type": "object",
176
+ "properties": {
177
+ "id": {
178
+ "$ref": "#/$defs/__schema0"
179
+ },
180
+ "contentHash": {
181
+ "$ref": "#/$defs/__schema2"
182
+ },
183
+ "revision": {
184
+ "type": "integer",
185
+ "exclusiveMinimum": 0,
186
+ "maximum": 9007199254740991
187
+ }
188
+ },
189
+ "required": [
190
+ "id",
191
+ "contentHash",
192
+ "revision"
193
+ ],
194
+ "additionalProperties": false
195
+ },
196
+ "__schema2": {
197
+ "type": "string",
198
+ "pattern": "^[a-f0-9]{64}$"
199
+ },
200
+ "__schema3": {
201
+ "type": "object",
202
+ "properties": {
203
+ "id": {
204
+ "$ref": "#/$defs/__schema0"
205
+ },
206
+ "contentHash": {
207
+ "$ref": "#/$defs/__schema2"
208
+ }
209
+ },
210
+ "required": [
211
+ "id",
212
+ "contentHash"
213
+ ],
214
+ "additionalProperties": false
215
+ },
216
+ "__schema4": {
217
+ "type": "object",
218
+ "properties": {
219
+ "fixture": {
220
+ "type": "object",
221
+ "properties": {
222
+ "id": {
223
+ "$ref": "#/$defs/__schema0"
224
+ },
225
+ "contentHash": {
226
+ "$ref": "#/$defs/__schema2"
227
+ }
228
+ },
229
+ "required": [
230
+ "id",
231
+ "contentHash"
232
+ ],
233
+ "additionalProperties": false
234
+ },
235
+ "result": {
236
+ "type": "object",
237
+ "properties": {
238
+ "graderId": {
239
+ "$ref": "#/$defs/__schema0"
240
+ },
241
+ "reward": {
242
+ "$ref": "#/$defs/__schema1"
243
+ },
244
+ "role": {
245
+ "type": "string",
246
+ "enum": [
247
+ "training",
248
+ "evaluation"
249
+ ]
250
+ },
251
+ "status": {
252
+ "type": "string",
253
+ "enum": [
254
+ "scored",
255
+ "pending",
256
+ "unavailable",
257
+ "failed"
258
+ ]
259
+ },
260
+ "rawScore": {
261
+ "anyOf": [
262
+ {
263
+ "type": "number"
264
+ },
265
+ {
266
+ "type": "null"
267
+ }
268
+ ]
269
+ },
270
+ "normalizedScore": {
271
+ "anyOf": [
272
+ {
273
+ "type": "number",
274
+ "minimum": 0,
275
+ "maximum": 1
276
+ },
277
+ {
278
+ "type": "null"
279
+ }
280
+ ]
281
+ },
282
+ "passed": {
283
+ "anyOf": [
284
+ {
285
+ "type": "boolean"
286
+ },
287
+ {
288
+ "type": "null"
289
+ }
290
+ ]
291
+ },
292
+ "evidenceHashes": {
293
+ "maxItems": 1000,
294
+ "type": "array",
295
+ "items": {
296
+ "$ref": "#/$defs/__schema2"
297
+ }
298
+ },
299
+ "message": {
300
+ "anyOf": [
301
+ {
302
+ "type": "string",
303
+ "maxLength": 20000
304
+ },
305
+ {
306
+ "type": "null"
307
+ }
308
+ ]
309
+ }
310
+ },
311
+ "required": [
312
+ "graderId",
313
+ "reward",
314
+ "role",
315
+ "status",
316
+ "rawScore",
317
+ "normalizedScore",
318
+ "passed",
319
+ "evidenceHashes",
320
+ "message"
321
+ ],
322
+ "additionalProperties": false
323
+ },
324
+ "matchesExpectation": {
325
+ "type": "boolean"
326
+ }
327
+ },
328
+ "required": [
329
+ "fixture",
330
+ "result",
331
+ "matchesExpectation"
332
+ ],
333
+ "additionalProperties": false
334
+ },
335
+ "__schema5": {
336
+ "type": "string",
337
+ "format": "date-time",
338
+ "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)))$"
339
+ }
340
+ },
341
+ "$id": "urn:openpond:learning:v1:reward_check",
342
+ "$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."
343
+ }