@c4a/context 0.6.19 → 0.7.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 (120) hide show
  1. package/README.md +1 -1
  2. package/README.zh-CN.md +1 -1
  3. package/codeIndexPlan.d.ts +34 -0
  4. package/docs/README.md +7 -0
  5. package/docs/README.zh-CN.md +5 -0
  6. package/docs/guides/code-indexer-skill-authoring.md +124 -0
  7. package/docs/guides/indexer-provider-and-customization.md +140 -0
  8. package/docs/guides/markdown-indexer-skill-authoring.md +118 -0
  9. package/docs/reference/code-extractors.md +2 -2
  10. package/docs/reference/indexer-provider-protocol.md +819 -0
  11. package/docs/reference/project-api.md +2 -2
  12. package/index.d.ts +47 -1
  13. package/index.js +28239 -3952
  14. package/indexerAgentStepProtocol.d.ts +9391 -0
  15. package/indexerArtifactDependencies.d.ts +689 -0
  16. package/indexerArtifactPolicy.d.ts +335 -0
  17. package/indexerArtifactResult.d.ts +2010 -0
  18. package/indexerAuditFacts.d.ts +66 -0
  19. package/indexerAuditOverrideReadiness.d.ts +27 -0
  20. package/indexerAuditProtocol.d.ts +238 -0
  21. package/indexerAuditRevision.d.ts +726 -0
  22. package/indexerAuditRevisionActions.d.ts +236 -0
  23. package/indexerAuthoringFixture.d.ts +152 -0
  24. package/indexerBaseQuestionAmendment.d.ts +2403 -0
  25. package/indexerBenchmark.d.ts +1062 -0
  26. package/indexerCandidateCompile.d.ts +801 -0
  27. package/indexerCapabilityGroupEvidence.d.ts +129 -0
  28. package/indexerCatalogFallback.d.ts +1262 -0
  29. package/indexerCollectionMapping.d.ts +75 -0
  30. package/indexerContentLayers.d.ts +137 -0
  31. package/indexerControlledInvocation.d.ts +512 -0
  32. package/indexerControlledProgram.d.ts +12535 -0
  33. package/indexerCoreExports.d.ts +21 -0
  34. package/indexerCustomizationDraft.d.ts +13800 -0
  35. package/indexerCustomizationLadder.d.ts +103 -0
  36. package/indexerDependencyView.d.ts +1610 -0
  37. package/indexerEvidenceAdapterResult.d.ts +504 -0
  38. package/indexerExampleDecision.d.ts +1606 -0
  39. package/indexerExampleIdentity.d.ts +132 -0
  40. package/indexerExampleIdentityAudit.d.ts +70 -0
  41. package/indexerExampleLinkageAudit.d.ts +80 -0
  42. package/indexerGeneratedAuthoringAudit.d.ts +208 -0
  43. package/indexerIncrementalImpact.d.ts +221 -0
  44. package/indexerInventoryDisposition.d.ts +443 -0
  45. package/indexerLayerComposition.d.ts +1652 -0
  46. package/indexerLayoutChange.d.ts +329 -0
  47. package/indexerLayoutProposalSet.d.ts +447 -0
  48. package/indexerLayoutResolver.d.ts +342 -0
  49. package/indexerLayoutTransition.d.ts +247 -0
  50. package/indexerLifecycle.d.ts +53 -0
  51. package/indexerMainLifecycle.d.ts +258 -0
  52. package/indexerMainRunLedger.d.ts +888 -0
  53. package/indexerMainRunProtocol.d.ts +6471 -0
  54. package/indexerMainWorkset.d.ts +2141 -0
  55. package/indexerMaterialAnswer.d.ts +738 -0
  56. package/indexerMaterialAnswerActualization.d.ts +91 -0
  57. package/indexerMaterialAnswerExecutionPlan.d.ts +2887 -0
  58. package/indexerMaterialAnswerFlow.d.ts +63 -0
  59. package/indexerMaterialAnswerLayout.d.ts +76 -0
  60. package/indexerMaterialAnswerReview.d.ts +217 -0
  61. package/indexerMaterialAnswerReviewRoute.d.ts +6145 -0
  62. package/indexerMaterialAnswerRunLedger.d.ts +918 -0
  63. package/indexerMaterialAnswerRunProtocol.d.ts +1253 -0
  64. package/indexerMaterialGapLedger.d.ts +3111 -0
  65. package/indexerMaterialQuestionExclusion.d.ts +129 -0
  66. package/indexerMaterialQuestionWorkset.d.ts +508 -0
  67. package/indexerNavigationArtifactGraph.d.ts +5 -0
  68. package/indexerNavigationArtifactPlan.d.ts +39 -0
  69. package/indexerOverlayQuestionAmendment.d.ts +2551 -0
  70. package/indexerOverlayQuestionApplyProposal.d.ts +4697 -0
  71. package/indexerOverlayTrust.d.ts +1425 -0
  72. package/indexerParserCoordinate.d.ts +222 -0
  73. package/indexerParserFactView.d.ts +503 -0
  74. package/indexerPartitionConvergence.d.ts +496 -0
  75. package/indexerPartitionPlan.d.ts +919 -0
  76. package/indexerPartitionStrategyResolution.d.ts +594 -0
  77. package/indexerPhysicalArtifactAudit.d.ts +247 -0
  78. package/indexerPhysicalArtifactManifest.d.ts +449 -0
  79. package/indexerPlannedMaterialAnswer.d.ts +116 -0
  80. package/indexerPostAuthorComposition.d.ts +2000 -0
  81. package/indexerPostAuthorRunLedger.d.ts +1972 -0
  82. package/indexerPrimaryProjection.d.ts +262 -0
  83. package/indexerProfileContract.d.ts +3034 -0
  84. package/indexerProfileMetricAudit.d.ts +218 -0
  85. package/indexerProgramExecutionAuthorization.d.ts +227 -0
  86. package/indexerProgramRunProtocol.d.ts +7642 -0
  87. package/indexerProjectProposal.d.ts +2807 -0
  88. package/indexerProjectedArtifactFanOutAudit.d.ts +159 -0
  89. package/indexerProjectedArtifactPlan.d.ts +217 -0
  90. package/indexerProtocolCommon.d.ts +29 -0
  91. package/indexerProvider.d.ts +2573 -0
  92. package/indexerProviderComposition.d.ts +1357 -0
  93. package/indexerProviderContractReferences.d.ts +13 -0
  94. package/indexerProviderProfileResolution.d.ts +20 -0
  95. package/indexerProviderResolution.d.ts +752 -0
  96. package/indexerProviderResolutionAction.d.ts +678 -0
  97. package/indexerProviderRouting.d.ts +3909 -0
  98. package/indexerProviderSelectionProposal.d.ts +3311 -0
  99. package/indexerQuestionAuthority.d.ts +419 -0
  100. package/indexerReaderTargetInventory.d.ts +161 -0
  101. package/indexerReferenceOnlyAudit.d.ts +90 -0
  102. package/indexerRegistry.d.ts +3019 -0
  103. package/indexerRequirementComparison.d.ts +44 -0
  104. package/indexerRequirementConfirmation.d.ts +1193 -0
  105. package/indexerRequirementLifecycle.d.ts +3314 -0
  106. package/indexerRestrictedSelector.d.ts +63 -0
  107. package/indexerResultReconciliation.d.ts +6844 -0
  108. package/indexerResultReconciliationRun.d.ts +15 -0
  109. package/indexerRunEnvelope.d.ts +384 -0
  110. package/indexerRunProtocolCommon.d.ts +21 -0
  111. package/indexerSharedArtifactFingerprint.d.ts +33 -0
  112. package/indexerStructuredDeclaration.d.ts +513 -0
  113. package/indexerSubjectCatalog.d.ts +230 -0
  114. package/indexerSubjectIdentity.d.ts +19 -0
  115. package/indexerSubjectKeyAuthority.d.ts +785 -0
  116. package/indexerTemplateRendering.d.ts +485 -0
  117. package/indexerToolSnapshot.d.ts +431 -0
  118. package/indexerWorksetRead.d.ts +287 -0
  119. package/package.json +1 -1
  120. package/phases.d.ts +1 -1
