@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
package/dist/index.d.ts CHANGED
@@ -1,13 +1,246 @@
1
1
  export * from "./artifacts.js";
2
+ export * from "./archetype-source.js";
2
3
  export * from "./common.js";
3
4
  export * from "./deployment.js";
4
5
  export * from "./evidence.js";
6
+ export * from "./governance-observation.js";
5
7
  export * from "./improvement.js";
8
+ export * from "./native-validation.js";
6
9
  export * from "./onboarding.js";
7
10
  export * from "./pricing.js";
11
+ export * from "./policy-validation.js";
8
12
  export * from "./runtime.js";
9
13
  export * from "./targets.js";
10
14
  export declare const contractSchemas: readonly [import("@sinclair/typebox").TObject<{
15
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
16
+ setup: import("@sinclair/typebox").TObject<{
17
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
18
+ config: import("@sinclair/typebox").TObject<{
19
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
20
+ repository: import("@sinclair/typebox").TString;
21
+ tenantId: import("@sinclair/typebox").TString;
22
+ subscriptionId: import("@sinclair/typebox").TString;
23
+ managementGroupId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
24
+ identity: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
25
+ mode: import("@sinclair/typebox").TLiteral<"reuse">;
26
+ clientId: import("@sinclair/typebox").TString;
27
+ principalId: import("@sinclair/typebox").TString;
28
+ }>, import("@sinclair/typebox").TObject<{
29
+ mode: import("@sinclair/typebox").TLiteral<"create">;
30
+ displayName: import("@sinclair/typebox").TString;
31
+ }>]>;
32
+ }>;
33
+ evidenceHash: import("@sinclair/typebox").TString;
34
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"blocked">]>;
35
+ federation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
36
+ issuer: import("@sinclair/typebox").TLiteral<"https://token.actions.githubusercontent.com">;
37
+ audience: import("@sinclair/typebox").TLiteral<"api://AzureADTokenExchange">;
38
+ subject: import("@sinclair/typebox").TString;
39
+ }>>;
40
+ environment: import("@sinclair/typebox").TLiteral<"governance">;
41
+ proposedRole: import("@sinclair/typebox").TObject<{
42
+ id: import("@sinclair/typebox").TLiteral<"acdd72a7-3385-48ef-bd42-f606fba81ae7">;
43
+ name: import("@sinclair/typebox").TLiteral<"Reader">;
44
+ scope: import("@sinclair/typebox").TString;
45
+ }>;
46
+ variables: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
47
+ blockers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
48
+ pendingActions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
49
+ filesModified: import("@sinclair/typebox").TLiteral<false>;
50
+ executionAuthorized: import("@sinclair/typebox").TLiteral<false>;
51
+ deploymentAuthorized: import("@sinclair/typebox").TLiteral<false>;
52
+ planHash: import("@sinclair/typebox").TString;
53
+ }>;
54
+ contextHash: import("@sinclair/typebox").TString;
55
+ evidenceHash: import("@sinclair/typebox").TString;
56
+ planHash: import("@sinclair/typebox").TString;
57
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ready">, import("@sinclair/typebox").TLiteral<"blocked">]>;
58
+ applicationObjectId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
59
+ federationName: import("@sinclair/typebox").TString;
60
+ actions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"create-federation">, import("@sinclair/typebox").TLiteral<"assign-reader">]>>;
61
+ blockers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
62
+ executionAuthorized: import("@sinclair/typebox").TLiteral<false>;
63
+ deploymentAuthorized: import("@sinclair/typebox").TLiteral<false>;
64
+ }>, import("@sinclair/typebox").TObject<{
65
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
66
+ owner: import("@sinclair/typebox").TString;
67
+ name: import("@sinclair/typebox").TString;
68
+ visibility: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"private">, import("@sinclair/typebox").TLiteral<"internal">, import("@sinclair/typebox").TLiteral<"public">]>;
69
+ branch: import("@sinclair/typebox").TString;
70
+ remote: import("@sinclair/typebox").TLiteral<"origin">;
71
+ }>, import("@sinclair/typebox").TObject<{
72
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
73
+ config: import("@sinclair/typebox").TObject<{
74
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
75
+ owner: import("@sinclair/typebox").TString;
76
+ name: import("@sinclair/typebox").TString;
77
+ visibility: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"private">, import("@sinclair/typebox").TLiteral<"internal">, import("@sinclair/typebox").TLiteral<"public">]>;
78
+ branch: import("@sinclair/typebox").TString;
79
+ remote: import("@sinclair/typebox").TLiteral<"origin">;
80
+ }>;
81
+ evidenceHash: import("@sinclair/typebox").TString;
82
+ planHash: import("@sinclair/typebox").TString;
83
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ready">, import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"blocked">]>;
84
+ repository: import("@sinclair/typebox").TObject<{
85
+ fullName: import("@sinclair/typebox").TString;
86
+ owner: import("@sinclair/typebox").TString;
87
+ ownerType: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"organization">, import("@sinclair/typebox").TLiteral<"unknown">]>;
88
+ visibility: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"private">, import("@sinclair/typebox").TLiteral<"internal">, import("@sinclair/typebox").TLiteral<"public">]>;
89
+ exists: import("@sinclair/typebox").TBoolean;
90
+ }>;
91
+ actions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"create-repository">, import("@sinclair/typebox").TLiteral<"add-remote">, import("@sinclair/typebox").TLiteral<"push-branch">]>>;
92
+ push: import("@sinclair/typebox").TObject<{
93
+ branch: import("@sinclair/typebox").TString;
94
+ commit: import("@sinclair/typebox").TString;
95
+ commitCount: import("@sinclair/typebox").TInteger;
96
+ files: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
97
+ filesTruncated: import("@sinclair/typebox").TBoolean;
98
+ uncommittedChanges: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
99
+ forcePush: import("@sinclair/typebox").TLiteral<false>;
100
+ }>;
101
+ blockers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
102
+ pendingActions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
103
+ filesModified: import("@sinclair/typebox").TLiteral<false>;
104
+ executionAuthorized: import("@sinclair/typebox").TLiteral<false>;
105
+ deploymentAuthorized: import("@sinclair/typebox").TLiteral<false>;
106
+ }>, import("@sinclair/typebox").TObject<{
107
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
108
+ repository: import("@sinclair/typebox").TString;
109
+ revision: import("@sinclair/typebox").TString;
110
+ selections: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
111
+ selectedPath: import("@sinclair/typebox").TString;
112
+ destination: import("@sinclair/typebox").TString;
113
+ }>>;
114
+ }>, import("@sinclair/typebox").TObject<{
115
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
116
+ config: import("@sinclair/typebox").TObject<{
117
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
118
+ repository: import("@sinclair/typebox").TString;
119
+ revision: import("@sinclair/typebox").TString;
120
+ selections: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
121
+ selectedPath: import("@sinclair/typebox").TString;
122
+ destination: import("@sinclair/typebox").TString;
123
+ }>>;
124
+ }>;
125
+ entries: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
126
+ destination: import("@sinclair/typebox").TString;
127
+ proposal: import("@sinclair/typebox").TObject<{
128
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
129
+ repositoryPath: import("@sinclair/typebox").TString;
130
+ revision: import("@sinclair/typebox").TString;
131
+ selectedPath: import("@sinclair/typebox").TString;
132
+ authorityImported: import("@sinclair/typebox").TLiteral<false>;
133
+ requiresConsumerReview: import("@sinclair/typebox").TLiteral<true>;
134
+ files: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
135
+ path: import("@sinclair/typebox").TString;
136
+ hash: import("@sinclair/typebox").TString;
137
+ bytes: import("@sinclair/typebox").TInteger;
138
+ }>>;
139
+ excluded: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
140
+ path: import("@sinclair/typebox").TString;
141
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"source-authority">, import("@sinclair/typebox").TLiteral<"unsupported-material">]>;
142
+ }>>;
143
+ contentHash: import("@sinclair/typebox").TString;
144
+ }>;
145
+ state: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"already-copied">]>;
146
+ }>>;
147
+ planHash: import("@sinclair/typebox").TString;
148
+ authorityImported: import("@sinclair/typebox").TLiteral<false>;
149
+ requiresConsumerReview: import("@sinclair/typebox").TLiteral<true>;
150
+ }>, import("@sinclair/typebox").TObject<{
151
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
152
+ repository: import("@sinclair/typebox").TString;
153
+ tenantId: import("@sinclair/typebox").TString;
154
+ subscriptionId: import("@sinclair/typebox").TString;
155
+ managementGroupId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
156
+ identity: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
157
+ mode: import("@sinclair/typebox").TLiteral<"reuse">;
158
+ clientId: import("@sinclair/typebox").TString;
159
+ principalId: import("@sinclair/typebox").TString;
160
+ }>, import("@sinclair/typebox").TObject<{
161
+ mode: import("@sinclair/typebox").TLiteral<"create">;
162
+ displayName: import("@sinclair/typebox").TString;
163
+ }>]>;
164
+ }>, import("@sinclair/typebox").TObject<{
165
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
166
+ config: import("@sinclair/typebox").TObject<{
167
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
168
+ repository: import("@sinclair/typebox").TString;
169
+ tenantId: import("@sinclair/typebox").TString;
170
+ subscriptionId: import("@sinclair/typebox").TString;
171
+ managementGroupId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
172
+ identity: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
173
+ mode: import("@sinclair/typebox").TLiteral<"reuse">;
174
+ clientId: import("@sinclair/typebox").TString;
175
+ principalId: import("@sinclair/typebox").TString;
176
+ }>, import("@sinclair/typebox").TObject<{
177
+ mode: import("@sinclair/typebox").TLiteral<"create">;
178
+ displayName: import("@sinclair/typebox").TString;
179
+ }>]>;
180
+ }>;
181
+ evidenceHash: import("@sinclair/typebox").TString;
182
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"blocked">]>;
183
+ federation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
184
+ issuer: import("@sinclair/typebox").TLiteral<"https://token.actions.githubusercontent.com">;
185
+ audience: import("@sinclair/typebox").TLiteral<"api://AzureADTokenExchange">;
186
+ subject: import("@sinclair/typebox").TString;
187
+ }>>;
188
+ environment: import("@sinclair/typebox").TLiteral<"governance">;
189
+ proposedRole: import("@sinclair/typebox").TObject<{
190
+ id: import("@sinclair/typebox").TLiteral<"acdd72a7-3385-48ef-bd42-f606fba81ae7">;
191
+ name: import("@sinclair/typebox").TLiteral<"Reader">;
192
+ scope: import("@sinclair/typebox").TString;
193
+ }>;
194
+ variables: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
195
+ blockers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
196
+ pendingActions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
197
+ filesModified: import("@sinclair/typebox").TLiteral<false>;
198
+ executionAuthorized: import("@sinclair/typebox").TLiteral<false>;
199
+ deploymentAuthorized: import("@sinclair/typebox").TLiteral<false>;
200
+ planHash: import("@sinclair/typebox").TString;
201
+ }>, import("@sinclair/typebox").TObject<{
202
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
203
+ config: import("@sinclair/typebox").TObject<{
204
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
205
+ projectId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
206
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
207
+ client: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TLiteral<"github-copilot-cli">>;
208
+ environment: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
209
+ targetScope: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
210
+ iacTool: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>>;
211
+ riskOwner: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"partner">, import("@sinclair/typebox").TLiteral<"customer">]>>;
212
+ createRepository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
213
+ }>;
214
+ configHash: import("@sinclair/typebox").TString;
215
+ runtimeVersion: import("@sinclair/typebox").TString;
216
+ scope: import("@sinclair/typebox").TLiteral<"local-bootstrap-preflight-v1">;
217
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ready">, import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"blocked">]>;
218
+ checks: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
219
+ id: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"repository">, import("@sinclair/typebox").TLiteral<"workspace-runtime">, import("@sinclair/typebox").TLiteral<"apex-state">]>;
220
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ready">, import("@sinclair/typebox").TLiteral<"pending">, import("@sinclair/typebox").TLiteral<"blocked">]>;
221
+ reason: import("@sinclair/typebox").TString;
222
+ }>>;
223
+ unassessed: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TLiteral<"machine-prerequisites">, import("@sinclair/typebox").TLiteral<"client-health">, import("@sinclair/typebox").TLiteral<"remote-coe">, import("@sinclair/typebox").TLiteral<"github-repository">, import("@sinclair/typebox").TLiteral<"governance-oidc">, import("@sinclair/typebox").TLiteral<"reviewed-baseline">]>;
224
+ filesModified: import("@sinclair/typebox").TLiteral<false>;
225
+ executionAuthorized: import("@sinclair/typebox").TLiteral<false>;
226
+ }>, import("@sinclair/typebox").TObject<{
227
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
228
+ repositoryPath: import("@sinclair/typebox").TString;
229
+ revision: import("@sinclair/typebox").TString;
230
+ selectedPath: import("@sinclair/typebox").TString;
231
+ authorityImported: import("@sinclair/typebox").TLiteral<false>;
232
+ requiresConsumerReview: import("@sinclair/typebox").TLiteral<true>;
233
+ files: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
234
+ path: import("@sinclair/typebox").TString;
235
+ hash: import("@sinclair/typebox").TString;
236
+ bytes: import("@sinclair/typebox").TInteger;
237
+ }>>;
238
+ excluded: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
239
+ path: import("@sinclair/typebox").TString;
240
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"source-authority">, import("@sinclair/typebox").TLiteral<"unsupported-material">]>;
241
+ }>>;
242
+ contentHash: import("@sinclair/typebox").TString;
243
+ }>, import("@sinclair/typebox").TObject<{
11
244
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
12
245
  cliVersion: import("@sinclair/typebox").TString;
13
246
  customizationVersion: import("@sinclair/typebox").TString;
@@ -23,6 +256,7 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
23
256
  displayName: import("@sinclair/typebox").TString;
24
257
  createdAt: import("@sinclair/typebox").TString;
25
258
  defaultIacTool: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>;
259
+ riskOwner: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"partner">, import("@sinclair/typebox").TLiteral<"customer">]>;
26
260
  }>, import("@sinclair/typebox").TObject<{
27
261
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
28
262
  projectId: import("@sinclair/typebox").TString;
@@ -69,6 +303,7 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
69
303
  questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
70
304
  id: import("@sinclair/typebox").TString;
71
305
  prompt: import("@sinclair/typebox").TString;
306
+ optional: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
72
307
  options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
73
308
  multiSelect: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
74
309
  recommendation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
@@ -91,6 +326,7 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
91
326
  questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
92
327
  id: import("@sinclair/typebox").TString;
93
328
  prompt: import("@sinclair/typebox").TString;
329
+ optional: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
94
330
  options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
95
331
  multiSelect: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
96
332
  recommendation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
@@ -104,6 +340,33 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
104
340
  taskId: import("@sinclair/typebox").TString;
105
341
  id: import("@sinclair/typebox").TString;
106
342
  }>;
