@scoutflo/topology-contracts 0.10.0 → 0.10.2

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.
@@ -14,8 +14,14 @@ export declare const GATEWAY_TOPOLOGY_CONTEXT_LIMITS: {
14
14
  readonly nestedEvidencePerRelationship: 25;
15
15
  readonly preferredBindingSpecialists: 25;
16
16
  readonly mapKey: 128;
17
+ readonly maxDepth: 13;
18
+ readonly maxNodes: 1000;
19
+ readonly aggregateBytes: 1048576;
20
+ };
21
+ export declare const NESTED_TOPOLOGY_RESPONSE_LIMITS: {
17
22
  readonly maxDepth: 12;
18
23
  readonly maxNodes: 1000;
24
+ readonly mapKey: 128;
19
25
  readonly aggregateBytes: 1048576;
20
26
  };
21
27
  export declare const diagnosticCriticalitySchema: z.ZodEnum<["blocking", "degrading", "optional"]>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gatewayTopologyContextSchema = exports.gatewayTopologyDiagnosticsSchema = exports.DEFAULT_TOPOLOGY_PROJECTION_COMPATIBILITY = exports.topologyProjectionCompatibilitySchema = exports.topologyBindingHintsSchema = exports.topologyBindingHintSchema = exports.topologyInvestigationContextSchema = exports.relatedServiceInfoSchema = exports.investigationResourceSchema = exports.targetServiceInfoSchema = exports.topologyInitializationStateSchema = exports.topologyPrimaryAnchorSchema = exports.topologyCandidateTargetSchema = exports.topologyReasonCodeSchema = exports.nestedTopologyResponseSchema = exports.nestedTopologyTruncationSchema = exports.nestedTopologyStatsSchema = exports.nestedTopologyLimitsSchema = exports.nestedTopologyRelationshipSchema = exports.nestedTopologyEvidenceSchema = exports.nestedTopologyTruncationReasonSchema = exports.diagnosticCriticalitySchema = exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS = exports.GATEWAY_TOPOLOGY_CONTEXT_VERSION = void 0;
3
+ exports.gatewayTopologyContextSchema = exports.gatewayTopologyDiagnosticsSchema = exports.DEFAULT_TOPOLOGY_PROJECTION_COMPATIBILITY = exports.topologyProjectionCompatibilitySchema = exports.topologyBindingHintsSchema = exports.topologyBindingHintSchema = exports.topologyInvestigationContextSchema = exports.relatedServiceInfoSchema = exports.investigationResourceSchema = exports.targetServiceInfoSchema = exports.topologyInitializationStateSchema = exports.topologyPrimaryAnchorSchema = exports.topologyCandidateTargetSchema = exports.topologyReasonCodeSchema = exports.nestedTopologyResponseSchema = exports.nestedTopologyTruncationSchema = exports.nestedTopologyStatsSchema = exports.nestedTopologyLimitsSchema = exports.nestedTopologyRelationshipSchema = exports.nestedTopologyEvidenceSchema = exports.nestedTopologyTruncationReasonSchema = exports.diagnosticCriticalitySchema = exports.NESTED_TOPOLOGY_RESPONSE_LIMITS = exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS = exports.GATEWAY_TOPOLOGY_CONTEXT_VERSION = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const correlation_core_1 = require("@scoutflo/correlation-core");
6
6
  const providers_1 = require("../providers");
@@ -19,10 +19,16 @@ exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS = {
19
19
  nestedEvidencePerRelationship: 25,
20
20
  preferredBindingSpecialists: 25,
21
21
  mapKey: 128,
22
- maxDepth: 12,
22
+ maxDepth: 13,
23
23
  maxNodes: 1000,
24
24
  aggregateBytes: 1048576,
25
25
  };
26
+ exports.NESTED_TOPOLOGY_RESPONSE_LIMITS = {
27
+ maxDepth: 12,
28
+ maxNodes: exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.maxNodes,
29
+ mapKey: exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.mapKey,
30
+ aggregateBytes: exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.aggregateBytes,
31
+ };
26
32
  const boundedStringSchema = zod_1.z.string().min(1).max(exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.string);
27
33
  const reasonCodesSchema = zod_1.z.array(boundedStringSchema)
28
34
  .max(exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.reasonCodes);
