@apexops/contracts 0.10.0-next.5 → 0.11.0-next.1

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 (76) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/archetype-source.d.ts +70 -0
  3. package/dist/archetype-source.d.ts.map +1 -0
  4. package/dist/archetype-source.js +58 -0
  5. package/dist/archetype-source.js.map +1 -0
  6. package/dist/artifacts.d.ts +64 -0
  7. package/dist/artifacts.d.ts.map +1 -1
  8. package/dist/artifacts.js +69 -0
  9. package/dist/artifacts.js.map +1 -1
  10. package/dist/common.d.ts +2 -0
  11. package/dist/common.d.ts.map +1 -1
  12. package/dist/common.js +1 -0
  13. package/dist/common.js.map +1 -1
  14. package/dist/evidence.d.ts.map +1 -1
  15. package/dist/evidence.js +2 -0
  16. package/dist/evidence.js.map +1 -1
  17. package/dist/governance-observation.d.ts +15 -0
  18. package/dist/governance-observation.d.ts.map +1 -0
  19. package/dist/governance-observation.js +15 -0
  20. package/dist/governance-observation.js.map +1 -0
  21. package/dist/index.d.ts +616 -3
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +47 -4
  24. package/dist/index.js.map +1 -1
  25. package/dist/native-validation.d.ts +136 -0
  26. package/dist/native-validation.d.ts.map +1 -0
  27. package/dist/native-validation.js +276 -0
  28. package/dist/native-validation.js.map +1 -0
  29. package/dist/onboarding.d.ts +184 -3
  30. package/dist/onboarding.d.ts.map +1 -1
  31. package/dist/onboarding.js +122 -6
  32. package/dist/onboarding.js.map +1 -1
  33. package/dist/policy-validation.d.ts +45 -0
  34. package/dist/policy-validation.d.ts.map +1 -0
  35. package/dist/policy-validation.js +194 -0
  36. package/dist/policy-validation.js.map +1 -0
  37. package/dist/runtime.d.ts +72 -0
  38. package/dist/runtime.d.ts.map +1 -1
  39. package/dist/runtime.js +34 -1
  40. package/dist/runtime.js.map +1 -1
  41. package/dist/targets.d.ts +158 -1
  42. package/dist/targets.d.ts.map +1 -1
  43. package/dist/targets.js +168 -2
  44. package/dist/targets.js.map +1 -1
  45. package/dist/test/contracts.test.js +751 -3
  46. package/dist/test/contracts.test.js.map +1 -1
  47. package/package.json +2 -2
  48. package/schemas/archetype-batch-config-v1.schema.json +51 -0
  49. package/schemas/archetype-batch-plan-v1.schema.json +227 -0
  50. package/schemas/archetype-source-proposal-v1.schema.json +113 -0
  51. package/schemas/architecture-v1.schema.json +278 -0
  52. package/schemas/bootstrap-plan-v1.schema.json +206 -0
  53. package/schemas/contract-metadata.json +85 -0
  54. package/schemas/cost-estimate-v1.schema.json +54 -1
  55. package/schemas/diagnosis-v1.schema.json +323 -0
  56. package/schemas/governance-constraints-v1.schema.json +13 -0
  57. package/schemas/governance-observation-receipt-v1.schema.json +60 -0
  58. package/schemas/governance-provision-plan-v1.schema.json +307 -0
  59. package/schemas/governance-setup-config-v1.schema.json +80 -0
  60. package/schemas/governance-setup-plan-v1.schema.json +217 -0
  61. package/schemas/iac-binding-v1.schema.json +60 -0
  62. package/schemas/input-request-v1.schema.json +190 -0
  63. package/schemas/logical-resource-manifest-v1.schema.json +4 -0
  64. package/schemas/native-validation-receipt-v1.schema.json +862 -0
  65. package/schemas/onboarding-config-v1.schema.json +15 -12
  66. package/schemas/policy-property-map-v1.schema.json +17 -0
  67. package/schemas/policy-validation-v1.schema.json +278 -0
  68. package/schemas/project-config-v1.schema.json +14 -1
  69. package/schemas/repeat-guard-records-v1.schema.json +76 -0
  70. package/schemas/repository-publish-config-v1.schema.json +52 -0
  71. package/schemas/repository-publish-plan-v1.schema.json +265 -0
  72. package/schemas/requirements-amendment-v1.schema.json +213 -0
  73. package/schemas/requirements-change-proposal-v1.schema.json +196 -0
  74. package/schemas/review-capture-v1.schema.json +67 -0
  75. package/schemas/review-findings-v1.schema.json +103 -0
  76. package/schemas/review-request-v1.schema.json +111 -0