343
+ }>, import("@sinclair/typebox").TObject<{
344
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
345
+ requestId: import("@sinclair/typebox").TString;
346
+ expectedHead: import("@sinclair/typebox").TString;
347
+ ownerEpoch: import("@sinclair/typebox").TInteger;
348
+ questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
349
+ id: import("@sinclair/typebox").TString;
350
+ prompt: import("@sinclair/typebox").TString;
351
+ optional: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
352
+ options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
353
+ multiSelect: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
354
+ recommendation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
355
+ value: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
356
+ source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"default">, import("@sinclair/typebox").TLiteral<"derived">, import("@sinclair/typebox").TLiteral<"prior-answer">]>;
357
+ rationale: import("@sinclair/typebox").TString;
358
+ }>>;
359
+ valueType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"budget">, import("@sinclair/typebox").TLiteral<"recovery">, import("@sinclair/typebox").TLiteral<"environment-set">, import("@sinclair/typebox").TLiteral<"data-classification">, import("@sinclair/typebox").TLiteral<"compliance">]>>;
360
+ }>>;
361
+ governance: import("@sinclair/typebox").TObject<{
362
+ candidatePath: import("@sinclair/typebox").TString;
363
+ candidateHash: import("@sinclair/typebox").TString;
364
+ observedAt: import("@sinclair/typebox").TString;
365
+ requestedAt: import("@sinclair/typebox").TString;
366
+ expiresAt: import("@sinclair/typebox").TString;
367
+ targetScope: import("@sinclair/typebox").TString;
368
+ refreshRequired: import("@sinclair/typebox").TBoolean;
369
+ }>;
107
370
  }>]>, import("@sinclair/typebox").TObject<{
108
371
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
109
372
  requestId: import("@sinclair/typebox").TString;
@@ -146,6 +409,18 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
146
409
  payloadHash: import("@sinclair/typebox").TString;
147
410
  payload: import("@sinclair/typebox").TUnknown;
148
411
  hash: import("@sinclair/typebox").TString;
412
+ }>, import("@sinclair/typebox").TObject<{
413
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
414
+ records: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
415
+ fingerprint: import("@sinclair/typebox").TString;
416
+ callHash: import("@sinclair/typebox").TString;
417
+ operation: import("@sinclair/typebox").TString;
418
+ stateBefore: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
419
+ stateAfter: import("@sinclair/typebox").TString;
420
+ recordedAt: import("@sinclair/typebox").TString;
421
+ expiresAt: import("@sinclair/typebox").TString;
422
+ result: import("@sinclair/typebox").TString;
423
+ }>>;
149
424
  }>, import("@sinclair/typebox").TObject<{
150
425
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
151
426
  projectId: import("@sinclair/typebox").TString;
@@ -167,6 +442,59 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
167
442
  budgetAndOperations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
168
443
  regionalConstraints: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
169
444
  architectureHandoff: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
445
+ }>, import("@sinclair/typebox").TObject<{
446
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
447
+ baseRequirementsHash: import("@sinclair/typebox").TString;
448
+ updates: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
449
+ id: import("@sinclair/typebox").TString;
450
+ changes: import("@sinclair/typebox").TObject<{
451
+ statement: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
452
+ priority: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"must">, import("@sinclair/typebox").TLiteral<"should">, import("@sinclair/typebox").TLiteral<"could">]>>;
453
+ status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"confirmed">, import("@sinclair/typebox").TLiteral<"unknown">, import("@sinclair/typebox").TLiteral<"deferred">]>>;
454
+ source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
455
+ }>;
456
+ }>>;
457
+ additions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
458
+ id: import("@sinclair/typebox").TString;
459
+ statement: import("@sinclair/typebox").TString;
460
+ priority: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"must">, import("@sinclair/typebox").TLiteral<"should">, import("@sinclair/typebox").TLiteral<"could">]>;
461
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"confirmed">, import("@sinclair/typebox").TLiteral<"unknown">, import("@sinclair/typebox").TLiteral<"deferred">]>;
462
+ source: import("@sinclair/typebox").TString;
463
+ }>>;
464
+ removals: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
465
+ fields: import("@sinclair/typebox").TObject<{
466
+ workload: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
467
+ assumptions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
468
+ unknowns: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
469
+ businessContext: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
470
+ successCriteria: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
471
+ nonFunctionalRequirements: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
472
+ securityAndCompliance: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
473
+ budgetAndOperations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
474
+ regionalConstraints: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
475
+ architectureHandoff: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
476
+ }>;
477
+ }>, import("@sinclair/typebox").TObject<{
478
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
479
+ projectId: import("@sinclair/typebox").TString;
480
+ runId: import("@sinclair/typebox").TString;
481
+ expectedHead: import("@sinclair/typebox").TString;
482
+ ownerEpoch: import("@sinclair/typebox").TInteger;
483
+ sourceRequirementsHash: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
484
+ mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"adopt">, import("@sinclair/typebox").TLiteral<"revise">]>;
485
+ candidateHash: import("@sinclair/typebox").TString;
486
+ reason: import("@sinclair/typebox").TString;
487
+ addedRequirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
488
+ removedRequirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
489
+ changedRequirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
490
+ retainedRequirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
491
+ changedFields: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
492
+ invalidatedNodes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
493
+ invalidatedGates: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TInteger>;
494
+ requiresReassessment: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TLiteral<"cost">, import("@sinclair/typebox").TLiteral<"policy">, import("@sinclair/typebox").TLiteral<"security">, import("@sinclair/typebox").TLiteral<"dependencies">, import("@sinclair/typebox").TLiteral<"code">, import("@sinclair/typebox").TLiteral<"documents">]>;
495
+ filesModified: import("@sinclair/typebox").TLiteral<false>;
496
+ deploymentAuthorized: import("@sinclair/typebox").TLiteral<false>;
497
+ proposalHash: import("@sinclair/typebox").TString;
170
498
  }>, import("@sinclair/typebox").TObject<{
171
499
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
172
500
  projectId: import("@sinclair/typebox").TString;
@@ -190,6 +518,13 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
190
518
  implementation: import("@sinclair/typebox").TString;
191
519
  version: import("@sinclair/typebox").TString;
192
520
  parameters: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>;
521
+ scopeLogicalId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
522
+ physicalResources: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
523
+ resourceId: import("@sinclair/typebox").TString;
524
+ type: import("@sinclair/typebox").TString;
525
+ ownership: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"managed">, import("@sinclair/typebox").TLiteral<"existing">]>;
526
+ role: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"primary">, import("@sinclair/typebox").TLiteral<"ancillary">]>;
527
+ }>>>;
193
528
  }>>;