@@ -45,18 +51,18 @@ exports.nestedTopologyEvidenceSchema = correlation_core_1.correlationEvidenceSch
45
51
  facts: zod_1.z.array(correlation_core_1.correlationEvidenceSchema.shape.facts.unwrap().element).max(50).optional(),
46
52
  provider: boundedStringSchema.optional(),
47
53
  });
48
- const PREFLIGHT_REJECTED = Symbol('gateway-topology-context-preflight-rejected');
49
- function withinStructuralBudget(value) {
50
- const stack = [{ value, depth: 0 }];
51
- const seen = new WeakSet();
54
+ function structuralBudgetViolation(value, limits) {
55
+ const stack = [{ value, depth: 0, path: '$' }];
56
+ const seen = new WeakMap();
52
57
  let nodes = 0;
53
58
  let bytes = 0;
54
59
  while (stack.length > 0) {
55
60
  const current = stack.pop();
56
61
  if (!current)
57
62
  break;
58
- if (current.depth > exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.maxDepth)
59
- return false;
63
+ if (current.depth > limits.maxDepth) {
64
+ return { budget: 'maxDepth', limit: limits.maxDepth, actual: current.depth, path: current.path };
65
+ }
60
66
  const item = current.value;
61
67
  if (typeof item === 'string') {
62
68
  bytes += Buffer.byteLength(item, 'utf8');
@@ -64,29 +70,44 @@ function withinStructuralBudget(value) {
64
70
  else if (item && typeof item === 'object') {
65
71
  // JSON transport cannot contain cycles or repeated object identities. Reject both
66
72
  // before recursive Zod evaluation rather than allowing a cycle to reach z.lazy().
67
- if (seen.has(item))
68
- return false;
69
- seen.add(item);
73
+ if (seen.has(item)) {
74
+ return { budget: 'repeatedObjectIdentity', limit: 1, actual: 2, path: current.path };
75
+ }
76
+ seen.set(item, current.path);
70
77
  nodes += 1;
71
- if (nodes > exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.maxNodes)
72
- return false;
78
+ if (nodes > limits.maxNodes) {
79
+ return { budget: 'maxNodes', limit: limits.maxNodes, actual: nodes, path: current.path };
80
+ }
73
81
  for (const [key, child] of Object.entries(item)) {
74
- if (key.length > exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.mapKey)
75
- return false;
82
+ const childPath = Array.isArray(item) ? `${current.path}[${key}]` : `${current.path}.${key}`;
83
+ if (key.length > limits.mapKey) {
84
+ return { budget: 'mapKey', limit: limits.mapKey, actual: key.length, path: childPath };
85
+ }
76
86
  bytes += Buffer.byteLength(key, 'utf8');
77
- stack.push({ value: child, depth: current.depth + 1 });
87
+ stack.push({ value: child, depth: current.depth + 1, path: childPath });
78
88
  }
79
89
  }
80
90
  else {
81
91
  bytes += Buffer.byteLength(String(item ?? ''), 'utf8');
82
92
  }
83
- if (bytes > exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS.aggregateBytes)
84
- return false;
93
+ if (bytes > limits.aggregateBytes) {
94
+ return { budget: 'aggregateBytes', limit: limits.aggregateBytes, actual: bytes, path: current.path };
95
+ }
85
96
  }
86
- return true;
97
+ return null;
87
98
  }
88
- function structuralPreflight(value) {
89
- return withinStructuralBudget(value) ? value : PREFLIGHT_REJECTED;
99
+ function structuralPreflight(limits) {
100
+ return (value, ctx) => {
101
+ const violation = structuralBudgetViolation(value, limits);
102
+ if (!violation)
103
+ return value;
104
+ ctx.addIssue({
105
+ code: zod_1.z.ZodIssueCode.custom,
106
+ message: `structural budget ${violation.budget} exceeded: limit ${violation.limit}, actual ${violation.actual}, path ${violation.path}`,
107
+ params: violation,
108
+ });
109
+ return zod_1.z.NEVER;
110
+ };
90
111
  }
91
112
  exports.nestedTopologyRelationshipSchema = zod_1.z.object({
92
113
  id: boundedStringSchema,
@@ -149,7 +170,7 @@ const nestedTopologyResponseBaseSchema = zod_1.z.object({
149
170
  limits: exports.nestedTopologyLimitsSchema.optional(),
150
171
  truncation: exports.nestedTopologyTruncationSchema.optional(),
151
172
  }).passthrough();
152
- exports.nestedTopologyResponseSchema = zod_1.z.preprocess(structuralPreflight, nestedTopologyResponseBaseSchema);
173
+ exports.nestedTopologyResponseSchema = zod_1.z.preprocess(structuralPreflight(exports.NESTED_TOPOLOGY_RESPONSE_LIMITS), nestedTopologyResponseBaseSchema);
153
174
  exports.topologyReasonCodeSchema = boundedStringSchema;
154
175
  exports.topologyCandidateTargetSchema = zod_1.z.object({
155
176
  entityType: common_1.entityKindSchema,
@@ -333,5 +354,5 @@ const gatewayTopologyContextBaseSchema = zod_1.z.object({
333
354
  .default(exports.DEFAULT_TOPOLOGY_PROJECTION_COMPATIBILITY),
334
355
  diagnostics: exports.gatewayTopologyDiagnosticsSchema.optional(),
335
356
  }).passthrough();
336
- exports.gatewayTopologyContextSchema = zod_1.z.preprocess(structuralPreflight, gatewayTopologyContextBaseSchema);
357
+ exports.gatewayTopologyContextSchema = zod_1.z.preprocess(structuralPreflight(exports.GATEWAY_TOPOLOGY_CONTEXT_LIMITS), gatewayTopologyContextBaseSchema);
337
358
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/investigation/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/investigation/context.ts"],"names":[],"mappings":"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"}
@@ -51,14 +51,14 @@ export declare const runtimeContainerProvenanceSchema: z.ZodEffects<z.ZodObject<
51
51
  }, "strict", z.ZodTypeAny, {
52
52
  status: "unavailable" | "unverified";
53
53
  scope: "pod_metadata";
54
- reason?: string | undefined;
55
54
  repository?: string | undefined;
55
+ reason?: string | undefined;
56
56
  commit_sha?: string | undefined;
57
57
  }, {
58
58
  status: "unavailable" | "unverified";
59
59
  scope: "pod_metadata";
60
- reason?: string | undefined;
61
60
  repository?: string | undefined;
61
+ reason?: string | undefined;
62
62
  commit_sha?: string | undefined;
63
63
  }>>;
64
64
  }, "strict", z.ZodTypeAny, {
@@ -81,8 +81,8 @@ export declare const runtimeContainerProvenanceSchema: z.ZodEffects<z.ZodObject<
81
81
  claimed_source?: {
82
82
  status: "unavailable" | "unverified";
83
83
  scope: "pod_metadata";
84
- reason?: string | undefined;
85
84
  repository?: string | undefined;
85
+ reason?: string | undefined;
86
86
  commit_sha?: string | undefined;
87
87
  } | undefined;
88
88
  }, {
@@ -105,8 +105,8 @@ export declare const runtimeContainerProvenanceSchema: z.ZodEffects<z.ZodObject<
105
105
  claimed_source?: {
106
106
  status: "unavailable" | "unverified";
107
107
  scope: "pod_metadata";
108
- reason?: string | undefined;
109
108
  repository?: string | undefined;
109
+ reason?: string | undefined;
110
110
  commit_sha?: string | undefined;
111
111
  } | undefined;
112
112
  }>, {
@@ -129,8 +129,8 @@ export declare const runtimeContainerProvenanceSchema: z.ZodEffects<z.ZodObject<
129
129
  claimed_source?: {
130
130
  status: "unavailable" | "unverified";
131
131
  scope: "pod_metadata";
132
- reason?: string | undefined;
133
132
  repository?: string | undefined;
133
+ reason?: string | undefined;
134
134
  commit_sha?: string | undefined;
135
135
  } | undefined;
136
136
  }, {
@@ -153,8 +153,8 @@ export declare const runtimeContainerProvenanceSchema: z.ZodEffects<z.ZodObject<
153
153
  claimed_source?: {
154
154
  status: "unavailable" | "unverified";
155
155
  scope: "pod_metadata";
156
- reason?: string | undefined;
157
156
  repository?: string | undefined;
157
+ reason?: string | undefined;
158
158
  commit_sha?: string | undefined;
159
159
  } | undefined;
160
160
  }>;
@@ -196,14 +196,14 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
196
196
  }, "strict", z.ZodTypeAny, {
197
197
  status: "unavailable" | "unverified";
198
198
  scope: "pod_metadata";
199
- reason?: string | undefined;
200
199
  repository?: string | undefined;
200
+ reason?: string | undefined;
201
201
  commit_sha?: string | undefined;
202
202
  }, {
203
203
  status: "unavailable" | "unverified";
204
204
  scope: "pod_metadata";
205
- reason?: string | undefined;
206
205
  repository?: string | undefined;
206
+ reason?: string | undefined;
207
207
  commit_sha?: string | undefined;
208
208
  }>>;
209
209
  }, "strict", z.ZodTypeAny, {
@@ -226,8 +226,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
226
226
  claimed_source?: {
227
227
  status: "unavailable" | "unverified";
228
228
  scope: "pod_metadata";
229
- reason?: string | undefined;
230
229
  repository?: string | undefined;
230
+ reason?: string | undefined;
231
231
  commit_sha?: string | undefined;
232
232
  } | undefined;
233
233
  }, {
@@ -250,8 +250,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
250
250
  claimed_source?: {
251
251
  status: "unavailable" | "unverified";
252
252
  scope: "pod_metadata";
253
- reason?: string | undefined;
254
253
  repository?: string | undefined;
254
+ reason?: string | undefined;
255
255
  commit_sha?: string | undefined;
256
256
  } | undefined;
257
257
  }>, {
@@ -274,8 +274,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
274
274
  claimed_source?: {
275
275
  status: "unavailable" | "unverified";
276
276
  scope: "pod_metadata";
277
- reason?: string | undefined;
278
277
  repository?: string | undefined;
278
+ reason?: string | undefined;
279
279
  commit_sha?: string | undefined;
280
280
  } | undefined;
281
281
  }, {
@@ -298,8 +298,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
298
298
  claimed_source?: {
299
299
  status: "unavailable" | "unverified";
300
300
  scope: "pod_metadata";
301
- reason?: string | undefined;
302
301
  repository?: string | undefined;
302
+ reason?: string | undefined;
303
303
  commit_sha?: string | undefined;
304
304
  } | undefined;
305
305
  }>, "many">;
@@ -329,8 +329,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
329
329
  claimed_source?: {
330
330
  status: "unavailable" | "unverified";
331
331
  scope: "pod_metadata";
332
- reason?: string | undefined;
333
332
  repository?: string | undefined;
333
+ reason?: string | undefined;
334
334
  commit_sha?: string | undefined;
335
335
  } | undefined;
336
336
  }[];
@@ -358,8 +358,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
358
358
  claimed_source?: {
359
359
  status: "unavailable" | "unverified";
360
360
  scope: "pod_metadata";
361
- reason?: string | undefined;
362
361
  repository?: string | undefined;
362
+ reason?: string | undefined;
363
363
  commit_sha?: string | undefined;
364
364
  } | undefined;
365
365
  }[];
@@ -389,8 +389,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
389
389
  claimed_source?: {
390
390
  status: "unavailable" | "unverified";
391
391
  scope: "pod_metadata";
392
- reason?: string | undefined;
393
392
  repository?: string | undefined;
393
+ reason?: string | undefined;
394
394
  commit_sha?: string | undefined;
395
395
  } | undefined;
396
396
  }[];
@@ -418,8 +418,8 @@ export declare const runtimeWorkloadProvenanceSchema: z.ZodEffects<z.ZodObject<{
418
418
  claimed_source?: {
419
419
  status: "unavailable" | "unverified";
420
420
  scope: "pod_metadata";
421
- reason?: string | undefined;
422
421
  repository?: string | undefined;
422
+ reason?: string | undefined;
423
423
  commit_sha?: string | undefined;
424
424
  } | undefined;
425
425
  }[];
@@ -37,7 +37,9 @@ export declare const TOPOLOGY_RELATION_TYPE: {
37
37
  readonly MIGRATES_TO: "MIGRATES_TO";
38
38
  readonly REPLACES: "REPLACES";
39
39
  readonly REPLICATED_FROM: "REPLICATED_FROM";
40
+ readonly IMPLEMENTED_BY: "IMPLEMENTED_BY";
41
+ readonly DEPLOYS: "DEPLOYS";
40
42
  };
41
- export declare const TOPOLOGY_RELATION_TYPE_VALUES: readonly ["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "BI_DIRECTIONAL_CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "ROUTES_ALERTS_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM"];
42
- export declare const topologyRelationTypeSchema: z.ZodEnum<["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "BI_DIRECTIONAL_CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "ROUTES_ALERTS_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM"]>;
43
+ export declare const TOPOLOGY_RELATION_TYPE_VALUES: readonly ["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "BI_DIRECTIONAL_CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "ROUTES_ALERTS_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM", "IMPLEMENTED_BY", "DEPLOYS"];
44
+ export declare const topologyRelationTypeSchema: z.ZodEnum<["DEPLOYED_ON", "DEPLOYED_AS", "RUNS_ON", "PART_OF", "CALLS", "BI_DIRECTIONAL_CALLS", "PUBLISHES_TO", "SUBSCRIBES_TO", "CONSUMES", "PROVIDES", "PROXIES", "ROUTES_TO", "ROUTES_ALERTS_TO", "DEPENDS_ON", "AGGREGATES", "COMPOSES", "USES", "STORES_DATA_IN", "CACHES_IN", "CONFIGURED_BY", "EXPOSED_VIA", "PROTECTED_BY", "AUTHENTICATES_WITH", "OWNS", "OBSERVES", "MONITORED_BY", "SENDS_METRICS_TO", "SENDS_LOGS_TO", "SENDS_TRACES_TO", "CONNECTS_TO", "REPLICATES", "BACKS_UP", "MIRRORS", "TRIGGERS", "MIGRATES_TO", "REPLACES", "REPLICATED_FROM", "IMPLEMENTED_BY", "DEPLOYS"]>;
43
45
  export type TopologyRelationType = z.infer<typeof topologyRelationTypeSchema>;
@@ -42,6 +42,8 @@ exports.TOPOLOGY_RELATION_TYPE = {
42
42
  MIGRATES_TO: 'MIGRATES_TO',
43
43
  REPLACES: 'REPLACES',
44
44
  REPLICATED_FROM: 'REPLICATED_FROM',
45
+ IMPLEMENTED_BY: 'IMPLEMENTED_BY',
46
+ DEPLOYS: 'DEPLOYS',
45
47
  };
46
48
  exports.TOPOLOGY_RELATION_TYPE_VALUES = [
47
49
  exports.TOPOLOGY_RELATION_TYPE.DEPLOYED_ON,
@@ -81,6 +83,8 @@ exports.TOPOLOGY_RELATION_TYPE_VALUES = [
81
83
  exports.TOPOLOGY_RELATION_TYPE.MIGRATES_TO,
82
84
  exports.TOPOLOGY_RELATION_TYPE.REPLACES,
83
85
  exports.TOPOLOGY_RELATION_TYPE.REPLICATED_FROM,
86
+ exports.TOPOLOGY_RELATION_TYPE.IMPLEMENTED_BY,
87
+ exports.TOPOLOGY_RELATION_TYPE.DEPLOYS,
84
88
  ];
85
89
  exports.topologyRelationTypeSchema = zod_1.z.enum(exports.TOPOLOGY_RELATION_TYPE_VALUES);
86
90
  //# sourceMappingURL=relationTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relationTypes.js","sourceRoot":"","sources":["../../../src/topology/relationTypes.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,4DAA4D;AAC5D,uFAAuF;AAC1E,QAAA,sBAAsB,GAAG;IACpC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,oBAAoB,EAAE,sBAAsB;IAC5C,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,kBAAkB;IACpC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;IAC9B,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAEE,QAAA,6BAA6B,GAAG;IAC3C,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,KAAK;IAC5B,8BAAsB,CAAC,oBAAoB;IAC3C,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,SAAS;IAChC,8BAAsB,CAAC,gBAAgB;IACvC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,IAAI;IAC3B,8BAAsB,CAAC,cAAc;IACrC,8BAAsB,CAAC,SAAS;IAChC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,kBAAkB;IACzC,8BAAsB,CAAC,IAAI;IAC3B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,gBAAgB;IACvC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,eAAe;IACtC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,eAAe;CAC9B,CAAC;AAEE,QAAA,0BAA0B,GAAG,OAAC,CAAC,IAAI,CAAC,qCAA6B,CAAC,CAAC"}
1
+ {"version":3,"file":"relationTypes.js","sourceRoot":"","sources":["../../../src/topology/relationTypes.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,4DAA4D;AAC5D,uFAAuF;AAC1E,QAAA,sBAAsB,GAAG;IACpC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,oBAAoB,EAAE,sBAAsB;IAC5C,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,kBAAkB;IACpC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;IAC9B,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,OAAO,EAAE,SAAS;CACV,CAAC;AAEE,QAAA,6BAA6B,GAAG;IAC3C,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,KAAK;IAC5B,8BAAsB,CAAC,oBAAoB;IAC3C,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,SAAS;IAChC,8BAAsB,CAAC,gBAAgB;IACvC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,IAAI;IAC3B,8BAAsB,CAAC,cAAc;IACrC,8BAAsB,CAAC,SAAS;IAChC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,kBAAkB;IACzC,8BAAsB,CAAC,IAAI;IAC3B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,gBAAgB;IACvC,8BAAsB,CAAC,aAAa;IACpC,8BAAsB,CAAC,eAAe;IACtC,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,UAAU;IACjC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,OAAO;IAC9B,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,WAAW;IAClC,8BAAsB,CAAC,QAAQ;IAC/B,8BAAsB,CAAC,eAAe;IACtC,8BAAsB,CAAC,cAAc;IACrC,8BAAsB,CAAC,OAAO;CACtB,CAAC;AAEE,QAAA,0BAA0B,GAAG,OAAC,CAAC,IAAI,CAAC,qCAA6B,CAAC,CAAC"}
@@ -166,9 +166,15 @@ const src_1 = require("../src");
166
166
  strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE.OBSERVES, 'OBSERVES');
167
167
  strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE.CONFIGURED_BY, 'CONFIGURED_BY');
168
168
  strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE.REPLICATED_FROM, 'REPLICATED_FROM');