@@ -127,13 +127,24 @@
127
127
  ],
128
128
  "type": "object"
129
129
  },
130
- "minItems": 1,
131
130
  "type": "array"
132
131
  },
133
132
  "pricingDate": {
134
133
  "format": "date",
135
134
  "type": "string"
136
135
  },
136
+ "pricingStatus": {
137
+ "anyOf": [
138
+ {
139
+ "const": "complete",
140
+ "type": "string"
141
+ },
142
+ {
143
+ "const": "partial",
144
+ "type": "string"
145
+ }
146
+ ]
147
+ },
137
148
  "projectId": {
138
149
  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
139
150
  "type": "string"
@@ -149,6 +160,48 @@
149
160
  "totalMonthlyCost": {
150
161
  "minimum": 0,
151
162
  "type": "number"
163
+ },
164
+ "unpricedItems": {
165
+ "items": {
166
+ "additionalProperties": false,
167
+ "properties": {
168
+ "attemptedAt": {
169
+ "format": "date-time",
170
+ "type": "string"
171
+ },
172
+ "id": {
173
+ "minLength": 1,
174
+ "type": "string"
175
+ },
176
+ "quantity": {
177
+ "exclusiveMinimum": 0,
178
+ "type": "number"
179
+ },
180
+ "reason": {
181
+ "minLength": 1,
182
+ "type": "string"
183
+ },
184
+ "service": {
185
+ "minLength": 1,
186
+ "type": "string"
187
+ },
188
+ "sku": {
189
+ "minLength": 1,
190
+ "type": "string"
191
+ }
192
+ },
193
+ "required": [
194
+ "id",
195
+ "service",
196
+ "sku",
197
+ "quantity",
198
+ "attemptedAt",
199
+ "reason"
200
+ ],
201
+ "type": "object"
202
+ },
203
+ "minItems": 1,
204
+ "type": "array"
152
205
  }
153
206
  },
154
207
  "required": [
@@ -65,6 +65,329 @@
65
65
  },
66
66
  "type": "array"
67
67
  },