194
529
  }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
195
530
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
@@ -570,12 +905,13 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
570
905
  contextInjection: import("@sinclair/typebox").TLiteral<false>;
571
906
  }>, import("@sinclair/typebox").TObject<{
572
907
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
573
- projectId: import("@sinclair/typebox").TString;
908
+ projectId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
574
909
  displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
575
- client: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"github-copilot-vscode">, import("@sinclair/typebox").TLiteral<"github-copilot-cli">]>>;
910
+ client: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TLiteral<"github-copilot-cli">>;
576
911
  environment: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
577
912
  targetScope: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
578
913
  iacTool: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>>;
914
+ riskOwner: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"partner">, import("@sinclair/typebox").TLiteral<"customer">]>>;
579
915
  createRepository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
580
916
  }>, import("@sinclair/typebox").TObject<{
581
917
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
@@ -761,18 +1097,57 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
761
1097
  components: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
762
1098
  id: import("@sinclair/typebox").TString;
763
1099
  service: import("@sinclair/typebox").TString;
1100
+ resourceTypes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
764
1101
  purpose: import("@sinclair/typebox").TString;
765
1102
  requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
766
1103
  dependsOn: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
767
1104
  }>>;
768
1105
  decisions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1106
+ decisionRecords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1107
+ id: import("@sinclair/typebox").TString;
1108
+ title: import("@sinclair/typebox").TString;
1109
+ context: import("@sinclair/typebox").TString;
1110
+ decision: import("@sinclair/typebox").TString;
1111
+ requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1112
+ alternatives: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1113
+ option: import("@sinclair/typebox").TString;
1114
+ benefits: import("@sinclair/typebox").TString;
1115
+ drawbacks: import("@sinclair/typebox").TString;
1116
+ rejectionReason: import("@sinclair/typebox").TString;
1117
+ }>>;
1118
+ positiveConsequences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1119
+ negativeConsequences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1120
+ wafImpacts: import("@sinclair/typebox").TObject<{
1121
+ security: import("@sinclair/typebox").TString;
1122
+ reliability: import("@sinclair/typebox").TString;
1123
+ "performance-efficiency": import("@sinclair/typebox").TString;
1124
+ "cost-optimization": import("@sinclair/typebox").TString;
1125
+ "operational-excellence": import("@sinclair/typebox").TString;
1126
+ }>;
1127
+ complianceConsiderations: import("@sinclair/typebox").TString;
1128
+ implementationNotes: import("@sinclair/typebox").TString;
1129
+ }>>>;
769
1130
  risks: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1131