169
+ strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE.IMPLEMENTED_BY, 'IMPLEMENTED_BY');
170
+ strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE.DEPLOYS, 'DEPLOYS');
169
171
  strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE_VALUES.includes('BI_DIRECTIONAL_CALLS'), true);
172
+ strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE_VALUES.includes('IMPLEMENTED_BY'), true);
173
+ strict_1.default.equal(src_1.TOPOLOGY_RELATION_TYPE_VALUES.includes('DEPLOYS'), true);
170
174
  strict_1.default.equal(src_1.topologyRelationTypeSchema.parse('REPLICATED_FROM'), 'REPLICATED_FROM');
171
175
  strict_1.default.equal(src_1.topologyRelationTypeSchema.parse('SENDS_LOGS_TO'), 'SENDS_LOGS_TO');
176
+ strict_1.default.equal(src_1.topologyRelationTypeSchema.parse('IMPLEMENTED_BY'), 'IMPLEMENTED_BY');
177
+ strict_1.default.equal(src_1.topologyRelationTypeSchema.parse('DEPLOYS'), 'DEPLOYS');
172
178
  strict_1.default.equal(Object.values(src_1.TOPOLOGY_RELATION_TYPE).some((relation) => relation.startsWith('SOURCE_OWNED_')), false);
173
179
  });