68
+ "operationalHandoff": {
69
+ "additionalProperties": false,
70
+ "properties": {
71
+ "accessPrerequisites": {
72
+ "items": {
73
+ "minLength": 1,
74
+ "type": "string"
75
+ },
76
+ "maxItems": 32,
77
+ "minItems": 1,
78
+ "type": "array"
79
+ },
80
+ "configurationReferences": {
81
+ "items": {
82
+ "additionalProperties": false,
83
+ "properties": {
84
+ "name": {
85
+ "minLength": 1,
86
+ "type": "string"
87
+ },
88
+ "source": {
89
+ "minLength": 1,
90
+ "type": "string"
91
+ }
92
+ },
93
+ "required": [
94
+ "name",
95
+ "source"
96
+ ],
97
+ "type": "object"
98
+ },
99
+ "maxItems": 128,
100
+ "type": "array"
101
+ },
102
+ "escalation": {
103
+ "minLength": 1,
104
+ "type": "string"
105
+ },
106
+ "healthChecks": {
107
+ "items": {
108
+ "additionalProperties": false,
109
+ "properties": {
110
+ "check": {
111
+ "minLength": 1,
112
+ "type": "string"
113
+ },
114
+ "evidenceRefs": {
115
+ "items": {
116
+ "pattern": "^[0-9a-f]{64}$",
117
+ "type": "string"
118
+ },
119
+ "maxItems": 32,
120
+ "type": "array",
121
+ "uniqueItems": true
122
+ },
123
+ "expectedOutcome": {
124
+ "minLength": 1,
125
+ "type": "string"
126
+ },
127
+ "resourceId": {
128
+ "minLength": 1,
129
+ "type": "string"
130
+ }
131
+ },
132
+ "required": [
133
+ "resourceId",
134
+ "check",
135
+ "expectedOutcome",
136
+ "evidenceRefs"
137
+ ],
138
+ "type": "object"
139
+ },
140
+ "maxItems": 256,
141
+ "minItems": 1,
142
+ "type": "array"
143
+ },
144
+ "incidentResponse": {
145
+ "anyOf": [
146
+ {
147
+ "additionalProperties": false,
148
+ "properties": {
149
+ "applicability": {
150
+ "const": "applicable",
151
+ "type": "string"
152
+ },
153
+ "executionStatus": {
154
+ "const": "untested",
155
+ "type": "string"
156
+ },
157
+ "owner": {
158
+ "minLength": 1,
159
+ "type": "string"
160
+ },
161
+ "prerequisites": {
162
+ "items": {
163
+ "minLength": 1,
164
+ "type": "string"
165
+ },
166
+ "maxItems": 32,
167
+ "minItems": 1,
168
+ "type": "array"
169
+ },
170
+ "steps": {
171
+ "items": {
172
+ "minLength": 1,
173
+ "type": "string"
174
+ },
175
+ "maxItems": 64,
176
+ "minItems": 1,
177
+ "type": "array"
178
+ },
179
+ "verification": {
180
+ "minLength": 1,
181
+ "type": "string"
182
+ }
183
+ },
184
+ "required": [
185
+ "applicability",
186
+ "owner",
187
+ "prerequisites",
188
+ "steps",
189
+ "verification",
190
+ "executionStatus"
191
+ ],
192
+ "type": "object"
193
+ },
194
+ {
195
+ "additionalProperties": false,
196
+ "properties": {
197
+ "applicability": {
198
+ "const": "not-applicable",
199
+ "type": "string"
200
+ },
201
+ "rationale": {
202
+ "minLength": 1,
203
+ "type": "string"
204
+ }
205
+ },
206
+ "required": [
207
+ "applicability",
208
+ "rationale"
209
+ ],
210
+ "type": "object"
211
+ }
212
+ ]
213
+ },
214
+ "limitations": {
215
+ "items": {
216
+ "minLength": 1,
217
+ "type": "string"
218
+ },
219
+ "maxItems": 64,
220
+ "minItems": 1,
221
+ "type": "array"
222
+ },
223
+ "maintenanceWindow": {
224
+ "minLength": 1,
225
+ "type": "string"
226
+ },
227
+ "monitoring": {
228
+ "minLength": 1,
229
+ "type": "string"
230
+ },
231
+ "owner": {
232
+ "minLength": 1,
233
+ "type": "string"
234
+ },
235
+ "recovery": {
236
+ "anyOf": [
237
+ {
238
+ "additionalProperties": false,
239
+ "properties": {
240
+ "applicability": {
241
+ "const": "applicable",
242
+ "type": "string"
243
+ },
244
+ "executionStatus": {
245
+ "const": "untested",
246
+ "type": "string"
247
+ },
248
+ "owner": {
249
+ "minLength": 1,
250
+ "type": "string"
251
+ },
252
+ "prerequisites": {
253
+ "items": {
254
+ "minLength": 1,
255
+ "type": "string"
256
+ },
257
+ "maxItems": 32,
258
+ "minItems": 1,
259
+ "type": "array"
260
+ },
261
+ "steps": {
262
+ "items": {
263
+ "minLength": 1,
264
+ "type": "string"
265
+ },
266
+ "maxItems": 64,
267
+ "minItems": 1,
268
+ "type": "array"
269
+ },
270
+ "verification": {
271
+ "minLength": 1,
272
+ "type": "string"
273
+ }
274
+ },
275
+ "required": [
276
+ "applicability",
277
+ "owner",
278
+ "prerequisites",
279
+ "steps",
280
+ "verification",
281
+ "executionStatus"
282
+ ],
283
+ "type": "object"
284
+ },
285
+ {
286
+ "additionalProperties": false,
287
+ "properties": {
288
+ "applicability": {
289
+ "const": "not-applicable",
290
+ "type": "string"
291
+ },
292
+ "rationale": {
293
+ "minLength": 1,
294
+ "type": "string"
295
+ }
296
+ },
297
+ "required": [
298
+ "applicability",
299
+ "rationale"
300
+ ],
301
+ "type": "object"
302
+ }
303
+ ]
304
+ },
305
+ "rollback": {
306
+ "anyOf": [
307
+ {
308
+ "additionalProperties": false,
309
+ "properties": {
310
+ "applicability": {
311
+ "const": "applicable",
312
+ "type": "string"
313
+ },
314
+ "executionStatus": {
315
+ "const": "untested",
316
+ "type": "string"
317
+ },
318
+ "owner": {
319
+ "minLength": 1,
320
+ "type": "string"
321
+ },
322
+ "prerequisites": {
323
+ "items": {
324
+ "minLength": 1,
325
+ "type": "string"
326
+ },
327
+ "maxItems": 32,
328
+ "minItems": 1,
329
+ "type": "array"
330
+ },
331
+ "steps": {
332
+ "items": {
333
+ "minLength": 1,
334
+ "type": "string"
335
+ },
336
+ "maxItems": 64,
337
+ "minItems": 1,
338
+ "type": "array"
339
+ },
340
+ "verification": {
341
+ "minLength": 1,
342
+ "type": "string"
343
+ }
344
+ },
345
+ "required": [
346
+ "applicability",
347
+ "owner",
348
+ "prerequisites",
349
+ "steps",
350
+ "verification",
351
+ "executionStatus"
352
+ ],
353
+ "type": "object"
354
+ },
355
+ {
356
+ "additionalProperties": false,
357
+ "properties": {
358
+ "applicability": {
359
+ "const": "not-applicable",
360
+ "type": "string"
361
+ },
362
+ "rationale": {
363
+ "minLength": 1,
364
+ "type": "string"
365
+ }
366
+ },
367
+ "required": [
368
+ "applicability",
369
+ "rationale"
370
+ ],
371
+ "type": "object"
372
+ }
373
+ ]
374
+ }
375
+ },
376
+ "required": [
377
+ "owner",
378
+ "escalation",
379
+ "maintenanceWindow",
380
+ "accessPrerequisites",
381
+ "configurationReferences",
382
+ "healthChecks",
383
+ "monitoring",
384
+ "incidentResponse",
385
+ "rollback",
386
+ "recovery",
387
+ "limitations"
388
+ ],
389
+ "type": "object"
390
+ },
68
391
  "projectId": {
69
392
  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
70
393
  "type": "string"
@@ -51,6 +51,18 @@
51
51
  "const": "1.0.0",
52
52
  "type": "string"
53
53
  },