+ wellArchitectedAssessment: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1132
+ framework: import("@sinclair/typebox").TLiteral<"azure-well-architected-framework">;
1133
+ assessmentType: import("@sinclair/typebox").TLiteral<"qualitative">;
1134
+ pillars: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1135
+ pillar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"security">, import("@sinclair/typebox").TLiteral<"reliability">, import("@sinclair/typebox").TLiteral<"performance-efficiency">, import("@sinclair/typebox").TLiteral<"cost-optimization">, import("@sinclair/typebox").TLiteral<"operational-excellence">]>;
1136
+ status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"aligned">, import("@sinclair/typebox").TLiteral<"concern">, import("@sinclair/typebox").TLiteral<"blocker">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
1137
+ assessment: import("@sinclair/typebox").TString;
1138
+ requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1139
+ evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1140
+ recommendations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1141
+ tradeoffs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1142
+ }>>;
1143
+ }>>;
770
1144
  }>, import("@sinclair/typebox").TObject<{
771
1145
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
772
1146
  projectId: import("@sinclair/typebox").TString;
773
1147
  runId: import("@sinclair/typebox").TString;
774
1148
  currency: import("@sinclair/typebox").TString;
775
1149
  pricingDate: import("@sinclair/typebox").TString;
1150
+ pricingStatus: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"complete">, import("@sinclair/typebox").TLiteral<"partial">]>>;
776
1151
  lineItems: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
