@openpond/evals 0.10.3 → 0.10.5

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 (38) hide show
  1. package/LEARNING.md +43 -0
  2. package/dist/learning/batch-service.js +12 -7
  3. package/dist/learning/index.js +4 -0
  4. package/dist/learning/iteration-budget.js +17 -0
  5. package/dist/learning/iteration-reservation-service.js +3 -13
  6. package/dist/learning/policy-inspection.js +82 -0
  7. package/dist/learning/repository.js +2 -0
  8. package/dist/learning/schedule-contracts.js +45 -0
  9. package/dist/learning/schedule-service.js +31 -0
  10. package/dist/learning/schedule-worker.js +96 -0
  11. package/dist/learning/service.js +13 -0
  12. package/dist/learning/transport.js +1 -0
  13. package/dist/types/learning/batch-service.d.ts +310 -0
  14. package/dist/types/learning/batch-service.d.ts.map +1 -1
  15. package/dist/types/learning/index.d.ts +4 -0
  16. package/dist/types/learning/index.d.ts.map +1 -1
  17. package/dist/types/learning/iteration-budget.d.ts +8 -0
  18. package/dist/types/learning/iteration-budget.d.ts.map +1 -0
  19. package/dist/types/learning/iteration-reservation-service.d.ts.map +1 -1
  20. package/dist/types/learning/policy-inspection.d.ts +47 -0
  21. package/dist/types/learning/policy-inspection.d.ts.map +1 -0
  22. package/dist/types/learning/repository.d.ts +66 -1
  23. package/dist/types/learning/repository.d.ts.map +1 -1
  24. package/dist/types/learning/schedule-contracts.d.ts +69 -0
  25. package/dist/types/learning/schedule-contracts.d.ts.map +1 -0
  26. package/dist/types/learning/schedule-service.d.ts +30 -0
  27. package/dist/types/learning/schedule-service.d.ts.map +1 -0
  28. package/dist/types/learning/schedule-worker.d.ts +12 -0
  29. package/dist/types/learning/schedule-worker.d.ts.map +1 -0
  30. package/dist/types/learning/service.d.ts +39 -0
  31. package/dist/types/learning/service.d.ts.map +1 -1
  32. package/dist/types/learning/transport.d.ts +75 -2
  33. package/dist/types/learning/transport.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/schemas/learning/v1/policy-inspection.schema.json +243 -0
  36. package/schemas/learning/v1/read-request.schema.json +49 -23
  37. package/schemas/learning/v1/schedule.schema.json +188 -0
  38. package/schemas/learning/v1/schedule_fire.schema.json +163 -0