174
180
  (0, node_test_1.default)('exports first-pass topology family constants', () => {
@@ -193,9 +199,9 @@ const src_1 = require("../src");
193
199
  ]);
194
200
  strict_1.default.equal(src_1.INTEGRATION_TOPOLOGY_FAMILY.INTEGRATION_RESOURCE, 'integration_resource');
195
201
  strict_1.default.equal(src_1.GITHUB_TOPOLOGY_FAMILY.ACCOUNT, 'account');
196
- strict_1.default.deepEqual([...src_1.GITHUB_TOPOLOGY_FAMILY_VALUES], ['account']);
202
+ strict_1.default.deepEqual([...src_1.GITHUB_TOPOLOGY_FAMILY_VALUES], ['account', 'repository']);
197
203
  strict_1.default.equal(src_1.GITHUB_TOPOLOGY_SOURCE_TYPE.ACCOUNT, 'github_account');
198
- strict_1.default.deepEqual([...src_1.GITHUB_TOPOLOGY_SOURCE_TYPE_VALUES], ['github_account']);
204
+ strict_1.default.deepEqual([...src_1.GITHUB_TOPOLOGY_SOURCE_TYPE_VALUES], ['github_account', 'github_repository']);
199
205
  strict_1.default.equal(src_1.githubTopologyFamilySchema.parse('account'), 'account');
