@apexops/contracts 0.10.0-next.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 (101) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/artifacts.d.ts +60 -0
  3. package/dist/artifacts.d.ts.map +1 -0
  4. package/dist/artifacts.js +46 -0
  5. package/dist/artifacts.js.map +1 -0
  6. package/dist/common.d.ts +22 -0
  7. package/dist/common.d.ts.map +1 -0
  8. package/dist/common.js +23 -0
  9. package/dist/common.js.map +1 -0
  10. package/dist/deployment.d.ts +100 -0
  11. package/dist/deployment.d.ts.map +1 -0
  12. package/dist/deployment.js +108 -0
  13. package/dist/deployment.js.map +1 -0
  14. package/dist/evidence.d.ts +256 -0
  15. package/dist/evidence.d.ts.map +1 -0
  16. package/dist/evidence.js +382 -0
  17. package/dist/evidence.js.map +1 -0
  18. package/dist/export-schemas.d.ts +2 -0
  19. package/dist/export-schemas.d.ts.map +1 -0
  20. package/dist/export-schemas.js +53 -0
  21. package/dist/export-schemas.js.map +1 -0
  22. package/dist/improvement.d.ts +92 -0
  23. package/dist/improvement.d.ts.map +1 -0
  24. package/dist/improvement.js +119 -0
  25. package/dist/improvement.js.map +1 -0
  26. package/dist/index.d.ts +983 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +128 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/onboarding.d.ts +15 -0
  31. package/dist/onboarding.d.ts.map +1 -0
  32. package/dist/onboarding.js +17 -0
  33. package/dist/onboarding.js.map +1 -0
  34. package/dist/pricing.d.ts +130 -0
  35. package/dist/pricing.d.ts.map +1 -0
  36. package/dist/pricing.js +355 -0
  37. package/dist/pricing.js.map +1 -0
  38. package/dist/runtime.d.ts +284 -0
  39. package/dist/runtime.d.ts.map +1 -0
  40. package/dist/runtime.js +196 -0
  41. package/dist/runtime.js.map +1 -0
  42. package/dist/schema-export.d.ts +15 -0
  43. package/dist/schema-export.d.ts.map +1 -0
  44. package/dist/schema-export.js +49 -0
  45. package/dist/schema-export.js.map +1 -0
  46. package/dist/targets.d.ts +359 -0
  47. package/dist/targets.d.ts.map +1 -0
  48. package/dist/targets.js +394 -0
  49. package/dist/targets.js.map +1 -0
  50. package/dist/test/contracts.test.d.ts +2 -0
  51. package/dist/test/contracts.test.d.ts.map +1 -0
  52. package/dist/test/contracts.test.js +867 -0
  53. package/dist/test/contracts.test.js.map +1 -0
  54. package/package.json +45 -0
  55. package/schemas/approval-evidence-v1.schema.json +172 -0
  56. package/schemas/architecture-availability-v1.schema.json +155 -0
  57. package/schemas/architecture-v1.schema.json +107 -0
  58. package/schemas/capability-pack-manifest-v1.schema.json +59 -0
  59. package/schemas/client-outcome-comparison-v1.schema.json +195 -0
  60. package/schemas/client-outcome-qualification-v1.schema.json +190 -0
  61. package/schemas/client-outcome-v1.schema.json +513 -0
  62. package/schemas/contract-metadata.json +232 -0
  63. package/schemas/cost-estimate-v1.schema.json +165 -0
  64. package/schemas/customization-lock-v1.schema.json +63 -0
  65. package/schemas/deployment-preview-v1.schema.json +180 -0
  66. package/schemas/diagnosis-v1.schema.json +111 -0
  67. package/schemas/environment-inputs-v1.schema.json +106 -0
  68. package/schemas/event-v1.schema.json +74 -0
  69. package/schemas/evidence-manifest-v1.schema.json +111 -0
  70. package/schemas/execution-plan-attestation-v1.schema.json +145 -0
  71. package/schemas/governance-constraints-v1.schema.json +103 -0
  72. package/schemas/iac-binding-v1.schema.json +74 -0
  73. package/schemas/iac-handoff-v1.schema.json +83 -0
  74. package/schemas/implementation-intent-v1.schema.json +89 -0
  75. package/schemas/improvement-decision-v1.schema.json +62 -0
  76. package/schemas/improvement-observation-v1.schema.json +166 -0
  77. package/schemas/improvement-policy-v1.schema.json +204 -0
  78. package/schemas/improvement-proposal-v1.schema.json +144 -0
  79. package/schemas/improvement-recurrence-v1.schema.json +130 -0
  80. package/schemas/input-request-v1.schema.json +242 -0
  81. package/schemas/input-submission-v1.schema.json +205 -0
  82. package/schemas/live-qualification-v1.schema.json +295 -0
  83. package/schemas/logical-resource-manifest-v1.schema.json +123 -0
  84. package/schemas/onboarding-config-v1.schema.json +59 -0
  85. package/schemas/operation-record-v1.schema.json +112 -0
  86. package/schemas/policy-property-map-v1.schema.json +108 -0
  87. package/schemas/pricing-evidence-v1.schema.json +628 -0
  88. package/schemas/pricing-request-v1.schema.json +424 -0
  89. package/schemas/project-config-v1.schema.json +43 -0
  90. package/schemas/quality-measurements-v1.schema.json +54 -0
  91. package/schemas/quality-report-v1.schema.json +114 -0
  92. package/schemas/quality-scorecard-v1.schema.json +109 -0
  93. package/schemas/requirements-v1.schema.json +108 -0
  94. package/schemas/resource-inventory-v1.schema.json +74 -0
  95. package/schemas/review-findings-v1.schema.json +126 -0
  96. package/schemas/run-config-v1.schema.json +133 -0
  97. package/schemas/runtime-bundle-lock-v1.schema.json +59 -0
  98. package/schemas/scenario-v1.schema.json +55 -0
  99. package/schemas/task-envelope-v1.schema.json +122 -0
  100. package/schemas/telemetry-v1.schema.json +117 -0
  101. package/schemas/workload-decision-manifest-v1.schema.json +320 -0