@@ -17,6 +17,45 @@ export declare function createLearningService(repository: LearningRepository, op
17
17
  now?: () => string;
18
18
  }): {
19
19
  command: (context: LearningServiceContext, raw: unknown) => Promise<LearningOperationResult>;
20
+ inspectPolicy(context: LearningServiceContext, reference: LearningRevisionRef): Promise<{
21
+ policy: {
22
+ id: string;
23
+ contentHash: string;
24
+ revision: number;
25
+ };
26
+ modelProjectId: string;
27
+ inspectedAt: string;
28
+ chain: {
29
+ schemaVersion: "openpond.learningChain.v1";
30
+ id: string;
31
+ revision: number;
32
+ modelProjectId: string;
33
+ activeIterationId: string | null;
34
+ latestIterationId: string;
35
+ lastReservedAt: string | null;
36
+ updatedAt: string;
37
+ } | null;
38
+ counts: {
39
+ eligible: number;
40
+ awaitingReview: number;
41
+ excluded: number;
42
+ consumed: number;
43
+ } | null;
44
+ minimumApprovedExamples: number;
45
+ canReserve: boolean;
46
+ blockers: {
47
+ code: string;
48
+ message: string;
49
+ }[];
50
+ cooldownUntil: string | null;
51
+ budget: {
52
+ reservedSpendUsd: number;
53
+ settledSpendUsd: number;
54
+ committedSpendUsd: number;
55
+ maximumIterationSpendUsd: number;
56
+ maximumDailySpendUsd: number;
57
+ };
58
+ }>;
20
59
  inspectEvidence(context: LearningServiceContext, reference: LearningRevisionRef): Promise<{
21
60
  evidence: {
22
61
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/service.ts"],"names":[],"mappings":"AAYA,OAAO,EAA+Q,KAAK,mBAAmB,EAAwC,MAAM,gBAAgB,CAAC;AAE7W,OAAO,EAAmH,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,KAAK,oBAAoB,EAAgC,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAA4B,MAAM,iBAAiB,CAAC;AAK5W,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACtG,MAAM,MAAM,sBAAsB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,uBAAuB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,sBAAsB,EAAE,CAAA;CAAE,CAAC;AAEnG,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAO;uBAGxE,sBAAsB,OAAO,OAAO,KAAG,OAAO,CAAC,uBAAuB,CAAC;6BAyPtE,sBAAsB,aAAa,mBAAmB;;;;;;;;;;;;;QAS3E,CAAC,SAAS,oBAAoB,WAAW,sBAAsB,QAAQ,CAAC,MAAM,MAAM,aAAa,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;SAIxI,CAAC,SAAS,oBAAoB,WAAW,sBAAsB,QAAQ,CAAC,UAAS,OAAO,CAAC,qBAAqB,CAAC,GAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;EAMrK"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/service.ts"],"names":[],"mappings":"AAcA,OAAO,EAA+Q,KAAK,mBAAmB,EAAwC,MAAM,gBAAgB,CAAC;AAE7W,OAAO,EAAmH,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,KAAK,oBAAoB,EAAgC,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAA4B,MAAM,iBAAiB,CAAC;AAK5W,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACtG,MAAM,MAAM,sBAAsB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,uBAAuB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,sBAAsB,EAAE,CAAA;CAAE,CAAC;AAEnG,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAO;uBAGxE,sBAAsB,OAAO,OAAO,KAAG,OAAO,CAAC,uBAAuB,CAAC;2BA0PxE,sBAAsB,aAAa,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAKpD,sBAAsB,aAAa,mBAAmB;;;;;;;;;;;;;QAS3E,CAAC,SAAS,oBAAoB,WAAW,sBAAsB,QAAQ,CAAC,MAAM,MAAM,aAAa,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;SAIxI,CAAC,SAAS,oBAAoB,WAAW,sBAAsB,QAAQ,CAAC,UAAS,OAAO,CAAC,qBAAqB,CAAC,GAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;EAMrK"}
@@ -1438,6 +1438,14 @@ export declare const LearningCommandRequestSchema: z.ZodObject<{
1438
1438
  }, z.core.$strict>]>;
1439
1439
  }, z.core.$strict>;
1440
1440
  export declare const LearningReadRequestSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1441
