@fourier-labs/harbour-contracts 0.5.0 → 0.9.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.
- package/README.md +44 -4
- package/contract-release.json +134 -0
- package/dist/gen-ts/ai-budget-ledger-event.d.ts +21 -0
- package/dist/gen-ts/ai-budget-ledger-event.js +3 -0
- package/dist/gen-ts/ai-classification-stamp.d.ts +25 -0
- package/dist/gen-ts/ai-classification-stamp.js +3 -0
- package/dist/gen-ts/ai-composite-policy-digest-helper.d.ts +5 -0
- package/dist/gen-ts/ai-composite-policy-digest-helper.js +13 -0
- package/dist/gen-ts/ai-composite-policy-digest.d.ts +12 -0
- package/dist/gen-ts/ai-composite-policy-digest.js +3 -0
- package/dist/gen-ts/ai-deployment-gate-decision.d.ts +27 -0
- package/dist/gen-ts/ai-deployment-gate-decision.js +3 -0
- package/dist/gen-ts/ai-gateway-key-lifecycle-event.d.ts +49 -0
- package/dist/gen-ts/ai-gateway-key-lifecycle-event.js +16 -0
- package/dist/gen-ts/ai-governance-decision.d.ts +14 -2
- package/dist/gen-ts/ai-metering-policy.d.ts +16 -0
- package/dist/gen-ts/ai-metering-policy.js +3 -0
- package/dist/gen-ts/ai-policy-snapshot.d.ts +5 -269
- package/dist/gen-ts/ai-pricing-revision.d.ts +29 -0
- package/dist/gen-ts/ai-pricing-revision.js +3 -0
- package/dist/gen-ts/ai-runtime-binding.d.ts +14 -0
- package/dist/gen-ts/ai-runtime-binding.js +3 -0
- package/dist/gen-ts/ai-runtime-contract.d.ts +16 -1
- package/dist/gen-ts/ai-trace-event-v2.d.ts +31 -0
- package/dist/gen-ts/ai-trace-event-v2.js +3 -0
- package/dist/gen-ts/ai-transform-event.d.ts +2 -21
- package/dist/gen-ts/ai-transform-result.d.ts +1 -1
- package/dist/gen-ts/ai-verification-evidence.d.ts +2 -1
- package/dist/gen-ts/contract-release.d.ts +7 -0
- package/dist/gen-ts/contract-release.js +9 -0
- package/dist/gen-ts/data-grant.d.ts +1 -1
- package/dist/gen-ts/error-category-registry.d.ts +5 -0
- package/dist/gen-ts/error-category-registry.js +10 -0
- package/dist/gen-ts/index.d.ts +12 -0
- package/dist/gen-ts/index.js +12 -0
- package/dist/gen-ts/kvs-routing-entry.d.ts +19 -5
- package/dist/gen-ts/promotion-request.d.ts +23 -0
- package/dist/gen-ts/transform-report.d.ts +102 -0
- package/dist/gen-ts/transform-report.js +3 -0
- package/fixtures/ai/valid-blocked-trace-event.json +31 -0
- package/fixtures/ai/valid-budget-ledger-event.json +15 -0
- package/fixtures/ai/valid-classification-stamp.json +19 -0
- package/fixtures/ai/valid-composite-policy-digest.json +11 -0
- package/fixtures/ai/valid-deployment-gate-decision.json +18 -0
- package/fixtures/ai/valid-failed-trace-event.json +50 -0
- package/fixtures/ai/valid-gateway-key-lifecycle-event.json +16 -0
- package/fixtures/ai/valid-gateway-key-lookup.json +14 -0
- package/fixtures/ai/valid-governance-decision.json +53 -0
- package/fixtures/ai/valid-inventory.json +30 -0
- package/fixtures/ai/valid-metering-policy.json +8 -0
- package/fixtures/ai/valid-policy-snapshot.json +117 -0
- package/fixtures/ai/valid-pricing-revision.json +14 -0
- package/fixtures/ai/valid-runtime-binding.json +7 -0
- package/fixtures/ai/valid-runtime-contract.json +24 -0
- package/fixtures/ai/valid-trace-event-v2.json +24 -0
- package/fixtures/ai/valid-trace-event.json +41 -0
- package/fixtures/ai/valid-transform-event.json +32 -0
- package/fixtures/ai/valid-transform-result.json +23 -0
- package/fixtures/ai/valid-verification-evidence.json +33 -0
- package/gen-ts/ai-budget-ledger-event.ts +25 -0
- package/gen-ts/ai-callsite-inventory.ts +64 -0
- package/gen-ts/ai-classification-stamp.ts +28 -0
- package/gen-ts/ai-composite-policy-digest-helper.ts +18 -0
- package/gen-ts/ai-composite-policy-digest.ts +16 -0
- package/gen-ts/ai-deployment-gate-decision.ts +30 -0
- package/gen-ts/ai-gateway-key-lifecycle-event.ts +81 -0
- package/gen-ts/ai-gateway-key-lookup.ts +23 -0
- package/gen-ts/ai-gateway-key-token.ts +7 -0
- package/gen-ts/ai-governance-decision.ts +90 -0
- package/gen-ts/ai-metering-policy.ts +20 -0
- package/gen-ts/ai-policy-snapshot.ts +169 -0
- package/gen-ts/ai-pricing-revision.ts +33 -0
- package/gen-ts/ai-runtime-binding.ts +18 -0
- package/gen-ts/ai-runtime-contract.ts +46 -0
- package/gen-ts/ai-trace-event-v2.ts +35 -0
- package/gen-ts/ai-trace-event.ts +72 -0
- package/gen-ts/ai-transform-event.ts +51 -0
- package/gen-ts/ai-transform-result.ts +36 -0
- package/gen-ts/ai-verification-evidence.ts +54 -0
- package/gen-ts/api-error-response.ts +16 -0
- package/gen-ts/artifact-contract.ts +81 -0
- package/gen-ts/contract-release.ts +10 -0
- package/gen-ts/data-dependency.ts +46 -0
- package/gen-ts/data-grant.ts +71 -0
- package/gen-ts/data-source.ts +78 -0
- package/gen-ts/deploy-request.ts +66 -0
- package/gen-ts/deploy-response.ts +25 -0
- package/gen-ts/deployment-environment.ts +7 -0
- package/gen-ts/deployment-source.ts +16 -0
- package/gen-ts/deployment-status-failure.ts +12 -0
- package/gen-ts/deployment-status-request.ts +11 -0
- package/gen-ts/deployment-status-response.ts +39 -0
- package/gen-ts/env-bindings.ts +64 -0
- package/gen-ts/error-category-registry.ts +108 -0
- package/gen-ts/error-category.ts +7 -0
- package/gen-ts/error-envelope.ts +49 -0
- package/gen-ts/index.ts +47 -0
- package/gen-ts/kvs-routing-entry.ts +30 -0
- package/gen-ts/promotion-request.ts +43 -0
- package/gen-ts/promotion-response.ts +20 -0
- package/gen-ts/secret-reference.ts +40 -0
- package/gen-ts/transform-report.ts +105 -0
- package/gen-ts/version-state-machine.ts +52 -0
- package/gen-ts/version-state.ts +19 -0
- package/package.json +8 -4
- package/schema/ai-budget-ledger-event.schema.json +29 -0
- package/schema/ai-classification-stamp.schema.json +40 -0
- package/schema/ai-composite-policy-digest.schema.json +27 -0
- package/schema/ai-deployment-gate-decision.schema.json +38 -0
- package/schema/ai-gateway-key-lifecycle-event.schema.json +61 -0
- package/schema/ai-governance-decision.schema.json +23 -2
- package/schema/ai-metering-policy.schema.json +18 -0
- package/schema/ai-pricing-revision.schema.json +38 -0
- package/schema/ai-runtime-binding.schema.json +26 -0
- package/schema/ai-runtime-contract.schema.json +24 -2
- package/schema/ai-trace-event-v2.schema.json +41 -0
- package/schema/ai-verification-evidence.schema.json +1 -0
- package/schema/error-category.enum.json +6 -1
- package/schema/kvs-routing-entry.schema.json +28 -8
- package/schema/promotion-request.schema.json +38 -0
- package/schema/transform-report.schema.json +204 -0
|
@@ -33,7 +33,7 @@ export type AiPolicyEmbeddedJsonSchema = {
|
|
|
33
33
|
* @minItems 1
|
|
34
34
|
* @maxItems 64
|
|
35
35
|
*/
|
|
36
|
-
enum?:
|
|
36
|
+
enum?: (string | number | boolean | null)[];
|
|
37
37
|
minimum?: number;
|
|
38
38
|
maximum?: number;
|
|
39
39
|
minLength?: number;
|
|
@@ -93,7 +93,7 @@ export interface AiPolicyModel {
|
|
|
93
93
|
* @minItems 1
|
|
94
94
|
* @maxItems 2
|
|
95
95
|
*/
|
|
96
|
-
capabilities:
|
|
96
|
+
capabilities: ('generation' | 'embeddings')[];
|
|
97
97
|
approved: boolean;
|
|
98
98
|
pricing: AiPolicyPricing;
|
|
99
99
|
}
|
|
@@ -110,139 +110,7 @@ export interface AiPolicyRoute {
|
|
|
110
110
|
* @minItems 1
|
|
111
111
|
* @maxItems 16
|
|
112
112
|
*/
|
|
113
|
-
targets:
|
|
114
|
-
AiPolicyRouteTarget,
|
|
115
|
-
AiPolicyRouteTarget,
|
|
116
|
-
AiPolicyRouteTarget,
|
|
117
|
-
AiPolicyRouteTarget,
|
|
118
|
-
AiPolicyRouteTarget,
|
|
119
|
-
AiPolicyRouteTarget
|
|
120
|
-
] | [
|
|
121
|
-
AiPolicyRouteTarget,
|
|
122
|
-
AiPolicyRouteTarget,
|
|
123
|
-
AiPolicyRouteTarget,
|
|
124
|
-
AiPolicyRouteTarget,
|
|
125
|
-
AiPolicyRouteTarget,
|
|
126
|
-
AiPolicyRouteTarget,
|
|
127
|
-
AiPolicyRouteTarget
|
|
128
|
-
] | [
|
|
129
|
-
AiPolicyRouteTarget,
|
|
130
|
-
AiPolicyRouteTarget,
|
|
131
|
-
AiPolicyRouteTarget,
|
|
132
|
-
AiPolicyRouteTarget,
|
|
133
|
-
AiPolicyRouteTarget,
|
|
134
|
-
AiPolicyRouteTarget,
|
|
135
|
-
AiPolicyRouteTarget,
|
|
136
|
-
AiPolicyRouteTarget
|
|
137
|
-
] | [
|
|
138
|
-
AiPolicyRouteTarget,
|
|
139
|
-
AiPolicyRouteTarget,
|
|
140
|
-
AiPolicyRouteTarget,
|
|
141
|
-
AiPolicyRouteTarget,
|
|
142
|
-
AiPolicyRouteTarget,
|
|
143
|
-
AiPolicyRouteTarget,
|
|
144
|
-
AiPolicyRouteTarget,
|
|
145
|
-
AiPolicyRouteTarget,
|
|
146
|
-
AiPolicyRouteTarget
|
|
147
|
-
] | [
|
|
148
|
-
AiPolicyRouteTarget,
|
|
149
|
-
AiPolicyRouteTarget,
|
|
150
|
-
AiPolicyRouteTarget,
|
|
151
|
-
AiPolicyRouteTarget,
|
|
152
|
-
AiPolicyRouteTarget,
|
|
153
|
-
AiPolicyRouteTarget,
|
|
154
|
-
AiPolicyRouteTarget,
|
|
155
|
-
AiPolicyRouteTarget,
|
|
156
|
-
AiPolicyRouteTarget,
|
|
157
|
-
AiPolicyRouteTarget
|
|
158
|
-
] | [
|
|
159
|
-
AiPolicyRouteTarget,
|
|
160
|
-
AiPolicyRouteTarget,
|
|
161
|
-
AiPolicyRouteTarget,
|
|
162
|
-
AiPolicyRouteTarget,
|
|
163
|
-
AiPolicyRouteTarget,
|
|
164
|
-
AiPolicyRouteTarget,
|
|
165
|
-
AiPolicyRouteTarget,
|
|
166
|
-
AiPolicyRouteTarget,
|
|
167
|
-
AiPolicyRouteTarget,
|
|
168
|
-
AiPolicyRouteTarget,
|
|
169
|
-
AiPolicyRouteTarget
|
|
170
|
-
] | [
|
|
171
|
-
AiPolicyRouteTarget,
|
|
172
|
-
AiPolicyRouteTarget,
|
|
173
|
-
AiPolicyRouteTarget,
|
|
174
|
-
AiPolicyRouteTarget,
|
|
175
|
-
AiPolicyRouteTarget,
|
|
176
|
-
AiPolicyRouteTarget,
|
|
177
|
-
AiPolicyRouteTarget,
|
|
178
|
-
AiPolicyRouteTarget,
|
|
179
|
-
AiPolicyRouteTarget,
|
|
180
|
-
AiPolicyRouteTarget,
|
|
181
|
-
AiPolicyRouteTarget,
|
|
182
|
-
AiPolicyRouteTarget
|
|
183
|
-
] | [
|
|
184
|
-
AiPolicyRouteTarget,
|
|
185
|
-
AiPolicyRouteTarget,
|
|
186
|
-
AiPolicyRouteTarget,
|
|
187
|
-
AiPolicyRouteTarget,
|
|
188
|
-
AiPolicyRouteTarget,
|
|
189
|
-
AiPolicyRouteTarget,
|
|
190
|
-
AiPolicyRouteTarget,
|
|
191
|
-
AiPolicyRouteTarget,
|
|
192
|
-
AiPolicyRouteTarget,
|
|
193
|
-
AiPolicyRouteTarget,
|
|
194
|
-
AiPolicyRouteTarget,
|
|
195
|
-
AiPolicyRouteTarget,
|
|
196
|
-
AiPolicyRouteTarget
|
|
197
|
-
] | [
|
|
198
|
-
AiPolicyRouteTarget,
|
|
199
|
-
AiPolicyRouteTarget,
|
|
200
|
-
AiPolicyRouteTarget,
|
|
201
|
-
AiPolicyRouteTarget,
|
|
202
|
-
AiPolicyRouteTarget,
|
|
203
|
-
AiPolicyRouteTarget,
|
|
204
|
-
AiPolicyRouteTarget,
|
|
205
|
-
AiPolicyRouteTarget,
|
|
206
|
-
AiPolicyRouteTarget,
|
|
207
|
-
AiPolicyRouteTarget,
|
|
208
|
-
AiPolicyRouteTarget,
|
|
209
|
-
AiPolicyRouteTarget,
|
|
210
|
-
AiPolicyRouteTarget,
|
|
211
|
-
AiPolicyRouteTarget
|
|
212
|
-
] | [
|
|
213
|
-
AiPolicyRouteTarget,
|
|
214
|
-
AiPolicyRouteTarget,
|
|
215
|
-
AiPolicyRouteTarget,
|
|
216
|
-
AiPolicyRouteTarget,
|
|
217
|
-
AiPolicyRouteTarget,
|
|
218
|
-
AiPolicyRouteTarget,
|
|
219
|
-
AiPolicyRouteTarget,
|
|
220
|
-
AiPolicyRouteTarget,
|
|
221
|
-
AiPolicyRouteTarget,
|
|
222
|
-
AiPolicyRouteTarget,
|
|
223
|
-
AiPolicyRouteTarget,
|
|
224
|
-
AiPolicyRouteTarget,
|
|
225
|
-
AiPolicyRouteTarget,
|
|
226
|
-
AiPolicyRouteTarget,
|
|
227
|
-
AiPolicyRouteTarget
|
|
228
|
-
] | [
|
|
229
|
-
AiPolicyRouteTarget,
|
|
230
|
-
AiPolicyRouteTarget,
|
|
231
|
-
AiPolicyRouteTarget,
|
|
232
|
-
AiPolicyRouteTarget,
|
|
233
|
-
AiPolicyRouteTarget,
|
|
234
|
-
AiPolicyRouteTarget,
|
|
235
|
-
AiPolicyRouteTarget,
|
|
236
|
-
AiPolicyRouteTarget,
|
|
237
|
-
AiPolicyRouteTarget,
|
|
238
|
-
AiPolicyRouteTarget,
|
|
239
|
-
AiPolicyRouteTarget,
|
|
240
|
-
AiPolicyRouteTarget,
|
|
241
|
-
AiPolicyRouteTarget,
|
|
242
|
-
AiPolicyRouteTarget,
|
|
243
|
-
AiPolicyRouteTarget,
|
|
244
|
-
AiPolicyRouteTarget
|
|
245
|
-
];
|
|
113
|
+
targets: AiPolicyRouteTarget[];
|
|
246
114
|
retryCount: number;
|
|
247
115
|
timeoutMs: number;
|
|
248
116
|
}
|
|
@@ -275,7 +143,7 @@ export interface AiPolicyGuardrailParameters {
|
|
|
275
143
|
* @minItems 1
|
|
276
144
|
* @maxItems 64
|
|
277
145
|
*/
|
|
278
|
-
allowedTools?:
|
|
146
|
+
allowedTools?: string[];
|
|
279
147
|
jsonSchema?: AiPolicyEmbeddedJsonSchema;
|
|
280
148
|
jsonSchemaRef?: AiPolicyDigest;
|
|
281
149
|
}
|
|
@@ -293,137 +161,5 @@ export interface AiPolicyRetention {
|
|
|
293
161
|
/**
|
|
294
162
|
* @maxItems 16
|
|
295
163
|
*/
|
|
296
|
-
revealRoles:
|
|
297
|
-
AiPolicyIdentifier,
|
|
298
|
-
AiPolicyIdentifier,
|
|
299
|
-
AiPolicyIdentifier,
|
|
300
|
-
AiPolicyIdentifier,
|
|
301
|
-
AiPolicyIdentifier,
|
|
302
|
-
AiPolicyIdentifier
|
|
303
|
-
] | [
|
|
304
|
-
AiPolicyIdentifier,
|
|
305
|
-
AiPolicyIdentifier,
|
|
306
|
-
AiPolicyIdentifier,
|
|
307
|
-
AiPolicyIdentifier,
|
|
308
|
-
AiPolicyIdentifier,
|
|
309
|
-
AiPolicyIdentifier,
|
|
310
|
-
AiPolicyIdentifier
|
|
311
|
-
] | [
|
|
312
|
-
AiPolicyIdentifier,
|
|
313
|
-
AiPolicyIdentifier,
|
|
314
|
-
AiPolicyIdentifier,
|
|
315
|
-
AiPolicyIdentifier,
|
|
316
|
-
AiPolicyIdentifier,
|
|
317
|
-
AiPolicyIdentifier,
|
|
318
|
-
AiPolicyIdentifier,
|
|
319
|
-
AiPolicyIdentifier
|
|
320
|
-
] | [
|
|
321
|
-
AiPolicyIdentifier,
|
|
322
|
-
AiPolicyIdentifier,
|
|
323
|
-
AiPolicyIdentifier,
|
|
324
|
-
AiPolicyIdentifier,
|
|
325
|
-
AiPolicyIdentifier,
|
|
326
|
-
AiPolicyIdentifier,
|
|
327
|
-
AiPolicyIdentifier,
|
|
328
|
-
AiPolicyIdentifier,
|
|
329
|
-
AiPolicyIdentifier
|
|
330
|
-
] | [
|
|
331
|
-
AiPolicyIdentifier,
|
|
332
|
-
AiPolicyIdentifier,
|
|
333
|
-
AiPolicyIdentifier,
|
|
334
|
-
AiPolicyIdentifier,
|
|
335
|
-
AiPolicyIdentifier,
|
|
336
|
-
AiPolicyIdentifier,
|
|
337
|
-
AiPolicyIdentifier,
|
|
338
|
-
AiPolicyIdentifier,
|
|
339
|
-
AiPolicyIdentifier,
|
|
340
|
-
AiPolicyIdentifier
|
|
341
|
-
] | [
|
|
342
|
-
AiPolicyIdentifier,
|
|
343
|
-
AiPolicyIdentifier,
|
|
344
|
-
AiPolicyIdentifier,
|
|
345
|
-
AiPolicyIdentifier,
|
|
346
|
-
AiPolicyIdentifier,
|
|
347
|
-
AiPolicyIdentifier,
|
|
348
|
-
AiPolicyIdentifier,
|
|
349
|
-
AiPolicyIdentifier,
|
|
350
|
-
AiPolicyIdentifier,
|
|
351
|
-
AiPolicyIdentifier,
|
|
352
|
-
AiPolicyIdentifier
|
|
353
|
-
] | [
|
|
354
|
-
AiPolicyIdentifier,
|
|
355
|
-
AiPolicyIdentifier,
|
|
356
|
-
AiPolicyIdentifier,
|
|
357
|
-
AiPolicyIdentifier,
|
|
358
|
-
AiPolicyIdentifier,
|
|
359
|
-
AiPolicyIdentifier,
|
|
360
|
-
AiPolicyIdentifier,
|
|
361
|
-
AiPolicyIdentifier,
|
|
362
|
-
AiPolicyIdentifier,
|
|
363
|
-
AiPolicyIdentifier,
|
|
364
|
-
AiPolicyIdentifier,
|
|
365
|
-
AiPolicyIdentifier
|
|
366
|
-
] | [
|
|
367
|
-
AiPolicyIdentifier,
|
|
368
|
-
AiPolicyIdentifier,
|
|
369
|
-
AiPolicyIdentifier,
|
|
370
|
-
AiPolicyIdentifier,
|
|
371
|
-
AiPolicyIdentifier,
|
|
372
|
-
AiPolicyIdentifier,
|
|
373
|
-
AiPolicyIdentifier,
|
|
374
|
-
AiPolicyIdentifier,
|
|
375
|
-
AiPolicyIdentifier,
|
|
376
|
-
AiPolicyIdentifier,
|
|
377
|
-
AiPolicyIdentifier,
|
|
378
|
-
AiPolicyIdentifier,
|
|
379
|
-
AiPolicyIdentifier
|
|
380
|
-
] | [
|
|
381
|
-
AiPolicyIdentifier,
|
|
382
|
-
AiPolicyIdentifier,
|
|
383
|
-
AiPolicyIdentifier,
|
|
384
|
-
AiPolicyIdentifier,
|
|
385
|
-
AiPolicyIdentifier,
|
|
386
|
-
AiPolicyIdentifier,
|
|
387
|
-
AiPolicyIdentifier,
|
|
388
|
-
AiPolicyIdentifier,
|
|
389
|
-
AiPolicyIdentifier,
|
|
390
|
-
AiPolicyIdentifier,
|
|
391
|
-
AiPolicyIdentifier,
|
|
392
|
-
AiPolicyIdentifier,
|
|
393
|
-
AiPolicyIdentifier,
|
|
394
|
-
AiPolicyIdentifier
|
|
395
|
-
] | [
|
|
396
|
-
AiPolicyIdentifier,
|
|
397
|
-
AiPolicyIdentifier,
|
|
398
|
-
AiPolicyIdentifier,
|
|
399
|
-
AiPolicyIdentifier,
|
|
400
|
-
AiPolicyIdentifier,
|
|
401
|
-
AiPolicyIdentifier,
|
|
402
|
-
AiPolicyIdentifier,
|
|
403
|
-
AiPolicyIdentifier,
|
|
404
|
-
AiPolicyIdentifier,
|
|
405
|
-
AiPolicyIdentifier,
|
|
406
|
-
AiPolicyIdentifier,
|
|
407
|
-
AiPolicyIdentifier,
|
|
408
|
-
AiPolicyIdentifier,
|
|
409
|
-
AiPolicyIdentifier,
|
|
410
|
-
AiPolicyIdentifier
|
|
411
|
-
] | [
|
|
412
|
-
AiPolicyIdentifier,
|
|
413
|
-
AiPolicyIdentifier,
|
|
414
|
-
AiPolicyIdentifier,
|
|
415
|
-
AiPolicyIdentifier,
|
|
416
|
-
AiPolicyIdentifier,
|
|
417
|
-
AiPolicyIdentifier,
|
|
418
|
-
AiPolicyIdentifier,
|
|
419
|
-
AiPolicyIdentifier,
|
|
420
|
-
AiPolicyIdentifier,
|
|
421
|
-
AiPolicyIdentifier,
|
|
422
|
-
AiPolicyIdentifier,
|
|
423
|
-
AiPolicyIdentifier,
|
|
424
|
-
AiPolicyIdentifier,
|
|
425
|
-
AiPolicyIdentifier,
|
|
426
|
-
AiPolicyIdentifier,
|
|
427
|
-
AiPolicyIdentifier
|
|
428
|
-
];
|
|
164
|
+
revealRoles: AiPolicyIdentifier[];
|
|
429
165
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export type AiPricingIdentifier = string;
|
|
2
|
+
export type AiPricingDigest = string;
|
|
3
|
+
/**
|
|
4
|
+
* Immutable v2 line-item pricing revision. A correction is a new revision; published records are never edited.
|
|
5
|
+
*/
|
|
6
|
+
export interface AiPricingRevision {
|
|
7
|
+
schema: 'harbour.ai-pricing-revision/2.0';
|
|
8
|
+
revisionId: AiPricingIdentifier;
|
|
9
|
+
provider: 'openai' | 'anthropic' | 'gemini' | 'openrouter';
|
|
10
|
+
providerModel: string;
|
|
11
|
+
region?: AiPricingIdentifier;
|
|
12
|
+
currency: 'USD';
|
|
13
|
+
/**
|
|
14
|
+
* @minItems 1
|
|
15
|
+
* @maxItems 64
|
|
16
|
+
*/
|
|
17
|
+
dimensions: PriceDimension[];
|
|
18
|
+
supersedesRevisionId?: AiPricingIdentifier;
|
|
19
|
+
revisionDigest: AiPricingDigest;
|
|
20
|
+
effectiveAt: string;
|
|
21
|
+
publishedAt: string;
|
|
22
|
+
}
|
|
23
|
+
export interface PriceDimension {
|
|
24
|
+
dimension: AiPricingIdentifier;
|
|
25
|
+
direction: 'input' | 'output';
|
|
26
|
+
unit: AiPricingIdentifier;
|
|
27
|
+
scale: number;
|
|
28
|
+
microUsdPerScale: number;
|
|
29
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A value-free hierarchical identifier. Schemes are an additive reviewed registry; userinfo, ports, percent encoding, query strings, fragments and empty path segments are unrepresentable.
|
|
3
|
+
*/
|
|
4
|
+
export type AiRuntimeSafeReference = string;
|
|
5
|
+
/**
|
|
6
|
+
* Platform-neutral, value-free binding of one workload identity to one version-scoped Harbour Gateway secret. Platform adapters may add implementation details internally; they never enter this contract.
|
|
7
|
+
*/
|
|
8
|
+
export interface AiRuntimeBinding {
|
|
9
|
+
schema: 'harbour.ai-runtime-binding/1.0';
|
|
10
|
+
platform: string;
|
|
11
|
+
workloadIdentityRef: AiRuntimeSafeReference;
|
|
12
|
+
secretRef: AiRuntimeSafeReference;
|
|
13
|
+
runtimeBindingDigest: string;
|
|
14
|
+
}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export type AiRuntimeIdentifier = string;
|
|
2
2
|
export type AiRuntimeModelAlias = string;
|
|
3
3
|
export type AiRuntimeDigest = string;
|
|
4
|
+
/**
|
|
5
|
+
* Platform-neutral value-free hierarchical reference using the additive reviewed scheme registry; no userinfo, query, fragment, port or percent encoding.
|
|
6
|
+
*/
|
|
7
|
+
export type AiRuntimeContractSafeReference = string;
|
|
4
8
|
/**
|
|
5
9
|
* Immutable deployment runtime contract derived by an AI Governance PLAN decision. Contains only scoped configuration and a Secrets Manager reference, never key plaintext.
|
|
6
10
|
*/
|
|
@@ -19,9 +23,20 @@ export interface AiRuntimeContract {
|
|
|
19
23
|
embeddings?: AiRuntimeModelAlias;
|
|
20
24
|
};
|
|
21
25
|
policyDigest: AiRuntimeDigest;
|
|
26
|
+
runtimeBinding?: AiRuntimeContractBinding;
|
|
22
27
|
/**
|
|
23
28
|
* @minItems 1
|
|
24
29
|
* @maxItems 2
|
|
25
30
|
*/
|
|
26
|
-
requiredStrategies:
|
|
31
|
+
requiredStrategies: ('deployment_injection' | 'deterministic_adapter')[];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Optional additive platform-neutral binding. Existing 1.0 records without it remain valid.
|
|
35
|
+
*/
|
|
36
|
+
export interface AiRuntimeContractBinding {
|
|
37
|
+
schema: 'harbour.ai-runtime-binding/1.0';
|
|
38
|
+
platform: string;
|
|
39
|
+
workloadIdentityRef: AiRuntimeContractSafeReference;
|
|
40
|
+
secretRef: AiRuntimeContractSafeReference;
|
|
41
|
+
runtimeBindingDigest: AiRuntimeDigest;
|
|
27
42
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type AiTraceV2Digest = string;
|
|
2
|
+
export type AiTraceV2Identifier = string;
|
|
3
|
+
/**
|
|
4
|
+
* Additive metering projection linked to a readable v1 trace. It carries dimension-level reported or estimated usage without changing the v1 event.
|
|
5
|
+
*/
|
|
6
|
+
export interface AiTraceEventV2 {
|
|
7
|
+
schema: 'harbour.ai-trace-event/2.0';
|
|
8
|
+
traceId: string;
|
|
9
|
+
requestId: string;
|
|
10
|
+
policyDigest: AiTraceV2Digest;
|
|
11
|
+
outcome: 'succeeded' | 'blocked' | 'failed' | 'cancelled';
|
|
12
|
+
/**
|
|
13
|
+
* @maxItems 256
|
|
14
|
+
*/
|
|
15
|
+
usageLineItems: UsageLineItem[];
|
|
16
|
+
totalCostMicroUsd: number;
|
|
17
|
+
reservationId?: string;
|
|
18
|
+
meteringStatus: 'settled' | 'reserved' | 'unknown' | 'repaired';
|
|
19
|
+
occurredAt: string;
|
|
20
|
+
}
|
|
21
|
+
export interface UsageLineItem {
|
|
22
|
+
attempt: number;
|
|
23
|
+
dimension: AiTraceV2Identifier;
|
|
24
|
+
direction: 'input' | 'output';
|
|
25
|
+
quantity: number;
|
|
26
|
+
unit: AiTraceV2Identifier;
|
|
27
|
+
priceRevisionDigest: AiTraceV2Digest;
|
|
28
|
+
scale: number;
|
|
29
|
+
costMicroUsd: number;
|
|
30
|
+
provenance: 'reported' | 'estimated';
|
|
31
|
+
}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
export type AiTransformIdentifier = string;
|
|
2
2
|
export type AiTransformDigest = string;
|
|
3
3
|
export type AiTransformPlanEntry = {
|
|
4
|
-
[k: string]: unknown;
|
|
5
|
-
} & {
|
|
6
4
|
callSiteFingerprint: AiTransformDigest;
|
|
7
5
|
sourcePath: string;
|
|
8
6
|
expectedSourceFileSha256: AiTransformDigest;
|
|
@@ -15,24 +13,7 @@ export type AiTransformPlanEntry = {
|
|
|
15
13
|
* @minItems 1
|
|
16
14
|
* @maxItems 32
|
|
17
15
|
*/
|
|
18
|
-
allowedSyntaxKinds:
|
|
19
|
-
runtimeShimName?: string;
|
|
20
|
-
runtimeShimVersion?: string;
|
|
21
|
-
runtimeShimDigest?: AiTransformDigest;
|
|
22
|
-
} & {
|
|
23
|
-
callSiteFingerprint: AiTransformDigest;
|
|
24
|
-
sourcePath: string;
|
|
25
|
-
expectedSourceFileSha256: AiTransformDigest;
|
|
26
|
-
strategy: 'deployment_injection' | 'deterministic_adapter';
|
|
27
|
-
configurationMappingId?: AiTransformIdentifier;
|
|
28
|
-
configurationMappingVersion?: string;
|
|
29
|
-
transformId?: AiTransformIdentifier;
|
|
30
|
-
transformVersion?: string;
|
|
31
|
-
/**
|
|
32
|
-
* @minItems 1
|
|
33
|
-
* @maxItems 32
|
|
34
|
-
*/
|
|
35
|
-
allowedSyntaxKinds: [AiTransformIdentifier, ...AiTransformIdentifier[]];
|
|
16
|
+
allowedSyntaxKinds: AiTransformIdentifier[];
|
|
36
17
|
runtimeShimName?: string;
|
|
37
18
|
runtimeShimVersion?: string;
|
|
38
19
|
runtimeShimDigest?: AiTransformDigest;
|
|
@@ -56,7 +37,7 @@ export interface AiTransformEvent {
|
|
|
56
37
|
* @minItems 1
|
|
57
38
|
* @maxItems 1000
|
|
58
39
|
*/
|
|
59
|
-
entries:
|
|
40
|
+
entries: AiTransformPlanEntry[];
|
|
60
41
|
}
|
|
61
42
|
export interface AiTransformWorkspace {
|
|
62
43
|
bucket: string;
|
|
@@ -14,6 +14,7 @@ export interface AiVerificationEvidence {
|
|
|
14
14
|
interceptionPlanDigest: AiVerificationDigest;
|
|
15
15
|
runtimeContractDigest: AiVerificationDigest;
|
|
16
16
|
policyDigest: AiVerificationDigest;
|
|
17
|
+
runtimeBindingDigest?: AiVerificationDigest;
|
|
17
18
|
finalWorkspaceDigest: AiVerificationDigest;
|
|
18
19
|
/**
|
|
19
20
|
* @maxItems 1000
|
|
@@ -27,7 +28,7 @@ export interface AiVerificationEvidence {
|
|
|
27
28
|
* @minItems 1
|
|
28
29
|
* @maxItems 32
|
|
29
30
|
*/
|
|
30
|
-
endpointChecks:
|
|
31
|
+
endpointChecks: AiVerificationEndpointCheck[];
|
|
31
32
|
providerCredentialsAbsent: true;
|
|
32
33
|
smokeTraceId: string;
|
|
33
34
|
evidenceDigest: AiVerificationDigest;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const ContractRepositoryVersion: "0.9.0.0";
|
|
2
|
+
export declare const ContractPublishVersion: "0.9.0";
|
|
3
|
+
export declare const ContractPublishTag: "v0.9.0";
|
|
4
|
+
export declare const ContractSchemasDigest: "sha256:df73090b9fbbac8a39d0ec92e929f4d687bd7920de583fb2463bf8570dc68ebb";
|
|
5
|
+
export declare const ContractAiFixturesDigest: "sha256:180a5f30cf0b6d93fa4c812a217d2365ffe22ac54d11626e71f8072fcf8f67c6";
|
|
6
|
+
export declare const ContractGeneratedGoDigest: "sha256:be376911aec8ee6359a38fdafebf343ce157255e19c544617b7bcccd4329e5de";
|
|
7
|
+
export declare const ContractGeneratedTypeScriptDigest: "sha256:857288e60b476b42dce0304ec05aff6af1f2719278959ed03740ef88af5e736b";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
// Code generated by tools/gen/gen.mjs from schema/*.json. DO NOT EDIT.
|
|
3
|
+
export const ContractRepositoryVersion = "0.9.0.0";
|
|
4
|
+
export const ContractPublishVersion = "0.9.0";
|
|
5
|
+
export const ContractPublishTag = "v0.9.0";
|
|
6
|
+
export const ContractSchemasDigest = "sha256:df73090b9fbbac8a39d0ec92e929f4d687bd7920de583fb2463bf8570dc68ebb";
|
|
7
|
+
export const ContractAiFixturesDigest = "sha256:180a5f30cf0b6d93fa4c812a217d2365ffe22ac54d11626e71f8072fcf8f67c6";
|
|
8
|
+
export const ContractGeneratedGoDigest = "sha256:be376911aec8ee6359a38fdafebf343ce157255e19c544617b7bcccd4329e5de";
|
|
9
|
+
export const ContractGeneratedTypeScriptDigest = "sha256:857288e60b476b42dce0304ec05aff6af1f2719278959ed03740ef88af5e736b";
|
|
@@ -4,6 +4,8 @@ export declare const ErrorCategories: {
|
|
|
4
4
|
readonly IntakeAttestationMissing: "intake.attestation-missing";
|
|
5
5
|
readonly IntakeMultiAppRepo: "intake.multi-app-repo";
|
|
6
6
|
readonly SecretsUnresolvable: "secrets.unresolvable";
|
|
7
|
+
readonly SecretsReferenceUnresolvable: "secrets.reference-unresolvable";
|
|
8
|
+
readonly SecretsPlaceholderUnresolved: "secrets.placeholder-unresolved";
|
|
7
9
|
readonly SecretsLeakedInArtifact: "secrets.leaked-in-artifact";
|
|
8
10
|
readonly StorageSqliteMisclassified: "storage.sqlite-misclassified";
|
|
9
11
|
readonly StorageMappingDrift: "storage.mapping-drift";
|
|
@@ -12,6 +14,8 @@ export declare const ErrorCategories: {
|
|
|
12
14
|
readonly FrontendEnvInlinedUnfixable: "frontend.env-inlined-unfixable";
|
|
13
15
|
readonly BuildRecipeFailed: "build.recipe-failed";
|
|
14
16
|
readonly BuildImageTooLarge: "build.image-too-large";
|
|
17
|
+
readonly BrowserProbeFailed: "browser.probe-failed";
|
|
18
|
+
readonly BrowserProbeUnavailable: "browser.probe-unavailable";
|
|
15
19
|
readonly VerifySmokeFailed: "verify.smoke-failed";
|
|
16
20
|
readonly VerifyCharacterizationDiverged: "verify.characterization-diverged";
|
|
17
21
|
readonly VerifyMigrationFromZeroFailed: "verify.migration-from-zero-failed";
|
|
@@ -27,6 +31,7 @@ export declare const ErrorCategories: {
|
|
|
27
31
|
readonly AdmissionAppNotRegistered: "admission.app-not-registered";
|
|
28
32
|
readonly DeployCommitNotOnBranch: "deploy.commit-not-on-branch";
|
|
29
33
|
readonly DeployQueuePublicationFailed: "deploy.queue-publication-failed";
|
|
34
|
+
readonly SourceBranchMoved: "source.branch-moved";
|
|
30
35
|
readonly PromotionPreviewNotPromotable: "promotion.preview-not-promotable";
|
|
31
36
|
readonly PromotionProductionBranchMoved: "promotion.production-branch-moved";
|
|
32
37
|
readonly PromotionSourceTreeMismatch: "promotion.source-tree-mismatch";
|
|
@@ -6,6 +6,8 @@ export const ErrorCategories = {
|
|
|
6
6
|
IntakeAttestationMissing: "intake.attestation-missing",
|
|
7
7
|
IntakeMultiAppRepo: "intake.multi-app-repo",
|
|
8
8
|
SecretsUnresolvable: "secrets.unresolvable",
|
|
9
|
+
SecretsReferenceUnresolvable: "secrets.reference-unresolvable",
|
|
10
|
+
SecretsPlaceholderUnresolved: "secrets.placeholder-unresolved",
|
|
9
11
|
SecretsLeakedInArtifact: "secrets.leaked-in-artifact",
|
|
10
12
|
StorageSqliteMisclassified: "storage.sqlite-misclassified",
|
|
11
13
|
StorageMappingDrift: "storage.mapping-drift",
|
|
@@ -14,6 +16,8 @@ export const ErrorCategories = {
|
|
|
14
16
|
FrontendEnvInlinedUnfixable: "frontend.env-inlined-unfixable",
|
|
15
17
|
BuildRecipeFailed: "build.recipe-failed",
|
|
16
18
|
BuildImageTooLarge: "build.image-too-large",
|
|
19
|
+
BrowserProbeFailed: "browser.probe-failed",
|
|
20
|
+
BrowserProbeUnavailable: "browser.probe-unavailable",
|
|
17
21
|
VerifySmokeFailed: "verify.smoke-failed",
|
|
18
22
|
VerifyCharacterizationDiverged: "verify.characterization-diverged",
|
|
19
23
|
VerifyMigrationFromZeroFailed: "verify.migration-from-zero-failed",
|
|
@@ -29,6 +33,7 @@ export const ErrorCategories = {
|
|
|
29
33
|
AdmissionAppNotRegistered: "admission.app-not-registered",
|
|
30
34
|
DeployCommitNotOnBranch: "deploy.commit-not-on-branch",
|
|
31
35
|
DeployQueuePublicationFailed: "deploy.queue-publication-failed",
|
|
36
|
+
SourceBranchMoved: "source.branch-moved",
|
|
32
37
|
PromotionPreviewNotPromotable: "promotion.preview-not-promotable",
|
|
33
38
|
PromotionProductionBranchMoved: "promotion.production-branch-moved",
|
|
34
39
|
PromotionSourceTreeMismatch: "promotion.source-tree-mismatch",
|
|
@@ -44,6 +49,8 @@ const retryableExact = {
|
|
|
44
49
|
"intake.attestation-missing": false,
|
|
45
50
|
"intake.multi-app-repo": false,
|
|
46
51
|
"secrets.unresolvable": false,
|
|
52
|
+
"secrets.reference-unresolvable": false,
|
|
53
|
+
"secrets.placeholder-unresolved": false,
|
|
47
54
|
"secrets.leaked-in-artifact": false,
|
|
48
55
|
"storage.sqlite-misclassified": false,
|
|
49
56
|
"storage.mapping-drift": false,
|
|
@@ -52,6 +59,8 @@ const retryableExact = {
|
|
|
52
59
|
"frontend.env-inlined-unfixable": false,
|
|
53
60
|
"build.recipe-failed": false,
|
|
54
61
|
"build.image-too-large": false,
|
|
62
|
+
"browser.probe-failed": true,
|
|
63
|
+
"browser.probe-unavailable": false,
|
|
55
64
|
"verify.smoke-failed": false,
|
|
56
65
|
"verify.characterization-diverged": false,
|
|
57
66
|
"verify.migration-from-zero-failed": false,
|
|
@@ -67,6 +76,7 @@ const retryableExact = {
|
|
|
67
76
|
"admission.app-not-registered": false,
|
|
68
77
|
"deploy.commit-not-on-branch": false,
|
|
69
78
|
"deploy.queue-publication-failed": true,
|
|
79
|
+
"source.branch-moved": false,
|
|
70
80
|
"promotion.preview-not-promotable": false,
|
|
71
81
|
"promotion.production-branch-moved": false,
|
|
72
82
|
"promotion.source-tree-mismatch": false,
|
package/dist/gen-ts/index.d.ts
CHANGED
|
@@ -1,15 +1,26 @@
|
|
|
1
|
+
export * from './ai-budget-ledger-event.js';
|
|
1
2
|
export * from './ai-callsite-inventory.js';
|
|
3
|
+
export * from './ai-classification-stamp.js';
|
|
4
|
+
export * from './ai-composite-policy-digest-helper.js';
|
|
5
|
+
export * from './ai-composite-policy-digest.js';
|
|
6
|
+
export * from './ai-deployment-gate-decision.js';
|
|
7
|
+
export * from './ai-gateway-key-lifecycle-event.js';
|
|
2
8
|
export * from './ai-gateway-key-lookup.js';
|
|
3
9
|
export * from './ai-gateway-key-token.js';
|
|
4
10
|
export * from './ai-governance-decision.js';
|
|
11
|
+
export * from './ai-metering-policy.js';
|
|
5
12
|
export * from './ai-policy-snapshot.js';
|
|
13
|
+
export * from './ai-pricing-revision.js';
|
|
14
|
+
export * from './ai-runtime-binding.js';
|
|
6
15
|
export * from './ai-runtime-contract.js';
|
|
16
|
+
export * from './ai-trace-event-v2.js';
|
|
7
17
|
export * from './ai-trace-event.js';
|
|
8
18
|
export * from './ai-transform-event.js';
|
|
9
19
|
export * from './ai-transform-result.js';
|
|
10
20
|
export * from './ai-verification-evidence.js';
|
|
11
21
|
export * from './api-error-response.js';
|
|
12
22
|
export * from './artifact-contract.js';
|
|
23
|
+
export * from './contract-release.js';
|
|
13
24
|
export * from './data-dependency.js';
|
|
14
25
|
export * from './data-grant.js';
|
|
15
26
|
export * from './data-source.js';
|
|
@@ -28,5 +39,6 @@ export * from './kvs-routing-entry.js';
|
|
|
28
39
|
export * from './promotion-request.js';
|
|
29
40
|
export * from './promotion-response.js';
|
|
30
41
|
export * from './secret-reference.js';
|
|
42
|
+
export * from './transform-report.js';
|
|
31
43
|
export * from './version-state-machine.js';
|
|
32
44
|
export * from './version-state.js';
|
package/dist/gen-ts/index.js
CHANGED
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
2
|
// Code generated by tools/gen/gen.mjs from schema/*.json. DO NOT EDIT.
|
|
3
|
+
export * from './ai-budget-ledger-event.js';
|
|
3
4
|
export * from './ai-callsite-inventory.js';
|
|
5
|
+
export * from './ai-classification-stamp.js';
|
|
6
|
+
export * from './ai-composite-policy-digest-helper.js';
|
|
7
|
+
export * from './ai-composite-policy-digest.js';
|
|
8
|
+
export * from './ai-deployment-gate-decision.js';
|
|
9
|
+
export * from './ai-gateway-key-lifecycle-event.js';
|
|
4
10
|
export * from './ai-gateway-key-lookup.js';
|
|
5
11
|
export * from './ai-gateway-key-token.js';
|
|
6
12
|
export * from './ai-governance-decision.js';
|
|
13
|
+
export * from './ai-metering-policy.js';
|
|
7
14
|
export * from './ai-policy-snapshot.js';
|
|
15
|
+
export * from './ai-pricing-revision.js';
|
|
16
|
+
export * from './ai-runtime-binding.js';
|
|
8
17
|
export * from './ai-runtime-contract.js';
|
|
18
|
+
export * from './ai-trace-event-v2.js';
|
|
9
19
|
export * from './ai-trace-event.js';
|
|
10
20
|
export * from './ai-transform-event.js';
|
|
11
21
|
export * from './ai-transform-result.js';
|
|
12
22
|
export * from './ai-verification-evidence.js';
|
|
13
23
|
export * from './api-error-response.js';
|
|
14
24
|
export * from './artifact-contract.js';
|
|
25
|
+
export * from './contract-release.js';
|
|
15
26
|
export * from './data-dependency.js';
|
|
16
27
|
export * from './data-grant.js';
|
|
17
28
|
export * from './data-source.js';
|
|
@@ -30,5 +41,6 @@ export * from './kvs-routing-entry.js';
|
|
|
30
41
|
export * from './promotion-request.js';
|
|
31
42
|
export * from './promotion-response.js';
|
|
32
43
|
export * from './secret-reference.js';
|
|
44
|
+
export * from './transform-report.js';
|
|
33
45
|
export * from './version-state-machine.js';
|
|
34
46
|
export * from './version-state.js';
|