@@ -0,0 +1,628 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/pricing-evidence-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "collectedAt": {
7
+ "format": "date-time",
8
+ "type": "string"
9
+ },
10
+ "evidenceId": {
11
+ "pattern": "^[0-9a-f]{64}$",
12
+ "type": "string"
13
+ },
14
+ "expiresAt": {
15
+ "format": "date-time",
16
+ "type": "string"
17
+ },
18
+ "projectId": {
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
20
+ "type": "string"
21
+ },
22
+ "provenance": {
23
+ "additionalProperties": false,
24
+ "properties": {
25
+ "contentCapture": {
26
+ "const": false,
27
+ "type": "boolean"
28
+ },
29
+ "endpointId": {
30
+ "maxLength": 128,
31
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
32
+ "type": "string"
33
+ },
34
+ "provider": {
35
+ "const": "azure-resource-manager-mcp",
36
+ "type": "string"
37
+ },
38
+ "rawSourceBytes": {
39
+ "maximum": 16777216,
40
+ "minimum": 1,
41
+ "type": "integer"
42
+ },
43
+ "rawSourceDigest": {
44
+ "pattern": "^[0-9a-f]{64}$",
45
+ "type": "string"
46
+ },
47
+ "toolchainHash": {
48
+ "pattern": "^[0-9a-f]{64}$",
49
+ "type": "string"
50
+ },
51
+ "toolName": {
52
+ "maxLength": 128,
53
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
54
+ "type": "string"
55
+ },
56
+ "toolsListHash": {
57
+ "pattern": "^[0-9a-f]{64}$",
58
+ "type": "string"
59
+ },
60
+ "toolVersion": {
61
+ "maxLength": 32,
62
+ "pattern": "^[0-9]+(?:\\.[0-9]+){1,3}(?:-[0-9A-Za-z.-]+)?$",
63
+ "type": "string"
64
+ }
65
+ },
66
+ "required": [
67
+ "provider",
68
+ "endpointId",
69
+ "toolName",
70
+ "toolVersion",
71
+ "toolchainHash",
72
+ "toolsListHash",
73
+ "rawSourceDigest",
74
+ "rawSourceBytes",
75
+ "contentCapture"
76
+ ],
77
+ "type": "object"
78
+ },
79
+ "qualifiesGate": {
80
+ "const": false,
81
+ "type": "boolean"
82
+ },
83
+ "requestHash": {
84
+ "pattern": "^[0-9a-f]{64}$",
85
+ "type": "string"
86
+ },
87
+ "requestId": {
88
+ "pattern": "^[0-9a-f]{64}$",
89
+ "type": "string"
90
+ },
91
+ "result": {
92
+ "anyOf": [
93
+ {
94
+ "additionalProperties": false,
95
+ "properties": {
96
+ "bulk": {
97
+ "additionalProperties": false,
98
+ "properties": {
99
+ "deduplicatedSpecs": {
100
+ "maximum": 256,
101
+ "minimum": 1,
102
+ "type": "integer"
103
+ },
104
+ "failed": {
105
+ "maximum": 256,
106
+ "minimum": 0,
107
+ "type": "integer"
108
+ },
109
+ "partialFailures": {
110
+ "items": {
111
+ "additionalProperties": false,
112
+ "properties": {
113
+ "reasonCode": {
114
+ "maxLength": 64,
115
+ "pattern": "^[A-Z][A-Z0-9_]{0,63}$",
116
+ "type": "string"
117
+ },
118
+ "specId": {
119
+ "maxLength": 128,
120
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
121
+ "type": "string"
122
+ }
123
+ },
124
+ "required": [
125
+ "specId",
126
+ "reasonCode"
127
+ ],
128
+ "type": "object"
129
+ },
130
+ "maxItems": 256,
131
+ "type": "array"
132
+ },
133
+ "successful": {
134
+ "maximum": 256,
135
+ "minimum": 0,
136
+ "type": "integer"
137
+ }
138
+ },
139
+ "required": [
140
+ "deduplicatedSpecs",
141
+ "successful",
142
+ "failed",
143
+ "partialFailures"
144
+ ],
145
+ "type": "object"
146
+ },
147
+ "continuationCursorHash": {
148
+ "pattern": "^[0-9a-f]{64}$",
149
+ "type": "string"
150
+ },
151
+ "paginationStatus": {
152
+ "anyOf": [
153
+ {
154
+ "const": "complete",
155
+ "type": "string"
156
+ },
157
+ {
158
+ "const": "partial",
159
+ "type": "string"
160
+ }
161
+ ]
162
+ },
163
+ "records": {
164
+ "items": {
165
+ "additionalProperties": false,
166
+ "properties": {
167
+ "commitment": {
168
+ "additionalProperties": false,
169
+ "properties": {
170
+ "kind": {
171
+ "anyOf": [
172
+ {
173
+ "const": "none",
174
+ "type": "string"
175
+ },
176
+ {
177
+ "const": "reservation",
178
+ "type": "string"
179
+ },
180
+ {
181
+ "const": "savings-plan",
182
+ "type": "string"
183
+ }
184
+ ]
185
+ },
186
+ "priceBasis": {
187
+ "anyOf": [
188
+ {
189
+ "const": "hourly",
190
+ "type": "string"
191
+ },
192
+ {
193
+ "const": "total",
194
+ "type": "string"
195
+ }
196
+ ]
197
+ },
198
+ "termMonths": {
199
+ "anyOf": [
200
+ {
201
+ "const": 12,
202
+ "type": "number"
203
+ },
204
+ {
205
+ "const": 36,
206
+ "type": "number"
207
+ }
208
+ ]
209
+ }
210
+ },
211
+ "required": [
212
+ "kind"
213
+ ],
214
+ "type": "object"
215
+ },
216
+ "currency": {
217
+ "pattern": "^[A-Z]{3}$",
218
+ "type": "string"
219
+ },
220
+ "meterId": {
221
+ "maxLength": 128,
222
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
223
+ "type": "string"
224
+ },
225
+ "priceId": {
226
+ "maxLength": 128,
227
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
228
+ "type": "string"
229
+ },
230
+ "priceType": {
231
+ "anyOf": [
232
+ {
233
+ "const": "consumption",
234
+ "type": "string"
235
+ },
236
+ {
237
+ "const": "reservation",
238
+ "type": "string"
239
+ },
240
+ {
241
+ "const": "savings-plan",
242
+ "type": "string"
243
+ },
244
+ {
245
+ "const": "negotiated",
246
+ "type": "string"
247
+ }
248
+ ]
249
+ },
250
+ "projectedAmount": {
251
+ "maximum": 1000000000000,
252
+ "minimum": 0,
253
+ "type": "number"
254
+ },
255
+ "region": {
256
+ "maxLength": 32,
257
+ "pattern": "^[a-z][a-z0-9-]{1,31}$",
258
+ "type": "string"
259
+ },
260
+ "serviceName": {
261
+ "maxLength": 128,
262
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
263
+ "type": "string"
264
+ },
265
+ "skuName": {
266
+ "maxLength": 128,
267
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
268
+ "type": "string"
269
+ },
270
+ "specId": {
271
+ "maxLength": 128,
272
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
273
+ "type": "string"
274
+ },
275
+ "uncertainty": {
276
+ "additionalProperties": false,
277
+ "properties": {
278
+ "confidence": {
279
+ "anyOf": [
280
+ {
281
+ "const": "low",
282
+ "type": "string"
283
+ },
284
+ {
285
+ "const": "medium",
286
+ "type": "string"
287
+ },
288
+ {
289
+ "const": "high",
290
+ "type": "string"
291
+ }
292
+ ]
293
+ },
294
+ "lowerAmount": {
295
+ "maximum": 1000000000000,
296
+ "minimum": 0,
297
+ "type": "number"
298
+ },
299
+ "reasonCodes": {
300
+ "items": {
301
+ "maxLength": 64,
302
+ "pattern": "^[A-Z][A-Z0-9_]{0,63}$",
303
+ "type": "string"
304
+ },
305
+ "maxItems": 16,
306
+ "type": "array",
307
+ "uniqueItems": true
308
+ },
309
+ "upperAmount": {
310
+ "maximum": 1000000000000,
311
+ "minimum": 0,
312
+ "type": "number"
313
+ }
314
+ },
315
+ "required": [
316
+ "lowerAmount",
317
+ "upperAmount",
318
+ "confidence",
319
+ "reasonCodes"
320
+ ],
321
+ "type": "object"
322
+ },
323
+ "unitDimension": {
324
+ "anyOf": [
325
+ {
326
+ "const": "hour",
327
+ "type": "string"
328
+ },
329
+ {
330
+ "const": "day",
331
+ "type": "string"
332
+ },
333
+ {
334
+ "const": "month",
335
+ "type": "string"
336
+ },
337
+ {
338
+ "const": "second",
339
+ "type": "string"
340
+ },
341
+ {
342
+ "const": "gb-month",
343
+ "type": "string"
344
+ },
345
+ {
346
+ "const": "gb",
347
+ "type": "string"
348
+ },
349
+ {
350
+ "const": "transactions",
351
+ "type": "string"
352
+ }
353
+ ]
354
+ },
355
+ "unitPrice": {
356
+ "maximum": 1000000000,
357
+ "minimum": 0,
358
+ "type": "number"
359
+ },
360
+ "unitQuantity": {
361
+ "exclusiveMinimum": 0,
362
+ "maximum": 1000000000,
363
+ "type": "number"
364
+ },
365
+ "usageQuantity": {
366
+ "maximum": 1000000000,
367
+ "minimum": 0,
368
+ "type": "number"
369
+ }
370
+ },
371
+ "required": [
372
+ "priceId",
373
+ "meterId",
374
+ "serviceName",
375
+ "skuName",
376
+ "region",
377
+ "currency",
378
+ "priceType",
379
+ "unitDimension",
380
+ "unitQuantity",
381
+ "unitPrice",
382
+ "usageQuantity",
383
+ "projectedAmount",
384
+ "commitment",
385
+ "uncertainty"
386
+ ],
387
+ "type": "object"
388
+ },
389
+ "maxItems": 256,
390
+ "minItems": 1,
391
+ "type": "array"
392
+ },
393
+ "regionalUnavailable": {
394
+ "items": {
395
+ "maxLength": 32,
396
+ "pattern": "^[a-z][a-z0-9-]{1,31}$",
397
+ "type": "string"
398
+ },
399
+ "maxItems": 16,
400
+ "type": "array",
401
+ "uniqueItems": true
402
+ },
403
+ "status": {
404
+ "const": "matched",
405
+ "type": "string"
406
+ },
407
+ "totalAmount": {
408
+ "maximum": 1000000000000,
409
+ "minimum": 0,
410
+ "type": "number"
411
+ }
412
+ },
413
+ "required": [
414
+ "status",
415
+ "records",
416
+ "totalAmount",
417
+ "paginationStatus"
418
+ ],
419
+ "type": "object"
420
+ },
421
+ {
422
+ "additionalProperties": false,
423
+ "properties": {
424
+ "candidateIds": {
425
+ "items": {
426
+ "maxLength": 128,
427
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._()/-]{0,127}$",
428
+ "type": "string"
429
+ },
430
+ "maxItems": 32,
431
+ "minItems": 2,
432
+ "type": "array",
433
+ "uniqueItems": true
434
+ },
435
+ "nextActionCode": {
436
+ "anyOf": [
437
+ {
438
+ "const": "SELECT_CANDIDATE",
439
+ "type": "string"
440
+ },
441
+ {
442
+ "const": "RETRY_LATER",
443
+ "type": "string"
444
+ },
445
+ {
446
+ "const": "RETRY_WITH_ATTESTED_SOURCE",
447
+ "type": "string"
448
+ },
449
+ {
450
+ "const": "REFRESH_TOOL_BINDING",
451
+ "type": "string"
452
+ },
453
+ {
454
+ "const": "REQUEST_AUTHORIZATION",
455
+ "type": "string"
456
+ }
457
+ ]
458
+ },
459
+ "reasonCode": {
460
+ "maxLength": 64,
461
+ "pattern": "^[A-Z][A-Z0-9_]{0,63}$",
462
+ "type": "string"
463
+ },
464
+ "status": {
465
+ "const": "ambiguous",
466
+ "type": "string"
467
+ }
468
+ },
469
+ "required": [
470
+ "status",
471
+ "reasonCode",
472
+ "candidateIds",
473
+ "nextActionCode"
474
+ ],
475
+ "type": "object"
476
+ },
477
+ {
478
+ "additionalProperties": false,
479
+ "properties": {
480
+ "attemptCount": {
481
+ "maximum": 16,
482
+ "minimum": 1,
483
+ "type": "integer"
484
+ },
485
+ "nextActionCode": {
486
+ "anyOf": [
487
+ {
488
+ "const": "SELECT_CANDIDATE",
489
+ "type": "string"
490
+ },
491
+ {
492
+ "const": "RETRY_LATER",
493
+ "type": "string"
494
+ },
495
+ {
496
+ "const": "RETRY_WITH_ATTESTED_SOURCE",
497
+ "type": "string"
498
+ },
499
+ {
500
+ "const": "REFRESH_TOOL_BINDING",
501
+ "type": "string"
502
+ },
503
+ {
504
+ "const": "REQUEST_AUTHORIZATION",
505
+ "type": "string"
506
+ }
507
+ ]
508
+ },
509
+ "reasonCode": {
510
+ "anyOf": [
511
+ {
512
+ "const": "NO_MATCH",
513
+ "type": "string"
514
+ },
515
+ {
516
+ "const": "THROTTLED",
517
+ "type": "string"
518
+ },
519
+ {
520
+ "const": "TIMEOUT",
521
+ "type": "string"
522
+ },
523
+ {
524
+ "const": "AUTHORIZATION_DENIED",
525
+ "type": "string"
526
+ },
527
+ {
528
+ "const": "TOOL_DRIFT",
529
+ "type": "string"
530
+ },
531
+ {
532
+ "const": "MALFORMED_SOURCE",
533
+ "type": "string"
534
+ },
535
+ {
536
+ "const": "NEGOTIATED_PRICE_UNAVAILABLE",
537
+ "type": "string"
538
+ }
539
+ ]
540
+ },
541
+ "retryAt": {
542
+ "format": "date-time",
543
+ "type": "string"
544
+ },
545
+ "status": {
546
+ "const": "unavailable",
547
+ "type": "string"
548
+ }
549
+ },
550
+ "required": [
551
+ "status",
552
+ "reasonCode",
553
+ "attemptCount",
554
+ "nextActionCode"
555
+ ],
556
+ "type": "object"
557
+ }
558
+ ]
559
+ },
560
+ "runId": {
561
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
562
+ "type": "string"
563
+ },
564
+ "scenarioId": {
565
+ "anyOf": [
566
+ {
567
+ "const": "PRICING-001-retail",
568
+ "type": "string"
569
+ },
570
+ {
571
+ "const": "PRICING-002-meter-aware",
572
+ "type": "string"
573
+ },
574
+ {
575
+ "const": "PRICING-003-bulk",
576
+ "type": "string"
577
+ },
578
+ {
579
+ "const": "PRICING-004-regional",
580
+ "type": "string"
581
+ },
582
+ {
583
+ "const": "PRICING-005-commitments",
584
+ "type": "string"
585
+ },
586
+ {
587
+ "const": "PRICING-006-negotiated",
588
+ "type": "string"
589
+ },
590
+ {
591
+ "const": "PRICING-007-ambiguity",
592
+ "type": "string"
593
+ },
594
+ {
595
+ "const": "PRICING-008-uncertainty",
596
+ "type": "string"
597
+ },
598
+ {
599
+ "const": "PRICING-009-throttling",
600
+ "type": "string"
601
+ },
602
+ {
603
+ "const": "PRICING-010-provenance",
604
+ "type": "string"
605
+ }
606
+ ]
607
+ },
608
+ "schemaVersion": {
609
+ "const": "1.0.0",
610
+ "type": "string"
611
+ }
612
+ },
613
+ "required": [
614
+ "schemaVersion",
615
+ "projectId",
616
+ "runId",
617
+ "scenarioId",
618
+ "requestId",
619
+ "requestHash",
620
+ "evidenceId",
621
+ "provenance",
622
+ "collectedAt",
623
+ "expiresAt",
624
+ "result",
625
+ "qualifiesGate"
626
+ ],
627
+ "type": "object"
628
+ }