+ action: z.ZodLiteral<"inspect_policy">;
1442
+ scope: z.ZodString;
1443
+ policy: z.ZodObject<{
1444
+ id: z.ZodString;
1445
+ contentHash: z.ZodString;
1446
+ revision: z.ZodNumber;
1447
+ }, z.core.$strict>;
1448
+ }, z.core.$strict>, z.ZodObject<{
1441
1449
  action: z.ZodLiteral<"inspect_evidence">;
1442
1450
  scope: z.ZodString;
1443
1451
  evidence: z.ZodObject<{
@@ -1459,14 +1467,16 @@ export declare const LearningReadRequestSchema: z.ZodDiscriminatedUnion<[z.ZodOb
1459
1467
  binding: "binding";
1460
1468
  batch: "batch";
1461
1469
  grade: "grade";
1470
+ schedule: "schedule";
1462
1471
  definition: "definition";
1463
1472
  draft: "draft";
1473
+ iteration: "iteration";
1464
1474
  reward_check: "reward_check";
1465
1475
  chain: "chain";
1466
1476
  consumption: "consumption";
1467
1477
  reservation: "reservation";
1468
1478
  dispatch: "dispatch";
1469
- iteration: "iteration";
1479
+ schedule_fire: "schedule_fire";
1470
1480
  package: "package";
1471
1481
  }>;
1472
1482
  id: z.ZodString;
@@ -1485,14 +1495,16 @@ export declare const LearningReadRequestSchema: z.ZodDiscriminatedUnion<[z.ZodOb
1485
1495
  binding: "binding";
1486
1496
  batch: "batch";
1487
1497
  grade: "grade";
1498
+ schedule: "schedule";
1488
1499
  definition: "definition";
1489
1500
  draft: "draft";
1501
+ iteration: "iteration";
1490
1502
  reward_check: "reward_check";
1491
1503
  chain: "chain";
1492
1504
  consumption: "consumption";
1493
1505
  reservation: "reservation";
1494
1506
  dispatch: "dispatch";
1495
- iteration: "iteration";
1507
+ schedule_fire: "schedule_fire";
1496
1508
  package: "package";
1497
1509
  }>;
1498
1510
  parentId: z.ZodOptional<z.ZodString>;
@@ -2973,6 +2985,67 @@ export declare const LearningOperationResultSchema: z.ZodObject<{
2973
2985
  lastError: z.ZodNullable<z.ZodString>;
2974
2986
  createdAt: z.ZodString;
2975
2987
  updatedAt: z.ZodString;
2988
+ }, z.core.$strict> | z.ZodObject<{
2989
+ schemaVersion: z.ZodLiteral<"openpond.learningSchedule.v1">;
2990
+ id: z.ZodString;
2991
+ revision: z.ZodNumber;
2992
+ policy: z.ZodObject<{
2993
+ id: z.ZodString;
2994
+ contentHash: z.ZodString;
2995
+ revision: z.ZodNumber;
2996
+ }, z.core.$strict>;
2997
+ modelProjectId: z.ZodString;
2998
+ executionOwner: z.ZodEnum<{
2999
+ local: "local";
3000
+ hosted: "hosted";
3001
+ }>;
3002
+ state: z.ZodEnum<{
3003
+ blocked: "blocked";
3004
+ scheduled: "scheduled";
3005
+ disabled: "disabled";
3006
+ }>;
3007
+ intervalSeconds: z.ZodNullable<z.ZodNumber>;
3008
+ nextRunAt: z.ZodNullable<z.ZodString>;
3009
+ lastFire: z.ZodNullable<z.ZodObject<{
3010
+ id: z.ZodString;
3011
+ contentHash: z.ZodString;
3012
+ revision: z.ZodNumber;
3013
+ }, z.core.$strict>>;
3014
+ consecutiveFailures: z.ZodNumber;
3015
+ nextAttemptAt: z.ZodNullable<z.ZodString>;
3016
+ lastError: z.ZodNullable<z.ZodString>;
3017
+ createdAt: z.ZodString;
3018
+ updatedAt: z.ZodString;
3019
+ }, z.core.$strict> | z.ZodObject<{
3020
+ schemaVersion: z.ZodLiteral<"openpond.learningScheduleFire.v1">;
3021
+ id: z.ZodString;
3022
+ revision: z.ZodLiteral<1>;
3023
+ scheduleId: z.ZodString;
3024
+ policy: z.ZodObject<{
3025
+ id: z.ZodString;
3026
+ contentHash: z.ZodString;
3027
+ revision: z.ZodNumber;
3028
+ }, z.core.$strict>;
3029
+ scheduledAt: z.ZodString;
3030
+ coalescedThroughAt: z.ZodString;
3031
+ coalescedCount: z.ZodNumber;
3032
+ outcome: z.ZodEnum<{
3033
+ skipped: "skipped";
3034
+ waiting_for_data: "waiting_for_data";
3035
+ waiting_for_review: "waiting_for_review";
3036
+ reserved: "reserved";
3037
+ }>;
3038
+ reason: z.ZodNullable<z.ZodEnum<{
3039
+ active_iteration: "active_iteration";
3040
+ cooldown: "cooldown";
3041
+ daily_budget: "daily_budget";
3042
+ }>>;
3043
+ iteration: z.ZodNullable<z.ZodObject<{
3044
+ id: z.ZodString;
3045
+ revision: z.ZodNumber;
3046
+ }, z.core.$strict>>;
3047
+ createdAt: z.ZodString;
3048
+ contentHash: z.ZodString;
2976
3049
  }, z.core.$strict> | z.ZodObject<{
2977
3050
  schemaVersion: z.ZodLiteral<"openpond.rewardCheckRun.v1">;
2978
3051
  id: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../src/learning/transport.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAG/B,CAAC"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../src/learning/transport.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAG/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openpond/evals",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "Portable Tasksets, graders, evaluation runs, receipts, conformance fixtures, and Work evidence for OpenPond Harnesses",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -0,0 +1,243 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "policy": {
6
+ "type": "object",
7
+ "properties": {
8
+ "id": {
9
+ "$ref": "#/$defs/__schema0"
10
+ },
11
+ "contentHash": {
12
+ "type": "string",
13
+ "pattern": "^[a-f0-9]{64}$"
14
+ },
15
+ "revision": {
16
+ "type": "integer",
17
+ "exclusiveMinimum": 0,
18
+ "maximum": 9007199254740991
19
+ }
20
+ },
21
+ "required": [
22
+ "id",
23
+ "contentHash",
24
+ "revision"
25
+ ],
26
+ "additionalProperties": false
27
+ },
28
+ "modelProjectId": {
29
+ "$ref": "#/$defs/__schema0"
30
+ },
31
+ "inspectedAt": {
32
+ "$ref": "#/$defs/__schema1"
33
+ },
34
+ "chain": {
35
+ "anyOf": [
36
+ {
37
+ "type": "object",
38
+ "properties": {
39
+ "schemaVersion": {
40
+ "type": "string",
41
+ "const": "openpond.learningChain.v1"
42
+ },
43
+ "id": {
44
+ "$ref": "#/$defs/__schema0"
45
+ },
46
+ "revision": {
47
+ "type": "integer",
48
+ "exclusiveMinimum": 0,
49
+ "maximum": 9007199254740991
50
+ },
51
+ "modelProjectId": {
52
+ "$ref": "#/$defs/__schema0"
53
+ },
54
+ "activeIterationId": {
55
+ "anyOf": [
56
+ {
57
+ "$ref": "#/$defs/__schema0"
58
+ },
59
+ {
60
+ "type": "null"
61
+ }
62
+ ]
63
+ },
64
+ "latestIterationId": {
65
+ "$ref": "#/$defs/__schema0"
66
+ },
67
+ "lastReservedAt": {
68
+ "anyOf": [
69
+ {
70
+ "$ref": "#/$defs/__schema1"
71
+ },
72
+ {
73
+ "type": "null"
74
+ }
75
+ ]
76
+ },
77
+ "updatedAt": {
78
+ "$ref": "#/$defs/__schema1"
79
+ }
80
+ },
81
+ "required": [
82
+ "schemaVersion",
83
+ "id",
84
+ "revision",
85
+ "modelProjectId",
86
+ "activeIterationId",
87
+ "latestIterationId",
88
+ "lastReservedAt",
89
+ "updatedAt"
90
+ ],
91
+ "additionalProperties": false
92
+ },
93
+ {
94
+ "type": "null"
95
+ }
96
+ ]
97
+ },
98
+ "counts": {
99
+ "anyOf": [
100
+ {
101
+ "type": "object",
102
+ "properties": {
103
+ "eligible": {
104
+ "type": "integer",
105
+ "minimum": 0,
106
+ "maximum": 9007199254740991
107
+ },
108
+ "awaitingReview": {
109
+ "type": "integer",
110
+ "minimum": 0,
111
+ "maximum": 9007199254740991
112
+ },
113
+ "excluded": {
114
+ "type": "integer",
115
+ "minimum": 0,
116
+ "maximum": 9007199254740991
117
+ },
118
+ "consumed": {
119
+ "type": "integer",
120
+ "minimum": 0,
121
+ "maximum": 9007199254740991
122
+ }
123
+ },
124
+ "required": [
125
+ "eligible",
126
+ "awaitingReview",
127
+ "excluded",
128
+ "consumed"
129
+ ],
130
+ "additionalProperties": false
131
+ },
132
+ {
133
+ "type": "null"
134
+ }
135
+ ]
136
+ },
137
+ "minimumApprovedExamples": {
138
+ "type": "integer",
139
+ "exclusiveMinimum": 0,
140
+ "maximum": 9007199254740991
141
+ },
142
+ "canReserve": {
143
+ "type": "boolean"
144
+ },
145
+ "blockers": {
146
+ "maxItems": 20,
147
+ "type": "array",
148
+ "items": {
149
+ "$ref": "#/$defs/__schema2"
150
+ }
151
+ },
152
+ "cooldownUntil": {
153
+ "anyOf": [
154
+ {
155
+ "$ref": "#/$defs/__schema1"
156
+ },
157
+ {
158
+ "type": "null"
159
+ }
160
+ ]
161
+ },
162
+ "budget": {
163
+ "type": "object",
164
+ "properties": {
165
+ "reservedSpendUsd": {
166
+ "type": "number",
167
+ "minimum": 0
168
+ },
169
+ "settledSpendUsd": {
170
+ "type": "number",
171
+ "minimum": 0
172
+ },
173
+ "committedSpendUsd": {
174
+ "type": "number",
175
+ "minimum": 0
176
+ },
177
+ "maximumIterationSpendUsd": {
178
+ "type": "number",
179
+ "minimum": 0
180
+ },
181
+ "maximumDailySpendUsd": {
182
+ "type": "number",
183
+ "minimum": 0
184
+ }
185
+ },
186
+ "required": [
187
+ "reservedSpendUsd",
188
+ "settledSpendUsd",
189
+ "committedSpendUsd",
190
+ "maximumIterationSpendUsd",
191
+ "maximumDailySpendUsd"
192
+ ],
193
+ "additionalProperties": false
194
+ }
195
+ },
196
+ "required": [
197
+ "policy",
198
+ "modelProjectId",
199
+ "inspectedAt",
200
+ "chain",
201
+ "counts",
202
+ "minimumApprovedExamples",
203
+ "canReserve",
204
+ "blockers",
205
+ "cooldownUntil",
206
+ "budget"
207
+ ],
208
+ "additionalProperties": false,
209
+ "$defs": {
210
+ "__schema0": {
211
+ "type": "string",
212
+ "minLength": 1,
213
+ "maxLength": 240
214
+ },
215
+ "__schema1": {
216
+ "type": "string",
217
+ "format": "date-time",
218
+ "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)))$"
219
+ },
220
+ "__schema2": {
221
+ "type": "object",
222
+ "properties": {
223
+ "code": {
224
+ "type": "string",
225
+ "minLength": 1,
226
+ "maxLength": 200
227
+ },
228
+ "message": {
229
+ "type": "string",
230
+ "minLength": 1,
231
+ "maxLength": 20000
232
+ }
233
+ },
234
+ "required": [
235
+ "code",
236
+ "message"
237
+ ],
238
+ "additionalProperties": false
239
+ }
240
+ },
241
+ "$id": "urn:openpond:learning:v1:policy-inspection",
242
+ "$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."
243
+ }
@@ -1,6 +1,27 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "oneOf": [
4
+ {
5
+ "type": "object",
6
+ "properties": {
7
+ "action": {
8
+ "type": "string",
9
+ "const": "inspect_policy"
10
+ },
11
+ "scope": {
12
+ "$ref": "#/$defs/__schema0"
13
+ },
14
+ "policy": {
15
+ "$ref": "#/$defs/__schema1"
16
+ }
17
+ },
18
+ "required": [
19
+ "action",
20
+ "scope",
21
+ "policy"
22
+ ],
23
+ "additionalProperties": false
24
+ },
4
25
  {
5
26
  "type": "object",
6
27
  "properties": {
@@ -12,27 +33,7 @@
12
33
  "$ref": "#/$defs/__schema0"
13
34
  },
14
35
  "evidence": {
15
- "type": "object",
16
- "properties": {
17
- "id": {
18
- "$ref": "#/$defs/__schema0"
19
- },
20
- "contentHash": {
21
- "type": "string",
22
- "pattern": "^[a-f0-9]{64}$"
23
- },
24
- "revision": {
25
- "type": "integer",
26
- "exclusiveMinimum": 0,
27
- "maximum": 9007199254740991
28
- }
29
- },
30
- "required": [
31
- "id",
32
- "contentHash",
33
- "revision"
34
- ],
35
- "additionalProperties": false
36
+ "$ref": "#/$defs/__schema1"
36
37
  }
37
38
  },
38
39
  "required": [
@@ -53,7 +54,7 @@
53
54
  "$ref": "#/$defs/__schema0"
54
55
  },
55
56
  "kind": {
56
- "$ref": "#/$defs/__schema1"
57
+ "$ref": "#/$defs/__schema2"
57
58
  },
58
59
  "id": {
59
60
  "$ref": "#/$defs/__schema0"
@@ -83,7 +84,7 @@
83
84
  "$ref": "#/$defs/__schema0"
84
85
  },
85
86
  "kind": {
86
- "$ref": "#/$defs/__schema1"
87
+ "$ref": "#/$defs/__schema2"
87
88
  },
88
89
  "parentId": {
89
90
  "$ref": "#/$defs/__schema0"
@@ -119,6 +120,29 @@
119
120
  "maxLength": 240
120
121
  },
121
122
  "__schema1": {
123
+ "type": "object",
124
+ "properties": {
125
+ "id": {
126
+ "$ref": "#/$defs/__schema0"
127
+ },
128
+ "contentHash": {
129
+ "type": "string",
130
+ "pattern": "^[a-f0-9]{64}$"
131
+ },
132
+ "revision": {
133
+ "type": "integer",
134
+ "exclusiveMinimum": 0,
135
+ "maximum": 9007199254740991
136
+ }
137
+ },
138
+ "required": [
139
+ "id",
140
+ "contentHash",
141
+ "revision"
142
+ ],
143
+ "additionalProperties": false
144
+ },
145
+ "__schema2": {
122
146
  "type": "string",
123
147
  "enum": [
124
148
  "draft",
@@ -137,6 +161,8 @@
137
161
  "consumption",
138
162
  "reservation",
139
163
  "dispatch",
164
+ "schedule",
165
+ "schedule_fire",
140
166
  "iteration",
141
167
  "grade",
142
168
  "package"