777
1152
  id: import("@sinclair/typebox").TString;
778
1153
  service: import("@sinclair/typebox").TString;
@@ -794,8 +1169,46 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
794
1169
  basis: import("@sinclair/typebox").TString;
795
1170
  }>;
796
1171
  }>>;
1172
+ unpricedItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1173
+ id: import("@sinclair/typebox").TString;
1174
+ service: import("@sinclair/typebox").TString;
1175
+ sku: import("@sinclair/typebox").TString;
1176
+ quantity: import("@sinclair/typebox").TNumber;
1177
+ attemptedAt: import("@sinclair/typebox").TString;
1178
+ reason: import("@sinclair/typebox").TString;
1179
+ }>>>;
797
1180
  totalMonthlyCost: import("@sinclair/typebox").TNumber;
798
1181
  assumptions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1182
+ }>, import("@sinclair/typebox").TObject<{
1183
+ schema: import("@sinclair/typebox").TLiteral<"apex-review-capture-v1">;
1184
+ nonce: import("@sinclair/typebox").TString;
1185
+ sessionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
1186
+ toolName: import("@sinclair/typebox").TString;
1187
+ agentType: import("@sinclair/typebox").TString;
1188
+ prompt: import("@sinclair/typebox").TString;
1189
+ requestSha256: import("@sinclair/typebox").TString;
1190
+ response: import("@sinclair/typebox").TString;
1191
+ responseSha256: import("@sinclair/typebox").TString;
1192
+ capturedAt: import("@sinclair/typebox").TString;
1193
+ signature: import("@sinclair/typebox").TString;
1194
+ }>, import("@sinclair/typebox").TObject<{
1195
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
1196
+ nonce: import("@sinclair/typebox").TString;
1197
+ agentType: import("@sinclair/typebox").TLiteral<"rubber-duck">;
1198
+ mode: import("@sinclair/typebox").TLiteral<"sync">;
1199
+ gate: import("@sinclair/typebox").TInteger;
1200
+ subjectKind: import("@sinclair/typebox").TString;
1201
+ subjectHash: import("@sinclair/typebox").TString;
1202
+ attempt: import("@sinclair/typebox").TInteger;
1203
+ maxAttempts: import("@sinclair/typebox").TInteger;
1204
+ prompt: import("@sinclair/typebox").TString;
1205
+ promptSha256: import("@sinclair/typebox").TString;
1206
+ files: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1207
+ label: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"instructions">, import("@sinclair/typebox").TLiteral<"subject">, import("@sinclair/typebox").TLiteral<"input">]>;
1208
+ kind: import("@sinclair/typebox").TString;
1209
+ path: import("@sinclair/typebox").TString;
1210
+ sha256: import("@sinclair/typebox").TString;
1211
+ }>>;
799
1212
  }>, import("@sinclair/typebox").TObject<{
800
1213
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
801
1214
  projectId: import("@sinclair/typebox").TString;
@@ -803,6 +1216,13 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
803
1216
  subjectKind: import("@sinclair/typebox").TString;
804
1217
  subjectHash: import("@sinclair/typebox").TString;
805
1218
  reviewedAt: import("@sinclair/typebox").TString;
1219
+ capture: import("@sinclair/typebox").TObject<{
1220
+ reviewer: import("@sinclair/typebox").TLiteral<"rubber-duck">;
1221
+ nonce: import("@sinclair/typebox").TString;
1222
+ captureHash: import("@sinclair/typebox").TString;
1223
+ promptSha256: import("@sinclair/typebox").TString;
1224
+ responseSha256: import("@sinclair/typebox").TString;
1225
+ }>;
806
1226
  findings: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
807
1227
  id: import("@sinclair/typebox").TString;
808
1228
  severity: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"critical">, import("@sinclair/typebox").TLiteral<"high">, import("@sinclair/typebox").TLiteral<"medium">, import("@sinclair/typebox").TLiteral<"low">, import("@sinclair/typebox").TLiteral<"info">]>;