@@ -0,0 +1,1425 @@
1
+ import { z } from "zod";
2
+ import { type IndexerOperatorContract, type IndexerProfileContract, type IndexerProfileContractEntry } from "./indexerProfileContract.js";
3
+ export declare const indexerContractOverlaySchema: z.ZodObject<{
4
+ protocol: z.ZodLiteral<"context.indexer.contract-overlay/v1">;
5
+ id: z.ZodEffects<z.ZodString, string, string>;
6
+ version: z.ZodString;
7
+ extends: z.ZodObject<{
8
+ profile: z.ZodEffects<z.ZodString, string, string>;
9
+ version: z.ZodString;
10
+ contract_digest: z.ZodString;
11
+ }, "strict", z.ZodTypeAny, {
12
+ contract_digest: string;
13
+ version: string;
14
+ profile: string;
15
+ }, {
16
+ contract_digest: string;
17
+ version: string;
18
+ profile: string;
19
+ }>;
20
+ operator_contract_version: z.ZodString;
21
+ operator_contract_digest: z.ZodString;
22
+ additions: z.ZodObject<{
23
+ inventory_domains: z.ZodOptional<z.ZodArray<z.ZodObject<{
24
+ id: z.ZodEffects<z.ZodString, string, string>;
25
+ selector: z.ZodObject<{
26
+ operator: z.ZodEffects<z.ZodString, string, string>;
27
+ parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("./indexerRegistry.js").IndexerJson, z.ZodTypeDef, import("./indexerRegistry.js").IndexerJson>>>;
28
+ }, "strict", z.ZodTypeAny, {
29
+ operator: string;
30
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
31
+ }, {
32
+ operator: string;
33
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
34
+ }>;
35
+ disposition_required: z.ZodLiteral<true>;
36
+ }, "strict", z.ZodTypeAny, {
37
+ id: string;
38
+ selector: {
39
+ operator: string;
40
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
41
+ };
42
+ disposition_required: true;
43
+ }, {
44
+ id: string;
45
+ selector: {
46
+ operator: string;
47
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
48
+ };
49
+ disposition_required: true;
50
+ }>, "many">>;
51
+ required_dispositions: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
52
+ metrics: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodObject<{
53
+ id: z.ZodEffects<z.ZodString, string, string>;
54
+ unit: z.ZodEnum<["count", "ratio"]>;
55
+ operator: z.ZodEffects<z.ZodString, string, string>;
56
+ threshold_policy: z.ZodLiteral<"explicit">;
57
+ direction: z.ZodLiteral<"minimum">;
58
+ recommended_min: z.ZodNumber;
59
+ hard_min: z.ZodNumber;
60
+ }, "strict", z.ZodTypeAny, {
61
+ id: string;
62
+ operator: string;
63
+ unit: "count" | "ratio";
64
+ threshold_policy: "explicit";
65
+ direction: "minimum";
66
+ recommended_min: number;
67
+ hard_min: number;
68
+ }, {
69
+ id: string;
70
+ operator: string;
71
+ unit: "count" | "ratio";
72
+ threshold_policy: "explicit";
73
+ direction: "minimum";
74
+ recommended_min: number;
75
+ hard_min: number;
76
+ }>, {
77
+ id: string;
78
+ operator: string;
79
+ unit: "count" | "ratio";
80
+ threshold_policy: "explicit";
81
+ direction: "minimum";
82
+ recommended_min: number;
83
+ hard_min: number;
84
+ }, {
85
+ id: string;
86
+ operator: string;
87
+ unit: "count" | "ratio";
88
+ threshold_policy: "explicit";
89
+ direction: "minimum";
90
+ recommended_min: number;
91
+ hard_min: number;
92
+ }>, z.ZodEffects<z.ZodObject<{
93
+ id: z.ZodEffects<z.ZodString, string, string>;
94
+ unit: z.ZodEnum<["count", "ratio"]>;
95
+ operator: z.ZodEffects<z.ZodString, string, string>;
96
+ threshold_policy: z.ZodLiteral<"explicit">;
97
+ direction: z.ZodLiteral<"maximum">;
98
+ recommended_max: z.ZodNumber;
99
+ hard_max: z.ZodNumber;
100
+ }, "strict", z.ZodTypeAny, {
101
+ id: string;
102
+ operator: string;
103
+ unit: "count" | "ratio";
104
+ threshold_policy: "explicit";
105
+ direction: "maximum";
106
+ recommended_max: number;
107
+ hard_max: number;
108
+ }, {
109
+ id: string;
110
+ operator: string;
111
+ unit: "count" | "ratio";
112
+ threshold_policy: "explicit";
113
+ direction: "maximum";
114
+ recommended_max: number;
115
+ hard_max: number;
116
+ }>, {
117
+ id: string;
118
+ operator: string;
119
+ unit: "count" | "ratio";
120
+ threshold_policy: "explicit";
121
+ direction: "maximum";
122
+ recommended_max: number;
123
+ hard_max: number;
124
+ }, {
125
+ id: string;
126
+ operator: string;
127
+ unit: "count" | "ratio";
128
+ threshold_policy: "explicit";
129
+ direction: "maximum";
130
+ recommended_max: number;
131
+ hard_max: number;
132
+ }>, z.ZodObject<{
133
+ id: z.ZodEffects<z.ZodString, string, string>;
134
+ unit: z.ZodEnum<["count", "ratio"]>;
135
+ operator: z.ZodEffects<z.ZodString, string, string>;
136
+ threshold_policy: z.ZodLiteral<"inflation-sensitive">;
137
+ direction: z.ZodLiteral<"maximum">;
138
+ }, "strict", z.ZodTypeAny, {
139
+ id: string;
140
+ operator: string;
141
+ unit: "count" | "ratio";
142
+ threshold_policy: "inflation-sensitive";
143
+ direction: "maximum";
144
+ }, {
145
+ id: string;
146
+ operator: string;
147
+ unit: "count" | "ratio";
148
+ threshold_policy: "inflation-sensitive";
149
+ direction: "maximum";
150
+ }>]>, "many">>;
151
+ artifact_policy_variants: z.ZodOptional<z.ZodArray<z.ZodObject<{
152
+ id: z.ZodEffects<z.ZodString, string, string>;
153
+ eligibility: z.ZodObject<{
154
+ protocol: z.ZodLiteral<"context.indexer.selector/v1">;
155
+ expression: z.ZodType<import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression, z.ZodTypeDef, import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression>;
156
+ }, "strict", z.ZodTypeAny, {
157
+ protocol: "context.indexer.selector/v1";
158
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
159
+ }, {
160
+ protocol: "context.indexer.selector/v1";
161
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
162
+ }>;
163
+ artifact_kinds: z.ZodEffects<z.ZodObject<{
164
+ required: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
165
+ discretionary: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
166
+ }, "strict", z.ZodTypeAny, {
167
+ required: string[];
168
+ discretionary: string[];
169
+ }, {
170
+ required: string[];
171
+ discretionary: string[];
172
+ }>, {
173
+ required: string[];
174
+ discretionary: string[];
175
+ }, {
176
+ required: string[];
177
+ discretionary: string[];
178
+ }>;
179
+ thresholds: z.ZodRecord<z.ZodEffects<z.ZodString, string, string>, z.ZodObject<{
180
+ recommended_max: z.ZodNumber;
181
+ }, "strict", z.ZodTypeAny, {
182
+ recommended_max: number;
183
+ }, {
184
+ recommended_max: number;
185
+ }>>;
186
+ }, "strict", z.ZodTypeAny, {
187
+ id: string;
188
+ thresholds: Record<string, {
189
+ recommended_max: number;
190
+ }>;
191
+ eligibility: {
192
+ protocol: "context.indexer.selector/v1";
193
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
194
+ };
195
+ artifact_kinds: {
196
+ required: string[];
197
+ discretionary: string[];
198
+ };
199
+ }, {
200
+ id: string;
201
+ thresholds: Record<string, {
202
+ recommended_max: number;
203
+ }>;
204
+ eligibility: {
205
+ protocol: "context.indexer.selector/v1";
206
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
207
+ };
208
+ artifact_kinds: {
209
+ required: string[];
210
+ discretionary: string[];
211
+ };
212
+ }>, "many">>;
213
+ question_target_domains: z.ZodOptional<z.ZodArray<z.ZodObject<{
214
+ id: z.ZodEffects<z.ZodString, string, string>;
215
+ selector: z.ZodObject<{
216
+ operator: z.ZodEffects<z.ZodString, string, string>;
217
+ parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("./indexerRegistry.js").IndexerJson, z.ZodTypeDef, import("./indexerRegistry.js").IndexerJson>>>;
218
+ }, "strict", z.ZodTypeAny, {
219
+ operator: string;
220
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
221
+ }, {
222
+ operator: string;
223
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
224
+ }>;
225
+ grouping_operator: z.ZodEffects<z.ZodString, string, string>;
226
+ subject_key_kind: z.ZodEffects<z.ZodString, string, string>;
227
+ granularity: z.ZodEnum<["module", "identity"]>;
228
+ }, "strict", z.ZodTypeAny, {
229
+ id: string;
230
+ selector: {
231
+ operator: string;
232
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
233
+ };
234
+ grouping_operator: string;
235
+ subject_key_kind: string;
236
+ granularity: "module" | "identity";
237
+ }, {
238
+ id: string;
239
+ selector: {
240
+ operator: string;
241
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
242
+ };
243
+ grouping_operator: string;
244
+ subject_key_kind: string;
245
+ granularity: "module" | "identity";
246
+ }>, "many">>;
247
+ reader_question_contracts: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodObject<{
248
+ ref: z.ZodString;
249
+ semantic: z.ZodEffects<z.ZodString, string, string>;
250
+ version: z.ZodNumber;
251
+ coverage_domain: z.ZodEffects<z.ZodString, string, string>;
252
+ target_domain_ref: z.ZodEffects<z.ZodString, string, string>;
253
+ target_selector: z.ZodObject<{
254
+ protocol: z.ZodLiteral<"context.indexer.selector/v1">;
255
+ expression: z.ZodType<import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression, z.ZodTypeDef, import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression>;
256
+ }, "strict", z.ZodTypeAny, {
257
+ protocol: "context.indexer.selector/v1";
258
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
259
+ }, {
260
+ protocol: "context.indexer.selector/v1";
261
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
262
+ }>;
263
+ evidence_contract: z.ZodObject<{
264
+ accepted_kinds: z.ZodArray<z.ZodEnum<["code", "contract", "configuration", "documentation", "runbook", "decision-record", "test-result", "runtime-observation", "tool-snapshot"]>, "many">;
265
+ minimum_items: z.ZodNumber;
266
+ minimum_distinct_sources: z.ZodNumber;
267
+ provenance_constraints: z.ZodOptional<z.ZodObject<{
268
+ protocol: z.ZodLiteral<"context.indexer.selector/v1">;
269
+ expression: z.ZodType<import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression, z.ZodTypeDef, import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression>;
270
+ }, "strict", z.ZodTypeAny, {
271
+ protocol: "context.indexer.selector/v1";
272
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
273
+ }, {
274
+ protocol: "context.indexer.selector/v1";
275
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
276
+ }>>;
277
+ }, "strict", z.ZodTypeAny, {
278
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
279
+ minimum_items: number;
280
+ minimum_distinct_sources: number;
281
+ provenance_constraints?: {
282
+ protocol: "context.indexer.selector/v1";
283
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
284
+ } | undefined;
285
+ }, {
286
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
287
+ minimum_items: number;
288
+ minimum_distinct_sources: number;
289
+ provenance_constraints?: {
290
+ protocol: "context.indexer.selector/v1";
291
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
292
+ } | undefined;
293
+ }>;
294
+ allowed_exclusion_reason_codes: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
295
+ }, "strict", z.ZodTypeAny, {
296
+ ref: string;
297
+ version: number;
298
+ semantic: string;
299
+ coverage_domain: string;
300
+ target_domain_ref: string;
301
+ target_selector: {
302
+ protocol: "context.indexer.selector/v1";
303
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
304
+ };
305
+ evidence_contract: {
306
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
307
+ minimum_items: number;
308
+ minimum_distinct_sources: number;
309
+ provenance_constraints?: {
310
+ protocol: "context.indexer.selector/v1";
311
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
312
+ } | undefined;
313
+ };
314
+ allowed_exclusion_reason_codes?: string[] | undefined;
315
+ }, {
316
+ ref: string;
317
+ version: number;
318
+ semantic: string;
319
+ coverage_domain: string;
320
+ target_domain_ref: string;
321
+ target_selector: {
322
+ protocol: "context.indexer.selector/v1";
323
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
324
+ };
325
+ evidence_contract: {
326
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
327
+ minimum_items: number;
328
+ minimum_distinct_sources: number;
329
+ provenance_constraints?: {
330
+ protocol: "context.indexer.selector/v1";
331
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
332
+ } | undefined;
333
+ };
334
+ allowed_exclusion_reason_codes?: string[] | undefined;
335
+ }>, {
336
+ ref: string;
337
+ version: number;
338
+ semantic: string;
339
+ coverage_domain: string;
340
+ target_domain_ref: string;
341
+ target_selector: {
342
+ protocol: "context.indexer.selector/v1";
343
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
344
+ };
345
+ evidence_contract: {
346
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
347
+ minimum_items: number;
348
+ minimum_distinct_sources: number;
349
+ provenance_constraints?: {
350
+ protocol: "context.indexer.selector/v1";
351
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
352
+ } | undefined;
353
+ };
354
+ allowed_exclusion_reason_codes?: string[] | undefined;
355
+ }, {
356
+ ref: string;
357
+ version: number;
358
+ semantic: string;
359
+ coverage_domain: string;
360
+ target_domain_ref: string;
361
+ target_selector: {
362
+ protocol: "context.indexer.selector/v1";
363
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
364
+ };
365
+ evidence_contract: {
366
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
367
+ minimum_items: number;
368
+ minimum_distinct_sources: number;
369
+ provenance_constraints?: {
370
+ protocol: "context.indexer.selector/v1";
371
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
372
+ } | undefined;
373
+ };
374
+ allowed_exclusion_reason_codes?: string[] | undefined;
375
+ }>, "many">>;
376
+ }, "strict", z.ZodTypeAny, {
377
+ metrics?: ({
378
+ id: string;
379
+ operator: string;
380
+ unit: "count" | "ratio";
381
+ threshold_policy: "explicit";
382
+ direction: "minimum";
383
+ recommended_min: number;
384
+ hard_min: number;
385
+ } | {
386
+ id: string;
387
+ operator: string;
388
+ unit: "count" | "ratio";
389
+ threshold_policy: "explicit";
390
+ direction: "maximum";
391
+ recommended_max: number;
392
+ hard_max: number;
393
+ } | {
394
+ id: string;
395
+ operator: string;
396
+ unit: "count" | "ratio";
397
+ threshold_policy: "inflation-sensitive";
398
+ direction: "maximum";
399
+ })[] | undefined;
400
+ inventory_domains?: {
401
+ id: string;
402
+ selector: {
403
+ operator: string;
404
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
405
+ };
406
+ disposition_required: true;
407
+ }[] | undefined;
408
+ required_dispositions?: string[] | undefined;
409
+ artifact_policy_variants?: {
410
+ id: string;
411
+ thresholds: Record<string, {
412
+ recommended_max: number;
413
+ }>;
414
+ eligibility: {
415
+ protocol: "context.indexer.selector/v1";
416
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
417
+ };
418
+ artifact_kinds: {
419
+ required: string[];
420
+ discretionary: string[];
421
+ };
422
+ }[] | undefined;
423
+ question_target_domains?: {
424
+ id: string;
425
+ selector: {
426
+ operator: string;
427
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
428
+ };
429
+ grouping_operator: string;
430
+ subject_key_kind: string;
431
+ granularity: "module" | "identity";
432
+ }[] | undefined;
433
+ reader_question_contracts?: {
434
+ ref: string;
435
+ version: number;
436
+ semantic: string;
437
+ coverage_domain: string;
438
+ target_domain_ref: string;
439
+ target_selector: {
440
+ protocol: "context.indexer.selector/v1";
441
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
442
+ };
443
+ evidence_contract: {
444
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
445
+ minimum_items: number;
446
+ minimum_distinct_sources: number;
447
+ provenance_constraints?: {
448
+ protocol: "context.indexer.selector/v1";
449
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
450
+ } | undefined;
451
+ };
452
+ allowed_exclusion_reason_codes?: string[] | undefined;
453
+ }[] | undefined;
454
+ }, {
455
+ metrics?: ({
456
+ id: string;
457
+ operator: string;
458
+ unit: "count" | "ratio";
459
+ threshold_policy: "explicit";
460
+ direction: "minimum";
461
+ recommended_min: number;
462
+ hard_min: number;
463
+ } | {
464
+ id: string;
465
+ operator: string;
466
+ unit: "count" | "ratio";
467
+ threshold_policy: "explicit";
468
+ direction: "maximum";
469
+ recommended_max: number;
470
+ hard_max: number;
471
+ } | {
472
+ id: string;
473
+ operator: string;
474
+ unit: "count" | "ratio";
475
+ threshold_policy: "inflation-sensitive";
476
+ direction: "maximum";
477
+ })[] | undefined;
478
+ inventory_domains?: {
479
+ id: string;
480
+ selector: {
481
+ operator: string;
482
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
483
+ };
484
+ disposition_required: true;
485
+ }[] | undefined;
486
+ required_dispositions?: string[] | undefined;
487
+ artifact_policy_variants?: {
488
+ id: string;
489
+ thresholds: Record<string, {
490
+ recommended_max: number;
491
+ }>;
492
+ eligibility: {
493
+ protocol: "context.indexer.selector/v1";
494
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
495
+ };
496
+ artifact_kinds: {
497
+ required: string[];
498
+ discretionary: string[];
499
+ };
500
+ }[] | undefined;
501
+ question_target_domains?: {
502
+ id: string;
503
+ selector: {
504
+ operator: string;
505
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
506
+ };
507
+ grouping_operator: string;
508
+ subject_key_kind: string;
509
+ granularity: "module" | "identity";
510
+ }[] | undefined;
511
+ reader_question_contracts?: {
512
+ ref: string;
513
+ version: number;
514
+ semantic: string;
515
+ coverage_domain: string;
516
+ target_domain_ref: string;
517
+ target_selector: {
518
+ protocol: "context.indexer.selector/v1";
519
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
520
+ };
521
+ evidence_contract: {
522
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
523
+ minimum_items: number;
524
+ minimum_distinct_sources: number;
525
+ provenance_constraints?: {
526
+ protocol: "context.indexer.selector/v1";
527
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
528
+ } | undefined;
529
+ };
530
+ allowed_exclusion_reason_codes?: string[] | undefined;
531
+ }[] | undefined;
532
+ }>;
533
+ metric_tightenings: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodObject<{
534
+ metric_ref: z.ZodEffects<z.ZodString, string, string>;
535
+ direction: z.ZodLiteral<"minimum">;
536
+ recommended_min: z.ZodOptional<z.ZodNumber>;
537
+ hard_min: z.ZodOptional<z.ZodNumber>;
538
+ }, "strict", z.ZodTypeAny, {
539
+ direction: "minimum";
540
+ metric_ref: string;
541
+ recommended_min?: number | undefined;
542
+ hard_min?: number | undefined;
543
+ }, {
544
+ direction: "minimum";
545
+ metric_ref: string;
546
+ recommended_min?: number | undefined;
547
+ hard_min?: number | undefined;
548
+ }>, {
549
+ direction: "minimum";
550
+ metric_ref: string;
551
+ recommended_min?: number | undefined;
552
+ hard_min?: number | undefined;
553
+ }, {
554
+ direction: "minimum";
555
+ metric_ref: string;
556
+ recommended_min?: number | undefined;
557
+ hard_min?: number | undefined;
558
+ }>, z.ZodEffects<z.ZodObject<{
559
+ metric_ref: z.ZodEffects<z.ZodString, string, string>;
560
+ direction: z.ZodLiteral<"maximum">;
561
+ recommended_max: z.ZodOptional<z.ZodNumber>;
562
+ hard_max: z.ZodOptional<z.ZodNumber>;
563
+ }, "strict", z.ZodTypeAny, {
564
+ direction: "maximum";
565
+ metric_ref: string;
566
+ recommended_max?: number | undefined;
567
+ hard_max?: number | undefined;
568
+ }, {
569
+ direction: "maximum";
570
+ metric_ref: string;
571
+ recommended_max?: number | undefined;
572
+ hard_max?: number | undefined;
573
+ }>, {
574
+ direction: "maximum";
575
+ metric_ref: string;
576
+ recommended_max?: number | undefined;
577
+ hard_max?: number | undefined;
578
+ }, {
579
+ direction: "maximum";
580
+ metric_ref: string;
581
+ recommended_max?: number | undefined;
582
+ hard_max?: number | undefined;
583
+ }>]>, "many">>;
584
+ artifact_policy_threshold_tightenings: z.ZodOptional<z.ZodArray<z.ZodObject<{
585
+ variant_ref: z.ZodEffects<z.ZodString, string, string>;
586
+ metric_ref: z.ZodEffects<z.ZodString, string, string>;
587
+ recommended_max: z.ZodNumber;
588
+ }, "strict", z.ZodTypeAny, {
589
+ recommended_max: number;
590
+ metric_ref: string;
591
+ variant_ref: string;
592
+ }, {
593
+ recommended_max: number;
594
+ metric_ref: string;
595
+ variant_ref: string;
596
+ }>, "many">>;
597
+ overlay_digest: z.ZodString;
598
+ }, "strict", z.ZodTypeAny, {
599
+ id: string;
600
+ protocol: "context.indexer.contract-overlay/v1";
601
+ version: string;
602
+ operator_contract_version: string;
603
+ operator_contract_digest: string;
604
+ extends: {
605
+ contract_digest: string;
606
+ version: string;
607
+ profile: string;
608
+ };
609
+ additions: {
610
+ metrics?: ({
611
+ id: string;
612
+ operator: string;
613
+ unit: "count" | "ratio";
614
+ threshold_policy: "explicit";
615
+ direction: "minimum";
616
+ recommended_min: number;
617
+ hard_min: number;
618
+ } | {
619
+ id: string;
620
+ operator: string;
621
+ unit: "count" | "ratio";
622
+ threshold_policy: "explicit";
623
+ direction: "maximum";
624
+ recommended_max: number;
625
+ hard_max: number;
626
+ } | {
627
+ id: string;
628
+ operator: string;
629
+ unit: "count" | "ratio";
630
+ threshold_policy: "inflation-sensitive";
631
+ direction: "maximum";
632
+ })[] | undefined;
633
+ inventory_domains?: {
634
+ id: string;
635
+ selector: {
636
+ operator: string;
637
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
638
+ };
639
+ disposition_required: true;
640
+ }[] | undefined;
641
+ required_dispositions?: string[] | undefined;
642
+ artifact_policy_variants?: {
643
+ id: string;
644
+ thresholds: Record<string, {
645
+ recommended_max: number;
646
+ }>;
647
+ eligibility: {
648
+ protocol: "context.indexer.selector/v1";
649
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
650
+ };
651
+ artifact_kinds: {
652
+ required: string[];
653
+ discretionary: string[];
654
+ };
655
+ }[] | undefined;
656
+ question_target_domains?: {
657
+ id: string;
658
+ selector: {
659
+ operator: string;
660
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
661
+ };
662
+ grouping_operator: string;
663
+ subject_key_kind: string;
664
+ granularity: "module" | "identity";
665
+ }[] | undefined;
666
+ reader_question_contracts?: {
667
+ ref: string;
668
+ version: number;
669
+ semantic: string;
670
+ coverage_domain: string;
671
+ target_domain_ref: string;
672
+ target_selector: {
673
+ protocol: "context.indexer.selector/v1";
674
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
675
+ };
676
+ evidence_contract: {
677
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
678
+ minimum_items: number;
679
+ minimum_distinct_sources: number;
680
+ provenance_constraints?: {
681
+ protocol: "context.indexer.selector/v1";
682
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
683
+ } | undefined;
684
+ };
685
+ allowed_exclusion_reason_codes?: string[] | undefined;
686
+ }[] | undefined;
687
+ };
688
+ overlay_digest: string;
689
+ metric_tightenings?: ({
690
+ direction: "minimum";
691
+ metric_ref: string;
692
+ recommended_min?: number | undefined;
693
+ hard_min?: number | undefined;
694
+ } | {
695
+ direction: "maximum";
696
+ metric_ref: string;
697
+ recommended_max?: number | undefined;
698
+ hard_max?: number | undefined;
699
+ })[] | undefined;
700
+ artifact_policy_threshold_tightenings?: {
701
+ recommended_max: number;
702
+ metric_ref: string;
703
+ variant_ref: string;
704
+ }[] | undefined;
705
+ }, {
706
+ id: string;
707
+ protocol: "context.indexer.contract-overlay/v1";
708
+ version: string;
709
+ operator_contract_version: string;
710
+ operator_contract_digest: string;
711
+ extends: {
712
+ contract_digest: string;
713
+ version: string;
714
+ profile: string;
715
+ };
716
+ additions: {
717
+ metrics?: ({
718
+ id: string;
719
+ operator: string;
720
+ unit: "count" | "ratio";
721
+ threshold_policy: "explicit";
722
+ direction: "minimum";
723
+ recommended_min: number;
724
+ hard_min: number;
725
+ } | {
726
+ id: string;
727
+ operator: string;
728
+ unit: "count" | "ratio";
729
+ threshold_policy: "explicit";
730
+ direction: "maximum";
731
+ recommended_max: number;
732
+ hard_max: number;
733
+ } | {
734
+ id: string;
735
+ operator: string;
736
+ unit: "count" | "ratio";
737
+ threshold_policy: "inflation-sensitive";
738
+ direction: "maximum";
739
+ })[] | undefined;
740
+ inventory_domains?: {
741
+ id: string;
742
+ selector: {
743
+ operator: string;
744
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
745
+ };
746
+ disposition_required: true;
747
+ }[] | undefined;
748
+ required_dispositions?: string[] | undefined;
749
+ artifact_policy_variants?: {
750
+ id: string;
751
+ thresholds: Record<string, {
752
+ recommended_max: number;
753
+ }>;
754
+ eligibility: {
755
+ protocol: "context.indexer.selector/v1";
756
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
757
+ };
758
+ artifact_kinds: {
759
+ required: string[];
760
+ discretionary: string[];
761
+ };
762
+ }[] | undefined;
763
+ question_target_domains?: {
764
+ id: string;
765
+ selector: {
766
+ operator: string;
767
+ parameters?: Record<string, import("./indexerRegistry.js").IndexerJson> | undefined;
768
+ };
769
+ grouping_operator: string;
770
+ subject_key_kind: string;
771
+ granularity: "module" | "identity";
772
+ }[] | undefined;
773
+ reader_question_contracts?: {
774
+ ref: string;
775
+ version: number;
776
+ semantic: string;
777
+ coverage_domain: string;
778
+ target_domain_ref: string;
779
+ target_selector: {
780
+ protocol: "context.indexer.selector/v1";
781
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
782
+ };
783
+ evidence_contract: {
784
+ accepted_kinds: ("contract" | "code" | "configuration" | "documentation" | "runbook" | "decision-record" | "test-result" | "runtime-observation" | "tool-snapshot")[];
785
+ minimum_items: number;
786
+ minimum_distinct_sources: number;
787
+ provenance_constraints?: {
788
+ protocol: "context.indexer.selector/v1";
789
+ expression: import("./indexerRestrictedSelector.js").IndexerRestrictedSelectorExpression;
790
+ } | undefined;
791
+ };
792
+ allowed_exclusion_reason_codes?: string[] | undefined;
793
+ }[] | undefined;
794
+ };
795
+ overlay_digest: string;
796
+ metric_tightenings?: ({
797
+ direction: "minimum";
798
+ metric_ref: string;
799
+ recommended_min?: number | undefined;
800
+ hard_min?: number | undefined;
801
+ } | {
802
+ direction: "maximum";
803
+ metric_ref: string;
804
+ recommended_max?: number | undefined;
805
+ hard_max?: number | undefined;
806
+ })[] | undefined;
807
+ artifact_policy_threshold_tightenings?: {
808
+ recommended_max: number;
809
+ metric_ref: string;
810
+ variant_ref: string;
811
+ }[] | undefined;
812
+ }>;
813
+ export type IndexerContractOverlay = z.infer<typeof indexerContractOverlaySchema>;
814
+ export declare function indexerContractOverlayDigest(overlay: Omit<IndexerContractOverlay, "overlay_digest">): string;
815
+ export interface IndexerOverlayConformanceReport {
816
+ protocol: "context.indexer.overlay-conformance-report/v1";
817
+ overlay_digest: string;
818
+ base_contract_digest: string;
819
+ operator_contract_digest: string;
820
+ monotonic: true;
821
+ added_refs: string[];
822
+ tightened_metric_refs: string[];
823
+ tightened_artifact_policy_refs: string[];
824
+ report_digest: string;
825
+ }
826
+ export declare function validateIndexerContractOverlay(input: {
827
+ overlay: unknown;
828
+ baseContract: unknown;
829
+ operatorContract: unknown;
830
+ }): {
831
+ overlay: IndexerContractOverlay;
832
+ effectiveProfile: IndexerProfileContractEntry;
833
+ report: IndexerOverlayConformanceReport;
834
+ };
835
+ export declare const indexerOverlayAttestationSchema: z.ZodObject<{
836
+ protocol: z.ZodLiteral<"context.indexer.overlay-attestation/v1">;
837
+ overlay: z.ZodObject<{
838
+ protocol: z.ZodLiteral<"context.indexer.contract-overlay/v1">;
839
+ id: z.ZodEffects<z.ZodString, string, string>;
840
+ version: z.ZodString;
841
+ digest: z.ZodString;
842
+ }, "strict", z.ZodTypeAny, {
843
+ id: string;
844
+ protocol: "context.indexer.contract-overlay/v1";
845
+ digest: string;
846
+ version: string;
847
+ }, {
848
+ id: string;
849
+ protocol: "context.indexer.contract-overlay/v1";
850
+ digest: string;
851
+ version: string;
852
+ }>;
853
+ base: z.ZodObject<{
854
+ profile: z.ZodEffects<z.ZodString, string, string>;
855
+ version: z.ZodString;
856
+ contract_digest: z.ZodString;
857
+ }, "strict", z.ZodTypeAny, {
858
+ contract_digest: string;
859
+ version: string;
860
+ profile: string;
861
+ }, {
862
+ contract_digest: string;
863
+ version: string;
864
+ profile: string;
865
+ }>;
866
+ operator_contract: z.ZodObject<{
867
+ version: z.ZodString;
868
+ digest: z.ZodString;
869
+ }, "strict", z.ZodTypeAny, {
870
+ digest: string;
871
+ version: string;
872
+ }, {
873
+ digest: string;
874
+ version: string;
875
+ }>;
876
+ issuer: z.ZodEffects<z.ZodString, string, string>;
877
+ key_id: z.ZodEffects<z.ZodString, string, string>;
878
+ algorithm: z.ZodLiteral<"ed25519">;
879
+ signature: z.ZodString;
880
+ attestation_digest: z.ZodString;
881
+ }, "strict", z.ZodTypeAny, {
882
+ protocol: "context.indexer.overlay-attestation/v1";
883
+ issuer: string;
884
+ overlay: {
885
+ id: string;
886
+ protocol: "context.indexer.contract-overlay/v1";
887
+ digest: string;
888
+ version: string;
889
+ };
890
+ base: {
891
+ contract_digest: string;
892
+ version: string;
893
+ profile: string;
894
+ };
895
+ operator_contract: {
896
+ digest: string;
897
+ version: string;
898
+ };
899
+ key_id: string;
900
+ algorithm: "ed25519";
901
+ signature: string;
902
+ attestation_digest: string;
903
+ }, {
904
+ protocol: "context.indexer.overlay-attestation/v1";
905
+ issuer: string;
906
+ overlay: {
907
+ id: string;
908
+ protocol: "context.indexer.contract-overlay/v1";
909
+ digest: string;
910
+ version: string;
911
+ };
912
+ base: {
913
+ contract_digest: string;
914
+ version: string;
915
+ profile: string;
916
+ };
917
+ operator_contract: {
918
+ digest: string;
919
+ version: string;
920
+ };
921
+ key_id: string;
922
+ algorithm: "ed25519";
923
+ signature: string;
924
+ attestation_digest: string;
925
+ }>;
926
+ export type IndexerOverlayAttestation = z.infer<typeof indexerOverlayAttestationSchema>;
927
+ export declare function indexerOverlayAttestationSigningPayload(attestation: Omit<IndexerOverlayAttestation, "signature" | "attestation_digest">): string;
928
+ export declare function indexerOverlayAttestationDigest(attestation: Omit<IndexerOverlayAttestation, "attestation_digest">): string;
929
+ export declare const indexerOverlayTrustBundleSchema: z.ZodEffects<z.ZodObject<{
930
+ protocol: z.ZodLiteral<"context.indexer.overlay-trust-bundle/v1">;
931
+ policy_id: z.ZodEffects<z.ZodString, string, string>;
932
+ policy_version: z.ZodString;
933
+ issuers: z.ZodArray<z.ZodObject<{
934
+ id: z.ZodEffects<z.ZodString, string, string>;
935
+ keys: z.ZodArray<z.ZodObject<{
936
+ key_id: z.ZodEffects<z.ZodString, string, string>;
937
+ algorithm: z.ZodLiteral<"ed25519">;
938
+ public_key: z.ZodString;
939
+ not_before: z.ZodString;
940
+ not_after: z.ZodString;
941
+ }, "strict", z.ZodTypeAny, {
942
+ key_id: string;
943
+ algorithm: "ed25519";
944
+ public_key: string;
945
+ not_before: string;
946
+ not_after: string;
947
+ }, {
948
+ key_id: string;
949
+ algorithm: "ed25519";
950
+ public_key: string;
951
+ not_before: string;
952
+ not_after: string;
953
+ }>, "many">;
954
+ }, "strict", z.ZodTypeAny, {
955
+ keys: {
956
+ key_id: string;
957
+ algorithm: "ed25519";
958
+ public_key: string;
959
+ not_before: string;
960
+ not_after: string;
961
+ }[];
962
+ id: string;
963
+ }, {
964
+ keys: {
965
+ key_id: string;
966
+ algorithm: "ed25519";
967
+ public_key: string;
968
+ not_before: string;
969
+ not_after: string;
970
+ }[];
971
+ id: string;
972
+ }>, "many">;
973
+ revocations: z.ZodArray<z.ZodObject<{
974
+ issuer: z.ZodEffects<z.ZodString, string, string>;
975
+ key_id: z.ZodEffects<z.ZodString, string, string>;
976
+ revoked_at: z.ZodString;
977
+ }, "strict", z.ZodTypeAny, {
978
+ issuer: string;
979
+ key_id: string;
980
+ revoked_at: string;
981
+ }, {
982
+ issuer: string;
983
+ key_id: string;
984
+ revoked_at: string;
985
+ }>, "many">;
986
+ policy_digest: z.ZodString;
987
+ }, "strict", z.ZodTypeAny, {
988
+ protocol: "context.indexer.overlay-trust-bundle/v1";
989
+ policy_digest: string;
990
+ policy_id: string;
991
+ policy_version: string;
992
+ issuers: {
993
+ keys: {
994
+ key_id: string;
995
+ algorithm: "ed25519";
996
+ public_key: string;
997
+ not_before: string;
998
+ not_after: string;
999
+ }[];
1000
+ id: string;
1001
+ }[];
1002
+ revocations: {
1003
+ issuer: string;
1004
+ key_id: string;
1005
+ revoked_at: string;
1006
+ }[];
1007
+ }, {
1008
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1009
+ policy_digest: string;
1010
+ policy_id: string;
1011
+ policy_version: string;
1012
+ issuers: {
1013
+ keys: {
1014
+ key_id: string;
1015
+ algorithm: "ed25519";
1016
+ public_key: string;
1017
+ not_before: string;
1018
+ not_after: string;
1019
+ }[];
1020
+ id: string;
1021
+ }[];
1022
+ revocations: {
1023
+ issuer: string;
1024
+ key_id: string;
1025
+ revoked_at: string;
1026
+ }[];
1027
+ }>, {
1028
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1029
+ policy_digest: string;
1030
+ policy_id: string;
1031
+ policy_version: string;
1032
+ issuers: {
1033
+ keys: {
1034
+ key_id: string;
1035
+ algorithm: "ed25519";
1036
+ public_key: string;
1037
+ not_before: string;
1038
+ not_after: string;
1039
+ }[];
1040
+ id: string;
1041
+ }[];
1042
+ revocations: {
1043
+ issuer: string;
1044
+ key_id: string;
1045
+ revoked_at: string;
1046
+ }[];
1047
+ }, {
1048
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1049
+ policy_digest: string;
1050
+ policy_id: string;
1051
+ policy_version: string;
1052
+ issuers: {
1053
+ keys: {
1054
+ key_id: string;
1055
+ algorithm: "ed25519";
1056
+ public_key: string;
1057
+ not_before: string;
1058
+ not_after: string;
1059
+ }[];
1060
+ id: string;
1061
+ }[];
1062
+ revocations: {
1063
+ issuer: string;
1064
+ key_id: string;
1065
+ revoked_at: string;
1066
+ }[];
1067
+ }>;
1068
+ export type IndexerOverlayTrustBundle = z.infer<typeof indexerOverlayTrustBundleSchema>;
1069
+ export declare function indexerOverlayTrustBundleDigest(bundle: Omit<IndexerOverlayTrustBundle, "policy_digest">): string;
1070
+ export declare const indexerOverlayTrustBundleEnvelopeSchema: z.ZodObject<{
1071
+ protocol: z.ZodLiteral<"context.indexer.overlay-trust-bundle-envelope/v1">;
1072
+ adapter: z.ZodEffects<z.ZodString, string, string>;
1073
+ adapter_version: z.ZodString;
1074
+ management_authority_digest: z.ZodString;
1075
+ bundle: z.ZodEffects<z.ZodObject<{
1076
+ protocol: z.ZodLiteral<"context.indexer.overlay-trust-bundle/v1">;
1077
+ policy_id: z.ZodEffects<z.ZodString, string, string>;
1078
+ policy_version: z.ZodString;
1079
+ issuers: z.ZodArray<z.ZodObject<{
1080
+ id: z.ZodEffects<z.ZodString, string, string>;
1081
+ keys: z.ZodArray<z.ZodObject<{
1082
+ key_id: z.ZodEffects<z.ZodString, string, string>;
1083
+ algorithm: z.ZodLiteral<"ed25519">;
1084
+ public_key: z.ZodString;
1085
+ not_before: z.ZodString;
1086
+ not_after: z.ZodString;
1087
+ }, "strict", z.ZodTypeAny, {
1088
+ key_id: string;
1089
+ algorithm: "ed25519";
1090
+ public_key: string;
1091
+ not_before: string;
1092
+ not_after: string;
1093
+ }, {
1094
+ key_id: string;
1095
+ algorithm: "ed25519";
1096
+ public_key: string;
1097
+ not_before: string;
1098
+ not_after: string;
1099
+ }>, "many">;
1100
+ }, "strict", z.ZodTypeAny, {
1101
+ keys: {
1102
+ key_id: string;
1103
+ algorithm: "ed25519";
1104
+ public_key: string;
1105
+ not_before: string;
1106
+ not_after: string;
1107
+ }[];
1108
+ id: string;
1109
+ }, {
1110
+ keys: {
1111
+ key_id: string;
1112
+ algorithm: "ed25519";
1113
+ public_key: string;
1114
+ not_before: string;
1115
+ not_after: string;
1116
+ }[];
1117
+ id: string;
1118
+ }>, "many">;
1119
+ revocations: z.ZodArray<z.ZodObject<{
1120
+ issuer: z.ZodEffects<z.ZodString, string, string>;
1121
+ key_id: z.ZodEffects<z.ZodString, string, string>;
1122
+ revoked_at: z.ZodString;
1123
+ }, "strict", z.ZodTypeAny, {
1124
+ issuer: string;
1125
+ key_id: string;
1126
+ revoked_at: string;
1127
+ }, {
1128
+ issuer: string;
1129
+ key_id: string;
1130
+ revoked_at: string;
1131
+ }>, "many">;
1132
+ policy_digest: z.ZodString;
1133
+ }, "strict", z.ZodTypeAny, {
1134
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1135
+ policy_digest: string;
1136
+ policy_id: string;
1137
+ policy_version: string;
1138
+ issuers: {
1139
+ keys: {
1140
+ key_id: string;
1141
+ algorithm: "ed25519";
1142
+ public_key: string;
1143
+ not_before: string;
1144
+ not_after: string;
1145
+ }[];
1146
+ id: string;
1147
+ }[];
1148
+ revocations: {
1149
+ issuer: string;
1150
+ key_id: string;
1151
+ revoked_at: string;
1152
+ }[];
1153
+ }, {
1154
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1155
+ policy_digest: string;
1156
+ policy_id: string;
1157
+ policy_version: string;
1158
+ issuers: {
1159
+ keys: {
1160
+ key_id: string;
1161
+ algorithm: "ed25519";
1162
+ public_key: string;
1163
+ not_before: string;
1164
+ not_after: string;
1165
+ }[];
1166
+ id: string;
1167
+ }[];
1168
+ revocations: {
1169
+ issuer: string;
1170
+ key_id: string;
1171
+ revoked_at: string;
1172
+ }[];
1173
+ }>, {
1174
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1175
+ policy_digest: string;
1176
+ policy_id: string;
1177
+ policy_version: string;
1178
+ issuers: {
1179
+ keys: {
1180
+ key_id: string;
1181
+ algorithm: "ed25519";
1182
+ public_key: string;
1183
+ not_before: string;
1184
+ not_after: string;
1185
+ }[];
1186
+ id: string;
1187
+ }[];
1188
+ revocations: {
1189
+ issuer: string;
1190
+ key_id: string;
1191
+ revoked_at: string;
1192
+ }[];
1193
+ }, {
1194
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1195
+ policy_digest: string;
1196
+ policy_id: string;
1197
+ policy_version: string;
1198
+ issuers: {
1199
+ keys: {
1200
+ key_id: string;
1201
+ algorithm: "ed25519";
1202
+ public_key: string;
1203
+ not_before: string;
1204
+ not_after: string;
1205
+ }[];
1206
+ id: string;
1207
+ }[];
1208
+ revocations: {
1209
+ issuer: string;
1210
+ key_id: string;
1211
+ revoked_at: string;
1212
+ }[];
1213
+ }>;
1214
+ }, "strict", z.ZodTypeAny, {
1215
+ adapter: string;
1216
+ protocol: "context.indexer.overlay-trust-bundle-envelope/v1";
1217
+ bundle: {
1218
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1219
+ policy_digest: string;
1220
+ policy_id: string;
1221
+ policy_version: string;
1222
+ issuers: {
1223
+ keys: {
1224
+ key_id: string;
1225
+ algorithm: "ed25519";
1226
+ public_key: string;
1227
+ not_before: string;
1228
+ not_after: string;
1229
+ }[];
1230
+ id: string;
1231
+ }[];
1232
+ revocations: {
1233
+ issuer: string;
1234
+ key_id: string;
1235
+ revoked_at: string;
1236
+ }[];
1237
+ };
1238
+ adapter_version: string;
1239
+ management_authority_digest: string;
1240
+ }, {
1241
+ adapter: string;
1242
+ protocol: "context.indexer.overlay-trust-bundle-envelope/v1";
1243
+ bundle: {
1244
+ protocol: "context.indexer.overlay-trust-bundle/v1";
1245
+ policy_digest: string;
1246
+ policy_id: string;
1247
+ policy_version: string;
1248
+ issuers: {
1249
+ keys: {
1250
+ key_id: string;
1251
+ algorithm: "ed25519";
1252
+ public_key: string;
1253
+ not_before: string;
1254
+ not_after: string;
1255
+ }[];
1256
+ id: string;
1257
+ }[];
1258
+ revocations: {
1259
+ issuer: string;
1260
+ key_id: string;
1261
+ revoked_at: string;
1262
+ }[];
1263
+ };
1264
+ adapter_version: string;
1265
+ management_authority_digest: string;
1266
+ }>;
1267
+ export type IndexerOverlayTrustBundleEnvelope = z.infer<typeof indexerOverlayTrustBundleEnvelopeSchema>;
1268
+ export declare const indexerOverlayTrustReceiptSchema: z.ZodDiscriminatedUnion<"trust_class", [z.ZodObject<{
1269
+ protocol: z.ZodLiteral<"context.indexer.overlay-trust-receipt/v1">;
1270
+ trust_class: z.ZodLiteral<"enterprise-signed">;
1271
+ project_ref: z.ZodNull;
1272
+ overlay_digest: z.ZodString;
1273
+ attestation_digest: z.ZodString;
1274
+ base_contract_digest: z.ZodString;
1275
+ provider_integrity: z.ZodString;
1276
+ operator_contract_digest: z.ZodString;
1277
+ conformance_report_digest: z.ZodString;
1278
+ trust_adapter: z.ZodEffects<z.ZodString, string, string>;
1279
+ trust_adapter_version: z.ZodString;
1280
+ trust_management_authority_digest: z.ZodString;
1281
+ trust_policy_digest: z.ZodString;
1282
+ authorization_receipt_digest: z.ZodNull;
1283
+ receipt_digest: z.ZodString;
1284
+ }, "strict", z.ZodTypeAny, {
1285
+ protocol: "context.indexer.overlay-trust-receipt/v1";
1286
+ receipt_digest: string;
1287
+ operator_contract_digest: string;
1288
+ project_ref: null;
1289
+ provider_integrity: string;
1290
+ authorization_receipt_digest: null;
1291
+ overlay_digest: string;
1292
+ base_contract_digest: string;
1293
+ attestation_digest: string;
1294
+ trust_class: "enterprise-signed";
1295
+ conformance_report_digest: string;
1296
+ trust_adapter: string;
1297
+ trust_adapter_version: string;
1298
+ trust_management_authority_digest: string;
1299
+ trust_policy_digest: string;
1300
+ }, {
1301
+ protocol: "context.indexer.overlay-trust-receipt/v1";
1302
+ receipt_digest: string;
1303
+ operator_contract_digest: string;
1304
+ project_ref: null;
1305
+ provider_integrity: string;
1306
+ authorization_receipt_digest: null;
1307
+ overlay_digest: string;
1308
+ base_contract_digest: string;
1309
+ attestation_digest: string;
1310
+ trust_class: "enterprise-signed";
1311
+ conformance_report_digest: string;
1312
+ trust_adapter: string;
1313
+ trust_adapter_version: string;
1314
+ trust_management_authority_digest: string;
1315
+ trust_policy_digest: string;
1316
+ }>, z.ZodObject<{
1317
+ protocol: z.ZodLiteral<"context.indexer.overlay-trust-receipt/v1">;
1318
+ trust_class: z.ZodLiteral<"project-authorized-exact-digest">;
1319
+ project_ref: z.ZodString;
1320
+ overlay_digest: z.ZodString;
1321
+ attestation_digest: z.ZodNullable<z.ZodString>;
1322
+ base_contract_digest: z.ZodString;
1323
+ provider_integrity: z.ZodString;
1324
+ operator_contract_digest: z.ZodString;
1325
+ conformance_report_digest: z.ZodString;
1326
+ trust_adapter: z.ZodNull;
1327
+ trust_adapter_version: z.ZodNull;
1328
+ trust_management_authority_digest: z.ZodNull;
1329
+ trust_policy_digest: z.ZodNull;
1330
+ authorization_receipt_digest: z.ZodString;
1331
+ receipt_digest: z.ZodString;
1332
+ }, "strict", z.ZodTypeAny, {
1333
+ protocol: "context.indexer.overlay-trust-receipt/v1";
1334
+ receipt_digest: string;
1335
+ operator_contract_digest: string;
1336
+ project_ref: string;
1337
+ provider_integrity: string;
1338
+ authorization_receipt_digest: string;
1339
+ overlay_digest: string;
1340
+ base_contract_digest: string;
1341
+ attestation_digest: string | null;
1342
+ trust_class: "project-authorized-exact-digest";
1343
+ conformance_report_digest: string;
1344
+ trust_adapter: null;
1345
+ trust_adapter_version: null;
1346
+ trust_management_authority_digest: null;
1347
+ trust_policy_digest: null;
1348
+ }, {
1349
+ protocol: "context.indexer.overlay-trust-receipt/v1";
1350
+ receipt_digest: string;
1351
+ operator_contract_digest: string;
1352
+ project_ref: string;
1353
+ provider_integrity: string;
1354
+ authorization_receipt_digest: string;
1355
+ overlay_digest: string;
1356
+ base_contract_digest: string;
1357
+ attestation_digest: string | null;
1358
+ trust_class: "project-authorized-exact-digest";
1359
+ conformance_report_digest: string;
1360
+ trust_adapter: null;
1361
+ trust_adapter_version: null;
1362
+ trust_management_authority_digest: null;
1363
+ trust_policy_digest: null;
1364
+ }>]>;
1365
+ export type IndexerOverlayTrustReceipt = z.infer<typeof indexerOverlayTrustReceiptSchema>;
1366
+ export declare function indexerOverlayTrustReceiptDigest(receipt: Omit<IndexerOverlayTrustReceipt, "receipt_digest">): string;
1367
+ export declare function validateIndexerOverlayAttestation(value: unknown, overlay: IndexerContractOverlay, base: IndexerProfileContract, operators: IndexerOperatorContract): IndexerOverlayAttestation;
1368
+ export declare function validateIndexerOverlayTrustBundleEnvelope(value: unknown): IndexerOverlayTrustBundleEnvelope;
1369
+ export declare function verifyEnterpriseIndexerOverlayTrust(input: {
1370
+ overlayValidation: ReturnType<typeof validateIndexerContractOverlay>;
1371
+ baseContract: IndexerProfileContract;
1372
+ operatorContract: IndexerOperatorContract;
1373
+ providerIntegrity: string;
1374
+ attestation: unknown;
1375
+ trustBundleEnvelope: unknown;
1376
+ now?: Date;
1377
+ }): IndexerOverlayTrustReceipt;
1378
+ export declare const indexerOverlayProjectAuthorizationSchema: z.ZodObject<{
1379
+ protocol: z.ZodLiteral<"context.indexer.overlay-project-authorization/v1">;
1380
+ project_ref: z.ZodString;
1381
+ overlay_digest: z.ZodString;
1382
+ attestation_digest: z.ZodNullable<z.ZodString>;
1383
+ base_contract_digest: z.ZodString;
1384
+ provider_integrity: z.ZodString;
1385
+ operator_contract_digest: z.ZodString;
1386
+ conformance_report_digest: z.ZodString;
1387
+ authority_ref: z.ZodString;
1388
+ authority_scope_digest: z.ZodString;
1389
+ authorization_receipt_digest: z.ZodString;
1390
+ }, "strict", z.ZodTypeAny, {
1391
+ protocol: "context.indexer.overlay-project-authorization/v1";
1392
+ authority_ref: string;
1393
+ operator_contract_digest: string;
1394
+ project_ref: string;
1395
+ provider_integrity: string;
1396
+ authority_scope_digest: string;
1397
+ authorization_receipt_digest: string;
1398
+ overlay_digest: string;
1399
+ base_contract_digest: string;
1400
+ attestation_digest: string | null;
1401
+ conformance_report_digest: string;
1402
+ }, {
1403
+ protocol: "context.indexer.overlay-project-authorization/v1";
1404
+ authority_ref: string;
1405
+ operator_contract_digest: string;
1406
+ project_ref: string;
1407
+ provider_integrity: string;
1408
+ authority_scope_digest: string;
1409
+ authorization_receipt_digest: string;
1410
+ overlay_digest: string;
1411
+ base_contract_digest: string;
1412
+ attestation_digest: string | null;
1413
+ conformance_report_digest: string;
1414
+ }>;
1415
+ export type IndexerOverlayProjectAuthorization = z.infer<typeof indexerOverlayProjectAuthorizationSchema>;
1416
+ export declare function indexerOverlayProjectAuthorizationDigest(authorization: Omit<IndexerOverlayProjectAuthorization, "authorization_receipt_digest">): string;
1417
+ export declare function authorizeProjectIndexerOverlay(input: {
1418
+ overlayValidation: ReturnType<typeof validateIndexerContractOverlay>;
1419
+ baseContract: IndexerProfileContract;
1420
+ operatorContract: IndexerOperatorContract;
1421
+ providerIntegrity: string;
1422
+ projectRef: string;
1423
+ declaredAttestationDigest: string | null;
1424
+ authorization: unknown;
1425
+ }): IndexerOverlayTrustReceipt;