200
206
  strict_1.default.equal(src_1.githubTopologySourceTypeSchema.parse('github_account'), 'github_account');
201
207
  strict_1.default.throws(() => src_1.githubTopologySourceTypeSchema.parse('repository'));
@@ -700,6 +706,10 @@ const src_1 = require("../src");
700
706
  'service_deployed_as_k8s_workload/v1',
701
707
  'observed_service_calls_service/v1',
702
708
  'observed_service_bidirectional_calls_service/v1',
709
+ 'github_account_owns_repository/v1',
710
+ 'service_implemented_by_vcs_repository/v1',
711
+ 'argocd_application_configured_by_vcs_repository/v1',
712
+ 'argocd_application_deploys_k8s_workload/v1',
703
713
  'service_routes_alerts_to_incident_service/v1',
704
714
  'workload_routes_alerts_to_incident_service/v1',
705
715
  'service_sends_metrics_to_prometheus_compatible/v1',
@@ -720,7 +730,13 @@ const src_1 = require("../src");
720
730
  strict_1.default.equal((0, src_1.getConnectionContract)('workload_reports_errors_to_sentry', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.EXPERIMENTAL);
721
731
  strict_1.default.equal((0, src_1.getConnectionContract)('service_sends_traces_to_tracing_provider', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
722
732
  strict_1.default.equal((0, src_1.getConnectionContract)('service_monitored_by_observability_provider', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
723
- strict_1.default.equal((0, src_1.getConnectionContract)('github_account_owns_repository', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.RESERVED);
733
+ strict_1.default.equal((0, src_1.getConnectionContract)('github_account_owns_repository', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
734
+ strict_1.default.equal((0, src_1.getConnectionContract)('service_implemented_by_vcs_repository', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
735
+ strict_1.default.equal((0, src_1.getConnectionContract)('service_implemented_by_vcs_repository', 'v1')?.relation, src_1.TOPOLOGY_RELATION_TYPE.IMPLEMENTED_BY);
736
+ strict_1.default.equal((0, src_1.getConnectionContract)('argocd_application_configured_by_vcs_repository', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
737
+ strict_1.default.equal((0, src_1.getConnectionContract)('argocd_application_configured_by_vcs_repository', 'v1')?.relation, src_1.TOPOLOGY_RELATION_TYPE.CONFIGURED_BY);
738
+ strict_1.default.equal((0, src_1.getConnectionContract)('argocd_application_deploys_k8s_workload', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.ACTIVE);
739
+ strict_1.default.equal((0, src_1.getConnectionContract)('argocd_application_deploys_k8s_workload', 'v1')?.relation, src_1.TOPOLOGY_RELATION_TYPE.DEPLOYS);
724
740
  strict_1.default.equal((0, src_1.getConnectionContract)('argocd_app_deploys_to_k8s_workload', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.CANDIDATE);
725
741
  strict_1.default.equal((0, src_1.getConnectionContract)('argocd_app_sources_github_repository', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.CANDIDATE);
726
742
  strict_1.default.equal((0, src_1.getConnectionContract)('argocd_app_deploys_to_k8s_service', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.EXPERIMENTAL);
@@ -768,8 +784,8 @@ const src_1 = require("../src");
768
784
  strict_1.default.equal((0, src_1.getConnectionContract)('service_uses_ticketing_provider', 'v1')?.status, src_1.CONNECTION_CONTRACT_STATUS.RESERVED);
769
785
  strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.AWS).length, 8);
770
786
  strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.KUBERNETES).length, 7);
771
- strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.GITHUB).length, 3);
772
- strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.ARGOCD).length, 3);
787
+ strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.GITHUB).length, 4);
788
+ strict_1.default.equal((0, src_1.listConnectionContractsByFamily)(src_1.CONNECTION_CONTRACT_FAMILY.ARGOCD).length, 5);
773
789
  strict_1.default.deepEqual((0, src_1.listConnectionContractsByStatus)(src_1.CONNECTION_CONTRACT_STATUS.CANDIDATE).map((contract) => contract.key), [
774
790
  'argocd_app_sources_github_repository',
775
791
  'argocd_app_deploys_to_k8s_workload',
@@ -779,7 +795,6 @@ const src_1 = require("../src");
779
795
  'service_uses_jsm',
780
796
  ]);
781
797
  const requiredHeldBroadKeys = [
782
- 'github_account_owns_repository',
783
798
  'github_repository_defines_service',
784
799
  'github_repository_defines_resource',
785
800
  'argocd_app_sources_github_repository',