@@ -812,11 +1232,18 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
812
1232
  evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
813
1233
  resolution: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
814
1234
  }>>;
1235
+ criteria: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1236
+ criterionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"security">, import("@sinclair/typebox").TLiteral<"reliability">, import("@sinclair/typebox").TLiteral<"performance-efficiency">, import("@sinclair/typebox").TLiteral<"cost-optimization">, import("@sinclair/typebox").TLiteral<"operational-excellence">]>;
1237
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"finding">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
1238
+ rationale: import("@sinclair/typebox").TString;
1239
+ findingIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1240
+ }>>>;
815
1241
  }>, import("@sinclair/typebox").TObject<{
816
1242
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
817
1243
  projectId: import("@sinclair/typebox").TString;
818
1244
  runId: import("@sinclair/typebox").TString;
819
1245
  targetScope: import("@sinclair/typebox").TString;
1246
+ source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"collected">, import("@sinclair/typebox").TLiteral<"reference">]>;
820
1247
  discoveredAt: import("@sinclair/typebox").TString;
821
1248
  expiresAt: import("@sinclair/typebox").TString;
822
1249
  summary: import("@sinclair/typebox").TObject<{
@@ -839,11 +1266,14 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
839
1266
  governanceHash: import("@sinclair/typebox").TString;
840
1267
  mappings: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
841
1268
  policyAssignmentId: import("@sinclair/typebox").TString;
1269
+ policyDefinitionId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1270
+ policyDefinitionReferenceId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
842
1271
  effect: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"deny">, import("@sinclair/typebox").TLiteral<"modify">, import("@sinclair/typebox").TLiteral<"append">, import("@sinclair/typebox").TLiteral<"audit">, import("@sinclair/typebox").TLiteral<"deployIfNotExists">, import("@sinclair/typebox").TLiteral<"disabled">]>;
843
1272
  logicalResourceId: import("@sinclair/typebox").TString;
844
1273
  propertyPath: import("@sinclair/typebox").TString;
845
1274
  expectedValue: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
846
- disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">]>;
1275
+ disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
1276
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
847
1277
  }>>;
848
1278
  }>, import("@sinclair/typebox").TObject<{
849
1279
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
@@ -859,6 +1289,137 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
859
1289
  reference: import("@sinclair/typebox").TString;
860
1290
  version: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
861
1291
  }>]>>;
