@cohesivesystems/relations 0.1.0-alpha.4 → 0.1.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/relations.shapes.generated.d.ts +1805 -268
- package/dist/generated/relations.shapes.generated.d.ts.map +1 -1
- package/dist/generated/relations.shapes.generated.js +992 -176
- package/dist/generated/relations.shapes.generated.js.map +1 -1
- package/dist/wire-contract.typecheck.d.ts +246 -0
- package/dist/wire-contract.typecheck.d.ts.map +1 -0
- package/dist/wire-contract.typecheck.js +2 -0
- package/dist/wire-contract.typecheck.js.map +1 -0
- package/package.json +1 -1
- package/src/generated/relations.shapes.generated.ts +2556 -340
- package/src/wire-contract.typecheck.ts +291 -0
|
@@ -1,35 +1,1055 @@
|
|
|
1
1
|
/* <auto-generated/> */
|
|
2
2
|
|
|
3
|
-
export
|
|
4
|
-
|
|
3
|
+
export type GraphId = string;
|
|
4
|
+
|
|
5
|
+
export type ShapeId = string;
|
|
6
|
+
|
|
7
|
+
export type RelationQueryExplainStage = {
|
|
8
|
+
readonly $stage: 'staticCompilation';
|
|
9
|
+
} & RelationQueryStaticCompilationExplainStage | {
|
|
10
|
+
readonly $stage: 'profileFeasibility';
|
|
11
|
+
} & RelationQueryProfileFeasibilityExplainStage | {
|
|
12
|
+
readonly $stage: 'sourcePlacement';
|
|
13
|
+
} & RelationQuerySourcePlacementExplainStage | {
|
|
14
|
+
readonly $stage: 'boundRealization';
|
|
15
|
+
} & RelationQueryBoundRealizationExplainStage | {
|
|
16
|
+
readonly $stage: 'physicalPlanning';
|
|
17
|
+
} & RelationQueryPhysicalPlanningExplainStage | {
|
|
18
|
+
readonly $stage: 'nativeCompilation';
|
|
19
|
+
} & RelationQueryNativeCompilationExplainStage | {
|
|
20
|
+
readonly $stage: 'evaluation';
|
|
21
|
+
} & RelationQueryEvaluationExplainStage;
|
|
22
|
+
|
|
23
|
+
export interface RelationQueryStaticCompilationExplainStage {
|
|
24
|
+
status: RelationQueryExplainStageStatus;
|
|
25
|
+
request: RelationQueryCompilationRequestReference;
|
|
26
|
+
plan?: RelationQueryStaticPlanExplanation | null;
|
|
27
|
+
diagnostics: DocumentValidationDiagnostic[];
|
|
5
28
|
}
|
|
6
29
|
|
|
7
|
-
export interface
|
|
8
|
-
|
|
30
|
+
export interface RelationQueryProfileFeasibilityExplainStage {
|
|
31
|
+
status: RelationQueryExplainStageStatus;
|
|
32
|
+
report: RelationQueryRealizationReport;
|
|
9
33
|
}
|
|
10
34
|
|
|
11
|
-
export interface
|
|
12
|
-
|
|
35
|
+
export interface RelationQuerySourcePlacementExplainStage {
|
|
36
|
+
status: RelationQueryExplainStageStatus;
|
|
37
|
+
placement: RelationQuerySourcePlacement;
|
|
13
38
|
}
|
|
14
39
|
|
|
15
|
-
export interface
|
|
16
|
-
|
|
40
|
+
export interface RelationQueryBoundRealizationExplainStage {
|
|
41
|
+
report: RelationQueryBoundRealizationReport;
|
|
42
|
+
status: RelationQueryExplainStageStatus;
|
|
17
43
|
}
|
|
18
44
|
|
|
19
|
-
export interface
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
45
|
+
export interface RelationQueryPhysicalPlanningExplainStage {
|
|
46
|
+
status: RelationQueryExplainStageStatus;
|
|
47
|
+
plan: RelationQueryCompiledPlanReference;
|
|
48
|
+
realization: RelationQueryRealizationFingerprint;
|
|
49
|
+
placement: RelationQuerySourcePlacementFingerprint;
|
|
50
|
+
policy?: RelationQueryPhysicalPlanningPolicy | null;
|
|
51
|
+
result: RelationQueryPhysicalPlanningResult;
|
|
23
52
|
}
|
|
24
53
|
|
|
25
|
-
export interface
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
On: Expr;
|
|
54
|
+
export interface RelationQueryNativeCompilationExplainStage {
|
|
55
|
+
status: RelationQueryExplainStageStatus;
|
|
56
|
+
attempt: RelationQueryNativeCompilationAttemptReference;
|
|
57
|
+
compilation: RelationQueryNativeCompilationExplanation;
|
|
30
58
|
}
|
|
31
59
|
|
|
60
|
+
export interface RelationQueryEvaluationExplainStage {
|
|
61
|
+
evaluation: RelationQueryEvaluationExplanation;
|
|
62
|
+
status: RelationQueryExplainStageStatus;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export interface RelationQueryCapabilitySummary {
|
|
66
|
+
target: RelationQueryTargetId;
|
|
67
|
+
targetProfile: RelationQueryTargetProfileId;
|
|
68
|
+
policy?: RelationQueryRealizationPolicyId | null;
|
|
69
|
+
profileFeasibility?: RelationQueryRealizationFingerprint | null;
|
|
70
|
+
boundRealization?: RelationQueryBoundRealizationFingerprint | null;
|
|
71
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
72
|
+
entries: RelationQueryCapabilitySummaryEntry[];
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export interface RelationQueryExplainDiagnostic {
|
|
76
|
+
stage: string;
|
|
77
|
+
code: string;
|
|
78
|
+
severity: DiagnosticSeverity;
|
|
79
|
+
message: string;
|
|
80
|
+
location?: string | null;
|
|
81
|
+
branch?: RelationQueryNativeResultBranchId | null;
|
|
82
|
+
requirement?: RelationQueryRealizationRequirementId | null;
|
|
83
|
+
node?: QueryNodeId | null;
|
|
84
|
+
input?: RelationQueryInputId | null;
|
|
85
|
+
output?: RelationQueryOutputId | null;
|
|
86
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
87
|
+
physicalStage?: RelationQueryPhysicalStageId | null;
|
|
88
|
+
source?: RelationQuerySourceInstanceId | null;
|
|
89
|
+
capabilityEvidence?: RelationQueryTargetCapabilityEvidenceId | null;
|
|
90
|
+
operatingBoundary?: RelationQueryOperatingBoundaryId | null;
|
|
91
|
+
contextEvidence?: RelationQueryContextEvidenceId | null;
|
|
92
|
+
semanticSite?: string | null;
|
|
93
|
+
compositionRule?: RelationQueryCompositionRuleId | null;
|
|
94
|
+
override?: RelationQueryRealizationOverrideId | null;
|
|
95
|
+
field?: FieldPath | null;
|
|
96
|
+
bindingSetting?: string | null;
|
|
97
|
+
resolution?: string | null;
|
|
98
|
+
configurationOrigin?: EffectiveConfigurationOrigin | null;
|
|
99
|
+
configurationAuthority?: string | null;
|
|
100
|
+
adapterDecisionCode?: RelationQueryAdapterDecisionCode | null;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export interface RelationQueryExplainFingerprint {
|
|
104
|
+
algorithm: string;
|
|
105
|
+
canonicalization: string;
|
|
106
|
+
value: string;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export interface RelationQueryCompiledPlanReference {
|
|
110
|
+
compilerProfile: string;
|
|
111
|
+
definitionSchemaVersion: string;
|
|
112
|
+
definitionFingerprint: RelationQueryDefinitionFingerprint;
|
|
113
|
+
shapeSnapshotsFingerprint: RelationQueryPlanComponentFingerprint;
|
|
114
|
+
relationshipCatalogFingerprint?: RelationshipCatalogFingerprint | null;
|
|
115
|
+
demandFingerprint: RelationQueryPlanComponentFingerprint;
|
|
116
|
+
inputs: RelationQueryInputId[];
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface RelationQueryRealizationFingerprint {
|
|
120
|
+
algorithm: string;
|
|
121
|
+
canonicalization: string;
|
|
122
|
+
value: string;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export interface RelationQueryPhysicalPlanningPolicy {
|
|
126
|
+
id: RelationQueryPhysicalPlanningPolicyId;
|
|
127
|
+
conventionSetVersion: string;
|
|
128
|
+
maximumBatchSize: string;
|
|
129
|
+
maximumBufferedRows: string;
|
|
130
|
+
maximumLocalRows: string;
|
|
131
|
+
maximumFanOut: string;
|
|
132
|
+
maximumReferenceKeysPerObservation: string;
|
|
133
|
+
maximumConcurrency: string;
|
|
134
|
+
loweringSelections: RelationQueryPhysicalLoweringSelection[];
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export interface RelationQueryPhysicalStage {
|
|
138
|
+
id: RelationQueryPhysicalStageId;
|
|
139
|
+
kind: RelationQueryPhysicalStageKind;
|
|
140
|
+
dependencies: RelationQueryPhysicalStageId[];
|
|
141
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
142
|
+
semanticInputs: RelationQueryInputId[];
|
|
143
|
+
requestedFields: RelationQueryInputId[];
|
|
144
|
+
batchSize?: string | null;
|
|
145
|
+
provenance: RelationQueryPhysicalStageProvenance;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
export type RelationQueryPhysicalStageId = string;
|
|
149
|
+
|
|
150
|
+
export interface RelationQueryPhysicalPlanningDiagnostic {
|
|
151
|
+
code: string;
|
|
152
|
+
severity: DiagnosticSeverity;
|
|
153
|
+
message: string;
|
|
154
|
+
input?: RelationQueryInputId | null;
|
|
155
|
+
stage?: RelationQueryPhysicalStageId | null;
|
|
156
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
157
|
+
requirement?: RelationQueryRealizationRequirementId | null;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
export interface RelationQueryPhysicalPlanFingerprint {
|
|
161
|
+
algorithm: string;
|
|
162
|
+
canonicalization: string;
|
|
163
|
+
value: string;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
export interface RelationQuerySourceInstance {
|
|
167
|
+
id: RelationQuerySourceInstanceId;
|
|
168
|
+
executionDomain: RelationQueryExecutionDomainId;
|
|
169
|
+
targetProfile: RelationQueryTargetCapabilityProfile;
|
|
170
|
+
limits: RelationQuerySourcePlacementLimits;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
export interface RelationQuerySourcePlacementBinding {
|
|
174
|
+
id: RelationQuerySourcePlacementBindingId;
|
|
175
|
+
input: RelationQueryInputId;
|
|
176
|
+
node: QueryNodeId;
|
|
177
|
+
binding: ValueBindingId;
|
|
178
|
+
shape: QualifiedShapeId;
|
|
179
|
+
source: RelationQuerySourceInstanceId;
|
|
180
|
+
kind: RelationQuerySourcePlacementBindingKind;
|
|
181
|
+
acquisition: RelationQuerySourceAcquisitionKind;
|
|
182
|
+
origin: RelationQuerySourcePlacementOrigin;
|
|
183
|
+
identity?: RelationQuerySourceIdentityBinding | null;
|
|
184
|
+
fields: RelationQuerySourceFieldBinding[];
|
|
185
|
+
relationshipKeys: RelationQueryRelationshipKeyBinding[];
|
|
186
|
+
partition?: RelationQueryPartitionBinding | null;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export interface EffectiveConfigurationDecision {
|
|
190
|
+
setting: string;
|
|
191
|
+
origin: EffectiveConfigurationOrigin;
|
|
192
|
+
authority: string;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
export interface RelationQuerySourcePlacementFingerprint {
|
|
196
|
+
algorithm: string;
|
|
197
|
+
canonicalization: string;
|
|
198
|
+
value: string;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
export type RelationQueryNativeResultBranchId = string;
|
|
202
|
+
|
|
203
|
+
export interface RelationQueryContextualEvidenceProjection {
|
|
204
|
+
binding: RelationQueryAdapterBindingReference;
|
|
205
|
+
assessments: RelationQueryBoundRequirementAssessment[];
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
export interface RelationQueryRealizationDiagnostic {
|
|
209
|
+
code: string;
|
|
210
|
+
severity: DiagnosticSeverity;
|
|
211
|
+
message: string;
|
|
212
|
+
requirement?: RelationQueryRealizationRequirementId | null;
|
|
213
|
+
capabilityEvidence?: RelationQueryTargetCapabilityEvidenceId | null;
|
|
214
|
+
compositionRule?: RelationQueryCompositionRuleId | null;
|
|
215
|
+
operatingBoundary?: RelationQueryOperatingBoundaryId | null;
|
|
216
|
+
override?: RelationQueryRealizationOverrideId | null;
|
|
217
|
+
node?: QueryNodeId | null;
|
|
218
|
+
semanticSite?: string | null;
|
|
219
|
+
contextEvidence?: RelationQueryContextEvidenceId | null;
|
|
220
|
+
branch?: RelationQueryNativeResultBranchId | null;
|
|
221
|
+
input?: RelationQueryInputId | null;
|
|
222
|
+
field?: FieldPath | null;
|
|
223
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
224
|
+
bindingSetting?: string | null;
|
|
225
|
+
resolution?: string | null;
|
|
226
|
+
configurationOrigin?: EffectiveConfigurationOrigin | null;
|
|
227
|
+
configurationAuthority?: string | null;
|
|
228
|
+
adapterDecisionCode?: RelationQueryAdapterDecisionCode | null;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
export type RelationQueryRealizationStatus = 'Realizable' | 'NotRealizable' | 'Invalid';
|
|
232
|
+
|
|
233
|
+
export const relationQueryRealizationStatuses = {
|
|
234
|
+
realizable: 'Realizable',
|
|
235
|
+
notRealizable: 'NotRealizable',
|
|
236
|
+
invalid: 'Invalid',
|
|
237
|
+
} as const satisfies Record<string, RelationQueryRealizationStatus>;
|
|
238
|
+
|
|
239
|
+
export const relationQueryRealizationStatusLabels: Record<RelationQueryRealizationStatus, string> = {
|
|
240
|
+
Realizable: 'Realizable',
|
|
241
|
+
NotRealizable: 'NotRealizable',
|
|
242
|
+
Invalid: 'Invalid',
|
|
243
|
+
};
|
|
244
|
+
|
|
245
|
+
export interface RelationQueryBoundRealizationFingerprint {
|
|
246
|
+
algorithm: string;
|
|
247
|
+
canonicalization: string;
|
|
248
|
+
value: string;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
export interface RelationQueryRealizationPolicy {
|
|
252
|
+
id: RelationQueryRealizationPolicyId;
|
|
253
|
+
conventionSetVersion: string;
|
|
254
|
+
preference: RelationQueryRealizationPreference;
|
|
255
|
+
constrainedRealizations: RelationQueryConstrainedRealizationPolicy;
|
|
256
|
+
compositionRules: RelationQueryCompositionRule[];
|
|
257
|
+
compositionRuleSelections: RelationQueryCompositionRuleSelection[];
|
|
258
|
+
overrides: RelationQueryRealizationOverride[];
|
|
259
|
+
diagnosticSeverityOverrides: RelationQueryRealizationDiagnosticSeverityOverride[];
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
export interface RelationQueryResultObservability {
|
|
263
|
+
occurrenceProvenance: RelationQueryOccurrenceProvenanceMode;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
export interface RelationQueryRealizationRequirement {
|
|
267
|
+
id: RelationQueryRealizationRequirementId;
|
|
268
|
+
capability: RelationQueryCapability;
|
|
269
|
+
origin?: RelationQueryRealizationRequirementOrigin | null;
|
|
270
|
+
uses: RelationQueryRealizationRequirementUse[];
|
|
271
|
+
requiredGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
272
|
+
staticFacts: RelationQueryRealizationStaticFact[];
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
export type RelationQueryRealizationDecision = {
|
|
276
|
+
readonly $decision: 'native';
|
|
277
|
+
} & NativeRelationQueryRealizationDecision | {
|
|
278
|
+
readonly $decision: 'composed';
|
|
279
|
+
} & ComposedRelationQueryRealizationDecision | {
|
|
280
|
+
readonly $decision: 'constrained';
|
|
281
|
+
} & ConstrainedRelationQueryRealizationDecision | {
|
|
282
|
+
readonly $decision: 'override';
|
|
283
|
+
} & OverrideRelationQueryRealizationDecision | {
|
|
284
|
+
readonly $decision: 'unavailable';
|
|
285
|
+
} & UnavailableRelationQueryRealizationDecision;
|
|
286
|
+
|
|
287
|
+
export interface NativeRelationQueryRealizationDecision {
|
|
288
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
289
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
290
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
export interface ComposedRelationQueryRealizationDecision {
|
|
294
|
+
compositionRules: RelationQueryCompositionRuleId[];
|
|
295
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
296
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
297
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
export interface ConstrainedRelationQueryRealizationDecision {
|
|
301
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
302
|
+
boundaryValidations: RelationQueryOperatingBoundaryValidation[];
|
|
303
|
+
compositionRules: RelationQueryCompositionRuleId[];
|
|
304
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
305
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
export interface OverrideRelationQueryRealizationDecision {
|
|
309
|
+
override: RelationQueryRealizationOverrideId;
|
|
310
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
311
|
+
boundaryValidations: RelationQueryOperatingBoundaryValidation[];
|
|
312
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
313
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
export interface UnavailableRelationQueryRealizationDecision {
|
|
317
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
318
|
+
reason: RelationQueryUnavailableReason;
|
|
319
|
+
missingCapabilities: RelationQueryCapability[];
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
export type RelationQueryTargetId = string;
|
|
323
|
+
|
|
324
|
+
export type RelationQueryTargetProfileId = string;
|
|
325
|
+
|
|
326
|
+
export interface RelationQueryTargetCapabilityEvidence {
|
|
327
|
+
id: RelationQueryTargetCapabilityEvidenceId;
|
|
328
|
+
capability: RelationQueryCapability;
|
|
329
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
330
|
+
description?: string | null;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
export interface RelationQueryOperatingBoundary {
|
|
334
|
+
id: RelationQueryOperatingBoundaryId;
|
|
335
|
+
kind: RelationQueryOperatingBoundaryKind | number;
|
|
336
|
+
limit?: string | null;
|
|
337
|
+
description?: string | null;
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
export interface RelationDraft {
|
|
341
|
+
id: RelationDraftId;
|
|
342
|
+
relationId: RelationId;
|
|
343
|
+
name: RelationName;
|
|
344
|
+
input: LogicalQueryDefinition;
|
|
345
|
+
rootBinding: ValueBindingId;
|
|
346
|
+
projection: RelationDraftProjection;
|
|
347
|
+
outputMode: RelationOutputMode;
|
|
348
|
+
outputKey?: Expr | null;
|
|
349
|
+
invariants: InvariantDefinition[];
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
export interface RelationDraftFingerprint {
|
|
353
|
+
algorithm: string;
|
|
354
|
+
canonicalization: string;
|
|
355
|
+
value: string;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
export interface RelationDraftDocumentMetadata {
|
|
359
|
+
origin: DocumentOrigin;
|
|
360
|
+
name?: string | null;
|
|
361
|
+
description?: string | null;
|
|
362
|
+
sourceUri?: string | null;
|
|
363
|
+
producer?: string | null;
|
|
364
|
+
producerVersion?: string | null;
|
|
365
|
+
createdAtUtc?: string | null;
|
|
366
|
+
updatedAtUtc?: string | null;
|
|
367
|
+
annotations: Record<string, AnnotationValue>;
|
|
368
|
+
producerArtifacts: RelationDraftProducerArtifactReference[];
|
|
369
|
+
conventionDecisions: RelationDraftConventionDecision[];
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
export type RelationQueryDefinition = {
|
|
373
|
+
readonly $definition: 'relation';
|
|
374
|
+
} & RelationDefinition | {
|
|
375
|
+
readonly $definition: 'query';
|
|
376
|
+
} & QueryDefinition;
|
|
377
|
+
|
|
378
|
+
export interface RelationDefinition {
|
|
379
|
+
id: RelationId;
|
|
380
|
+
name: RelationName;
|
|
381
|
+
rootBinding: ValueBindingId;
|
|
382
|
+
output: RelationOutputDefinition;
|
|
383
|
+
invariants: InvariantDefinition[];
|
|
384
|
+
body: LogicalQueryDefinition;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
export interface QueryDefinition {
|
|
388
|
+
id: QueryId;
|
|
389
|
+
name: QueryName;
|
|
390
|
+
results: QueryResultDefinition[];
|
|
391
|
+
body: LogicalQueryDefinition;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
export interface RelationQueryDefinitionFingerprint {
|
|
395
|
+
algorithm: string;
|
|
396
|
+
canonicalization: string;
|
|
397
|
+
value: string;
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
export interface RelationQueryDocumentMetadata {
|
|
401
|
+
origin: DocumentOrigin;
|
|
402
|
+
name?: string | null;
|
|
403
|
+
description?: string | null;
|
|
404
|
+
sourceUri?: string | null;
|
|
405
|
+
producer?: string | null;
|
|
406
|
+
producerVersion?: string | null;
|
|
407
|
+
createdAtUtc?: string | null;
|
|
408
|
+
updatedAtUtc?: string | null;
|
|
409
|
+
annotations: Record<string, AnnotationValue>;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
export interface RelationshipCatalog {
|
|
413
|
+
relationships: RelationshipDefinition[];
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
export interface RelationshipCatalogFingerprint {
|
|
417
|
+
algorithm: string;
|
|
418
|
+
canonicalization: string;
|
|
419
|
+
value: string;
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
export interface RelationshipCatalogDocumentMetadata {
|
|
423
|
+
origin: DocumentOrigin;
|
|
424
|
+
name?: string | null;
|
|
425
|
+
description?: string | null;
|
|
426
|
+
sourceUri?: string | null;
|
|
427
|
+
producer?: string | null;
|
|
428
|
+
producerVersion?: string | null;
|
|
429
|
+
createdAtUtc?: string | null;
|
|
430
|
+
updatedAtUtc?: string | null;
|
|
431
|
+
annotations: Record<string, AnnotationValue>;
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
export type RelationQueryExplainStageStatus = 'Complete' | 'Unavailable' | 'Invalid' | 'Incomplete' | 'Failed';
|
|
435
|
+
|
|
436
|
+
export const relationQueryExplainStageStatuses = {
|
|
437
|
+
complete: 'Complete',
|
|
438
|
+
unavailable: 'Unavailable',
|
|
439
|
+
invalid: 'Invalid',
|
|
440
|
+
incomplete: 'Incomplete',
|
|
441
|
+
failed: 'Failed',
|
|
442
|
+
} as const satisfies Record<string, RelationQueryExplainStageStatus>;
|
|
443
|
+
|
|
444
|
+
export const relationQueryExplainStageStatusLabels: Record<RelationQueryExplainStageStatus, string> = {
|
|
445
|
+
Complete: 'Complete',
|
|
446
|
+
Unavailable: 'Unavailable',
|
|
447
|
+
Invalid: 'Invalid',
|
|
448
|
+
Incomplete: 'Incomplete',
|
|
449
|
+
Failed: 'Failed',
|
|
450
|
+
};
|
|
451
|
+
|
|
452
|
+
export interface RelationQueryCompilationRequestReference {
|
|
453
|
+
compilerProfile: string;
|
|
454
|
+
definitionSchemaVersion: string;
|
|
455
|
+
definitionFingerprint: RelationQueryDefinitionFingerprint;
|
|
456
|
+
shapeSnapshotsFingerprint: RelationQueryPlanComponentFingerprint;
|
|
457
|
+
relationshipCatalogFingerprint?: RelationshipCatalogFingerprint | null;
|
|
458
|
+
demandFingerprint: RelationQueryPlanComponentFingerprint;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
export interface RelationQueryStaticPlanExplanation {
|
|
462
|
+
reference: RelationQueryCompiledPlanReference;
|
|
463
|
+
logicalPlan: RelationQueryLogicalPlan;
|
|
464
|
+
requirementGraph: RelationQueryExplainRequirementGraph;
|
|
465
|
+
branches: RelationQueryNativeResultBranch[];
|
|
466
|
+
observability: RelationQueryResultObservability;
|
|
467
|
+
realizationRequirements: RelationQueryRealizationRequirement[];
|
|
468
|
+
realizationRequirementsFingerprint: RelationQueryPlanComponentFingerprint;
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
export interface DocumentValidationDiagnostic {
|
|
472
|
+
code: string;
|
|
473
|
+
severity: DiagnosticSeverity;
|
|
474
|
+
message: string;
|
|
475
|
+
location?: string | null;
|
|
476
|
+
schemaLocation?: string | null;
|
|
477
|
+
evidence?: DocumentDiagnosticEvidence | null;
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
export interface RelationQueryPhysicalPlanningResult {
|
|
481
|
+
status: RelationQueryPhysicalPlanningStatus;
|
|
482
|
+
plan?: CompiledRelationQueryPhysicalPlan | null;
|
|
483
|
+
diagnostics: RelationQueryPhysicalPlanningDiagnostic[];
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
export interface RelationQueryNativeCompilationAttemptReference {
|
|
487
|
+
plan: RelationQueryCompiledPlanReference;
|
|
488
|
+
profileFeasibility: RelationQueryRealizationFingerprint;
|
|
489
|
+
boundRealization: RelationQueryBoundRealizationFingerprint;
|
|
490
|
+
placement: RelationQuerySourcePlacementFingerprint;
|
|
491
|
+
adapterBinding: RelationQueryAdapterBindingReference;
|
|
492
|
+
branches: RelationQueryNativeResultBranchId[];
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
export interface RelationQueryNativeCompilationExplanation {
|
|
496
|
+
status: RelationQueryNativeCompilationStatus;
|
|
497
|
+
artifacts: RelationQueryNativeArtifactReference[];
|
|
498
|
+
diagnostics: RelationQueryNativeCompilationDiagnostic[];
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
export interface RelationQueryEvaluationExplanation {
|
|
502
|
+
evaluation: RelationQueryEvaluationFingerprint;
|
|
503
|
+
plan?: RelationQueryCompiledPlanReference | null;
|
|
504
|
+
status: RelationQueryExecutionStatus;
|
|
505
|
+
results: RelationQueryExplainResultSummary[];
|
|
506
|
+
requirementGaps: RelationQueryExplainRequirementGapSummary[];
|
|
507
|
+
diagnostics: RelationQueryExplainDiagnostic[];
|
|
508
|
+
observationFingerprint: RelationQueryEvaluationObservationFingerprint;
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
export type RelationQueryRealizationPolicyId = string;
|
|
512
|
+
|
|
513
|
+
export type RelationQueryOperatingBoundaryId = string;
|
|
514
|
+
|
|
515
|
+
export interface RelationQueryCapabilitySummaryEntry {
|
|
516
|
+
capability: RelationQueryCapability;
|
|
517
|
+
requirements: RelationQueryRealizationRequirementId[];
|
|
518
|
+
missingForRequirements: RelationQueryRealizationRequirementId[];
|
|
519
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
520
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
521
|
+
contextEvidence: RelationQueryContextEvidenceId[];
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
export type DiagnosticSeverity = 'Info' | 'Warning' | 'Error';
|
|
525
|
+
|
|
526
|
+
export const diagnosticSeverities = {
|
|
527
|
+
info: 'Info',
|
|
528
|
+
warning: 'Warning',
|
|
529
|
+
error: 'Error',
|
|
530
|
+
} as const satisfies Record<string, DiagnosticSeverity>;
|
|
531
|
+
|
|
532
|
+
export const diagnosticSeverityLabels: Record<DiagnosticSeverity, string> = {
|
|
533
|
+
Info: 'Info',
|
|
534
|
+
Warning: 'Warning',
|
|
535
|
+
Error: 'Error',
|
|
536
|
+
};
|
|
537
|
+
|
|
538
|
+
export type RelationQueryRealizationRequirementId = string;
|
|
539
|
+
|
|
540
|
+
export type QueryNodeId = string;
|
|
541
|
+
|
|
542
|
+
export type RelationQueryInputId = string;
|
|
543
|
+
|
|
544
|
+
export type RelationQueryOutputId = string;
|
|
545
|
+
|
|
546
|
+
export type RelationQuerySourcePlacementBindingId = string;
|
|
547
|
+
|
|
548
|
+
export type RelationQuerySourceInstanceId = string;
|
|
549
|
+
|
|
550
|
+
export type RelationQueryTargetCapabilityEvidenceId = string;
|
|
551
|
+
|
|
552
|
+
export type RelationQueryContextEvidenceId = string;
|
|
553
|
+
|
|
554
|
+
export type RelationQueryCompositionRuleId = string;
|
|
555
|
+
|
|
556
|
+
export type RelationQueryRealizationOverrideId = string;
|
|
557
|
+
|
|
558
|
+
export interface FieldPath {
|
|
559
|
+
segments: FieldPathSegment[];
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
export type EffectiveConfigurationOrigin = 'Explicit' | 'ScopedProfile' | 'AdapterConvention' | 'FrameworkDefault';
|
|
563
|
+
|
|
564
|
+
export const effectiveConfigurationOrigins = {
|
|
565
|
+
explicit: 'Explicit',
|
|
566
|
+
scopedProfile: 'ScopedProfile',
|
|
567
|
+
adapterConvention: 'AdapterConvention',
|
|
568
|
+
frameworkDefault: 'FrameworkDefault',
|
|
569
|
+
} as const satisfies Record<string, EffectiveConfigurationOrigin>;
|
|
570
|
+
|
|
571
|
+
export const effectiveConfigurationOriginLabels: Record<EffectiveConfigurationOrigin, string> = {
|
|
572
|
+
Explicit: 'Explicit',
|
|
573
|
+
ScopedProfile: 'ScopedProfile',
|
|
574
|
+
AdapterConvention: 'AdapterConvention',
|
|
575
|
+
FrameworkDefault: 'FrameworkDefault',
|
|
576
|
+
};
|
|
577
|
+
|
|
578
|
+
export type RelationQueryAdapterDecisionCode = string;
|
|
579
|
+
|
|
580
|
+
export interface RelationQueryPlanComponentFingerprint {
|
|
581
|
+
algorithm: string;
|
|
582
|
+
canonicalization: string;
|
|
583
|
+
value: string;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
export type RelationQueryPhysicalPlanningPolicyId = string;
|
|
587
|
+
|
|
588
|
+
export interface RelationQueryPhysicalLoweringSelection {
|
|
589
|
+
compositionRule: RelationQueryCompositionRuleId;
|
|
590
|
+
physicalLowering: RelationQueryPhysicalLoweringRuleId;
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
export type RelationQueryPhysicalStageKind = 'SuppliedInput' | 'SourceRead' | 'ExactFieldProjection' | 'RelationshipKeyExtraction' | 'KeyDeduplication' | 'BatchedIdentityLookup' | 'BatchedPredicateLookup' | 'LocalCorrelation' | 'RuntimeEvidenceAssembly' | 'ReferenceInterpreterTerminal';
|
|
594
|
+
|
|
595
|
+
export const relationQueryPhysicalStageKinds = {
|
|
596
|
+
suppliedInput: 'SuppliedInput',
|
|
597
|
+
sourceRead: 'SourceRead',
|
|
598
|
+
exactFieldProjection: 'ExactFieldProjection',
|
|
599
|
+
relationshipKeyExtraction: 'RelationshipKeyExtraction',
|
|
600
|
+
keyDeduplication: 'KeyDeduplication',
|
|
601
|
+
batchedIdentityLookup: 'BatchedIdentityLookup',
|
|
602
|
+
batchedPredicateLookup: 'BatchedPredicateLookup',
|
|
603
|
+
localCorrelation: 'LocalCorrelation',
|
|
604
|
+
runtimeEvidenceAssembly: 'RuntimeEvidenceAssembly',
|
|
605
|
+
referenceInterpreterTerminal: 'ReferenceInterpreterTerminal',
|
|
606
|
+
} as const satisfies Record<string, RelationQueryPhysicalStageKind>;
|
|
607
|
+
|
|
608
|
+
export const relationQueryPhysicalStageKindLabels: Record<RelationQueryPhysicalStageKind, string> = {
|
|
609
|
+
SuppliedInput: 'SuppliedInput',
|
|
610
|
+
SourceRead: 'SourceRead',
|
|
611
|
+
ExactFieldProjection: 'ExactFieldProjection',
|
|
612
|
+
RelationshipKeyExtraction: 'RelationshipKeyExtraction',
|
|
613
|
+
KeyDeduplication: 'KeyDeduplication',
|
|
614
|
+
BatchedIdentityLookup: 'BatchedIdentityLookup',
|
|
615
|
+
BatchedPredicateLookup: 'BatchedPredicateLookup',
|
|
616
|
+
LocalCorrelation: 'LocalCorrelation',
|
|
617
|
+
RuntimeEvidenceAssembly: 'RuntimeEvidenceAssembly',
|
|
618
|
+
ReferenceInterpreterTerminal: 'ReferenceInterpreterTerminal',
|
|
619
|
+
};
|
|
620
|
+
|
|
621
|
+
export interface RelationQueryPhysicalStageProvenance {
|
|
622
|
+
nodes: QueryNodeId[];
|
|
623
|
+
inputs: RelationQueryInputId[];
|
|
624
|
+
requirements: RelationQueryRealizationRequirementId[];
|
|
625
|
+
capabilityEvidence: RelationQueryPhysicalCapabilityEvidenceReference[];
|
|
626
|
+
compositionRules: RelationQueryCompositionRuleId[];
|
|
627
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
628
|
+
placementBindings: RelationQuerySourcePlacementBindingId[];
|
|
629
|
+
loweringRule?: RelationQueryPhysicalLoweringRuleId | null;
|
|
630
|
+
policyDecisions: RelationQueryPhysicalPlanningDecisionId[];
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
export type RelationQueryExecutionDomainId = string;
|
|
634
|
+
|
|
635
|
+
export interface RelationQuerySourcePlacementLimits {
|
|
636
|
+
maximumBatchSize: string;
|
|
637
|
+
maximumBufferedRows: string;
|
|
638
|
+
maximumFanOut: string;
|
|
639
|
+
maximumConcurrency: string;
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
export type ValueBindingId = string;
|
|
643
|
+
|
|
644
|
+
export type RelationQuerySourcePlacementBindingKind = 'SourceSet' | 'RelationshipTraversal';
|
|
645
|
+
|
|
646
|
+
export const relationQuerySourcePlacementBindingKinds = {
|
|
647
|
+
sourceSet: 'SourceSet',
|
|
648
|
+
relationshipTraversal: 'RelationshipTraversal',
|
|
649
|
+
} as const satisfies Record<string, RelationQuerySourcePlacementBindingKind>;
|
|
650
|
+
|
|
651
|
+
export const relationQuerySourcePlacementBindingKindLabels: Record<RelationQuerySourcePlacementBindingKind, string> = {
|
|
652
|
+
SourceSet: 'SourceSet',
|
|
653
|
+
RelationshipTraversal: 'RelationshipTraversal',
|
|
654
|
+
};
|
|
655
|
+
|
|
656
|
+
export type RelationQuerySourceAcquisitionKind = 'Supplied' | 'BoundedEnumeration' | 'BoundedLookup';
|
|
657
|
+
|
|
658
|
+
export const relationQuerySourceAcquisitionKinds = {
|
|
659
|
+
supplied: 'Supplied',
|
|
660
|
+
boundedEnumeration: 'BoundedEnumeration',
|
|
661
|
+
boundedLookup: 'BoundedLookup',
|
|
662
|
+
} as const satisfies Record<string, RelationQuerySourceAcquisitionKind>;
|
|
663
|
+
|
|
664
|
+
export const relationQuerySourceAcquisitionKindLabels: Record<RelationQuerySourceAcquisitionKind, string> = {
|
|
665
|
+
Supplied: 'Supplied',
|
|
666
|
+
BoundedEnumeration: 'BoundedEnumeration',
|
|
667
|
+
BoundedLookup: 'BoundedLookup',
|
|
668
|
+
};
|
|
669
|
+
|
|
670
|
+
export type RelationQuerySourcePlacementOrigin = 'Explicit' | 'Convention';
|
|
671
|
+
|
|
672
|
+
export const relationQuerySourcePlacementOrigins = {
|
|
673
|
+
explicit: 'Explicit',
|
|
674
|
+
convention: 'Convention',
|
|
675
|
+
} as const satisfies Record<string, RelationQuerySourcePlacementOrigin>;
|
|
676
|
+
|
|
677
|
+
export const relationQuerySourcePlacementOriginLabels: Record<RelationQuerySourcePlacementOrigin, string> = {
|
|
678
|
+
Explicit: 'Explicit',
|
|
679
|
+
Convention: 'Convention',
|
|
680
|
+
};
|
|
681
|
+
|
|
682
|
+
export interface RelationQuerySourceIdentityBinding {
|
|
683
|
+
shape: QualifiedShapeId;
|
|
684
|
+
sourceSelector: string;
|
|
685
|
+
semanticPath?: FieldPath | null;
|
|
686
|
+
}
|
|
687
|
+
|
|
688
|
+
export interface RelationQuerySourceFieldBinding {
|
|
689
|
+
input: RelationQueryInputId;
|
|
690
|
+
semanticPath: FieldPath;
|
|
691
|
+
sourceSelector: string;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
export interface RelationQueryRelationshipKeyBinding {
|
|
695
|
+
input: RelationQueryInputId;
|
|
696
|
+
semanticPath: FieldPath;
|
|
697
|
+
sourceSelector: string;
|
|
698
|
+
}
|
|
699
|
+
|
|
700
|
+
export interface RelationQueryPartitionBinding {
|
|
701
|
+
sourceSelector: string;
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
export interface RelationQueryAdapterBindingReference {
|
|
705
|
+
schemaVersion: string;
|
|
706
|
+
bindingId: string;
|
|
707
|
+
target: RelationQueryTargetId;
|
|
708
|
+
targetProfile: RelationQueryTargetProfileId;
|
|
709
|
+
fingerprint: RelationQueryAdapterBindingFingerprint;
|
|
710
|
+
compiledPlanFingerprint?: RelationQueryPlanComponentFingerprint | null;
|
|
711
|
+
placementFingerprint?: RelationQuerySourcePlacementFingerprint | null;
|
|
712
|
+
sources: RelationQuerySourceInstanceId[];
|
|
713
|
+
placementBindings: RelationQuerySourcePlacementBindingId[];
|
|
714
|
+
configurationDecisions: EffectiveConfigurationDecision[];
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
export interface RelationQueryBoundRequirementAssessment {
|
|
718
|
+
id: RelationQueryContextEvidenceId;
|
|
719
|
+
branch: RelationQueryNativeResultBranchId;
|
|
720
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
721
|
+
status: RelationQueryBoundAssessmentStatus;
|
|
722
|
+
origin: EffectiveConfigurationOrigin;
|
|
723
|
+
authority: string;
|
|
724
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
725
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
726
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
727
|
+
unavailableReason?: RelationQueryUnavailableReason | null;
|
|
728
|
+
node?: QueryNodeId | null;
|
|
729
|
+
input?: RelationQueryInputId | null;
|
|
730
|
+
field?: FieldPath | null;
|
|
731
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
732
|
+
configurationSetting?: string | null;
|
|
733
|
+
message: string;
|
|
734
|
+
resolution?: string | null;
|
|
735
|
+
adapterDecisionCode?: RelationQueryAdapterDecisionCode | null;
|
|
736
|
+
missingCapabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
737
|
+
failedOperatingBoundary?: RelationQueryOperatingBoundaryId | null;
|
|
738
|
+
failedConfigurationSetting?: string | null;
|
|
739
|
+
blockedBy?: RelationQueryContextEvidenceId | null;
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
export type RelationQueryRealizationPreference = 'PreferNative' | 'PreferComposed';
|
|
743
|
+
|
|
744
|
+
export const relationQueryRealizationPreferences = {
|
|
745
|
+
preferNative: 'PreferNative',
|
|
746
|
+
preferComposed: 'PreferComposed',
|
|
747
|
+
} as const satisfies Record<string, RelationQueryRealizationPreference>;
|
|
748
|
+
|
|
749
|
+
export const relationQueryRealizationPreferenceLabels: Record<RelationQueryRealizationPreference, string> = {
|
|
750
|
+
PreferNative: 'PreferNative',
|
|
751
|
+
PreferComposed: 'PreferComposed',
|
|
752
|
+
};
|
|
753
|
+
|
|
754
|
+
export type RelationQueryConstrainedRealizationPolicy = 'Reject' | 'AllowValidated';
|
|
755
|
+
|
|
756
|
+
export const relationQueryConstrainedRealizationPolicies = {
|
|
757
|
+
reject: 'Reject',
|
|
758
|
+
allowValidated: 'AllowValidated',
|
|
759
|
+
} as const satisfies Record<string, RelationQueryConstrainedRealizationPolicy>;
|
|
760
|
+
|
|
761
|
+
export const relationQueryConstrainedRealizationPolicyLabels: Record<RelationQueryConstrainedRealizationPolicy, string> = {
|
|
762
|
+
Reject: 'Reject',
|
|
763
|
+
AllowValidated: 'AllowValidated',
|
|
764
|
+
};
|
|
765
|
+
|
|
766
|
+
export interface RelationQueryCompositionRule {
|
|
767
|
+
id: RelationQueryCompositionRuleId;
|
|
768
|
+
providedCapability: RelationQueryCapability;
|
|
769
|
+
requiredCapabilities: RelationQueryCapability[];
|
|
770
|
+
requiredOperatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
771
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
772
|
+
description?: string | null;
|
|
773
|
+
}
|
|
774
|
+
|
|
775
|
+
export interface RelationQueryCompositionRuleSelection {
|
|
776
|
+
capability: RelationQueryCapability;
|
|
777
|
+
rule: RelationQueryCompositionRuleId;
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
export interface RelationQueryRealizationOverride {
|
|
781
|
+
id: RelationQueryRealizationOverrideId;
|
|
782
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
783
|
+
expectedCapability: RelationQueryCapability;
|
|
784
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
785
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
786
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
787
|
+
justification: string;
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
export interface RelationQueryRealizationDiagnosticSeverityOverride {
|
|
791
|
+
code: string;
|
|
792
|
+
severity: DiagnosticSeverity;
|
|
793
|
+
}
|
|
794
|
+
|
|
795
|
+
export type RelationQueryOccurrenceProvenanceMode = 'ExactContributors' | 'NotRequested';
|
|
796
|
+
|
|
797
|
+
export const relationQueryOccurrenceProvenanceModes = {
|
|
798
|
+
exactContributors: 'ExactContributors',
|
|
799
|
+
notRequested: 'NotRequested',
|
|
800
|
+
} as const satisfies Record<string, RelationQueryOccurrenceProvenanceMode>;
|
|
801
|
+
|
|
802
|
+
export const relationQueryOccurrenceProvenanceModeLabels: Record<RelationQueryOccurrenceProvenanceMode, string> = {
|
|
803
|
+
ExactContributors: 'ExactContributors',
|
|
804
|
+
NotRequested: 'NotRequested',
|
|
805
|
+
};
|
|
806
|
+
|
|
807
|
+
export type RelationQueryCapability = {
|
|
808
|
+
readonly $capability: 'logical';
|
|
809
|
+
} & LogicalRelationQueryCapability | {
|
|
810
|
+
readonly $capability: 'expression';
|
|
811
|
+
} & ExpressionRelationQueryCapability | {
|
|
812
|
+
readonly $capability: 'temporal';
|
|
813
|
+
} & TemporalRelationQueryCapability | {
|
|
814
|
+
readonly $capability: 'structural';
|
|
815
|
+
} & StructuralRelationQueryCapability | {
|
|
816
|
+
readonly $capability: 'guarantee';
|
|
817
|
+
} & GuaranteeRelationQueryCapability | {
|
|
818
|
+
readonly $capability: 'operatingBoundaryValidation';
|
|
819
|
+
} & OperatingBoundaryValidationRelationQueryCapability | {
|
|
820
|
+
readonly $capability: 'primitive';
|
|
821
|
+
} & PrimitiveRelationQueryCapability;
|
|
822
|
+
|
|
823
|
+
export interface LogicalRelationQueryCapability {
|
|
824
|
+
kind: RelationQueryLogicalCapabilityKind | number;
|
|
825
|
+
}
|
|
826
|
+
|
|
827
|
+
export interface ExpressionRelationQueryCapability {
|
|
828
|
+
capability: ExprCapabilityId;
|
|
829
|
+
requirementKind: ExprCapabilityRequirementKind | number;
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
export interface TemporalRelationQueryCapability {
|
|
833
|
+
capability: RelationQueryTemporalExecutionCapability | number;
|
|
834
|
+
}
|
|
835
|
+
|
|
836
|
+
export interface StructuralRelationQueryCapability {
|
|
837
|
+
role: RelationQueryStructuralCapabilityRole | number;
|
|
838
|
+
pathKind: RelationQueryStructuralPathKind | number;
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
export interface GuaranteeRelationQueryCapability {
|
|
842
|
+
kind: RelationQueryGuaranteeCapabilityKind | number;
|
|
843
|
+
}
|
|
844
|
+
|
|
845
|
+
export interface OperatingBoundaryValidationRelationQueryCapability {
|
|
846
|
+
boundary: RelationQueryOperatingBoundaryId;
|
|
847
|
+
}
|
|
848
|
+
|
|
849
|
+
export interface PrimitiveRelationQueryCapability {
|
|
850
|
+
kind: RelationQueryPrimitiveCapabilityKind | number;
|
|
851
|
+
}
|
|
852
|
+
|
|
853
|
+
export interface RelationQueryRealizationRequirementOrigin {
|
|
854
|
+
input?: RelationQueryInputId | null;
|
|
855
|
+
node?: QueryNodeId | null;
|
|
856
|
+
semanticSite?: string | null;
|
|
857
|
+
expressionPath?: string | null;
|
|
858
|
+
fieldPath?: FieldPath | null;
|
|
859
|
+
binding?: ValueBindingId | null;
|
|
860
|
+
}
|
|
861
|
+
|
|
862
|
+
export interface RelationQueryRealizationRequirementUse {
|
|
863
|
+
output: RelationQueryRealizationOutputReference;
|
|
864
|
+
effect: RelationQueryRequirementEffect;
|
|
865
|
+
requirement: QueryInputRequirement;
|
|
866
|
+
traces: RelationQueryRealizationTrace[];
|
|
867
|
+
}
|
|
868
|
+
|
|
869
|
+
export type RelationQueryGuaranteeCapabilityKind = 'MissingNullDistinction' | 'AbsenceAvailabilityFailureDistinction' | 'JoinMembership' | 'Cardinality' | 'RelationshipDirection' | 'RelationshipMultiplicity' | 'TemporalDomain' | 'TemporalBoundary' | 'UnboundedTemporalBoundary' | 'Ordering' | 'NullPlacement' | 'StablePaging' | 'Grouping' | 'Aggregation' | 'DuplicateHandling' | 'OutputIdentity' | 'OutputMode' | 'InvariantEnforcement' | 'DeterministicResult' | 'OccurrenceProvenance' | 'EvidenceCompleteness' | 'InconclusiveEvidence' | 'ConsistentSnapshot' | 'CollectionElementCorrelation' | 'RelationRootCorrelation';
|
|
870
|
+
|
|
871
|
+
export const relationQueryGuaranteeCapabilityKinds = {
|
|
872
|
+
missingNullDistinction: 'MissingNullDistinction',
|
|
873
|
+
absenceAvailabilityFailureDistinction: 'AbsenceAvailabilityFailureDistinction',
|
|
874
|
+
joinMembership: 'JoinMembership',
|
|
875
|
+
cardinality: 'Cardinality',
|
|
876
|
+
relationshipDirection: 'RelationshipDirection',
|
|
877
|
+
relationshipMultiplicity: 'RelationshipMultiplicity',
|
|
878
|
+
temporalDomain: 'TemporalDomain',
|
|
879
|
+
temporalBoundary: 'TemporalBoundary',
|
|
880
|
+
unboundedTemporalBoundary: 'UnboundedTemporalBoundary',
|
|
881
|
+
ordering: 'Ordering',
|
|
882
|
+
nullPlacement: 'NullPlacement',
|
|
883
|
+
stablePaging: 'StablePaging',
|
|
884
|
+
grouping: 'Grouping',
|
|
885
|
+
aggregation: 'Aggregation',
|
|
886
|
+
duplicateHandling: 'DuplicateHandling',
|
|
887
|
+
outputIdentity: 'OutputIdentity',
|
|
888
|
+
outputMode: 'OutputMode',
|
|
889
|
+
invariantEnforcement: 'InvariantEnforcement',
|
|
890
|
+
deterministicResult: 'DeterministicResult',
|
|
891
|
+
occurrenceProvenance: 'OccurrenceProvenance',
|
|
892
|
+
evidenceCompleteness: 'EvidenceCompleteness',
|
|
893
|
+
inconclusiveEvidence: 'InconclusiveEvidence',
|
|
894
|
+
consistentSnapshot: 'ConsistentSnapshot',
|
|
895
|
+
collectionElementCorrelation: 'CollectionElementCorrelation',
|
|
896
|
+
relationRootCorrelation: 'RelationRootCorrelation',
|
|
897
|
+
} as const satisfies Record<string, RelationQueryGuaranteeCapabilityKind>;
|
|
898
|
+
|
|
899
|
+
export const relationQueryGuaranteeCapabilityKindLabels: Record<RelationQueryGuaranteeCapabilityKind, string> = {
|
|
900
|
+
MissingNullDistinction: 'MissingNullDistinction',
|
|
901
|
+
AbsenceAvailabilityFailureDistinction: 'AbsenceAvailabilityFailureDistinction',
|
|
902
|
+
JoinMembership: 'JoinMembership',
|
|
903
|
+
Cardinality: 'Cardinality',
|
|
904
|
+
RelationshipDirection: 'RelationshipDirection',
|
|
905
|
+
RelationshipMultiplicity: 'RelationshipMultiplicity',
|
|
906
|
+
TemporalDomain: 'TemporalDomain',
|
|
907
|
+
TemporalBoundary: 'TemporalBoundary',
|
|
908
|
+
UnboundedTemporalBoundary: 'UnboundedTemporalBoundary',
|
|
909
|
+
Ordering: 'Ordering',
|
|
910
|
+
NullPlacement: 'NullPlacement',
|
|
911
|
+
StablePaging: 'StablePaging',
|
|
912
|
+
Grouping: 'Grouping',
|
|
913
|
+
Aggregation: 'Aggregation',
|
|
914
|
+
DuplicateHandling: 'DuplicateHandling',
|
|
915
|
+
OutputIdentity: 'OutputIdentity',
|
|
916
|
+
OutputMode: 'OutputMode',
|
|
917
|
+
InvariantEnforcement: 'InvariantEnforcement',
|
|
918
|
+
DeterministicResult: 'DeterministicResult',
|
|
919
|
+
OccurrenceProvenance: 'OccurrenceProvenance',
|
|
920
|
+
EvidenceCompleteness: 'EvidenceCompleteness',
|
|
921
|
+
InconclusiveEvidence: 'InconclusiveEvidence',
|
|
922
|
+
ConsistentSnapshot: 'ConsistentSnapshot',
|
|
923
|
+
CollectionElementCorrelation: 'CollectionElementCorrelation',
|
|
924
|
+
RelationRootCorrelation: 'RelationRootCorrelation',
|
|
925
|
+
};
|
|
926
|
+
|
|
927
|
+
export interface RelationQueryRealizationStaticFact {
|
|
928
|
+
kind: RelationQueryRealizationStaticFactKind;
|
|
929
|
+
value: string;
|
|
930
|
+
}
|
|
931
|
+
|
|
932
|
+
export interface RelationQueryOperatingBoundaryValidation {
|
|
933
|
+
boundary: RelationQueryOperatingBoundaryId;
|
|
934
|
+
kind: RelationQueryOperatingBoundaryValidationKind;
|
|
935
|
+
capabilityEvidence?: RelationQueryTargetCapabilityEvidenceId | null;
|
|
936
|
+
measuredValue?: string | null;
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
export type RelationQueryUnavailableReason = 'CapabilityNotAdvertised' | 'ProfileVersionUnsupported' | 'OperatingBoundaryMissing' | 'OperatingBoundaryInvalid' | 'CompositionUnavailable' | 'AmbiguousStrategy' | 'CapabilityEvidenceInvalid' | 'OverrideInvalid' | 'PolicyRejected' | 'PrerequisiteBlocked';
|
|
940
|
+
|
|
941
|
+
export const relationQueryUnavailableReasons = {
|
|
942
|
+
capabilityNotAdvertised: 'CapabilityNotAdvertised',
|
|
943
|
+
profileVersionUnsupported: 'ProfileVersionUnsupported',
|
|
944
|
+
operatingBoundaryMissing: 'OperatingBoundaryMissing',
|
|
945
|
+
operatingBoundaryInvalid: 'OperatingBoundaryInvalid',
|
|
946
|
+
compositionUnavailable: 'CompositionUnavailable',
|
|
947
|
+
ambiguousStrategy: 'AmbiguousStrategy',
|
|
948
|
+
capabilityEvidenceInvalid: 'CapabilityEvidenceInvalid',
|
|
949
|
+
overrideInvalid: 'OverrideInvalid',
|
|
950
|
+
policyRejected: 'PolicyRejected',
|
|
951
|
+
prerequisiteBlocked: 'PrerequisiteBlocked',
|
|
952
|
+
} as const satisfies Record<string, RelationQueryUnavailableReason>;
|
|
953
|
+
|
|
954
|
+
export const relationQueryUnavailableReasonLabels: Record<RelationQueryUnavailableReason, string> = {
|
|
955
|
+
CapabilityNotAdvertised: 'CapabilityNotAdvertised',
|
|
956
|
+
ProfileVersionUnsupported: 'ProfileVersionUnsupported',
|
|
957
|
+
OperatingBoundaryMissing: 'OperatingBoundaryMissing',
|
|
958
|
+
OperatingBoundaryInvalid: 'OperatingBoundaryInvalid',
|
|
959
|
+
CompositionUnavailable: 'CompositionUnavailable',
|
|
960
|
+
AmbiguousStrategy: 'AmbiguousStrategy',
|
|
961
|
+
CapabilityEvidenceInvalid: 'CapabilityEvidenceInvalid',
|
|
962
|
+
OverrideInvalid: 'OverrideInvalid',
|
|
963
|
+
PolicyRejected: 'PolicyRejected',
|
|
964
|
+
PrerequisiteBlocked: 'PrerequisiteBlocked',
|
|
965
|
+
};
|
|
966
|
+
|
|
967
|
+
export type RelationQueryOperatingBoundaryKind = 'MaximumInputRows' | 'MaximumOutputRows' | 'MaximumFanOut' | 'MaximumPageSize' | 'MaximumFieldPathDepth' | 'MaximumExpressionDepth' | 'MaximumBatchSize' | 'SingleSource' | 'SinglePartition' | 'MaterializedInputs' | 'CompleteInputEvidence' | 'NonNullOperands' | 'ScalarOperands' | 'HomogeneousTemporalDomain' | 'FiniteTemporalBounds' | 'StableUniqueOrdering' | 'DeterministicProvider' | 'ExactNumericAggregateDomain' | 'ExactTemporalDomain' | 'SuppliedRelationRoot';
|
|
968
|
+
|
|
969
|
+
export const relationQueryOperatingBoundaryKinds = {
|
|
970
|
+
maximumInputRows: 'MaximumInputRows',
|
|
971
|
+
maximumOutputRows: 'MaximumOutputRows',
|
|
972
|
+
maximumFanOut: 'MaximumFanOut',
|
|
973
|
+
maximumPageSize: 'MaximumPageSize',
|
|
974
|
+
maximumFieldPathDepth: 'MaximumFieldPathDepth',
|
|
975
|
+
maximumExpressionDepth: 'MaximumExpressionDepth',
|
|
976
|
+
maximumBatchSize: 'MaximumBatchSize',
|
|
977
|
+
singleSource: 'SingleSource',
|
|
978
|
+
singlePartition: 'SinglePartition',
|
|
979
|
+
materializedInputs: 'MaterializedInputs',
|
|
980
|
+
completeInputEvidence: 'CompleteInputEvidence',
|
|
981
|
+
nonNullOperands: 'NonNullOperands',
|
|
982
|
+
scalarOperands: 'ScalarOperands',
|
|
983
|
+
homogeneousTemporalDomain: 'HomogeneousTemporalDomain',
|
|
984
|
+
finiteTemporalBounds: 'FiniteTemporalBounds',
|
|
985
|
+
stableUniqueOrdering: 'StableUniqueOrdering',
|
|
986
|
+
deterministicProvider: 'DeterministicProvider',
|
|
987
|
+
exactNumericAggregateDomain: 'ExactNumericAggregateDomain',
|
|
988
|
+
exactTemporalDomain: 'ExactTemporalDomain',
|
|
989
|
+
suppliedRelationRoot: 'SuppliedRelationRoot',
|
|
990
|
+
} as const satisfies Record<string, RelationQueryOperatingBoundaryKind>;
|
|
991
|
+
|
|
992
|
+
export const relationQueryOperatingBoundaryKindLabels: Record<RelationQueryOperatingBoundaryKind, string> = {
|
|
993
|
+
MaximumInputRows: 'MaximumInputRows',
|
|
994
|
+
MaximumOutputRows: 'MaximumOutputRows',
|
|
995
|
+
MaximumFanOut: 'MaximumFanOut',
|
|
996
|
+
MaximumPageSize: 'MaximumPageSize',
|
|
997
|
+
MaximumFieldPathDepth: 'MaximumFieldPathDepth',
|
|
998
|
+
MaximumExpressionDepth: 'MaximumExpressionDepth',
|
|
999
|
+
MaximumBatchSize: 'MaximumBatchSize',
|
|
1000
|
+
SingleSource: 'SingleSource',
|
|
1001
|
+
SinglePartition: 'SinglePartition',
|
|
1002
|
+
MaterializedInputs: 'MaterializedInputs',
|
|
1003
|
+
CompleteInputEvidence: 'CompleteInputEvidence',
|
|
1004
|
+
NonNullOperands: 'NonNullOperands',
|
|
1005
|
+
ScalarOperands: 'ScalarOperands',
|
|
1006
|
+
HomogeneousTemporalDomain: 'HomogeneousTemporalDomain',
|
|
1007
|
+
FiniteTemporalBounds: 'FiniteTemporalBounds',
|
|
1008
|
+
StableUniqueOrdering: 'StableUniqueOrdering',
|
|
1009
|
+
DeterministicProvider: 'DeterministicProvider',
|
|
1010
|
+
ExactNumericAggregateDomain: 'ExactNumericAggregateDomain',
|
|
1011
|
+
ExactTemporalDomain: 'ExactTemporalDomain',
|
|
1012
|
+
SuppliedRelationRoot: 'SuppliedRelationRoot',
|
|
1013
|
+
};
|
|
1014
|
+
|
|
1015
|
+
export type RelationDraftId = string;
|
|
1016
|
+
|
|
1017
|
+
export type RelationId = string;
|
|
1018
|
+
|
|
1019
|
+
export type RelationName = string;
|
|
1020
|
+
|
|
1021
|
+
export interface LogicalQueryDefinition {
|
|
1022
|
+
nodes: LogicalQueryNode[];
|
|
1023
|
+
parameters: QueryParameterDefinition[];
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
export interface RelationDraftProjection {
|
|
1027
|
+
id: QueryNodeId;
|
|
1028
|
+
input: QueryNodeId;
|
|
1029
|
+
resultBinding: ValueBindingId;
|
|
1030
|
+
resultShape: QualifiedShapeId;
|
|
1031
|
+
assignments: RelationDraftAssignmentSlot[];
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1034
|
+
export type RelationOutputMode = 'OnePerRoot' | 'ZeroOrOnePerRoot' | 'ManyPerRoot' | 'Set';
|
|
1035
|
+
|
|
1036
|
+
export const relationOutputModes = {
|
|
1037
|
+
onePerRoot: 'OnePerRoot',
|
|
1038
|
+
zeroOrOnePerRoot: 'ZeroOrOnePerRoot',
|
|
1039
|
+
manyPerRoot: 'ManyPerRoot',
|
|
1040
|
+
set: 'Set',
|
|
1041
|
+
} as const satisfies Record<string, RelationOutputMode>;
|
|
1042
|
+
|
|
1043
|
+
export const relationOutputModeLabels: Record<RelationOutputMode, string> = {
|
|
1044
|
+
OnePerRoot: 'OnePerRoot',
|
|
1045
|
+
ZeroOrOnePerRoot: 'ZeroOrOnePerRoot',
|
|
1046
|
+
ManyPerRoot: 'ManyPerRoot',
|
|
1047
|
+
Set: 'Set',
|
|
1048
|
+
};
|
|
1049
|
+
|
|
32
1050
|
export type Expr = {
|
|
1051
|
+
readonly $expr: 'binding';
|
|
1052
|
+
} & BindingExpr | {
|
|
33
1053
|
readonly $expr: 'field';
|
|
34
1054
|
} & FieldExpr | {
|
|
35
1055
|
readonly $expr: 'currentItem';
|
|
@@ -53,177 +1073,820 @@ export type Expr = {
|
|
|
53
1073
|
readonly $expr: 'aggregate';
|
|
54
1074
|
} & AggregateExpr;
|
|
55
1075
|
|
|
1076
|
+
export interface BindingExpr {
|
|
1077
|
+
binding: ValueBindingId;
|
|
1078
|
+
}
|
|
1079
|
+
|
|
56
1080
|
export interface FieldExpr {
|
|
57
|
-
|
|
1081
|
+
path: FieldPath;
|
|
1082
|
+
binding?: ValueBindingId | null;
|
|
58
1083
|
}
|
|
59
1084
|
|
|
60
1085
|
export type CurrentItemExpr = Record<never, never>;
|
|
61
1086
|
|
|
62
1087
|
export interface ParameterExpr {
|
|
63
|
-
|
|
1088
|
+
parameter: string;
|
|
64
1089
|
}
|
|
65
1090
|
|
|
66
1091
|
export interface ConstantExpr {
|
|
67
|
-
|
|
1092
|
+
value: unknown;
|
|
68
1093
|
}
|
|
69
1094
|
|
|
70
1095
|
export interface UnaryExpr {
|
|
71
|
-
|
|
72
|
-
|
|
1096
|
+
operator: UnaryOperator;
|
|
1097
|
+
operand: Expr;
|
|
73
1098
|
}
|
|
74
1099
|
|
|
75
1100
|
export interface BinaryExpr {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
1101
|
+
operator: BinaryOperator;
|
|
1102
|
+
left: Expr;
|
|
1103
|
+
right: Expr;
|
|
79
1104
|
}
|
|
80
1105
|
|
|
81
1106
|
export interface ConditionalExpr {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
1107
|
+
test: Expr;
|
|
1108
|
+
ifTrue: Expr;
|
|
1109
|
+
ifFalse: Expr;
|
|
1110
|
+
returnType: TypeRef;
|
|
86
1111
|
}
|
|
87
1112
|
|
|
88
1113
|
export interface CallExpr {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
1114
|
+
function: string;
|
|
1115
|
+
arguments: Expr[];
|
|
1116
|
+
returnType: TypeRef;
|
|
92
1117
|
}
|
|
93
1118
|
|
|
94
1119
|
export interface FieldRefExpr {
|
|
95
|
-
|
|
96
|
-
|
|
1120
|
+
path: FieldPath;
|
|
1121
|
+
type: TypeRef;
|
|
97
1122
|
}
|
|
98
1123
|
|
|
99
1124
|
export interface LiteralExpr {
|
|
100
|
-
|
|
101
|
-
|
|
1125
|
+
type: TypeRef;
|
|
1126
|
+
value: unknown;
|
|
102
1127
|
}
|
|
103
1128
|
|
|
104
1129
|
export interface AggregateExpr {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
export interface MappingDefinition {
|
|
112
|
-
Id: MappingId;
|
|
113
|
-
Name: MappingName;
|
|
114
|
-
Kind: MappingKind;
|
|
115
|
-
SourceShapeId?: ShapeId | null;
|
|
116
|
-
TargetShapeId: ShapeId;
|
|
117
|
-
Assignments: FieldAssignment[];
|
|
118
|
-
Predicate?: Expr | null;
|
|
119
|
-
ForEach?: Expr | null;
|
|
120
|
-
Key?: Expr | null;
|
|
121
|
-
Entity?: Expr | null;
|
|
122
|
-
Scope: MappingScope;
|
|
123
|
-
Direction: MappingDirection;
|
|
124
|
-
NestedMappings: NestedMapping[];
|
|
125
|
-
CollectionMappings: CollectionMapping[];
|
|
126
|
-
Metadata: MappingMetadata;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
export interface MaterializationSpec {
|
|
130
|
-
IsEnabled: boolean;
|
|
131
|
-
Strategy: MaterializationStrategy;
|
|
132
|
-
Freshness: FreshnessPolicy;
|
|
133
|
-
AllowCodegen: boolean;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
export interface RelationMetadata {
|
|
137
|
-
AllowCodegen: boolean;
|
|
138
|
-
Deterministic: boolean;
|
|
139
|
-
Hints: ({
|
|
140
|
-
Key: string;
|
|
141
|
-
Value: string;
|
|
142
|
-
})[];
|
|
1130
|
+
operator: AggregateOperator;
|
|
1131
|
+
source: Expr;
|
|
1132
|
+
groupBy: Expr[];
|
|
1133
|
+
returnType: TypeRef;
|
|
143
1134
|
}
|
|
144
1135
|
|
|
145
1136
|
export interface InvariantDefinition {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
1137
|
+
name: string;
|
|
1138
|
+
entity?: EntityId | null;
|
|
1139
|
+
expression: Expr;
|
|
1140
|
+
message?: string | null;
|
|
149
1141
|
}
|
|
150
1142
|
|
|
151
|
-
export
|
|
152
|
-
|
|
1143
|
+
export type DocumentOrigin = 'Unknown' | 'User' | 'System' | 'Imported' | 'Generated' | 'Compiled' | 'Extracted';
|
|
1144
|
+
|
|
1145
|
+
export const documentOrigins = {
|
|
1146
|
+
unknown: 'Unknown',
|
|
1147
|
+
user: 'User',
|
|
1148
|
+
system: 'System',
|
|
1149
|
+
imported: 'Imported',
|
|
1150
|
+
generated: 'Generated',
|
|
1151
|
+
compiled: 'Compiled',
|
|
1152
|
+
extracted: 'Extracted',
|
|
1153
|
+
} as const satisfies Record<string, DocumentOrigin>;
|
|
1154
|
+
|
|
1155
|
+
export const documentOriginLabels: Record<DocumentOrigin, string> = {
|
|
1156
|
+
Unknown: 'Unknown',
|
|
1157
|
+
User: 'User',
|
|
1158
|
+
System: 'System',
|
|
1159
|
+
Imported: 'Imported',
|
|
1160
|
+
Generated: 'Generated',
|
|
1161
|
+
Compiled: 'Compiled',
|
|
1162
|
+
Extracted: 'Extracted',
|
|
1163
|
+
};
|
|
1164
|
+
|
|
1165
|
+
export type AnnotationKey = string;
|
|
1166
|
+
|
|
1167
|
+
export type AnnotationValue = unknown;
|
|
1168
|
+
|
|
1169
|
+
export interface RelationDraftProducerArtifactReference {
|
|
1170
|
+
kind: string;
|
|
1171
|
+
value: string;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
export interface RelationDraftConventionDecision {
|
|
1175
|
+
ruleId: string;
|
|
1176
|
+
slotId: QueryAssignmentId;
|
|
1177
|
+
candidateId?: RelationDraftCandidateId | null;
|
|
1178
|
+
sourceBinding: ValueBindingId;
|
|
1179
|
+
source?: FieldPath | null;
|
|
1180
|
+
target: FieldPath;
|
|
1181
|
+
}
|
|
1182
|
+
|
|
1183
|
+
export interface RelationOutputDefinition {
|
|
1184
|
+
node: QueryNodeId;
|
|
1185
|
+
shape: QualifiedShapeId;
|
|
1186
|
+
mode: RelationOutputMode;
|
|
1187
|
+
key?: Expr | null;
|
|
153
1188
|
}
|
|
154
1189
|
|
|
155
|
-
export type
|
|
1190
|
+
export type QueryId = string;
|
|
156
1191
|
|
|
157
|
-
export
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
1192
|
+
export type QueryName = string;
|
|
1193
|
+
|
|
1194
|
+
export type QueryResultDefinition = {
|
|
1195
|
+
readonly $result: 'rows';
|
|
1196
|
+
} & RowsQueryResultDefinition | {
|
|
1197
|
+
readonly $result: 'aggregation';
|
|
1198
|
+
} & AggregationQueryResultDefinition;
|
|
1199
|
+
|
|
1200
|
+
export interface RowsQueryResultDefinition {
|
|
1201
|
+
id: QueryResultId;
|
|
1202
|
+
input: QueryNodeId;
|
|
1203
|
+
}
|
|
1204
|
+
|
|
1205
|
+
export interface AggregationQueryResultDefinition {
|
|
1206
|
+
id: QueryResultId;
|
|
1207
|
+
input: QueryNodeId;
|
|
1208
|
+
}
|
|
1209
|
+
|
|
1210
|
+
export interface RelationshipDefinition {
|
|
1211
|
+
id: RelationshipId;
|
|
1212
|
+
sourceShape: QualifiedShapeId;
|
|
1213
|
+
sourceReference: FieldPath;
|
|
1214
|
+
targetShape: QualifiedShapeId;
|
|
1215
|
+
targetKey: RelationshipTargetKey;
|
|
1216
|
+
sourceReferenceUniqueness: SourceReferenceUniqueness;
|
|
1217
|
+
}
|
|
161
1218
|
|
|
162
|
-
export
|
|
163
|
-
|
|
164
|
-
|
|
1219
|
+
export interface RelationQueryLogicalPlan {
|
|
1220
|
+
nodes: RelationQueryLogicalPlanNode[];
|
|
1221
|
+
retainedNodes: QueryNodeId[];
|
|
1222
|
+
evaluationOrder: QueryNodeId[];
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1225
|
+
export interface RelationQueryExplainRequirementGraph {
|
|
1226
|
+
inputs: RelationQueryExplainRequirementInput[];
|
|
1227
|
+
outputs: RelationQueryOutputReference[];
|
|
1228
|
+
edges: RelationQueryExplainRequirementEdge[];
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
export interface RelationQueryNativeResultBranch {
|
|
1232
|
+
id: RelationQueryNativeResultBranchId;
|
|
1233
|
+
kind: RelationQueryNativeResultKind;
|
|
1234
|
+
node: QueryNodeId;
|
|
1235
|
+
binding: ValueBindingId;
|
|
1236
|
+
shape: QualifiedShapeId;
|
|
1237
|
+
relation?: RelationId | null;
|
|
1238
|
+
queryResult?: QueryResultId | null;
|
|
1239
|
+
outputs: RelationQueryOutputReference[];
|
|
1240
|
+
fields: RelationQueryFieldReference[];
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
export interface DocumentDiagnosticEvidence {
|
|
1244
|
+
stage?: string | null;
|
|
1245
|
+
subject?: string | null;
|
|
1246
|
+
relatedLocations: string[];
|
|
1247
|
+
sourceReferences: string[];
|
|
1248
|
+
resolutionOptions: string[];
|
|
1249
|
+
expected?: string | null;
|
|
1250
|
+
observed?: string | null;
|
|
1251
|
+
}
|
|
1252
|
+
|
|
1253
|
+
export type RelationQueryPhysicalPlanningStatus = 'Planned' | 'Unavailable' | 'Invalid';
|
|
1254
|
+
|
|
1255
|
+
export const relationQueryPhysicalPlanningStatuses = {
|
|
1256
|
+
planned: 'Planned',
|
|
1257
|
+
unavailable: 'Unavailable',
|
|
1258
|
+
invalid: 'Invalid',
|
|
1259
|
+
} as const satisfies Record<string, RelationQueryPhysicalPlanningStatus>;
|
|
1260
|
+
|
|
1261
|
+
export const relationQueryPhysicalPlanningStatusLabels: Record<RelationQueryPhysicalPlanningStatus, string> = {
|
|
1262
|
+
Planned: 'Planned',
|
|
1263
|
+
Unavailable: 'Unavailable',
|
|
1264
|
+
Invalid: 'Invalid',
|
|
165
1265
|
};
|
|
166
1266
|
|
|
167
|
-
export type
|
|
1267
|
+
export type RelationQueryNativeCompilationStatus = 'Exact' | 'Unsupported' | 'Invalid';
|
|
168
1268
|
|
|
169
|
-
export const
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
} as const satisfies Record<string, JoinKind>;
|
|
1269
|
+
export const relationQueryNativeCompilationStatuses = {
|
|
1270
|
+
exact: 'Exact',
|
|
1271
|
+
unsupported: 'Unsupported',
|
|
1272
|
+
invalid: 'Invalid',
|
|
1273
|
+
} as const satisfies Record<string, RelationQueryNativeCompilationStatus>;
|
|
175
1274
|
|
|
176
|
-
export const
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
3: 'Full',
|
|
1275
|
+
export const relationQueryNativeCompilationStatusLabels: Record<RelationQueryNativeCompilationStatus, string> = {
|
|
1276
|
+
Exact: 'Exact',
|
|
1277
|
+
Unsupported: 'Unsupported',
|
|
1278
|
+
Invalid: 'Invalid',
|
|
181
1279
|
};
|
|
182
1280
|
|
|
183
|
-
export interface
|
|
184
|
-
|
|
1281
|
+
export interface RelationQueryNativeArtifactReference {
|
|
1282
|
+
branch: RelationQueryNativeResultBranchId;
|
|
1283
|
+
artifactSchemaVersion?: string | null;
|
|
1284
|
+
fingerprint: RelationQueryNativeArtifactFingerprintReference;
|
|
1285
|
+
provenance: RelationQueryNativeCompilationProvenance;
|
|
1286
|
+
}
|
|
1287
|
+
|
|
1288
|
+
export interface RelationQueryNativeCompilationDiagnostic {
|
|
1289
|
+
code: string;
|
|
1290
|
+
severity: DiagnosticSeverity;
|
|
1291
|
+
message: string;
|
|
1292
|
+
branch?: RelationQueryNativeResultBranchId | null;
|
|
1293
|
+
node?: QueryNodeId | null;
|
|
1294
|
+
input?: RelationQueryInputId | null;
|
|
1295
|
+
requirement?: RelationQueryRealizationRequirementId | null;
|
|
1296
|
+
capabilityEvidence?: RelationQueryTargetCapabilityEvidenceId | null;
|
|
1297
|
+
operatingBoundary?: RelationQueryOperatingBoundaryId | null;
|
|
1298
|
+
override?: RelationQueryRealizationOverrideId | null;
|
|
1299
|
+
semanticSite?: string | null;
|
|
1300
|
+
contextEvidence?: RelationQueryContextEvidenceId | null;
|
|
1301
|
+
field?: FieldPath | null;
|
|
1302
|
+
placementBinding?: RelationQuerySourcePlacementBindingId | null;
|
|
1303
|
+
bindingSetting?: string | null;
|
|
1304
|
+
resolution?: string | null;
|
|
1305
|
+
configurationOrigin?: EffectiveConfigurationOrigin | null;
|
|
1306
|
+
configurationAuthority?: string | null;
|
|
1307
|
+
adapterDecisionCode?: RelationQueryAdapterDecisionCode | null;
|
|
1308
|
+
}
|
|
1309
|
+
|
|
1310
|
+
export interface RelationQueryEvaluationFingerprint {
|
|
1311
|
+
algorithm: string;
|
|
1312
|
+
canonicalization: string;
|
|
1313
|
+
value: string;
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1316
|
+
export type RelationQueryExecutionStatus = 'Succeeded' | 'Incomplete' | 'Failed';
|
|
1317
|
+
|
|
1318
|
+
export const relationQueryExecutionStatuses = {
|
|
1319
|
+
succeeded: 'Succeeded',
|
|
1320
|
+
incomplete: 'Incomplete',
|
|
1321
|
+
failed: 'Failed',
|
|
1322
|
+
} as const satisfies Record<string, RelationQueryExecutionStatus>;
|
|
1323
|
+
|
|
1324
|
+
export const relationQueryExecutionStatusLabels: Record<RelationQueryExecutionStatus, string> = {
|
|
1325
|
+
Succeeded: 'Succeeded',
|
|
1326
|
+
Incomplete: 'Incomplete',
|
|
1327
|
+
Failed: 'Failed',
|
|
1328
|
+
};
|
|
1329
|
+
|
|
1330
|
+
export interface RelationQueryExplainResultSummary {
|
|
1331
|
+
branch: RelationQueryNativeResultBranchId;
|
|
1332
|
+
kind: RelationQueryExecutionResultKind;
|
|
1333
|
+
shape: QualifiedShapeId;
|
|
1334
|
+
state: RelationQueryExecutionOutputState;
|
|
1335
|
+
rowCount: number;
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1338
|
+
export interface RelationQueryExplainRequirementGapSummary {
|
|
1339
|
+
cause: RelationRequirementGapCause;
|
|
1340
|
+
input: RelationQueryInputId;
|
|
1341
|
+
affectedOutputs: RelationQueryOutputId[];
|
|
1342
|
+
occurrenceCount: number;
|
|
1343
|
+
suggestedResolutions: RelationRequirementGapResolutionKind[];
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1346
|
+
export interface RelationQueryEvaluationObservationFingerprint {
|
|
1347
|
+
algorithm: string;
|
|
1348
|
+
canonicalization: string;
|
|
1349
|
+
value: string;
|
|
1350
|
+
}
|
|
1351
|
+
|
|
1352
|
+
export interface FieldPathSegment {
|
|
1353
|
+
kind: SegmentKind;
|
|
1354
|
+
segment?: string | null;
|
|
1355
|
+
}
|
|
1356
|
+
|
|
1357
|
+
export type RelationQueryPhysicalLoweringRuleId = string;
|
|
1358
|
+
|
|
1359
|
+
export interface RelationQueryPhysicalCapabilityEvidenceReference {
|
|
1360
|
+
source: RelationQuerySourceInstanceId;
|
|
1361
|
+
target: RelationQueryTargetId;
|
|
1362
|
+
profile: RelationQueryTargetProfileId;
|
|
1363
|
+
evidence: RelationQueryTargetCapabilityEvidenceId;
|
|
1364
|
+
}
|
|
1365
|
+
|
|
1366
|
+
export type RelationQueryPhysicalPlanningDecisionId = string;
|
|
1367
|
+
|
|
1368
|
+
export interface RelationQueryAdapterBindingFingerprint {
|
|
1369
|
+
algorithm: string;
|
|
1370
|
+
canonicalization: string;
|
|
1371
|
+
value: string;
|
|
1372
|
+
}
|
|
1373
|
+
|
|
1374
|
+
export type RelationQueryBoundAssessmentStatus = 'Available' | 'Unavailable' | 'Invalid' | 'Blocked';
|
|
1375
|
+
|
|
1376
|
+
export const relationQueryBoundAssessmentStatuses = {
|
|
1377
|
+
available: 'Available',
|
|
1378
|
+
unavailable: 'Unavailable',
|
|
1379
|
+
invalid: 'Invalid',
|
|
1380
|
+
blocked: 'Blocked',
|
|
1381
|
+
} as const satisfies Record<string, RelationQueryBoundAssessmentStatus>;
|
|
1382
|
+
|
|
1383
|
+
export const relationQueryBoundAssessmentStatusLabels: Record<RelationQueryBoundAssessmentStatus, string> = {
|
|
1384
|
+
Available: 'Available',
|
|
1385
|
+
Unavailable: 'Unavailable',
|
|
1386
|
+
Invalid: 'Invalid',
|
|
1387
|
+
Blocked: 'Blocked',
|
|
1388
|
+
};
|
|
1389
|
+
|
|
1390
|
+
export type RelationQueryLogicalCapabilityKind = 'Source' | 'Filter' | 'RelationshipTraversal' | 'ForwardRelationshipTraversal' | 'InverseRelationshipTraversal' | 'AtMostOneRelationshipTraversal' | 'ManyRelationshipTraversal' | 'RequiredRelationshipTraversal' | 'OptionalRelationshipTraversal' | 'Join' | 'InnerJoin' | 'LeftOuterJoin' | 'RightOuterJoin' | 'FullOuterJoin' | 'TemporalJoin' | 'ExpandCollection' | 'Projection' | 'ProjectionAssignment' | 'DistinctRows' | 'DistinctKeys' | 'Aggregation' | 'AggregateGrouping' | 'AggregateFilter' | 'CountAggregate' | 'SumAggregate' | 'MinimumAggregate' | 'MaximumAggregate' | 'AnyAggregate' | 'AllAggregate' | 'Ordering' | 'AscendingOrdering' | 'DescendingOrdering' | 'NullsFirst' | 'NullsLast' | 'StableTieOrdering' | 'OffsetPaging' | 'KeysetPaging' | 'OnePerRootRelationOutput' | 'ZeroOrOnePerRootRelationOutput' | 'ManyPerRootRelationOutput' | 'SetRelationOutput' | 'RelationOutputIdentity' | 'RelationInvariant' | 'QueryRowsResult' | 'QueryAggregationResult' | 'AlwaysPresentBinding' | 'MayBeAbsentBinding' | 'AverageAggregate';
|
|
1391
|
+
|
|
1392
|
+
export const relationQueryLogicalCapabilityKinds = {
|
|
1393
|
+
source: 'Source',
|
|
1394
|
+
filter: 'Filter',
|
|
1395
|
+
relationshipTraversal: 'RelationshipTraversal',
|
|
1396
|
+
forwardRelationshipTraversal: 'ForwardRelationshipTraversal',
|
|
1397
|
+
inverseRelationshipTraversal: 'InverseRelationshipTraversal',
|
|
1398
|
+
atMostOneRelationshipTraversal: 'AtMostOneRelationshipTraversal',
|
|
1399
|
+
manyRelationshipTraversal: 'ManyRelationshipTraversal',
|
|
1400
|
+
requiredRelationshipTraversal: 'RequiredRelationshipTraversal',
|
|
1401
|
+
optionalRelationshipTraversal: 'OptionalRelationshipTraversal',
|
|
1402
|
+
join: 'Join',
|
|
1403
|
+
innerJoin: 'InnerJoin',
|
|
1404
|
+
leftOuterJoin: 'LeftOuterJoin',
|
|
1405
|
+
rightOuterJoin: 'RightOuterJoin',
|
|
1406
|
+
fullOuterJoin: 'FullOuterJoin',
|
|
1407
|
+
temporalJoin: 'TemporalJoin',
|
|
1408
|
+
expandCollection: 'ExpandCollection',
|
|
1409
|
+
projection: 'Projection',
|
|
1410
|
+
projectionAssignment: 'ProjectionAssignment',
|
|
1411
|
+
distinctRows: 'DistinctRows',
|
|
1412
|
+
distinctKeys: 'DistinctKeys',
|
|
1413
|
+
aggregation: 'Aggregation',
|
|
1414
|
+
aggregateGrouping: 'AggregateGrouping',
|
|
1415
|
+
aggregateFilter: 'AggregateFilter',
|
|
1416
|
+
countAggregate: 'CountAggregate',
|
|
1417
|
+
sumAggregate: 'SumAggregate',
|
|
1418
|
+
minimumAggregate: 'MinimumAggregate',
|
|
1419
|
+
maximumAggregate: 'MaximumAggregate',
|
|
1420
|
+
anyAggregate: 'AnyAggregate',
|
|
1421
|
+
allAggregate: 'AllAggregate',
|
|
1422
|
+
ordering: 'Ordering',
|
|
1423
|
+
ascendingOrdering: 'AscendingOrdering',
|
|
1424
|
+
descendingOrdering: 'DescendingOrdering',
|
|
1425
|
+
nullsFirst: 'NullsFirst',
|
|
1426
|
+
nullsLast: 'NullsLast',
|
|
1427
|
+
stableTieOrdering: 'StableTieOrdering',
|
|
1428
|
+
offsetPaging: 'OffsetPaging',
|
|
1429
|
+
keysetPaging: 'KeysetPaging',
|
|
1430
|
+
onePerRootRelationOutput: 'OnePerRootRelationOutput',
|
|
1431
|
+
zeroOrOnePerRootRelationOutput: 'ZeroOrOnePerRootRelationOutput',
|
|
1432
|
+
manyPerRootRelationOutput: 'ManyPerRootRelationOutput',
|
|
1433
|
+
setRelationOutput: 'SetRelationOutput',
|
|
1434
|
+
relationOutputIdentity: 'RelationOutputIdentity',
|
|
1435
|
+
relationInvariant: 'RelationInvariant',
|
|
1436
|
+
queryRowsResult: 'QueryRowsResult',
|
|
1437
|
+
queryAggregationResult: 'QueryAggregationResult',
|
|
1438
|
+
alwaysPresentBinding: 'AlwaysPresentBinding',
|
|
1439
|
+
mayBeAbsentBinding: 'MayBeAbsentBinding',
|
|
1440
|
+
averageAggregate: 'AverageAggregate',
|
|
1441
|
+
} as const satisfies Record<string, RelationQueryLogicalCapabilityKind>;
|
|
1442
|
+
|
|
1443
|
+
export const relationQueryLogicalCapabilityKindLabels: Record<RelationQueryLogicalCapabilityKind, string> = {
|
|
1444
|
+
Source: 'Source',
|
|
1445
|
+
Filter: 'Filter',
|
|
1446
|
+
RelationshipTraversal: 'RelationshipTraversal',
|
|
1447
|
+
ForwardRelationshipTraversal: 'ForwardRelationshipTraversal',
|
|
1448
|
+
InverseRelationshipTraversal: 'InverseRelationshipTraversal',
|
|
1449
|
+
AtMostOneRelationshipTraversal: 'AtMostOneRelationshipTraversal',
|
|
1450
|
+
ManyRelationshipTraversal: 'ManyRelationshipTraversal',
|
|
1451
|
+
RequiredRelationshipTraversal: 'RequiredRelationshipTraversal',
|
|
1452
|
+
OptionalRelationshipTraversal: 'OptionalRelationshipTraversal',
|
|
1453
|
+
Join: 'Join',
|
|
1454
|
+
InnerJoin: 'InnerJoin',
|
|
1455
|
+
LeftOuterJoin: 'LeftOuterJoin',
|
|
1456
|
+
RightOuterJoin: 'RightOuterJoin',
|
|
1457
|
+
FullOuterJoin: 'FullOuterJoin',
|
|
1458
|
+
TemporalJoin: 'TemporalJoin',
|
|
1459
|
+
ExpandCollection: 'ExpandCollection',
|
|
1460
|
+
Projection: 'Projection',
|
|
1461
|
+
ProjectionAssignment: 'ProjectionAssignment',
|
|
1462
|
+
DistinctRows: 'DistinctRows',
|
|
1463
|
+
DistinctKeys: 'DistinctKeys',
|
|
1464
|
+
Aggregation: 'Aggregation',
|
|
1465
|
+
AggregateGrouping: 'AggregateGrouping',
|
|
1466
|
+
AggregateFilter: 'AggregateFilter',
|
|
1467
|
+
CountAggregate: 'CountAggregate',
|
|
1468
|
+
SumAggregate: 'SumAggregate',
|
|
1469
|
+
MinimumAggregate: 'MinimumAggregate',
|
|
1470
|
+
MaximumAggregate: 'MaximumAggregate',
|
|
1471
|
+
AnyAggregate: 'AnyAggregate',
|
|
1472
|
+
AllAggregate: 'AllAggregate',
|
|
1473
|
+
Ordering: 'Ordering',
|
|
1474
|
+
AscendingOrdering: 'AscendingOrdering',
|
|
1475
|
+
DescendingOrdering: 'DescendingOrdering',
|
|
1476
|
+
NullsFirst: 'NullsFirst',
|
|
1477
|
+
NullsLast: 'NullsLast',
|
|
1478
|
+
StableTieOrdering: 'StableTieOrdering',
|
|
1479
|
+
OffsetPaging: 'OffsetPaging',
|
|
1480
|
+
KeysetPaging: 'KeysetPaging',
|
|
1481
|
+
OnePerRootRelationOutput: 'OnePerRootRelationOutput',
|
|
1482
|
+
ZeroOrOnePerRootRelationOutput: 'ZeroOrOnePerRootRelationOutput',
|
|
1483
|
+
ManyPerRootRelationOutput: 'ManyPerRootRelationOutput',
|
|
1484
|
+
SetRelationOutput: 'SetRelationOutput',
|
|
1485
|
+
RelationOutputIdentity: 'RelationOutputIdentity',
|
|
1486
|
+
RelationInvariant: 'RelationInvariant',
|
|
1487
|
+
QueryRowsResult: 'QueryRowsResult',
|
|
1488
|
+
QueryAggregationResult: 'QueryAggregationResult',
|
|
1489
|
+
AlwaysPresentBinding: 'AlwaysPresentBinding',
|
|
1490
|
+
MayBeAbsentBinding: 'MayBeAbsentBinding',
|
|
1491
|
+
AverageAggregate: 'AverageAggregate',
|
|
1492
|
+
};
|
|
1493
|
+
|
|
1494
|
+
export interface ExprCapabilityId {
|
|
1495
|
+
value: string;
|
|
185
1496
|
}
|
|
186
1497
|
|
|
187
|
-
export type
|
|
1498
|
+
export type ExprCapabilityRequirementKind = 'Operation' | 'Ambient';
|
|
1499
|
+
|
|
1500
|
+
export const exprCapabilityRequirementKinds = {
|
|
1501
|
+
operation: 'Operation',
|
|
1502
|
+
ambient: 'Ambient',
|
|
1503
|
+
} as const satisfies Record<string, ExprCapabilityRequirementKind>;
|
|
1504
|
+
|
|
1505
|
+
export const exprCapabilityRequirementKindLabels: Record<ExprCapabilityRequirementKind, string> = {
|
|
1506
|
+
Operation: 'Operation',
|
|
1507
|
+
Ambient: 'Ambient',
|
|
1508
|
+
};
|
|
1509
|
+
|
|
1510
|
+
export type RelationQueryTemporalExecutionCapability = 'PointInInterval' | 'IntervalOverlap' | 'InclusiveBoundary' | 'ExclusiveBoundary' | 'UnboundedBoundary' | 'NullAsUnbounded' | 'DateDomain' | 'DateTimeDomain' | 'InstantDomain' | 'PreserveAllMatches' | 'InnerJoin' | 'LeftOuterJoin' | 'RightOuterJoin' | 'FullOuterJoin' | 'ValidateIntervals' | 'InconclusiveEvidence';
|
|
1511
|
+
|
|
1512
|
+
export const relationQueryTemporalExecutionCapabilities = {
|
|
1513
|
+
pointInInterval: 'PointInInterval',
|
|
1514
|
+
intervalOverlap: 'IntervalOverlap',
|
|
1515
|
+
inclusiveBoundary: 'InclusiveBoundary',
|
|
1516
|
+
exclusiveBoundary: 'ExclusiveBoundary',
|
|
1517
|
+
unboundedBoundary: 'UnboundedBoundary',
|
|
1518
|
+
nullAsUnbounded: 'NullAsUnbounded',
|
|
1519
|
+
dateDomain: 'DateDomain',
|
|
1520
|
+
dateTimeDomain: 'DateTimeDomain',
|
|
1521
|
+
instantDomain: 'InstantDomain',
|
|
1522
|
+
preserveAllMatches: 'PreserveAllMatches',
|
|
1523
|
+
innerJoin: 'InnerJoin',
|
|
1524
|
+
leftOuterJoin: 'LeftOuterJoin',
|
|
1525
|
+
rightOuterJoin: 'RightOuterJoin',
|
|
1526
|
+
fullOuterJoin: 'FullOuterJoin',
|
|
1527
|
+
validateIntervals: 'ValidateIntervals',
|
|
1528
|
+
inconclusiveEvidence: 'InconclusiveEvidence',
|
|
1529
|
+
} as const satisfies Record<string, RelationQueryTemporalExecutionCapability>;
|
|
1530
|
+
|
|
1531
|
+
export const relationQueryTemporalExecutionCapabilityLabels: Record<RelationQueryTemporalExecutionCapability, string> = {
|
|
1532
|
+
PointInInterval: 'PointInInterval',
|
|
1533
|
+
IntervalOverlap: 'IntervalOverlap',
|
|
1534
|
+
InclusiveBoundary: 'InclusiveBoundary',
|
|
1535
|
+
ExclusiveBoundary: 'ExclusiveBoundary',
|
|
1536
|
+
UnboundedBoundary: 'UnboundedBoundary',
|
|
1537
|
+
NullAsUnbounded: 'NullAsUnbounded',
|
|
1538
|
+
DateDomain: 'DateDomain',
|
|
1539
|
+
DateTimeDomain: 'DateTimeDomain',
|
|
1540
|
+
InstantDomain: 'InstantDomain',
|
|
1541
|
+
PreserveAllMatches: 'PreserveAllMatches',
|
|
1542
|
+
InnerJoin: 'InnerJoin',
|
|
1543
|
+
LeftOuterJoin: 'LeftOuterJoin',
|
|
1544
|
+
RightOuterJoin: 'RightOuterJoin',
|
|
1545
|
+
FullOuterJoin: 'FullOuterJoin',
|
|
1546
|
+
ValidateIntervals: 'ValidateIntervals',
|
|
1547
|
+
InconclusiveEvidence: 'InconclusiveEvidence',
|
|
1548
|
+
};
|
|
1549
|
+
|
|
1550
|
+
export type RelationQueryStructuralCapabilityRole = 'BindingRead' | 'CurrentItemRead' | 'OccurrenceEvidenceReconstruction' | 'ProjectionTarget' | 'GroupingTarget' | 'AggregateTarget' | 'OutputSelection' | 'CompleteValue';
|
|
1551
|
+
|
|
1552
|
+
export const relationQueryStructuralCapabilityRoles = {
|
|
1553
|
+
bindingRead: 'BindingRead',
|
|
1554
|
+
currentItemRead: 'CurrentItemRead',
|
|
1555
|
+
occurrenceEvidenceReconstruction: 'OccurrenceEvidenceReconstruction',
|
|
1556
|
+
projectionTarget: 'ProjectionTarget',
|
|
1557
|
+
groupingTarget: 'GroupingTarget',
|
|
1558
|
+
aggregateTarget: 'AggregateTarget',
|
|
1559
|
+
outputSelection: 'OutputSelection',
|
|
1560
|
+
completeValue: 'CompleteValue',
|
|
1561
|
+
} as const satisfies Record<string, RelationQueryStructuralCapabilityRole>;
|
|
1562
|
+
|
|
1563
|
+
export const relationQueryStructuralCapabilityRoleLabels: Record<RelationQueryStructuralCapabilityRole, string> = {
|
|
1564
|
+
BindingRead: 'BindingRead',
|
|
1565
|
+
CurrentItemRead: 'CurrentItemRead',
|
|
1566
|
+
OccurrenceEvidenceReconstruction: 'OccurrenceEvidenceReconstruction',
|
|
1567
|
+
ProjectionTarget: 'ProjectionTarget',
|
|
1568
|
+
GroupingTarget: 'GroupingTarget',
|
|
1569
|
+
AggregateTarget: 'AggregateTarget',
|
|
1570
|
+
OutputSelection: 'OutputSelection',
|
|
1571
|
+
CompleteValue: 'CompleteValue',
|
|
1572
|
+
};
|
|
1573
|
+
|
|
1574
|
+
export type RelationQueryStructuralPathKind = 'RootValue' | 'TopLevelField' | 'NestedField' | 'CollectionElement' | 'NestedCollectionElement';
|
|
1575
|
+
|
|
1576
|
+
export const relationQueryStructuralPathKinds = {
|
|
1577
|
+
rootValue: 'RootValue',
|
|
1578
|
+
topLevelField: 'TopLevelField',
|
|
1579
|
+
nestedField: 'NestedField',
|
|
1580
|
+
collectionElement: 'CollectionElement',
|
|
1581
|
+
nestedCollectionElement: 'NestedCollectionElement',
|
|
1582
|
+
} as const satisfies Record<string, RelationQueryStructuralPathKind>;
|
|
1583
|
+
|
|
1584
|
+
export const relationQueryStructuralPathKindLabels: Record<RelationQueryStructuralPathKind, string> = {
|
|
1585
|
+
RootValue: 'RootValue',
|
|
1586
|
+
TopLevelField: 'TopLevelField',
|
|
1587
|
+
NestedField: 'NestedField',
|
|
1588
|
+
CollectionElement: 'CollectionElement',
|
|
1589
|
+
NestedCollectionElement: 'NestedCollectionElement',
|
|
1590
|
+
};
|
|
1591
|
+
|
|
1592
|
+
export type RelationQueryPrimitiveCapabilityKind = 'KeyExtraction' | 'BatchedKeyLookup' | 'PredicateRead' | 'CompleteSetEnumeration' | 'LocalCorrelation' | 'HashJoin' | 'StableSort' | 'LocalAggregation' | 'FieldProjection' | 'NullAwareComparison' | 'TemporalComparison' | 'IntervalPredicate' | 'ObservationIdentityRead' | 'RelationshipReferenceRead' | 'ParameterBinding' | 'AmbientCapabilityBinding' | 'OutputObjectConstruction' | 'ProvenanceTracking' | 'BatchedPredicateLookup' | 'InvariantEvaluation' | 'OffsetPaging' | 'KeysetSeek';
|
|
1593
|
+
|
|
1594
|
+
export const relationQueryPrimitiveCapabilityKinds = {
|
|
1595
|
+
keyExtraction: 'KeyExtraction',
|
|
1596
|
+
batchedKeyLookup: 'BatchedKeyLookup',
|
|
1597
|
+
predicateRead: 'PredicateRead',
|
|
1598
|
+
completeSetEnumeration: 'CompleteSetEnumeration',
|
|
1599
|
+
localCorrelation: 'LocalCorrelation',
|
|
1600
|
+
hashJoin: 'HashJoin',
|
|
1601
|
+
stableSort: 'StableSort',
|
|
1602
|
+
localAggregation: 'LocalAggregation',
|
|
1603
|
+
fieldProjection: 'FieldProjection',
|
|
1604
|
+
nullAwareComparison: 'NullAwareComparison',
|
|
1605
|
+
temporalComparison: 'TemporalComparison',
|
|
1606
|
+
intervalPredicate: 'IntervalPredicate',
|
|
1607
|
+
observationIdentityRead: 'ObservationIdentityRead',
|
|
1608
|
+
relationshipReferenceRead: 'RelationshipReferenceRead',
|
|
1609
|
+
parameterBinding: 'ParameterBinding',
|
|
1610
|
+
ambientCapabilityBinding: 'AmbientCapabilityBinding',
|
|
1611
|
+
outputObjectConstruction: 'OutputObjectConstruction',
|
|
1612
|
+
provenanceTracking: 'ProvenanceTracking',
|
|
1613
|
+
batchedPredicateLookup: 'BatchedPredicateLookup',
|
|
1614
|
+
invariantEvaluation: 'InvariantEvaluation',
|
|
1615
|
+
offsetPaging: 'OffsetPaging',
|
|
1616
|
+
keysetSeek: 'KeysetSeek',
|
|
1617
|
+
} as const satisfies Record<string, RelationQueryPrimitiveCapabilityKind>;
|
|
1618
|
+
|
|
1619
|
+
export const relationQueryPrimitiveCapabilityKindLabels: Record<RelationQueryPrimitiveCapabilityKind, string> = {
|
|
1620
|
+
KeyExtraction: 'KeyExtraction',
|
|
1621
|
+
BatchedKeyLookup: 'BatchedKeyLookup',
|
|
1622
|
+
PredicateRead: 'PredicateRead',
|
|
1623
|
+
CompleteSetEnumeration: 'CompleteSetEnumeration',
|
|
1624
|
+
LocalCorrelation: 'LocalCorrelation',
|
|
1625
|
+
HashJoin: 'HashJoin',
|
|
1626
|
+
StableSort: 'StableSort',
|
|
1627
|
+
LocalAggregation: 'LocalAggregation',
|
|
1628
|
+
FieldProjection: 'FieldProjection',
|
|
1629
|
+
NullAwareComparison: 'NullAwareComparison',
|
|
1630
|
+
TemporalComparison: 'TemporalComparison',
|
|
1631
|
+
IntervalPredicate: 'IntervalPredicate',
|
|
1632
|
+
ObservationIdentityRead: 'ObservationIdentityRead',
|
|
1633
|
+
RelationshipReferenceRead: 'RelationshipReferenceRead',
|
|
1634
|
+
ParameterBinding: 'ParameterBinding',
|
|
1635
|
+
AmbientCapabilityBinding: 'AmbientCapabilityBinding',
|
|
1636
|
+
OutputObjectConstruction: 'OutputObjectConstruction',
|
|
1637
|
+
ProvenanceTracking: 'ProvenanceTracking',
|
|
1638
|
+
BatchedPredicateLookup: 'BatchedPredicateLookup',
|
|
1639
|
+
InvariantEvaluation: 'InvariantEvaluation',
|
|
1640
|
+
OffsetPaging: 'OffsetPaging',
|
|
1641
|
+
KeysetSeek: 'KeysetSeek',
|
|
1642
|
+
};
|
|
1643
|
+
|
|
1644
|
+
export interface RelationQueryRealizationOutputReference {
|
|
1645
|
+
id: RelationQueryOutputId;
|
|
1646
|
+
kind: RelationQueryOutputReferenceKind;
|
|
1647
|
+
node: QueryNodeId;
|
|
1648
|
+
shape: QualifiedShapeId;
|
|
1649
|
+
relation?: RelationId | null;
|
|
1650
|
+
queryResult?: QueryResultId | null;
|
|
1651
|
+
field?: RelationQueryFieldReference | null;
|
|
1652
|
+
}
|
|
1653
|
+
|
|
1654
|
+
export type RelationQueryRequirementEffect = 'Value' | 'Identity' | 'Membership' | 'Correlation' | 'Acquisition' | 'Cardinality' | 'Ordering' | 'Grouping' | 'Aggregation' | 'Pagination' | 'Validation' | 'Evaluation';
|
|
1655
|
+
|
|
1656
|
+
export const relationQueryRequirementEffects = {
|
|
1657
|
+
value: 'Value',
|
|
1658
|
+
identity: 'Identity',
|
|
1659
|
+
membership: 'Membership',
|
|
1660
|
+
correlation: 'Correlation',
|
|
1661
|
+
acquisition: 'Acquisition',
|
|
1662
|
+
cardinality: 'Cardinality',
|
|
1663
|
+
ordering: 'Ordering',
|
|
1664
|
+
grouping: 'Grouping',
|
|
1665
|
+
aggregation: 'Aggregation',
|
|
1666
|
+
pagination: 'Pagination',
|
|
1667
|
+
validation: 'Validation',
|
|
1668
|
+
evaluation: 'Evaluation',
|
|
1669
|
+
} as const satisfies Record<string, RelationQueryRequirementEffect>;
|
|
1670
|
+
|
|
1671
|
+
export const relationQueryRequirementEffectLabels: Record<RelationQueryRequirementEffect, string> = {
|
|
1672
|
+
Value: 'Value',
|
|
1673
|
+
Identity: 'Identity',
|
|
1674
|
+
Membership: 'Membership',
|
|
1675
|
+
Correlation: 'Correlation',
|
|
1676
|
+
Acquisition: 'Acquisition',
|
|
1677
|
+
Cardinality: 'Cardinality',
|
|
1678
|
+
Ordering: 'Ordering',
|
|
1679
|
+
Grouping: 'Grouping',
|
|
1680
|
+
Aggregation: 'Aggregation',
|
|
1681
|
+
Pagination: 'Pagination',
|
|
1682
|
+
Validation: 'Validation',
|
|
1683
|
+
Evaluation: 'Evaluation',
|
|
1684
|
+
};
|
|
1685
|
+
|
|
1686
|
+
export type QueryInputRequirement = 'Optional' | 'Required';
|
|
1687
|
+
|
|
1688
|
+
export const queryInputRequirements = {
|
|
1689
|
+
optional: 'Optional',
|
|
1690
|
+
required: 'Required',
|
|
1691
|
+
} as const satisfies Record<string, QueryInputRequirement>;
|
|
1692
|
+
|
|
1693
|
+
export const queryInputRequirementLabels: Record<QueryInputRequirement, string> = {
|
|
1694
|
+
Optional: 'Optional',
|
|
1695
|
+
Required: 'Required',
|
|
1696
|
+
};
|
|
1697
|
+
|
|
1698
|
+
export interface RelationQueryRealizationTrace {
|
|
1699
|
+
steps: RelationQueryRealizationTraceStep[];
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
export type RelationQueryRealizationStaticFactKind = 'FieldPathDepth' | 'ExpressionDepth' | 'PageSize';
|
|
1703
|
+
|
|
1704
|
+
export const relationQueryRealizationStaticFactKinds = {
|
|
1705
|
+
fieldPathDepth: 'FieldPathDepth',
|
|
1706
|
+
expressionDepth: 'ExpressionDepth',
|
|
1707
|
+
pageSize: 'PageSize',
|
|
1708
|
+
} as const satisfies Record<string, RelationQueryRealizationStaticFactKind>;
|
|
1709
|
+
|
|
1710
|
+
export const relationQueryRealizationStaticFactKindLabels: Record<RelationQueryRealizationStaticFactKind, string> = {
|
|
1711
|
+
FieldPathDepth: 'FieldPathDepth',
|
|
1712
|
+
ExpressionDepth: 'ExpressionDepth',
|
|
1713
|
+
PageSize: 'PageSize',
|
|
1714
|
+
};
|
|
1715
|
+
|
|
1716
|
+
export type RelationQueryOperatingBoundaryValidationKind = 'StaticPlanFact' | 'TargetEnforced';
|
|
1717
|
+
|
|
1718
|
+
export const relationQueryOperatingBoundaryValidationKinds = {
|
|
1719
|
+
staticPlanFact: 'StaticPlanFact',
|
|
1720
|
+
targetEnforced: 'TargetEnforced',
|
|
1721
|
+
} as const satisfies Record<string, RelationQueryOperatingBoundaryValidationKind>;
|
|
1722
|
+
|
|
1723
|
+
export const relationQueryOperatingBoundaryValidationKindLabels: Record<RelationQueryOperatingBoundaryValidationKind, string> = {
|
|
1724
|
+
StaticPlanFact: 'StaticPlanFact',
|
|
1725
|
+
TargetEnforced: 'TargetEnforced',
|
|
1726
|
+
};
|
|
1727
|
+
|
|
1728
|
+
export type LogicalQueryNode = {
|
|
1729
|
+
readonly $node: 'source';
|
|
1730
|
+
} & SourceQueryNode | {
|
|
1731
|
+
readonly $node: 'filter';
|
|
1732
|
+
} & FilterQueryNode | {
|
|
1733
|
+
readonly $node: 'traverseRelationship';
|
|
1734
|
+
} & TraverseRelationshipQueryNode | {
|
|
1735
|
+
readonly $node: 'join';
|
|
1736
|
+
} & JoinQueryNode | {
|
|
1737
|
+
readonly $node: 'temporalJoin';
|
|
1738
|
+
} & TemporalJoinQueryNode | {
|
|
1739
|
+
readonly $node: 'expandCollection';
|
|
1740
|
+
} & ExpandCollectionQueryNode | {
|
|
1741
|
+
readonly $node: 'project';
|
|
1742
|
+
} & ProjectQueryNode | {
|
|
1743
|
+
readonly $node: 'distinct';
|
|
1744
|
+
} & DistinctQueryNode | {
|
|
1745
|
+
readonly $node: 'aggregate';
|
|
1746
|
+
} & AggregateQueryNode | {
|
|
1747
|
+
readonly $node: 'order';
|
|
1748
|
+
} & OrderQueryNode | {
|
|
1749
|
+
readonly $node: 'page';
|
|
1750
|
+
} & PageQueryNode;
|
|
1751
|
+
|
|
1752
|
+
export interface SourceQueryNode {
|
|
1753
|
+
id: QueryNodeId;
|
|
1754
|
+
binding: ValueBindingId;
|
|
1755
|
+
shape: QualifiedShapeId;
|
|
1756
|
+
}
|
|
1757
|
+
|
|
1758
|
+
export interface FilterQueryNode {
|
|
1759
|
+
input: QueryNodeId;
|
|
1760
|
+
predicate: Expr;
|
|
1761
|
+
id: QueryNodeId;
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
export interface TraverseRelationshipQueryNode {
|
|
1765
|
+
id: QueryNodeId;
|
|
1766
|
+
input: QueryNodeId;
|
|
1767
|
+
from: ValueBindingId;
|
|
1768
|
+
relationship: RelationshipId;
|
|
1769
|
+
direction: RelationshipTraversalDirection;
|
|
1770
|
+
result: ValueBindingId;
|
|
1771
|
+
joinKind: JoinKind;
|
|
1772
|
+
requirement: QueryInputRequirement;
|
|
1773
|
+
}
|
|
1774
|
+
|
|
1775
|
+
export interface JoinQueryNode {
|
|
1776
|
+
left: QueryNodeId;
|
|
1777
|
+
right: QueryNodeId;
|
|
1778
|
+
kind: JoinKind;
|
|
1779
|
+
predicate: Expr;
|
|
1780
|
+
id: QueryNodeId;
|
|
1781
|
+
}
|
|
1782
|
+
|
|
1783
|
+
export interface TemporalJoinQueryNode {
|
|
1784
|
+
id: QueryNodeId;
|
|
1785
|
+
left: QueryNodeId;
|
|
1786
|
+
right: QueryNodeId;
|
|
1787
|
+
kind: JoinKind;
|
|
1788
|
+
correlation: Expr;
|
|
1789
|
+
match: TemporalJoinMatch;
|
|
1790
|
+
}
|
|
1791
|
+
|
|
1792
|
+
export interface ExpandCollectionQueryNode {
|
|
1793
|
+
input: QueryNodeId;
|
|
1794
|
+
collection: Expr;
|
|
1795
|
+
itemBinding: ValueBindingId;
|
|
1796
|
+
itemType: TypeRef;
|
|
1797
|
+
id: QueryNodeId;
|
|
1798
|
+
}
|
|
1799
|
+
|
|
1800
|
+
export interface ProjectQueryNode {
|
|
1801
|
+
id: QueryNodeId;
|
|
1802
|
+
input: QueryNodeId;
|
|
1803
|
+
resultBinding: ValueBindingId;
|
|
1804
|
+
resultShape: QualifiedShapeId;
|
|
1805
|
+
assignments: ProjectionAssignment[];
|
|
1806
|
+
}
|
|
1807
|
+
|
|
1808
|
+
export interface DistinctQueryNode {
|
|
1809
|
+
input: QueryNodeId;
|
|
1810
|
+
keys: Expr[];
|
|
1811
|
+
id: QueryNodeId;
|
|
1812
|
+
}
|
|
1813
|
+
|
|
1814
|
+
export interface AggregateQueryNode {
|
|
1815
|
+
input: QueryNodeId;
|
|
1816
|
+
resultBinding: ValueBindingId;
|
|
1817
|
+
resultShape: QualifiedShapeId;
|
|
1818
|
+
groupings: QueryGrouping[];
|
|
1819
|
+
aggregates: QueryAggregateAssignment[];
|
|
1820
|
+
id: QueryNodeId;
|
|
1821
|
+
}
|
|
1822
|
+
|
|
1823
|
+
export interface OrderQueryNode {
|
|
1824
|
+
id: QueryNodeId;
|
|
1825
|
+
input: QueryNodeId;
|
|
1826
|
+
orderings: QueryOrdering[];
|
|
1827
|
+
}
|
|
1828
|
+
|
|
1829
|
+
export interface PageQueryNode {
|
|
1830
|
+
id: QueryNodeId;
|
|
1831
|
+
input: QueryNodeId;
|
|
1832
|
+
page: QueryPageDefinition;
|
|
1833
|
+
}
|
|
1834
|
+
|
|
1835
|
+
export interface QueryParameterDefinition {
|
|
1836
|
+
id: QueryParameterId;
|
|
1837
|
+
type: TypeRef;
|
|
1838
|
+
presence: FieldPresence;
|
|
1839
|
+
defaultKind: QueryParameterDefaultKind;
|
|
1840
|
+
defaultValue?: unknown | null;
|
|
1841
|
+
}
|
|
1842
|
+
|
|
1843
|
+
export interface RelationDraftAssignmentSlot {
|
|
1844
|
+
id: QueryAssignmentId;
|
|
1845
|
+
target: FieldPath;
|
|
1846
|
+
candidates: RelationDraftCandidate[];
|
|
1847
|
+
resolution: RelationDraftAssignmentResolution;
|
|
1848
|
+
}
|
|
1849
|
+
|
|
1850
|
+
export type UnaryOperator = 'Not';
|
|
188
1851
|
|
|
189
1852
|
export const unaryOperators = {
|
|
190
|
-
not:
|
|
1853
|
+
not: 'Not',
|
|
191
1854
|
} as const satisfies Record<string, UnaryOperator>;
|
|
192
1855
|
|
|
193
1856
|
export const unaryOperatorLabels: Record<UnaryOperator, string> = {
|
|
194
|
-
|
|
1857
|
+
Not: 'Not',
|
|
195
1858
|
};
|
|
196
1859
|
|
|
197
|
-
export type BinaryOperator =
|
|
1860
|
+
export type BinaryOperator = 'Eq' | 'Ne' | 'Gt' | 'Ge' | 'Lt' | 'Le' | 'And' | 'Or' | 'Add' | 'Sub' | 'Mul' | 'Div';
|
|
198
1861
|
|
|
199
1862
|
export const binaryOperators = {
|
|
200
|
-
eq:
|
|
201
|
-
ne:
|
|
202
|
-
gt:
|
|
203
|
-
ge:
|
|
204
|
-
lt:
|
|
205
|
-
le:
|
|
206
|
-
and:
|
|
207
|
-
or:
|
|
208
|
-
add:
|
|
209
|
-
sub:
|
|
210
|
-
mul:
|
|
211
|
-
div:
|
|
1863
|
+
eq: 'Eq',
|
|
1864
|
+
ne: 'Ne',
|
|
1865
|
+
gt: 'Gt',
|
|
1866
|
+
ge: 'Ge',
|
|
1867
|
+
lt: 'Lt',
|
|
1868
|
+
le: 'Le',
|
|
1869
|
+
and: 'And',
|
|
1870
|
+
or: 'Or',
|
|
1871
|
+
add: 'Add',
|
|
1872
|
+
sub: 'Sub',
|
|
1873
|
+
mul: 'Mul',
|
|
1874
|
+
div: 'Div',
|
|
212
1875
|
} as const satisfies Record<string, BinaryOperator>;
|
|
213
1876
|
|
|
214
1877
|
export const binaryOperatorLabels: Record<BinaryOperator, string> = {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
1878
|
+
Eq: 'Eq',
|
|
1879
|
+
Ne: 'Ne',
|
|
1880
|
+
Gt: 'Gt',
|
|
1881
|
+
Ge: 'Ge',
|
|
1882
|
+
Lt: 'Lt',
|
|
1883
|
+
Le: 'Le',
|
|
1884
|
+
And: 'And',
|
|
1885
|
+
Or: 'Or',
|
|
1886
|
+
Add: 'Add',
|
|
1887
|
+
Sub: 'Sub',
|
|
1888
|
+
Mul: 'Mul',
|
|
1889
|
+
Div: 'Div',
|
|
227
1890
|
};
|
|
228
1891
|
|
|
229
1892
|
export type TypeRef = {
|
|
@@ -247,328 +1910,881 @@ export type TypeRef = {
|
|
|
247
1910
|
} & JsonTypeRef;
|
|
248
1911
|
|
|
249
1912
|
export interface NamedTypeRef {
|
|
250
|
-
|
|
1913
|
+
typeId: TypeId;
|
|
251
1914
|
}
|
|
252
1915
|
|
|
253
1916
|
export interface OpaqueRuntimeTypeRef {
|
|
254
|
-
|
|
1917
|
+
runtimeType: string;
|
|
1918
|
+
inferenceDiagnostic?: TypeInferenceDiagnostic | null;
|
|
255
1919
|
}
|
|
256
1920
|
|
|
257
1921
|
export interface ScalarTypeRef {
|
|
258
|
-
|
|
259
|
-
|
|
1922
|
+
kind: ScalarTypeKind;
|
|
1923
|
+
format: PrimitiveFormat;
|
|
260
1924
|
}
|
|
261
1925
|
|
|
262
1926
|
export interface EnumTypeRef {
|
|
263
|
-
|
|
264
|
-
|
|
1927
|
+
name: string;
|
|
1928
|
+
members: string[];
|
|
265
1929
|
}
|
|
266
1930
|
|
|
267
1931
|
export interface EntityReferenceTypeRef {
|
|
268
|
-
|
|
1932
|
+
entity: EntityTypeName;
|
|
269
1933
|
}
|
|
270
1934
|
|
|
271
1935
|
export interface ArrayTypeRef {
|
|
272
|
-
|
|
1936
|
+
elementType: TypeRef;
|
|
273
1937
|
}
|
|
274
1938
|
|
|
275
1939
|
export interface ObjectTypeRef {
|
|
276
|
-
|
|
1940
|
+
fields: ObjectFieldTypeDef[];
|
|
277
1941
|
}
|
|
278
1942
|
|
|
279
1943
|
export interface QuantityTypeRef {
|
|
280
|
-
|
|
281
|
-
|
|
1944
|
+
quantity: string;
|
|
1945
|
+
baseKind: ScalarTypeKind;
|
|
282
1946
|
}
|
|
283
1947
|
|
|
284
1948
|
export interface JsonTypeRef {
|
|
285
|
-
|
|
1949
|
+
kind: JsonTypeKind;
|
|
286
1950
|
}
|
|
287
1951
|
|
|
288
|
-
export type AggregateOperator =
|
|
1952
|
+
export type AggregateOperator = 'Count' | 'Sum' | 'Min' | 'Max' | 'Any' | 'All' | 'Average';
|
|
289
1953
|
|
|
290
1954
|
export const aggregateOperators = {
|
|
291
|
-
count:
|
|
292
|
-
sum:
|
|
293
|
-
min:
|
|
294
|
-
max:
|
|
295
|
-
any:
|
|
296
|
-
all:
|
|
1955
|
+
count: 'Count',
|
|
1956
|
+
sum: 'Sum',
|
|
1957
|
+
min: 'Min',
|
|
1958
|
+
max: 'Max',
|
|
1959
|
+
any: 'Any',
|
|
1960
|
+
all: 'All',
|
|
1961
|
+
average: 'Average',
|
|
297
1962
|
} as const satisfies Record<string, AggregateOperator>;
|
|
298
1963
|
|
|
299
1964
|
export const aggregateOperatorLabels: Record<AggregateOperator, string> = {
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
1965
|
+
Count: 'Count',
|
|
1966
|
+
Sum: 'Sum',
|
|
1967
|
+
Min: 'Min',
|
|
1968
|
+
Max: 'Max',
|
|
1969
|
+
Any: 'Any',
|
|
1970
|
+
All: 'All',
|
|
1971
|
+
Average: 'Average',
|
|
1972
|
+
};
|
|
1973
|
+
|
|
1974
|
+
export type EntityId = string;
|
|
1975
|
+
|
|
1976
|
+
export type QueryAssignmentId = string;
|
|
1977
|
+
|
|
1978
|
+
export type RelationDraftCandidateId = string;
|
|
1979
|
+
|
|
1980
|
+
export type QueryResultId = string;
|
|
1981
|
+
|
|
1982
|
+
export type RelationshipId = string;
|
|
1983
|
+
|
|
1984
|
+
export type RelationshipTargetKey = {
|
|
1985
|
+
readonly $targetKey: 'observationIdentity';
|
|
1986
|
+
} & ObservationIdentityRelationshipTargetKey;
|
|
1987
|
+
|
|
1988
|
+
export type ObservationIdentityRelationshipTargetKey = Record<never, never>;
|
|
1989
|
+
|
|
1990
|
+
export type SourceReferenceUniqueness = 'NotGuaranteed' | 'GloballyUnique';
|
|
1991
|
+
|
|
1992
|
+
export const sourceReferenceUniquenesses = {
|
|
1993
|
+
notGuaranteed: 'NotGuaranteed',
|
|
1994
|
+
globallyUnique: 'GloballyUnique',
|
|
1995
|
+
} as const satisfies Record<string, SourceReferenceUniqueness>;
|
|
1996
|
+
|
|
1997
|
+
export const sourceReferenceUniquenessLabels: Record<SourceReferenceUniqueness, string> = {
|
|
1998
|
+
NotGuaranteed: 'NotGuaranteed',
|
|
1999
|
+
GloballyUnique: 'GloballyUnique',
|
|
2000
|
+
};
|
|
2001
|
+
|
|
2002
|
+
export interface RelationQueryLogicalPlanNode {
|
|
2003
|
+
node: QueryNodeId;
|
|
2004
|
+
inputs: RelationQueryLogicalPlanInput[];
|
|
2005
|
+
effectiveInputs: QueryNodeId[];
|
|
2006
|
+
}
|
|
2007
|
+
|
|
2008
|
+
export interface RelationQueryExplainRequirementInput {
|
|
2009
|
+
id: RelationQueryInputId;
|
|
2010
|
+
kind: RelationQueryExplainRequirementInputKind;
|
|
2011
|
+
}
|
|
2012
|
+
|
|
2013
|
+
export interface RelationQueryOutputReference {
|
|
2014
|
+
id: RelationQueryOutputId;
|
|
2015
|
+
kind: RelationQueryOutputReferenceKind;
|
|
2016
|
+
node: QueryNodeId;
|
|
2017
|
+
shape: QualifiedShapeId;
|
|
2018
|
+
relation?: RelationId | null;
|
|
2019
|
+
queryResult?: QueryResultId | null;
|
|
2020
|
+
field?: RelationQueryFieldReference | null;
|
|
2021
|
+
}
|
|
2022
|
+
|
|
2023
|
+
export interface RelationQueryExplainRequirementEdge {
|
|
2024
|
+
input: RelationQueryInputId;
|
|
2025
|
+
output: RelationQueryOutputId;
|
|
2026
|
+
effect: RelationQueryRequirementEffect;
|
|
2027
|
+
requirement: QueryInputRequirement;
|
|
2028
|
+
}
|
|
2029
|
+
|
|
2030
|
+
export type RelationQueryNativeResultKind = 'RelationRows' | 'QueryRows' | 'QueryAggregation';
|
|
2031
|
+
|
|
2032
|
+
export const relationQueryNativeResultKinds = {
|
|
2033
|
+
relationRows: 'RelationRows',
|
|
2034
|
+
queryRows: 'QueryRows',
|
|
2035
|
+
queryAggregation: 'QueryAggregation',
|
|
2036
|
+
} as const satisfies Record<string, RelationQueryNativeResultKind>;
|
|
2037
|
+
|
|
2038
|
+
export const relationQueryNativeResultKindLabels: Record<RelationQueryNativeResultKind, string> = {
|
|
2039
|
+
RelationRows: 'RelationRows',
|
|
2040
|
+
QueryRows: 'QueryRows',
|
|
2041
|
+
QueryAggregation: 'QueryAggregation',
|
|
306
2042
|
};
|
|
307
2043
|
|
|
308
|
-
export interface
|
|
309
|
-
|
|
2044
|
+
export interface RelationQueryFieldReference {
|
|
2045
|
+
shape: QualifiedShapeId;
|
|
2046
|
+
path: FieldPath;
|
|
2047
|
+
}
|
|
2048
|
+
|
|
2049
|
+
export interface RelationQueryNativeArtifactFingerprintReference {
|
|
2050
|
+
algorithm: string;
|
|
2051
|
+
canonicalization: string;
|
|
2052
|
+
value: string;
|
|
310
2053
|
}
|
|
311
2054
|
|
|
312
|
-
export interface
|
|
313
|
-
|
|
2055
|
+
export interface RelationQueryNativeCompilationProvenance {
|
|
2056
|
+
plan: RelationQueryCompiledPlanReference;
|
|
2057
|
+
branch: RelationQueryNativeResultBranchId;
|
|
2058
|
+
target: RelationQueryTargetId;
|
|
2059
|
+
targetProfile: RelationQueryTargetProfileId;
|
|
2060
|
+
realization: RelationQueryRealizationFingerprint;
|
|
2061
|
+
boundRealization: RelationQueryBoundRealizationFingerprint;
|
|
2062
|
+
placement: RelationQuerySourcePlacementFingerprint;
|
|
2063
|
+
adapterBinding: RelationQueryAdapterBindingReference;
|
|
2064
|
+
contextEvidence: RelationQueryContextEvidenceId[];
|
|
2065
|
+
compilerProfile: string;
|
|
2066
|
+
conventionSetVersion: string;
|
|
2067
|
+
coveredNodes: QueryNodeId[];
|
|
2068
|
+
coveredAssignments: QueryAssignmentId[];
|
|
2069
|
+
inputFields: RelationQueryInputId[];
|
|
2070
|
+
realizationDecisions: RelationQueryNativeCompilationDecisionReference[];
|
|
2071
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
2072
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
314
2073
|
}
|
|
315
2074
|
|
|
316
|
-
export type
|
|
2075
|
+
export type RelationQueryExecutionResultKind = 'Rows' | 'Aggregation';
|
|
2076
|
+
|
|
2077
|
+
export const relationQueryExecutionResultKinds = {
|
|
2078
|
+
rows: 'Rows',
|
|
2079
|
+
aggregation: 'Aggregation',
|
|
2080
|
+
} as const satisfies Record<string, RelationQueryExecutionResultKind>;
|
|
2081
|
+
|
|
2082
|
+
export const relationQueryExecutionResultKindLabels: Record<RelationQueryExecutionResultKind, string> = {
|
|
2083
|
+
Rows: 'Rows',
|
|
2084
|
+
Aggregation: 'Aggregation',
|
|
2085
|
+
};
|
|
2086
|
+
|
|
2087
|
+
export type RelationQueryExecutionOutputState = 'Complete' | 'Suppressed' | 'Incomplete';
|
|
2088
|
+
|
|
2089
|
+
export const relationQueryExecutionOutputStates = {
|
|
2090
|
+
complete: 'Complete',
|
|
2091
|
+
suppressed: 'Suppressed',
|
|
2092
|
+
incomplete: 'Incomplete',
|
|
2093
|
+
} as const satisfies Record<string, RelationQueryExecutionOutputState>;
|
|
2094
|
+
|
|
2095
|
+
export const relationQueryExecutionOutputStateLabels: Record<RelationQueryExecutionOutputState, string> = {
|
|
2096
|
+
Complete: 'Complete',
|
|
2097
|
+
Suppressed: 'Suppressed',
|
|
2098
|
+
Incomplete: 'Incomplete',
|
|
2099
|
+
};
|
|
2100
|
+
|
|
2101
|
+
export type RelationRequirementGapCause = 'InputNotProvided' | 'InputAcquisitionFailed' | 'ObservationIdentityMissing' | 'ReferenceFieldNotLoaded' | 'ReferenceValueMissing' | 'ReferenceValueNull' | 'ResolutionNotAttempted' | 'ResolutionFailed' | 'RelatedObservationNotFound' | 'RelatedObservationRejected' | 'RequiredFieldNotLoaded' | 'RequiredValueMissing' | 'RequiredValueNull' | 'CapabilityUnavailable' | 'CardinalityViolation' | 'ConversionFailure' | 'InputAcquisitionInconclusive';
|
|
2102
|
+
|
|
2103
|
+
export const relationRequirementGapCauses = {
|
|
2104
|
+
inputNotProvided: 'InputNotProvided',
|
|
2105
|
+
inputAcquisitionFailed: 'InputAcquisitionFailed',
|
|
2106
|
+
observationIdentityMissing: 'ObservationIdentityMissing',
|
|
2107
|
+
referenceFieldNotLoaded: 'ReferenceFieldNotLoaded',
|
|
2108
|
+
referenceValueMissing: 'ReferenceValueMissing',
|
|
2109
|
+
referenceValueNull: 'ReferenceValueNull',
|
|
2110
|
+
resolutionNotAttempted: 'ResolutionNotAttempted',
|
|
2111
|
+
resolutionFailed: 'ResolutionFailed',
|
|
2112
|
+
relatedObservationNotFound: 'RelatedObservationNotFound',
|
|
2113
|
+
relatedObservationRejected: 'RelatedObservationRejected',
|
|
2114
|
+
requiredFieldNotLoaded: 'RequiredFieldNotLoaded',
|
|
2115
|
+
requiredValueMissing: 'RequiredValueMissing',
|
|
2116
|
+
requiredValueNull: 'RequiredValueNull',
|
|
2117
|
+
capabilityUnavailable: 'CapabilityUnavailable',
|
|
2118
|
+
cardinalityViolation: 'CardinalityViolation',
|
|
2119
|
+
conversionFailure: 'ConversionFailure',
|
|
2120
|
+
inputAcquisitionInconclusive: 'InputAcquisitionInconclusive',
|
|
2121
|
+
} as const satisfies Record<string, RelationRequirementGapCause>;
|
|
2122
|
+
|
|
2123
|
+
export const relationRequirementGapCauseLabels: Record<RelationRequirementGapCause, string> = {
|
|
2124
|
+
InputNotProvided: 'InputNotProvided',
|
|
2125
|
+
InputAcquisitionFailed: 'InputAcquisitionFailed',
|
|
2126
|
+
ObservationIdentityMissing: 'ObservationIdentityMissing',
|
|
2127
|
+
ReferenceFieldNotLoaded: 'ReferenceFieldNotLoaded',
|
|
2128
|
+
ReferenceValueMissing: 'ReferenceValueMissing',
|
|
2129
|
+
ReferenceValueNull: 'ReferenceValueNull',
|
|
2130
|
+
ResolutionNotAttempted: 'ResolutionNotAttempted',
|
|
2131
|
+
ResolutionFailed: 'ResolutionFailed',
|
|
2132
|
+
RelatedObservationNotFound: 'RelatedObservationNotFound',
|
|
2133
|
+
RelatedObservationRejected: 'RelatedObservationRejected',
|
|
2134
|
+
RequiredFieldNotLoaded: 'RequiredFieldNotLoaded',
|
|
2135
|
+
RequiredValueMissing: 'RequiredValueMissing',
|
|
2136
|
+
RequiredValueNull: 'RequiredValueNull',
|
|
2137
|
+
CapabilityUnavailable: 'CapabilityUnavailable',
|
|
2138
|
+
CardinalityViolation: 'CardinalityViolation',
|
|
2139
|
+
ConversionFailure: 'ConversionFailure',
|
|
2140
|
+
InputAcquisitionInconclusive: 'InputAcquisitionInconclusive',
|
|
2141
|
+
};
|
|
2142
|
+
|
|
2143
|
+
export type RelationRequirementGapResolutionKind = 'ProvideInput' | 'LoadField' | 'ProvideReferenceValue' | 'ResolveRelationship' | 'RetryAcquisition' | 'ProvideRelatedObservation' | 'CorrectCardinality' | 'ProvideValue' | 'ProvideCapability' | 'CorrectConversion';
|
|
2144
|
+
|
|
2145
|
+
export const relationRequirementGapResolutionKinds = {
|
|
2146
|
+
provideInput: 'ProvideInput',
|
|
2147
|
+
loadField: 'LoadField',
|
|
2148
|
+
provideReferenceValue: 'ProvideReferenceValue',
|
|
2149
|
+
resolveRelationship: 'ResolveRelationship',
|
|
2150
|
+
retryAcquisition: 'RetryAcquisition',
|
|
2151
|
+
provideRelatedObservation: 'ProvideRelatedObservation',
|
|
2152
|
+
correctCardinality: 'CorrectCardinality',
|
|
2153
|
+
provideValue: 'ProvideValue',
|
|
2154
|
+
provideCapability: 'ProvideCapability',
|
|
2155
|
+
correctConversion: 'CorrectConversion',
|
|
2156
|
+
} as const satisfies Record<string, RelationRequirementGapResolutionKind>;
|
|
2157
|
+
|
|
2158
|
+
export const relationRequirementGapResolutionKindLabels: Record<RelationRequirementGapResolutionKind, string> = {
|
|
2159
|
+
ProvideInput: 'ProvideInput',
|
|
2160
|
+
LoadField: 'LoadField',
|
|
2161
|
+
ProvideReferenceValue: 'ProvideReferenceValue',
|
|
2162
|
+
ResolveRelationship: 'ResolveRelationship',
|
|
2163
|
+
RetryAcquisition: 'RetryAcquisition',
|
|
2164
|
+
ProvideRelatedObservation: 'ProvideRelatedObservation',
|
|
2165
|
+
CorrectCardinality: 'CorrectCardinality',
|
|
2166
|
+
ProvideValue: 'ProvideValue',
|
|
2167
|
+
ProvideCapability: 'ProvideCapability',
|
|
2168
|
+
CorrectConversion: 'CorrectConversion',
|
|
2169
|
+
};
|
|
2170
|
+
|
|
2171
|
+
export type SegmentKind = 'Field' | 'Element';
|
|
317
2172
|
|
|
318
|
-
export const
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
} as const satisfies Record<string,
|
|
2173
|
+
export const segmentKinds = {
|
|
2174
|
+
field: 'Field',
|
|
2175
|
+
element: 'Element',
|
|
2176
|
+
} as const satisfies Record<string, SegmentKind>;
|
|
322
2177
|
|
|
323
|
-
export const
|
|
324
|
-
|
|
325
|
-
|
|
2178
|
+
export const segmentKindLabels: Record<SegmentKind, string> = {
|
|
2179
|
+
Field: 'Field',
|
|
2180
|
+
Element: 'Element',
|
|
326
2181
|
};
|
|
327
2182
|
|
|
328
|
-
export
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
2183
|
+
export type RelationQueryOutputReferenceKind = 'Relation' | 'QueryResult';
|
|
2184
|
+
|
|
2185
|
+
export const relationQueryOutputReferenceKinds = {
|
|
2186
|
+
relation: 'Relation',
|
|
2187
|
+
queryResult: 'QueryResult',
|
|
2188
|
+
} as const satisfies Record<string, RelationQueryOutputReferenceKind>;
|
|
2189
|
+
|
|
2190
|
+
export const relationQueryOutputReferenceKindLabels: Record<RelationQueryOutputReferenceKind, string> = {
|
|
2191
|
+
Relation: 'Relation',
|
|
2192
|
+
QueryResult: 'QueryResult',
|
|
2193
|
+
};
|
|
2194
|
+
|
|
2195
|
+
export interface RelationQueryRealizationTraceStep {
|
|
2196
|
+
kind: RelationQueryRealizationTraceStepKind;
|
|
2197
|
+
node: QueryNodeId;
|
|
2198
|
+
siteKind?: RelationQueryExpressionSiteKind | null;
|
|
2199
|
+
expressionSite?: ExprSiteId | null;
|
|
2200
|
+
assignment?: QueryAssignmentId | null;
|
|
2201
|
+
ordinal?: number | null;
|
|
2202
|
+
invariantName?: string | null;
|
|
332
2203
|
}
|
|
333
2204
|
|
|
334
|
-
export type
|
|
2205
|
+
export type RelationshipTraversalDirection = 'Forward' | 'Inverse';
|
|
335
2206
|
|
|
336
|
-
export const
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
} as const satisfies Record<string,
|
|
2207
|
+
export const relationshipTraversalDirections = {
|
|
2208
|
+
forward: 'Forward',
|
|
2209
|
+
inverse: 'Inverse',
|
|
2210
|
+
} as const satisfies Record<string, RelationshipTraversalDirection>;
|
|
340
2211
|
|
|
341
|
-
export const
|
|
342
|
-
|
|
343
|
-
|
|
2212
|
+
export const relationshipTraversalDirectionLabels: Record<RelationshipTraversalDirection, string> = {
|
|
2213
|
+
Forward: 'Forward',
|
|
2214
|
+
Inverse: 'Inverse',
|
|
344
2215
|
};
|
|
345
2216
|
|
|
346
|
-
export type
|
|
2217
|
+
export type JoinKind = 'Inner' | 'Left' | 'Right' | 'Full';
|
|
347
2218
|
|
|
348
|
-
export const
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
2219
|
+
export const joinKinds = {
|
|
2220
|
+
inner: 'Inner',
|
|
2221
|
+
left: 'Left',
|
|
2222
|
+
right: 'Right',
|
|
2223
|
+
full: 'Full',
|
|
2224
|
+
} as const satisfies Record<string, JoinKind>;
|
|
353
2225
|
|
|
354
|
-
export const
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
2226
|
+
export const joinKindLabels: Record<JoinKind, string> = {
|
|
2227
|
+
Inner: 'Inner',
|
|
2228
|
+
Left: 'Left',
|
|
2229
|
+
Right: 'Right',
|
|
2230
|
+
Full: 'Full',
|
|
358
2231
|
};
|
|
359
2232
|
|
|
360
|
-
export
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
2233
|
+
export type TemporalJoinMatch = {
|
|
2234
|
+
readonly $temporalMatch: 'pointInInterval';
|
|
2235
|
+
} & TemporalPointInIntervalMatch | {
|
|
2236
|
+
readonly $temporalMatch: 'intervalOverlap';
|
|
2237
|
+
} & TemporalIntervalOverlapMatch;
|
|
2238
|
+
|
|
2239
|
+
export interface TemporalPointInIntervalMatch {
|
|
2240
|
+
point: Expr;
|
|
2241
|
+
interval: TemporalInterval;
|
|
364
2242
|
}
|
|
365
2243
|
|
|
366
|
-
export interface
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
ItemMappingId: MappingId;
|
|
2244
|
+
export interface TemporalIntervalOverlapMatch {
|
|
2245
|
+
left: TemporalInterval;
|
|
2246
|
+
right: TemporalInterval;
|
|
370
2247
|
}
|
|
371
2248
|
|
|
372
|
-
export interface
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
ExecutionPreference: MappingExecutionPreference;
|
|
377
|
-
Hints: ({
|
|
378
|
-
Key: string;
|
|
379
|
-
Value: string;
|
|
380
|
-
})[];
|
|
2249
|
+
export interface ProjectionAssignment {
|
|
2250
|
+
id: QueryAssignmentId;
|
|
2251
|
+
target: FieldPath;
|
|
2252
|
+
value: Expr;
|
|
381
2253
|
}
|
|
382
2254
|
|
|
383
|
-
export
|
|
2255
|
+
export interface QueryGrouping {
|
|
2256
|
+
id: QueryAssignmentId;
|
|
2257
|
+
target: FieldPath;
|
|
2258
|
+
key: Expr;
|
|
2259
|
+
}
|
|
2260
|
+
|
|
2261
|
+
export interface QueryAggregateAssignment {
|
|
2262
|
+
id: QueryAssignmentId;
|
|
2263
|
+
target: FieldPath;
|
|
2264
|
+
operation: AggregateOperator;
|
|
2265
|
+
value?: Expr | null;
|
|
2266
|
+
filter?: Expr | null;
|
|
2267
|
+
}
|
|
2268
|
+
|
|
2269
|
+
export interface QueryOrdering {
|
|
2270
|
+
key: Expr;
|
|
2271
|
+
direction: QuerySortDirection;
|
|
2272
|
+
nullPlacement: QueryNullPlacement;
|
|
2273
|
+
}
|
|
2274
|
+
|
|
2275
|
+
export type QueryPageDefinition = {
|
|
2276
|
+
readonly $page: 'offset';
|
|
2277
|
+
} & OffsetPageDefinition | {
|
|
2278
|
+
readonly $page: 'keyset';
|
|
2279
|
+
} & KeysetPageDefinition;
|
|
384
2280
|
|
|
385
|
-
export
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
snapshot: 3,
|
|
390
|
-
} as const satisfies Record<string, MaterializationStrategy>;
|
|
2281
|
+
export interface OffsetPageDefinition {
|
|
2282
|
+
offset: number;
|
|
2283
|
+
limit: number;
|
|
2284
|
+
}
|
|
391
2285
|
|
|
392
|
-
export
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
2286
|
+
export interface KeysetPageDefinition {
|
|
2287
|
+
after: Expr[];
|
|
2288
|
+
limit: number;
|
|
2289
|
+
}
|
|
2290
|
+
|
|
2291
|
+
export type QueryParameterId = string;
|
|
2292
|
+
|
|
2293
|
+
export type FieldPresence = 'Required' | 'Optional';
|
|
2294
|
+
|
|
2295
|
+
export const fieldPresences = {
|
|
2296
|
+
required: 'Required',
|
|
2297
|
+
optional: 'Optional',
|
|
2298
|
+
} as const satisfies Record<string, FieldPresence>;
|
|
2299
|
+
|
|
2300
|
+
export const fieldPresenceLabels: Record<FieldPresence, string> = {
|
|
2301
|
+
Required: 'Required',
|
|
2302
|
+
Optional: 'Optional',
|
|
397
2303
|
};
|
|
398
2304
|
|
|
399
|
-
export type
|
|
2305
|
+
export type QueryParameterDefaultKind = 'None' | 'Value';
|
|
400
2306
|
|
|
401
|
-
export const
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
} as const satisfies Record<string, FreshnessPolicy>;
|
|
2307
|
+
export const queryParameterDefaultKinds = {
|
|
2308
|
+
none: 'None',
|
|
2309
|
+
value: 'Value',
|
|
2310
|
+
} as const satisfies Record<string, QueryParameterDefaultKind>;
|
|
406
2311
|
|
|
407
|
-
export const
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
2: 'BoundedStaleness',
|
|
2312
|
+
export const queryParameterDefaultKindLabels: Record<QueryParameterDefaultKind, string> = {
|
|
2313
|
+
None: 'None',
|
|
2314
|
+
Value: 'Value',
|
|
411
2315
|
};
|
|
412
2316
|
|
|
413
|
-
export interface
|
|
414
|
-
|
|
415
|
-
|
|
2317
|
+
export interface RelationDraftCandidate {
|
|
2318
|
+
id: RelationDraftCandidateId;
|
|
2319
|
+
value: Expr;
|
|
2320
|
+
}
|
|
2321
|
+
|
|
2322
|
+
export type RelationDraftAssignmentResolution = {
|
|
2323
|
+
readonly $resolution: 'selected';
|
|
2324
|
+
} & SelectedRelationDraftAssignmentResolution | {
|
|
2325
|
+
readonly $resolution: 'omitted';
|
|
2326
|
+
} & OmittedRelationDraftAssignmentResolution | {
|
|
2327
|
+
readonly $resolution: 'unresolved';
|
|
2328
|
+
} & UnresolvedRelationDraftAssignmentResolution | {
|
|
2329
|
+
readonly $resolution: 'ambiguous';
|
|
2330
|
+
} & AmbiguousRelationDraftAssignmentResolution;
|
|
2331
|
+
|
|
2332
|
+
export interface SelectedRelationDraftAssignmentResolution {
|
|
2333
|
+
candidateId: RelationDraftCandidateId;
|
|
2334
|
+
}
|
|
2335
|
+
|
|
2336
|
+
export type OmittedRelationDraftAssignmentResolution = Record<never, never>;
|
|
2337
|
+
|
|
2338
|
+
export interface UnresolvedRelationDraftAssignmentResolution {
|
|
2339
|
+
reasons: RelationDraftUnresolvedReason[];
|
|
416
2340
|
}
|
|
417
2341
|
|
|
418
|
-
export interface
|
|
419
|
-
|
|
2342
|
+
export interface AmbiguousRelationDraftAssignmentResolution {
|
|
2343
|
+
candidateIds: RelationDraftCandidateId[];
|
|
420
2344
|
}
|
|
421
2345
|
|
|
422
|
-
export type
|
|
2346
|
+
export type TypeId = string;
|
|
2347
|
+
|
|
2348
|
+
export interface TypeInferenceDiagnostic {
|
|
2349
|
+
reason: string;
|
|
2350
|
+
message?: string | null;
|
|
2351
|
+
}
|
|
2352
|
+
|
|
2353
|
+
export type ScalarTypeKind = 'Bool' | 'Int32' | 'Int64' | 'Decimal' | 'String' | 'Guid' | 'Date' | 'DateTime' | 'Instant' | 'Bytes';
|
|
423
2354
|
|
|
424
2355
|
export const scalarTypeKinds = {
|
|
425
|
-
bool:
|
|
426
|
-
int32:
|
|
427
|
-
int64:
|
|
428
|
-
decimal:
|
|
429
|
-
string:
|
|
430
|
-
guid:
|
|
431
|
-
date:
|
|
432
|
-
dateTime:
|
|
433
|
-
instant:
|
|
434
|
-
bytes:
|
|
2356
|
+
bool: 'Bool',
|
|
2357
|
+
int32: 'Int32',
|
|
2358
|
+
int64: 'Int64',
|
|
2359
|
+
decimal: 'Decimal',
|
|
2360
|
+
string: 'String',
|
|
2361
|
+
guid: 'Guid',
|
|
2362
|
+
date: 'Date',
|
|
2363
|
+
dateTime: 'DateTime',
|
|
2364
|
+
instant: 'Instant',
|
|
2365
|
+
bytes: 'Bytes',
|
|
435
2366
|
} as const satisfies Record<string, ScalarTypeKind>;
|
|
436
2367
|
|
|
437
2368
|
export const scalarTypeKindLabels: Record<ScalarTypeKind, string> = {
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
2369
|
+
Bool: 'Bool',
|
|
2370
|
+
Int32: 'Int32',
|
|
2371
|
+
Int64: 'Int64',
|
|
2372
|
+
Decimal: 'Decimal',
|
|
2373
|
+
String: 'String',
|
|
2374
|
+
Guid: 'Guid',
|
|
2375
|
+
Date: 'Date',
|
|
2376
|
+
DateTime: 'DateTime',
|
|
2377
|
+
Instant: 'Instant',
|
|
2378
|
+
Bytes: 'Bytes',
|
|
448
2379
|
};
|
|
449
2380
|
|
|
450
|
-
export type PrimitiveFormat =
|
|
2381
|
+
export type PrimitiveFormat = 'None' | 'Uuid' | 'IsoDate' | 'IsoDateTime' | 'IsoInstant' | 'CurrencyCode' | 'CountryCode' | 'Email' | 'Uri' | 'Base64';
|
|
451
2382
|
|
|
452
2383
|
export const primitiveFormats = {
|
|
453
|
-
none:
|
|
454
|
-
uuid:
|
|
455
|
-
isoDate:
|
|
456
|
-
isoDateTime:
|
|
457
|
-
isoInstant:
|
|
458
|
-
currencyCode:
|
|
459
|
-
countryCode:
|
|
460
|
-
email:
|
|
461
|
-
uri:
|
|
462
|
-
base64:
|
|
2384
|
+
none: 'None',
|
|
2385
|
+
uuid: 'Uuid',
|
|
2386
|
+
isoDate: 'IsoDate',
|
|
2387
|
+
isoDateTime: 'IsoDateTime',
|
|
2388
|
+
isoInstant: 'IsoInstant',
|
|
2389
|
+
currencyCode: 'CurrencyCode',
|
|
2390
|
+
countryCode: 'CountryCode',
|
|
2391
|
+
email: 'Email',
|
|
2392
|
+
uri: 'Uri',
|
|
2393
|
+
base64: 'Base64',
|
|
463
2394
|
} as const satisfies Record<string, PrimitiveFormat>;
|
|
464
2395
|
|
|
465
2396
|
export const primitiveFormatLabels: Record<PrimitiveFormat, string> = {
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
2397
|
+
None: 'None',
|
|
2398
|
+
Uuid: 'Uuid',
|
|
2399
|
+
IsoDate: 'IsoDate',
|
|
2400
|
+
IsoDateTime: 'IsoDateTime',
|
|
2401
|
+
IsoInstant: 'IsoInstant',
|
|
2402
|
+
CurrencyCode: 'CurrencyCode',
|
|
2403
|
+
CountryCode: 'CountryCode',
|
|
2404
|
+
Email: 'Email',
|
|
2405
|
+
Uri: 'Uri',
|
|
2406
|
+
Base64: 'Base64',
|
|
476
2407
|
};
|
|
477
2408
|
|
|
478
|
-
export
|
|
479
|
-
Value: string;
|
|
480
|
-
}
|
|
2409
|
+
export type EntityTypeName = string;
|
|
481
2410
|
|
|
482
2411
|
export interface ObjectFieldTypeDef {
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
})[];
|
|
2412
|
+
name: string;
|
|
2413
|
+
type: TypeRef;
|
|
2414
|
+
cardinality: FieldCardinality;
|
|
2415
|
+
presence: FieldPresence;
|
|
2416
|
+
nullability: FieldNullability;
|
|
2417
|
+
annotations: Record<string, AnnotationValue>;
|
|
490
2418
|
}
|
|
491
2419
|
|
|
492
|
-
export type JsonTypeKind =
|
|
2420
|
+
export type JsonTypeKind = 'Any' | 'Object' | 'Array' | 'String' | 'Number' | 'Boolean';
|
|
493
2421
|
|
|
494
2422
|
export const jsonTypeKinds = {
|
|
495
|
-
any:
|
|
496
|
-
object:
|
|
497
|
-
array:
|
|
498
|
-
string:
|
|
499
|
-
number:
|
|
500
|
-
boolean:
|
|
2423
|
+
any: 'Any',
|
|
2424
|
+
object: 'Object',
|
|
2425
|
+
array: 'Array',
|
|
2426
|
+
string: 'String',
|
|
2427
|
+
number: 'Number',
|
|
2428
|
+
boolean: 'Boolean',
|
|
501
2429
|
} as const satisfies Record<string, JsonTypeKind>;
|
|
502
2430
|
|
|
503
2431
|
export const jsonTypeKindLabels: Record<JsonTypeKind, string> = {
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
2432
|
+
Any: 'Any',
|
|
2433
|
+
Object: 'Object',
|
|
2434
|
+
Array: 'Array',
|
|
2435
|
+
String: 'String',
|
|
2436
|
+
Number: 'Number',
|
|
2437
|
+
Boolean: 'Boolean',
|
|
510
2438
|
};
|
|
511
2439
|
|
|
512
|
-
export
|
|
2440
|
+
export interface RelationQueryLogicalPlanInput {
|
|
2441
|
+
canonicalInput: QueryNodeId;
|
|
2442
|
+
effectiveInput: QueryNodeId;
|
|
2443
|
+
bypasses: RelationQueryLogicalBypass[];
|
|
2444
|
+
}
|
|
2445
|
+
|
|
2446
|
+
export type RelationQueryExplainRequirementInputKind = 'Field' | 'ObservationIdentity' | 'SourceSet' | 'Relationship' | 'Parameter' | 'Capability';
|
|
2447
|
+
|
|
2448
|
+
export const relationQueryExplainRequirementInputKinds = {
|
|
2449
|
+
field: 'Field',
|
|
2450
|
+
observationIdentity: 'ObservationIdentity',
|
|
2451
|
+
sourceSet: 'SourceSet',
|
|
2452
|
+
relationship: 'Relationship',
|
|
2453
|
+
parameter: 'Parameter',
|
|
2454
|
+
capability: 'Capability',
|
|
2455
|
+
} as const satisfies Record<string, RelationQueryExplainRequirementInputKind>;
|
|
2456
|
+
|
|
2457
|
+
export const relationQueryExplainRequirementInputKindLabels: Record<RelationQueryExplainRequirementInputKind, string> = {
|
|
2458
|
+
Field: 'Field',
|
|
2459
|
+
ObservationIdentity: 'ObservationIdentity',
|
|
2460
|
+
SourceSet: 'SourceSet',
|
|
2461
|
+
Relationship: 'Relationship',
|
|
2462
|
+
Parameter: 'Parameter',
|
|
2463
|
+
Capability: 'Capability',
|
|
2464
|
+
};
|
|
2465
|
+
|
|
2466
|
+
export interface RelationQueryNativeCompilationDecisionReference {
|
|
2467
|
+
requirement: RelationQueryRealizationRequirementId;
|
|
2468
|
+
kind: CapabilityRealizationKind;
|
|
2469
|
+
capabilityEvidence: RelationQueryTargetCapabilityEvidenceId[];
|
|
2470
|
+
compositionRules: RelationQueryCompositionRuleId[];
|
|
2471
|
+
override?: RelationQueryRealizationOverrideId | null;
|
|
2472
|
+
operatingBoundaries: RelationQueryOperatingBoundaryId[];
|
|
2473
|
+
preservedGuarantees: RelationQueryGuaranteeCapabilityKind[];
|
|
2474
|
+
}
|
|
513
2475
|
|
|
514
|
-
export
|
|
515
|
-
inMemory: 0,
|
|
516
|
-
materialized: 1,
|
|
517
|
-
codeGenerated: 2,
|
|
518
|
-
} as const satisfies Record<string, MappingExecutionPreference>;
|
|
2476
|
+
export type RelationQueryRealizationTraceStepKind = 'Structural' | 'ExpressionSite' | 'AggregateOperation' | 'Terminal';
|
|
519
2477
|
|
|
520
|
-
export const
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
2478
|
+
export const relationQueryRealizationTraceStepKinds = {
|
|
2479
|
+
structural: 'Structural',
|
|
2480
|
+
expressionSite: 'ExpressionSite',
|
|
2481
|
+
aggregateOperation: 'AggregateOperation',
|
|
2482
|
+
terminal: 'Terminal',
|
|
2483
|
+
} as const satisfies Record<string, RelationQueryRealizationTraceStepKind>;
|
|
2484
|
+
|
|
2485
|
+
export const relationQueryRealizationTraceStepKindLabels: Record<RelationQueryRealizationTraceStepKind, string> = {
|
|
2486
|
+
Structural: 'Structural',
|
|
2487
|
+
ExpressionSite: 'ExpressionSite',
|
|
2488
|
+
AggregateOperation: 'AggregateOperation',
|
|
2489
|
+
Terminal: 'Terminal',
|
|
524
2490
|
};
|
|
525
2491
|
|
|
526
|
-
export type
|
|
2492
|
+
export type RelationQueryExpressionSiteKind = 'FilterPredicate' | 'JoinPredicate' | 'ExpandCollection' | 'ProjectionAssignmentValue' | 'DistinctKey' | 'AggregateGroupingKey' | 'AggregateAssignmentValue' | 'AggregateAssignmentFilter' | 'OrderKey' | 'KeysetBoundary' | 'RelationOutputKey' | 'RelationInvariant' | 'TemporalJoinCorrelation' | 'TemporalJoinPoint' | 'TemporalJoinIntervalLowerBound' | 'TemporalJoinIntervalUpperBound';
|
|
2493
|
+
|
|
2494
|
+
export const relationQueryExpressionSiteKinds = {
|
|
2495
|
+
filterPredicate: 'FilterPredicate',
|
|
2496
|
+
joinPredicate: 'JoinPredicate',
|
|
2497
|
+
expandCollection: 'ExpandCollection',
|
|
2498
|
+
projectionAssignmentValue: 'ProjectionAssignmentValue',
|
|
2499
|
+
distinctKey: 'DistinctKey',
|
|
2500
|
+
aggregateGroupingKey: 'AggregateGroupingKey',
|
|
2501
|
+
aggregateAssignmentValue: 'AggregateAssignmentValue',
|
|
2502
|
+
aggregateAssignmentFilter: 'AggregateAssignmentFilter',
|
|
2503
|
+
orderKey: 'OrderKey',
|
|
2504
|
+
keysetBoundary: 'KeysetBoundary',
|
|
2505
|
+
relationOutputKey: 'RelationOutputKey',
|
|
2506
|
+
relationInvariant: 'RelationInvariant',
|
|
2507
|
+
temporalJoinCorrelation: 'TemporalJoinCorrelation',
|
|
2508
|
+
temporalJoinPoint: 'TemporalJoinPoint',
|
|
2509
|
+
temporalJoinIntervalLowerBound: 'TemporalJoinIntervalLowerBound',
|
|
2510
|
+
temporalJoinIntervalUpperBound: 'TemporalJoinIntervalUpperBound',
|
|
2511
|
+
} as const satisfies Record<string, RelationQueryExpressionSiteKind>;
|
|
2512
|
+
|
|
2513
|
+
export const relationQueryExpressionSiteKindLabels: Record<RelationQueryExpressionSiteKind, string> = {
|
|
2514
|
+
FilterPredicate: 'FilterPredicate',
|
|
2515
|
+
JoinPredicate: 'JoinPredicate',
|
|
2516
|
+
ExpandCollection: 'ExpandCollection',
|
|
2517
|
+
ProjectionAssignmentValue: 'ProjectionAssignmentValue',
|
|
2518
|
+
DistinctKey: 'DistinctKey',
|
|
2519
|
+
AggregateGroupingKey: 'AggregateGroupingKey',
|
|
2520
|
+
AggregateAssignmentValue: 'AggregateAssignmentValue',
|
|
2521
|
+
AggregateAssignmentFilter: 'AggregateAssignmentFilter',
|
|
2522
|
+
OrderKey: 'OrderKey',
|
|
2523
|
+
KeysetBoundary: 'KeysetBoundary',
|
|
2524
|
+
RelationOutputKey: 'RelationOutputKey',
|
|
2525
|
+
RelationInvariant: 'RelationInvariant',
|
|
2526
|
+
TemporalJoinCorrelation: 'TemporalJoinCorrelation',
|
|
2527
|
+
TemporalJoinPoint: 'TemporalJoinPoint',
|
|
2528
|
+
TemporalJoinIntervalLowerBound: 'TemporalJoinIntervalLowerBound',
|
|
2529
|
+
TemporalJoinIntervalUpperBound: 'TemporalJoinIntervalUpperBound',
|
|
2530
|
+
};
|
|
527
2531
|
|
|
528
|
-
export
|
|
529
|
-
field: 0,
|
|
530
|
-
element: 2,
|
|
531
|
-
} as const satisfies Record<string, SegmentKind>;
|
|
2532
|
+
export type ExprSiteId = string;
|
|
532
2533
|
|
|
533
|
-
export
|
|
534
|
-
|
|
535
|
-
|
|
2534
|
+
export interface TemporalInterval {
|
|
2535
|
+
lower: TemporalIntervalBound;
|
|
2536
|
+
upper: TemporalIntervalBound;
|
|
2537
|
+
}
|
|
2538
|
+
|
|
2539
|
+
export type QuerySortDirection = 'Ascending' | 'Descending';
|
|
2540
|
+
|
|
2541
|
+
export const querySortDirections = {
|
|
2542
|
+
ascending: 'Ascending',
|
|
2543
|
+
descending: 'Descending',
|
|
2544
|
+
} as const satisfies Record<string, QuerySortDirection>;
|
|
2545
|
+
|
|
2546
|
+
export const querySortDirectionLabels: Record<QuerySortDirection, string> = {
|
|
2547
|
+
Ascending: 'Ascending',
|
|
2548
|
+
Descending: 'Descending',
|
|
536
2549
|
};
|
|
537
2550
|
|
|
538
|
-
export type
|
|
2551
|
+
export type QueryNullPlacement = 'First' | 'Last';
|
|
539
2552
|
|
|
540
|
-
export const
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
} as const satisfies Record<string,
|
|
2553
|
+
export const queryNullPlacements = {
|
|
2554
|
+
first: 'First',
|
|
2555
|
+
last: 'Last',
|
|
2556
|
+
} as const satisfies Record<string, QueryNullPlacement>;
|
|
544
2557
|
|
|
545
|
-
export const
|
|
546
|
-
|
|
547
|
-
|
|
2558
|
+
export const queryNullPlacementLabels: Record<QueryNullPlacement, string> = {
|
|
2559
|
+
First: 'First',
|
|
2560
|
+
Last: 'Last',
|
|
2561
|
+
};
|
|
2562
|
+
|
|
2563
|
+
export type RelationDraftUnresolvedReason = 'NoCandidate' | 'IncompatibleType' | 'UnsafeCardinality' | 'UnsafePresence' | 'UnsafeNullability' | 'ConversionRequired' | 'UnsupportedStructure' | 'UnsupportedTransformation' | 'MultipleCandidates';
|
|
2564
|
+
|
|
2565
|
+
export const relationDraftUnresolvedReasons = {
|
|
2566
|
+
noCandidate: 'NoCandidate',
|
|
2567
|
+
incompatibleType: 'IncompatibleType',
|
|
2568
|
+
unsafeCardinality: 'UnsafeCardinality',
|
|
2569
|
+
unsafePresence: 'UnsafePresence',
|
|
2570
|
+
unsafeNullability: 'UnsafeNullability',
|
|
2571
|
+
conversionRequired: 'ConversionRequired',
|
|
2572
|
+
unsupportedStructure: 'UnsupportedStructure',
|
|
2573
|
+
unsupportedTransformation: 'UnsupportedTransformation',
|
|
2574
|
+
multipleCandidates: 'MultipleCandidates',
|
|
2575
|
+
} as const satisfies Record<string, RelationDraftUnresolvedReason>;
|
|
2576
|
+
|
|
2577
|
+
export const relationDraftUnresolvedReasonLabels: Record<RelationDraftUnresolvedReason, string> = {
|
|
2578
|
+
NoCandidate: 'NoCandidate',
|
|
2579
|
+
IncompatibleType: 'IncompatibleType',
|
|
2580
|
+
UnsafeCardinality: 'UnsafeCardinality',
|
|
2581
|
+
UnsafePresence: 'UnsafePresence',
|
|
2582
|
+
UnsafeNullability: 'UnsafeNullability',
|
|
2583
|
+
ConversionRequired: 'ConversionRequired',
|
|
2584
|
+
UnsupportedStructure: 'UnsupportedStructure',
|
|
2585
|
+
UnsupportedTransformation: 'UnsupportedTransformation',
|
|
2586
|
+
MultipleCandidates: 'MultipleCandidates',
|
|
2587
|
+
};
|
|
2588
|
+
|
|
2589
|
+
export type FieldCardinality = 'Single' | 'Many';
|
|
2590
|
+
|
|
2591
|
+
export const fieldCardinalities = {
|
|
2592
|
+
single: 'Single',
|
|
2593
|
+
many: 'Many',
|
|
2594
|
+
} as const satisfies Record<string, FieldCardinality>;
|
|
2595
|
+
|
|
2596
|
+
export const fieldCardinalityLabels: Record<FieldCardinality, string> = {
|
|
2597
|
+
Single: 'Single',
|
|
2598
|
+
Many: 'Many',
|
|
2599
|
+
};
|
|
2600
|
+
|
|
2601
|
+
export type FieldNullability = 'NonNullable' | 'Nullable';
|
|
2602
|
+
|
|
2603
|
+
export const fieldNullabilities = {
|
|
2604
|
+
nonNullable: 'NonNullable',
|
|
2605
|
+
nullable: 'Nullable',
|
|
2606
|
+
} as const satisfies Record<string, FieldNullability>;
|
|
2607
|
+
|
|
2608
|
+
export const fieldNullabilityLabels: Record<FieldNullability, string> = {
|
|
2609
|
+
NonNullable: 'NonNullable',
|
|
2610
|
+
Nullable: 'Nullable',
|
|
548
2611
|
};
|
|
549
2612
|
|
|
550
|
-
export interface
|
|
551
|
-
|
|
2613
|
+
export interface RelationQueryLogicalBypass {
|
|
2614
|
+
kind: RelationQueryLogicalBypassKind;
|
|
2615
|
+
node: QueryNodeId;
|
|
2616
|
+
relationship: RelationshipDefinition;
|
|
2617
|
+
direction: RelationshipTraversalDirection;
|
|
2618
|
+
cardinality: RelationshipTraversalCardinality;
|
|
2619
|
+
from: ValueBindingId;
|
|
2620
|
+
result: ValueBindingId;
|
|
552
2621
|
}
|
|
553
2622
|
|
|
554
|
-
export
|
|
555
|
-
|
|
2623
|
+
export type CapabilityRealizationKind = 'Native' | 'Composed' | 'Constrained' | 'Override' | 'Unavailable' | 'Unknown';
|
|
2624
|
+
|
|
2625
|
+
export const capabilityRealizationKinds = {
|
|
2626
|
+
native: 'Native',
|
|
2627
|
+
composed: 'Composed',
|
|
2628
|
+
constrained: 'Constrained',
|
|
2629
|
+
override: 'Override',
|
|
2630
|
+
unavailable: 'Unavailable',
|
|
2631
|
+
unknown: 'Unknown',
|
|
2632
|
+
} as const satisfies Record<string, CapabilityRealizationKind>;
|
|
2633
|
+
|
|
2634
|
+
export const capabilityRealizationKindLabels: Record<CapabilityRealizationKind, string> = {
|
|
2635
|
+
Native: 'Native',
|
|
2636
|
+
Composed: 'Composed',
|
|
2637
|
+
Constrained: 'Constrained',
|
|
2638
|
+
Override: 'Override',
|
|
2639
|
+
Unavailable: 'Unavailable',
|
|
2640
|
+
Unknown: 'Unknown',
|
|
2641
|
+
};
|
|
2642
|
+
|
|
2643
|
+
export type TemporalIntervalBound = {
|
|
2644
|
+
readonly $temporalBound: 'unbounded';
|
|
2645
|
+
} & UnboundedTemporalIntervalBound | {
|
|
2646
|
+
readonly $temporalBound: 'expression';
|
|
2647
|
+
} & ExpressionTemporalIntervalBound;
|
|
2648
|
+
|
|
2649
|
+
export type UnboundedTemporalIntervalBound = Record<never, never>;
|
|
2650
|
+
|
|
2651
|
+
export interface ExpressionTemporalIntervalBound {
|
|
2652
|
+
value: Expr;
|
|
2653
|
+
inclusion: TemporalBoundaryInclusion;
|
|
2654
|
+
nullBehavior: TemporalNullBoundBehavior;
|
|
556
2655
|
}
|
|
557
2656
|
|
|
2657
|
+
export type RelationQueryLogicalBypassKind = 'OptionalAtMostOneLeftRelationshipTraversal';
|
|
2658
|
+
|
|
2659
|
+
export const relationQueryLogicalBypassKinds = {
|
|
2660
|
+
optionalAtMostOneLeftRelationshipTraversal: 'OptionalAtMostOneLeftRelationshipTraversal',
|
|
2661
|
+
} as const satisfies Record<string, RelationQueryLogicalBypassKind>;
|
|
2662
|
+
|
|
2663
|
+
export const relationQueryLogicalBypassKindLabels: Record<RelationQueryLogicalBypassKind, string> = {
|
|
2664
|
+
OptionalAtMostOneLeftRelationshipTraversal: 'OptionalAtMostOneLeftRelationshipTraversal',
|
|
2665
|
+
};
|
|
2666
|
+
|
|
2667
|
+
export type RelationshipTraversalCardinality = 'AtMostOne' | 'Many';
|
|
2668
|
+
|
|
2669
|
+
export const relationshipTraversalCardinalities = {
|
|
2670
|
+
atMostOne: 'AtMostOne',
|
|
2671
|
+
many: 'Many',
|
|
2672
|
+
} as const satisfies Record<string, RelationshipTraversalCardinality>;
|
|
2673
|
+
|
|
2674
|
+
export const relationshipTraversalCardinalityLabels: Record<RelationshipTraversalCardinality, string> = {
|
|
2675
|
+
AtMostOne: 'AtMostOne',
|
|
2676
|
+
Many: 'Many',
|
|
2677
|
+
};
|
|
2678
|
+
|
|
2679
|
+
export type TemporalBoundaryInclusion = 'Inclusive' | 'Exclusive';
|
|
2680
|
+
|
|
2681
|
+
export const temporalBoundaryInclusions = {
|
|
2682
|
+
inclusive: 'Inclusive',
|
|
2683
|
+
exclusive: 'Exclusive',
|
|
2684
|
+
} as const satisfies Record<string, TemporalBoundaryInclusion>;
|
|
2685
|
+
|
|
2686
|
+
export const temporalBoundaryInclusionLabels: Record<TemporalBoundaryInclusion, string> = {
|
|
2687
|
+
Inclusive: 'Inclusive',
|
|
2688
|
+
Exclusive: 'Exclusive',
|
|
2689
|
+
};
|
|
2690
|
+
|
|
2691
|
+
export type TemporalNullBoundBehavior = 'Invalid' | 'Unbounded';
|
|
2692
|
+
|
|
2693
|
+
export const temporalNullBoundBehaviors = {
|
|
2694
|
+
invalid: 'Invalid',
|
|
2695
|
+
unbounded: 'Unbounded',
|
|
2696
|
+
} as const satisfies Record<string, TemporalNullBoundBehavior>;
|
|
2697
|
+
|
|
2698
|
+
export const temporalNullBoundBehaviorLabels: Record<TemporalNullBoundBehavior, string> = {
|
|
2699
|
+
Invalid: 'Invalid',
|
|
2700
|
+
Unbounded: 'Unbounded',
|
|
2701
|
+
};
|
|
2702
|
+
|
|
558
2703
|
export interface QualifiedShapeId {
|
|
559
|
-
|
|
560
|
-
|
|
2704
|
+
graphId: GraphId;
|
|
2705
|
+
shapeId: ShapeId;
|
|
561
2706
|
}
|
|
562
2707
|
|
|
563
|
-
export interface
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
2708
|
+
export interface RelationQueryExplainArtifact {
|
|
2709
|
+
schemaVersion: string;
|
|
2710
|
+
stages: RelationQueryExplainStage[];
|
|
2711
|
+
capabilitySummary?: RelationQueryCapabilitySummary | null;
|
|
2712
|
+
diagnostics: RelationQueryExplainDiagnostic[];
|
|
2713
|
+
fingerprint: RelationQueryExplainFingerprint;
|
|
2714
|
+
}
|
|
2715
|
+
|
|
2716
|
+
export interface CompiledRelationQueryPhysicalPlan {
|
|
2717
|
+
schemaVersion: string;
|
|
2718
|
+
plan: RelationQueryCompiledPlanReference;
|
|
2719
|
+
realization: RelationQueryRealizationFingerprint;
|
|
2720
|
+
placement: RelationQuerySourcePlacement;
|
|
2721
|
+
policy: RelationQueryPhysicalPlanningPolicy;
|
|
2722
|
+
stages: RelationQueryPhysicalStage[];
|
|
2723
|
+
evaluationOrder: RelationQueryPhysicalStageId[];
|
|
2724
|
+
terminal: RelationQueryPhysicalStageId;
|
|
2725
|
+
diagnostics: RelationQueryPhysicalPlanningDiagnostic[];
|
|
2726
|
+
fingerprint: RelationQueryPhysicalPlanFingerprint;
|
|
2727
|
+
}
|
|
2728
|
+
|
|
2729
|
+
export interface RelationQuerySourcePlacement {
|
|
2730
|
+
schemaVersion: string;
|
|
2731
|
+
plan: RelationQueryCompiledPlanReference;
|
|
2732
|
+
conventionSetVersion: string;
|
|
2733
|
+
sourceInstances: RelationQuerySourceInstance[];
|
|
2734
|
+
bindings: RelationQuerySourcePlacementBinding[];
|
|
2735
|
+
configurationDecisions: EffectiveConfigurationDecision[];
|
|
2736
|
+
fingerprint: RelationQuerySourcePlacementFingerprint;
|
|
2737
|
+
}
|
|
2738
|
+
|
|
2739
|
+
export interface RelationQueryBoundRealizationReport {
|
|
2740
|
+
profileFeasibility: RelationQueryRealizationReport;
|
|
2741
|
+
placement: RelationQuerySourcePlacementFingerprint;
|
|
2742
|
+
branches: RelationQueryNativeResultBranchId[];
|
|
2743
|
+
evidence: RelationQueryContextualEvidenceProjection;
|
|
2744
|
+
diagnostics: RelationQueryRealizationDiagnostic[];
|
|
2745
|
+
status: RelationQueryRealizationStatus;
|
|
2746
|
+
fingerprint: RelationQueryBoundRealizationFingerprint;
|
|
2747
|
+
}
|
|
2748
|
+
|
|
2749
|
+
export interface RelationQueryRealizationReport {
|
|
2750
|
+
plan: RelationQueryCompiledPlanReference;
|
|
2751
|
+
targetProfile: RelationQueryTargetCapabilityProfile;
|
|
2752
|
+
policy: RelationQueryRealizationPolicy;
|
|
2753
|
+
observability: RelationQueryResultObservability;
|
|
2754
|
+
requirements: RelationQueryRealizationRequirement[];
|
|
2755
|
+
decisions: RelationQueryRealizationDecision[];
|
|
2756
|
+
diagnostics: RelationQueryRealizationDiagnostic[];
|
|
2757
|
+
status: RelationQueryRealizationStatus;
|
|
2758
|
+
fingerprint: RelationQueryRealizationFingerprint;
|
|
2759
|
+
}
|
|
2760
|
+
|
|
2761
|
+
export interface RelationQueryTargetCapabilityProfile {
|
|
2762
|
+
target: RelationQueryTargetId;
|
|
2763
|
+
id: RelationQueryTargetProfileId;
|
|
2764
|
+
supportedDefinitionSchemaVersions: string[];
|
|
2765
|
+
supportedCompilerProfiles: string[];
|
|
2766
|
+
capabilities: RelationQueryTargetCapabilityEvidence[];
|
|
2767
|
+
operatingBoundaries: RelationQueryOperatingBoundary[];
|
|
2768
|
+
description?: string | null;
|
|
2769
|
+
}
|
|
2770
|
+
|
|
2771
|
+
export interface RelationDraftDocument {
|
|
2772
|
+
schemaVersion: string;
|
|
2773
|
+
draft: RelationDraft;
|
|
2774
|
+
draftFingerprint: RelationDraftFingerprint;
|
|
2775
|
+
metadata: RelationDraftDocumentMetadata;
|
|
2776
|
+
}
|
|
2777
|
+
|
|
2778
|
+
export interface RelationQueryDocument {
|
|
2779
|
+
schemaVersion: string;
|
|
2780
|
+
definition: RelationQueryDefinition;
|
|
2781
|
+
definitionFingerprint: RelationQueryDefinitionFingerprint;
|
|
2782
|
+
metadata: RelationQueryDocumentMetadata;
|
|
2783
|
+
}
|
|
2784
|
+
|
|
2785
|
+
export interface RelationshipCatalogDocument {
|
|
2786
|
+
schemaVersion: string;
|
|
2787
|
+
catalog: RelationshipCatalog;
|
|
2788
|
+
catalogFingerprint: RelationshipCatalogFingerprint;
|
|
2789
|
+
metadata: RelationshipCatalogDocumentMetadata;
|
|
574
2790
|
}
|