54
+ "source": {
55
+ "anyOf": [
56
+ {
57
+ "const": "collected",
58
+ "type": "string"
59
+ },
60
+ {
61
+ "const": "reference",
62
+ "type": "string"
63
+ }
64
+ ]
65
+ },
54
66
  "summary": {
55
67
  "additionalProperties": false,
56
68
  "properties": {
@@ -94,6 +106,7 @@
94
106
  "projectId",
95
107
  "runId",
96
108
  "targetScope",
109
+ "source",
97
110
  "discoveredAt",
98
111
  "expiresAt",
99
112
  "summary",
@@ -0,0 +1,60 @@
1
+ {
2
+ "$id": "https://schemas.apexops.dev/governance-observation-receipt-v1.json",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "contentHash": {
7
+ "pattern": "^[0-9a-f]{64}$",
8
+ "type": "string"
9
+ },
10
+ "expiresAt": {
11
+ "format": "date-time",
12
+ "type": "string"
13
+ },
14
+ "governanceHash": {
15
+ "pattern": "^[0-9a-f]{64}$",
16
+ "type": "string"
17
+ },
18
+ "observedAt": {
19
+ "format": "date-time",
20
+ "type": "string"
21
+ },
22
+ "projectId": {
23
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
24
+ "type": "string"
25
+ },
26
+ "rawSourceDigest": {
27
+ "pattern": "^[0-9a-f]{64}$",
28
+ "type": "string"
29
+ },
30
+ "runId": {
31
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$",
32
+ "type": "string"
33
+ },
34
+ "schemaVersion": {
35
+ "const": "1.0.0",
36
+ "type": "string"
37
+ },
38
+ "snapshotDigest": {
39
+ "pattern": "^[0-9a-f]{64}$",
40
+ "type": "string"
41
+ },
42
+ "targetScope": {
43
+ "minLength": 1,
44
+ "type": "string"
45
+ }
46
+ },
47
+ "required": [
48
+ "schemaVersion",
49
+ "projectId",
50
+ "runId",
51
+ "targetScope",
52
+ "governanceHash",
53
+ "snapshotDigest",
54
+ "contentHash",
55
+ "observedAt",
56
+ "expiresAt",
57
+ "rawSourceDigest"
58
+ ],
59
+ "type": "object"
60
+ }