1292
+ }>, import("@sinclair/typebox").TObject<{
1293
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
1294
+ projectId: import("@sinclair/typebox").TString;
1295
+ runId: import("@sinclair/typebox").TString;
1296
+ targetScope: import("@sinclair/typebox").TString;
1297
+ governanceHash: import("@sinclair/typebox").TString;
1298
+ snapshotDigest: import("@sinclair/typebox").TString;
1299
+ contentHash: import("@sinclair/typebox").TString;
1300
+ observedAt: import("@sinclair/typebox").TString;
1301
+ expiresAt: import("@sinclair/typebox").TString;
1302
+ rawSourceDigest: import("@sinclair/typebox").TString;
1303
+ }>, import("@sinclair/typebox").TObject<{
1304
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
1305
+ projectId: import("@sinclair/typebox").TString;
1306
+ runId: import("@sinclair/typebox").TString;
1307
+ track: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>;
1308
+ sourceHash: import("@sinclair/typebox").TString;
1309
+ policyMapHash: import("@sinclair/typebox").TString;
1310
+ policyMapContentHash: import("@sinclair/typebox").TString;
1311
+ logicalResourceManifestHash: import("@sinclair/typebox").TString;
1312
+ inputHash: import("@sinclair/typebox").TString;
1313
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1314
+ results: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1315
+ mappingIndex: import("@sinclair/typebox").TInteger;
1316
+ mappingHash: import("@sinclair/typebox").TString;
1317
+ policyAssignmentId: import("@sinclair/typebox").TString;
1318
+ policyDefinitionId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1319
+ policyDefinitionReferenceId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1320
+ effect: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"deny">, import("@sinclair/typebox").TLiteral<"modify">, import("@sinclair/typebox").TLiteral<"append">, import("@sinclair/typebox").TLiteral<"audit">, import("@sinclair/typebox").TLiteral<"deployIfNotExists">, import("@sinclair/typebox").TLiteral<"disabled">]>;
1321
+ disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
1322
+ logicalResourceId: import("@sinclair/typebox").TString;
1323
+ propertyPath: import("@sinclair/typebox").TString;
1324
+ expectedValueDigest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1325
+ observedValueDigest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1326
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1327
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"matched">, import("@sinclair/typebox").TLiteral<"value-mismatch">, import("@sinclair/typebox").TLiteral<"missing-property">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"missing-expected-value">, import("@sinclair/typebox").TLiteral<"unverified-exemption">, import("@sinclair/typebox").TLiteral<"unsupported-effect">, import("@sinclair/typebox").TLiteral<"unsupported-path">, import("@sinclair/typebox").TLiteral<"unsupported-expression">, import("@sinclair/typebox").TLiteral<"resource-not-bound">, import("@sinclair/typebox").TLiteral<"resource-not-found">, import("@sinclair/typebox").TLiteral<"ambiguous-resource">, import("@sinclair/typebox").TLiteral<"unsupported-resource">, import("@sinclair/typebox").TLiteral<"invalid-source">, import("@sinclair/typebox").TLiteral<"not-applicable">, import("@sinclair/typebox").TLiteral<"platform-remediated">]>;
1328
+ }>>;
1329
+ receiptHash: import("@sinclair/typebox").TString;
1330
+ }>, import("@sinclair/typebox").TObject<{
1331
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
1332
+ projectId: import("@sinclair/typebox").TString;
1333
+ runId: import("@sinclair/typebox").TString;
1334
+ track: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>;
1335
+ sourceHash: import("@sinclair/typebox").TString;
1336
+ treeHash: import("@sinclair/typebox").TString;
1337
+ policyHash: import("@sinclair/typebox").TString;
1338
+ inputHash: import("@sinclair/typebox").TString;
1339
+ policyValidation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1340
+ schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
1341
+ projectId: import("@sinclair/typebox").TString;
1342
+ runId: import("@sinclair/typebox").TString;
1343
+ track: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep">, import("@sinclair/typebox").TLiteral<"terraform">]>;
1344
+ sourceHash: import("@sinclair/typebox").TString;
1345
+ policyMapHash: import("@sinclair/typebox").TString;
1346
+ policyMapContentHash: import("@sinclair/typebox").TString;
1347
+ logicalResourceManifestHash: import("@sinclair/typebox").TString;
1348
+ inputHash: import("@sinclair/typebox").TString;
1349
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1350
+ results: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1351
+ mappingIndex: import("@sinclair/typebox").TInteger;
1352
+ mappingHash: import("@sinclair/typebox").TString;
1353
+ policyAssignmentId: import("@sinclair/typebox").TString;
1354
+ policyDefinitionId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1355
+ policyDefinitionReferenceId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1356
+ effect: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"deny">, import("@sinclair/typebox").TLiteral<"modify">, import("@sinclair/typebox").TLiteral<"append">, import("@sinclair/typebox").TLiteral<"audit">, import("@sinclair/typebox").TLiteral<"deployIfNotExists">, import("@sinclair/typebox").TLiteral<"disabled">]>;
1357
+ disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
1358
+ logicalResourceId: import("@sinclair/typebox").TString;
1359
+ propertyPath: import("@sinclair/typebox").TString;
1360
+ expectedValueDigest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1361
+ observedValueDigest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1362
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1363
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"matched">, import("@sinclair/typebox").TLiteral<"value-mismatch">, import("@sinclair/typebox").TLiteral<"missing-property">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"missing-expected-value">, import("@sinclair/typebox").TLiteral<"unverified-exemption">, import("@sinclair/typebox").TLiteral<"unsupported-effect">, import("@sinclair/typebox").TLiteral<"unsupported-path">, import("@sinclair/typebox").TLiteral<"unsupported-expression">, import("@sinclair/typebox").TLiteral<"resource-not-bound">, import("@sinclair/typebox").TLiteral<"resource-not-found">, import("@sinclair/typebox").TLiteral<"ambiguous-resource">, import("@sinclair/typebox").TLiteral<"unsupported-resource">, import("@sinclair/typebox").TLiteral<"invalid-source">, import("@sinclair/typebox").TLiteral<"not-applicable">, import("@sinclair/typebox").TLiteral<"platform-remediated">]>;
1364
+ }>>;
1365
+ receiptHash: import("@sinclair/typebox").TString;
1366
+ }>>;
1367
+ securityBaseline: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1368
+ coverage: import("@sinclair/typebox").TLiteral<"bicep-storage-only-baseline-v1">;
1369
+ sourceHash: import("@sinclair/typebox").TString;
1370
+ inputHash: import("@sinclair/typebox").TString;
1371
+ manifestHash: import("@sinclair/typebox").TString;
1372
+ bindingHash: import("@sinclair/typebox").TString;
1373
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1374
+ reason: import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>;
1375
+ }>>;
1376
+ resourceParity: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1377
+ coverage: import("@sinclair/typebox").TLiteral<"bicep-symbolic-resource-parity-v1">;
1378
+ sourceHash: import("@sinclair/typebox").TString;
1379
+ manifestHash: import("@sinclair/typebox").TString;
1380
+ bindingHash: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1381
+ inputHash: import("@sinclair/typebox").TString;
1382
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1383
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"matched">, import("@sinclair/typebox").TLiteral<"coverage-mismatch">, import("@sinclair/typebox").TLiteral<"type-mismatch">, import("@sinclair/typebox").TLiteral<"dependency-mismatch">, import("@sinclair/typebox").TLiteral<"unsupported-resource">, import("@sinclair/typebox").TLiteral<"invalid-source">]>;
1384
+ }>>;
1385
+ policyApplicability: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1386
+ status: import("@sinclair/typebox").TLiteral<"no-actionable-mappings">;
1387
+ policyMapContentHash: import("@sinclair/typebox").TString;
1388
+ }>>;
1389
+ storageSecurity: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
1390
+ coverage: import("@sinclair/typebox").TLiteral<"storage-account-property-hardening-v1">;
1391
+ fullBaselineEvaluated: import("@sinclair/typebox").TLiteral<false>;
1392
+ sourceHash: import("@sinclair/typebox").TString;
1393
+ inputHash: import("@sinclair/typebox").TString;
1394
+ bindingHash: import("@sinclair/typebox").TString;
1395
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1396
+ results: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1397
+ propertyPath: import("@sinclair/typebox").TString;
1398
+ expectedValueDigest: import("@sinclair/typebox").TString;
1399
+ observedValueDigest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1400
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1401
+ reason: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"matched">, import("@sinclair/typebox").TLiteral<"value-mismatch">, import("@sinclair/typebox").TLiteral<"missing-property">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"missing-expected-value">, import("@sinclair/typebox").TLiteral<"unverified-exemption">, import("@sinclair/typebox").TLiteral<"unsupported-effect">, import("@sinclair/typebox").TLiteral<"unsupported-path">, import("@sinclair/typebox").TLiteral<"unsupported-expression">, import("@sinclair/typebox").TLiteral<"resource-not-bound">, import("@sinclair/typebox").TLiteral<"resource-not-found">, import("@sinclair/typebox").TLiteral<"ambiguous-resource">, import("@sinclair/typebox").TLiteral<"unsupported-resource">, import("@sinclair/typebox").TLiteral<"invalid-source">, import("@sinclair/typebox").TLiteral<"not-applicable">, import("@sinclair/typebox").TLiteral<"platform-remediated">]>;
1402
+ }>>;
1403
+ }>>>;
1404
+ storageDiagnostics: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
1405
+ coverage: import("@sinclair/typebox").TLiteral<"bicep-storage-service-diagnostics-v1">;
1406
+ fullBaselineEvaluated: import("@sinclair/typebox").TLiteral<false>;
1407
+ sourceHash: import("@sinclair/typebox").TString;
1408
+ inputHash: import("@sinclair/typebox").TString;
1409
+ bindingHash: import("@sinclair/typebox").TString;
1410
+ outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"fail">, import("@sinclair/typebox").TLiteral<"unsupported">]>;
1411
+ reason: import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<string>[]>;
1412
+ }>>>;
1413
+ outcome: import("@sinclair/typebox").TLiteral<"pass">;
1414
+ commands: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1415
+ validatorId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"bicep:format">, import("@sinclair/typebox").TLiteral<"bicep:build">, import("@sinclair/typebox").TLiteral<"bicep:lint">, import("@sinclair/typebox").TLiteral<"terraform:init-backend-false">, import("@sinclair/typebox").TLiteral<"terraform:format">, import("@sinclair/typebox").TLiteral<"terraform:validate">]>;
1416
+ commandHash: import("@sinclair/typebox").TString;
1417
+ exitCode: import("@sinclair/typebox").TLiteral<0>;
1418
+ signal: import("@sinclair/typebox").TNull;
1419
+ timedOut: import("@sinclair/typebox").TLiteral<false>;
1420
+ outputTruncated: import("@sinclair/typebox").TLiteral<false>;
1421
+ }>>;
1422
+ receiptHash: import("@sinclair/typebox").TString;
862
1423
  }>, import("@sinclair/typebox").TObject<{
863
1424
  schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
864
1425
  projectId: import("@sinclair/typebox").TString;
@@ -868,6 +1429,7 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
868
1429
  logicalId: import("@sinclair/typebox").TString;
869
1430
  type: import("@sinclair/typebox").TString;
870
1431
  implementationAddress: import("@sinclair/typebox").TString;
1432
+ executionAddress: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
871
1433
  implementationKind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"resource">, import("@sinclair/typebox").TLiteral<"module">, import("@sinclair/typebox").TLiteral<"data">, import("@sinclair/typebox").TLiteral<"existing">]>;
872
1434
  ownership: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"existing">, import("@sinclair/typebox").TLiteral<"managed">]>;
873
1435
  dependsOn: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
@@ -960,6 +1522,57 @@ export declare const contractSchemas: readonly [import("@sinclair/typebox").TObj
960
1522
  diagnosedAt: import("@sinclair/typebox").TString;
961
1523
  status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"healthy">, import("@sinclair/typebox").TLiteral<"degraded">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
962
1524
  observations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1525
+ operationalHandoff: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1526
+ owner: import("@sinclair/typebox").TString;
1527
+ escalation: import("@sinclair/typebox").TString;
1528
+ maintenanceWindow: import("@sinclair/typebox").TString;
1529
+ accessPrerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1530
+ configurationReferences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1531
+ name: import("@sinclair/typebox").TString;
1532
+ source: import("@sinclair/typebox").TString;
1533
+ }>>;
1534
+ healthChecks: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1535
+ resourceId: import("@sinclair/typebox").TString;
1536
+ check: import("@sinclair/typebox").TString;
1537
+ expectedOutcome: import("@sinclair/typebox").TString;
1538
+ evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1539
+ }>>;
1540
+ monitoring: import("@sinclair/typebox").TString;
1541
+ incidentResponse: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1542
+ applicability: import("@sinclair/typebox").TLiteral<"applicable">;
1543
+ owner: import("@sinclair/typebox").TString;
1544
+ prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1545
+ steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1546
+ verification: import("@sinclair/typebox").TString;
1547
+ executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
1548
+ }>, import("@sinclair/typebox").TObject<{
1549
+ applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
1550
+ rationale: import("@sinclair/typebox").TString;
1551
+ }>]>;
1552
+ rollback: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1553
+ applicability: import("@sinclair/typebox").TLiteral<"applicable">;
1554
+ owner: import("@sinclair/typebox").TString;
1555
+ prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1556
+ steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1557
+ verification: import("@sinclair/typebox").TString;
1558
+ executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
1559
+ }>, import("@sinclair/typebox").TObject<{
1560
+ applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
1561
+ rationale: import("@sinclair/typebox").TString;
1562
+ }>]>;
1563
+ recovery: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1564
+ applicability: import("@sinclair/typebox").TLiteral<"applicable">;
1565
+ owner: import("@sinclair/typebox").TString;
1566
+ prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1567
+ steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1568
+ verification: import("@sinclair/typebox").TString;
1569
+ executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
1570
+ }>, import("@sinclair/typebox").TObject<{
1571
+ applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
1572
+ rationale: import("@sinclair/typebox").TString;
1573
+ }>]>;
1574
+ limitations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1575
+ }>>;
963
1576
  causes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
964
1577
  id: import("@sinclair/typebox").TString;
965
1578
  summary: import("@sinclair/typebox").TString;