@principal-ai/principal-view-core 0.24.15 → 0.24.16

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.
@@ -37,8 +37,20 @@ export declare class TraceOrchestrator {
37
37
  private extractAllSpans;
38
38
  /**
39
39
  * Match spans against storyboards and categorize results
40
+ *
41
+ * Flow:
42
+ * 1. For each span, find workflows where spanPattern matches span name (exact match)
43
+ * 2. For matched workflows, run scenario matching against span events
44
+ * 3. Categorize into: scenario matches, storyboard matches (orphaned), unmatched
40
45
  */
41
46
  private matchSpans;
47
+ /**
48
+ * Match a span against a storyboard's workflows by spanPattern
49
+ *
50
+ * Returns the first workflow where spanPattern === span.spanName,
51
+ * then runs scenario matching on that workflow.
52
+ */
53
+ private matchSpanToWorkflow;
42
54
  /**
43
55
  * Type guard to check if storyboard has content loaded
44
56
  */
@@ -47,10 +59,6 @@ export declare class TraceOrchestrator {
47
59
  * Convert ScopeSpan to OtelSpanData format
48
60
  */
49
61
  private convertToOtelSpan;
50
- /**
51
- * Try to match a span that matched canvas nodes against workflows
52
- */
53
- private matchWorkflowsForSpan;
54
62
  /**
55
63
  * Type guard to check if workflow has content loaded
56
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TraceOrchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestration/TraceOrchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAgB,MAAM,eAAe,CAAC;AACjF,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAS5B,MAAM,2BAA2B,CAAC;AAyCnC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAGhB,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAkB;gBAEZ,MAAM,EAAE,uBAAuB;IAInD;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,6BAA6B,GAAG,OAAO,CAAC,eAAe,CAAC;IA0CrF;;OAEG;YACW,0BAA0B;IA6BxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAgCvB;;OAEG;YACW,UAAU;IAoHxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAyBzB;;OAEG;YACW,qBAAqB;IAwGnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;OAEG;IACH,OAAO,CAAC,eAAe;CAuCxB"}
1
+ {"version":3,"file":"TraceOrchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestration/TraceOrchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAgB,MAAM,eAAe,CAAC;AACjF,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAS5B,MAAM,2BAA2B,CAAC;AAyCnC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAGhB,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAkB;gBAEZ,MAAM,EAAE,uBAAuB;IAInD;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,6BAA6B,GAAG,OAAO,CAAC,eAAe,CAAC;IA0CrF;;OAEG;YACW,0BAA0B;IA6BxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAgCvB;;;;;;;OAOG;YACW,UAAU;IA2GxB;;;;;OAKG;YACW,mBAAmB;IA8HjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAyBzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;OAEG;IACH,OAAO,CAAC,eAAe;CAuCxB"}
@@ -109,6 +109,11 @@ class TraceOrchestrator {
109
109
  }
110
110
  /**
111
111
  * Match spans against storyboards and categorize results
112
+ *
113
+ * Flow:
114
+ * 1. For each span, find workflows where spanPattern matches span name (exact match)
115
+ * 2. For matched workflows, run scenario matching against span events
116
+ * 3. Categorize into: scenario matches, storyboard matches (orphaned), unmatched
112
117
  */
113
118
  async matchSpans(spans, scopeStoryboards) {
114
119
  const scenarioMatches = [];
@@ -137,45 +142,39 @@ class TraceOrchestrator {
137
142
  }
138
143
  // Get spans for this scope
139
144
  const scopeSpans = spans.filter((s) => s.scopeName === scopeWithStoryboards.scopeName);
140
- // Match against each storyboard
145
+ // Match against each storyboard's workflows
141
146
  for (const storyboard of scopeWithStoryboards.snapshot.storyboards) {
142
- // Validate that content is loaded - cast to check content
147
+ // Validate that content is loaded
143
148
  const sbWithContent = storyboard;
144
149
  if (!this.isStoryboardWithContent(sbWithContent)) {
145
150
  console.error('[TraceOrchestrator] Storyboard content not loaded:', storyboard.id);
146
151
  continue;
147
152
  }
148
- // TypeScript now knows sbWithContent is DiscoveredStoryboardWithContent
153
+ // Get canvas for node highlighting (optional)
149
154
  const canvas = sbWithContent.canvas;
150
- if (!canvas.content) {
151
- console.error('[TraceOrchestrator] Canvas content not loaded:', storyboard.id);
152
- continue;
153
- }
154
- // Create SpanMatcher for this canvas
155
- const spanMatcher = new SpanMatcher_1.SpanMatcher(canvas.content);
156
- // Match each span against the canvas
155
+ const spanMatcher = canvas?.content
156
+ ? new SpanMatcher_1.SpanMatcher(canvas.content)
157
+ : null;
158
+ // Match each span against workflows by spanPattern (exact match)
157
159
  for (const span of scopeSpans) {
158
- // Convert ScopeSpan to OtelSpanData format for SpanMatcher
159
- const otelSpan = this.convertToOtelSpan(span);
160
- const resource = { attributes: [] }; // Resource matching happens at scope level
161
- const matchResult = spanMatcher.matchSpan(otelSpan, resource);
162
- if (matchResult.matchedNodeIds.length > 0) {
163
- // This span matched canvas nodes! Now try workflow/scenario matching
164
- const workflowMatch = await this.matchWorkflowsForSpan(span, matchResult.matchedNodeIds, storyboard, scopeWithStoryboards.scopeName);
165
- if (workflowMatch) {
166
- matchedSpanIds.add(span.spanId);
167
- if (workflowMatch.type === 'scenario') {
168
- scenarioMatches.push(workflowMatch.match);
169
- }
170
- else {
171
- storyboardMatches.push(workflowMatch.match);
172
- }
160
+ // Skip if already matched by another storyboard
161
+ if (matchedSpanIds.has(span.spanId))
162
+ continue;
163
+ // Find workflow where spanPattern matches span name
164
+ const workflowMatch = await this.matchSpanToWorkflow(span, sbWithContent, scopeWithStoryboards.scopeName, spanMatcher);
165
+ if (workflowMatch) {
166
+ matchedSpanIds.add(span.spanId);
167
+ if (workflowMatch.type === 'scenario') {
168
+ scenarioMatches.push(workflowMatch.match);
169
+ }
170
+ else {
171
+ storyboardMatches.push(workflowMatch.match);
173
172
  }
174
173
  }
175
174
  }
176
175
  }
177
176
  }
178
- // Collect unmatched spans (spans that didn't match any workflow)
177
+ // Collect unmatched spans (spans that didn't match any workflow's spanPattern)
179
178
  for (const span of spans) {
180
179
  if (!matchedSpanIds.has(span.spanId)) {
181
180
  const scopeHasStoryboards = scopeStoryboards.some((s) => s.scopeName === span.scopeName && s.snapshot !== null);
@@ -186,7 +185,7 @@ class TraceOrchestrator {
186
185
  timestamp: span.startTime,
187
186
  duration: span.duration,
188
187
  reason: scopeHasStoryboards
189
- ? 'No canvas nodes matched this span'
188
+ ? 'No workflow spanPattern matched this span'
190
189
  : 'No storyboards found for scope',
191
190
  attributes: span.attributes,
192
191
  });
@@ -198,76 +197,70 @@ class TraceOrchestrator {
198
197
  return { scenarioMatches, storyboardMatches, unmatchedSpans };
199
198
  }
200
199
  /**
201
- * Type guard to check if storyboard has content loaded
200
+ * Match a span against a storyboard's workflows by spanPattern
201
+ *
202
+ * Returns the first workflow where spanPattern === span.spanName,
203
+ * then runs scenario matching on that workflow.
202
204
  */
203
- isStoryboardWithContent(storyboard) {
204
- const canvas = storyboard.canvas;
205
- return canvas?.content !== undefined;
206
- }
207
- /**
208
- * Convert ScopeSpan to OtelSpanData format
209
- */
210
- convertToOtelSpan(span) {
211
- return {
212
- traceId: span.traceId,
213
- spanId: span.spanId,
214
- name: span.spanName,
215
- parentSpanId: span.parentSpanId,
216
- kind: 1,
217
- startTimeUnixNano: String(span.startTime * 1000000),
218
- endTimeUnixNano: String(span.endTime * 1000000),
219
- attributes: Object.entries(span.attributes || {}).map(([key, value]) => ({
220
- key,
221
- value: { stringValue: String(value) },
222
- })),
223
- events: span.events.map((e) => ({
224
- timeUnixNano: String(e.timestamp * 1000000),
225
- name: e.name,
226
- attributes: Object.entries(e.attributes || {}).map(([key, value]) => ({
227
- key,
228
- value: { stringValue: String(value) },
229
- })),
230
- })),
231
- status: span.status,
232
- };
233
- }
234
- /**
235
- * Try to match a span that matched canvas nodes against workflows
236
- */
237
- async matchWorkflowsForSpan(span, matchedNodeIds, storyboard, scopeName) {
238
- // Convert span events to OtelEvent format for scenario matcher
239
- const otelEvents = span.events.map((e) => ({
240
- name: e.name,
241
- timestamp: e.timestamp,
242
- attributes: e.attributes,
243
- }));
205
+ async matchSpanToWorkflow(span, storyboard, scopeName, spanMatcher) {
244
206
  // Try each workflow in the storyboard
245
207
  for (const workflow of storyboard.workflows) {
246
- // Validate that workflow has content loaded - cast to check content
247
208
  const wfWithContent = workflow;
248
209
  if (!this.isWorkflowWithContent(wfWithContent)) {
249
210
  console.error('[TraceOrchestrator] Workflow content not loaded:', workflow.id);
250
211
  continue;
251
212
  }
252
- // Try to match scenario using scenario matcher
213
+ // Check if span name matches workflow's spanPattern (exact match)
214
+ const spanPattern = wfWithContent.content.spanPattern;
215
+ if (!spanPattern || span.spanName !== spanPattern) {
216
+ continue; // spanPattern doesn't match, try next workflow
217
+ }
218
+ // spanPattern matched! Now run scenario matching
219
+ console.log('[TraceOrchestrator] spanPattern matched:', {
220
+ spanName: span.spanName,
221
+ spanPattern,
222
+ workflowId: wfWithContent.id,
223
+ });
224
+ // Convert span events to OtelEvent format for scenario matcher
225
+ const otelEvents = span.events.map((e) => ({
226
+ name: e.name,
227
+ timestamp: e.timestamp,
228
+ attributes: e.attributes,
229
+ }));
230
+ // Get matched canvas node IDs (for visualization)
231
+ let matchedNodeIds = [];
232
+ if (spanMatcher) {
233
+ const otelSpan = this.convertToOtelSpan(span);
234
+ const matchResult = spanMatcher.matchSpan(otelSpan, { attributes: [] });
235
+ matchedNodeIds = matchResult.matchedNodeIds;
236
+ }
237
+ // Run scenario matching
253
238
  const scenarioMatchResult = (0, scenario_matcher_1.selectScenario)(wfWithContent.content, otelEvents);
254
- // Check if we have a recommended match with actual coverage
255
- // We only consider it a scenario match if there's meaningful overlap
256
239
  if (scenarioMatchResult.recommendedScenario &&
257
240
  scenarioMatchResult.recommendedScenario.matchPercentage > 0) {
258
- const detail = scenarioMatchResult.recommendedScenario;
259
241
  // Category 1: Scenario Match
260
- // For each matched node, create a MatchedSpan
261
- const matchedSpans = matchedNodeIds.map((nodeId) => ({
262
- spanId: span.spanId,
263
- spanName: span.spanName,
264
- nodeId,
265
- timestamp: span.startTime,
266
- duration: span.duration,
267
- events: detail.matchedEventNames,
268
- attributes: span.attributes,
269
- matchConfidence: 'exact',
270
- }));
242
+ const detail = scenarioMatchResult.recommendedScenario;
243
+ const matchedSpans = matchedNodeIds.length > 0
244
+ ? matchedNodeIds.map((nodeId) => ({
245
+ spanId: span.spanId,
246
+ spanName: span.spanName,
247
+ nodeId,
248
+ timestamp: span.startTime,
249
+ duration: span.duration,
250
+ events: detail.matchedEventNames,
251
+ attributes: span.attributes,
252
+ matchConfidence: 'exact',
253
+ }))
254
+ : [{
255
+ spanId: span.spanId,
256
+ spanName: span.spanName,
257
+ nodeId: 'workflow-root',
258
+ timestamp: span.startTime,
259
+ duration: span.duration,
260
+ events: detail.matchedEventNames,
261
+ attributes: span.attributes,
262
+ matchConfidence: 'exact',
263
+ }];
271
264
  return {
272
265
  type: 'scenario',
273
266
  match: {
@@ -284,33 +277,66 @@ class TraceOrchestrator {
284
277
  };
285
278
  }
286
279
  else {
287
- // No scenario matched - create orphaned span
288
- // Category 2: Storyboard Match (canvas matched, but scenario didn't)
289
- const orphanedSpans = matchedNodeIds.map((nodeId) => ({
290
- spanId: span.spanId,
291
- spanName: span.spanName,
292
- nodeId,
293
- timestamp: span.startTime,
294
- duration: span.duration,
295
- reason: 'No scenario matched the observed events',
296
- observedEvents: span.events.map((e) => e.name),
297
- expectedEvents: wfWithContent.content.scenarios.flatMap((s) => Object.keys(s.template.events || {})),
298
- attributes: span.attributes,
299
- }));
280
+ // Category 2: Storyboard Match (workflow matched, but scenario didn't)
281
+ const orphanedSpans = [{
282
+ spanId: span.spanId,
283
+ spanName: span.spanName,
284
+ nodeId: matchedNodeIds[0] || 'workflow-root',
285
+ timestamp: span.startTime,
286
+ duration: span.duration,
287
+ reason: 'Workflow spanPattern matched but no scenario matched the observed events',
288
+ observedEvents: span.events.map((e) => e.name),
289
+ expectedEvents: wfWithContent.content.scenarios.flatMap((s) => Object.keys(s.template.events || {})),
290
+ attributes: span.attributes,
291
+ }];
300
292
  return {
301
293
  type: 'storyboard',
302
294
  match: {
303
295
  storyboardId: storyboard.id,
304
296
  storyboardName: storyboard.name,
305
- workflowId: workflow.id,
306
- workflowName: workflow.name,
297
+ workflowId: wfWithContent.id,
298
+ workflowName: wfWithContent.name,
307
299
  scopeName,
308
300
  orphanedSpans,
309
301
  },
310
302
  };
311
303
  }
312
304
  }
313
- return null; // No workflow matched
305
+ return null; // No workflow's spanPattern matched this span
306
+ }
307
+ /**
308
+ * Type guard to check if storyboard has content loaded
309
+ */
310
+ isStoryboardWithContent(storyboard) {
311
+ const canvas = storyboard.canvas;
312
+ return canvas?.content !== undefined;
313
+ }
314
+ /**
315
+ * Convert ScopeSpan to OtelSpanData format
316
+ */
317
+ convertToOtelSpan(span) {
318
+ return {
319
+ traceId: span.traceId,
320
+ spanId: span.spanId,
321
+ name: span.spanName,
322
+ parentSpanId: span.parentSpanId,
323
+ kind: 1,
324
+ startTimeUnixNano: String(span.startTime * 1000000),
325
+ endTimeUnixNano: String(span.endTime * 1000000),
326
+ attributes: Object.entries(span.attributes || {}).map(([key, value]) => ({
327
+ key,
328
+ value: { stringValue: String(value) },
329
+ })),
330
+ events: span.events.map((e) => ({
331
+ timeUnixNano: String(e.timestamp * 1000000),
332
+ name: e.name,
333
+ attributes: Object.entries(e.attributes || {}).map(([key, value]) => ({
334
+ key,
335
+ value: { stringValue: String(value) },
336
+ })),
337
+ })),
338
+ status: span.status,
339
+ };
314
340
  }
315
341
  /**
316
342
  * Type guard to check if workflow has content loaded
@@ -1 +1 @@
1
- {"version":3,"file":"TraceOrchestrator.js","sourceRoot":"","sources":["../../src/orchestration/TraceOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TraceOrchestrator.js","sourceRoot":"","sources":["../../src/orchestration/TraceOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/workflow/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/workflow/validator.ts"],"names":[],"mappings":"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"}
@@ -177,6 +177,32 @@ class WorkflowValidator {
177
177
  fixable: false,
178
178
  });
179
179
  }
180
+ else if (workflow.spanPattern.includes('*')) {
181
+ // Reject glob/wildcard patterns - only exact match is supported
182
+ violations.push({
183
+ ruleId: 'workflow-span-pattern-exact',
184
+ severity: 'error',
185
+ file: workflowPath,
186
+ path: 'spanPattern',
187
+ message: `spanPattern contains wildcard "*" which is not supported: "${workflow.spanPattern}"`,
188
+ impact: 'Glob patterns create ambiguity when multiple workflows could match the same span',
189
+ suggestion: 'Use an exact span name instead (e.g., "payment.authorize" not "payment.*")',
190
+ fixable: false,
191
+ });
192
+ }
193
+ else if (/[[\]{}()^$|\\+?]/.test(workflow.spanPattern)) {
194
+ // Reject regex special characters (except . which is common in span names)
195
+ violations.push({
196
+ ruleId: 'workflow-span-pattern-exact',
197
+ severity: 'error',
198
+ file: workflowPath,
199
+ path: 'spanPattern',
200
+ message: `spanPattern contains regex special characters which are not supported: "${workflow.spanPattern}"`,
201
+ impact: 'Regex patterns are not supported - only exact span name matching is used',
202
+ suggestion: 'Use an exact span name that matches your instrumented span (e.g., "GET /api/auth/me/route")',
203
+ fixable: false,
204
+ });
205
+ }
180
206
  // Check mode
181
207
  const validModes = ['span-tree', 'timeline'];
182
208
  if (!workflow.mode) {
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/workflow/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/workflow/validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@principal-ai/principal-view-core",
3
- "version": "0.24.15",
3
+ "version": "0.24.16",
4
4
  "description": "Core logic and types for graph-based principal view framework",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -193,6 +193,11 @@ export class TraceOrchestrator {
193
193
 
194
194
  /**
195
195
  * Match spans against storyboards and categorize results
196
+ *
197
+ * Flow:
198
+ * 1. For each span, find workflows where spanPattern matches span name (exact match)
199
+ * 2. For matched workflows, run scenario matching against span events
200
+ * 3. Categorize into: scenario matches, storyboard matches (orphaned), unmatched
196
201
  */
197
202
  private async matchSpans(
198
203
  spans: ScopeSpan[],
@@ -232,57 +237,48 @@ export class TraceOrchestrator {
232
237
  // Get spans for this scope
233
238
  const scopeSpans = spans.filter((s) => s.scopeName === scopeWithStoryboards.scopeName);
234
239
 
235
- // Match against each storyboard
240
+ // Match against each storyboard's workflows
236
241
  for (const storyboard of scopeWithStoryboards.snapshot.storyboards) {
237
- // Validate that content is loaded - cast to check content
242
+ // Validate that content is loaded
238
243
  const sbWithContent = storyboard as DiscoveredStoryboardWithContent;
239
244
  if (!this.isStoryboardWithContent(sbWithContent)) {
240
245
  console.error('[TraceOrchestrator] Storyboard content not loaded:', storyboard.id);
241
246
  continue;
242
247
  }
243
248
 
244
- // TypeScript now knows sbWithContent is DiscoveredStoryboardWithContent
249
+ // Get canvas for node highlighting (optional)
245
250
  const canvas = sbWithContent.canvas as DiscoveredCanvasWithContent;
246
- if (!canvas.content) {
247
- console.error('[TraceOrchestrator] Canvas content not loaded:', storyboard.id);
248
- continue;
249
- }
251
+ const spanMatcher = canvas?.content
252
+ ? new SpanMatcher(canvas.content as ExtendedCanvas)
253
+ : null;
250
254
 
251
- // Create SpanMatcher for this canvas
252
- const spanMatcher = new SpanMatcher(canvas.content as ExtendedCanvas);
253
-
254
- // Match each span against the canvas
255
+ // Match each span against workflows by spanPattern (exact match)
255
256
  for (const span of scopeSpans) {
256
- // Convert ScopeSpan to OtelSpanData format for SpanMatcher
257
- const otelSpan = this.convertToOtelSpan(span);
258
- const resource = { attributes: [] }; // Resource matching happens at scope level
259
-
260
- const matchResult = spanMatcher.matchSpan(otelSpan, resource);
261
-
262
- if (matchResult.matchedNodeIds.length > 0) {
263
- // This span matched canvas nodes! Now try workflow/scenario matching
264
- const workflowMatch = await this.matchWorkflowsForSpan(
265
- span,
266
- matchResult.matchedNodeIds,
267
- storyboard,
268
- scopeWithStoryboards.scopeName
269
- );
270
-
271
- if (workflowMatch) {
272
- matchedSpanIds.add(span.spanId);
273
-
274
- if (workflowMatch.type === 'scenario') {
275
- scenarioMatches.push(workflowMatch.match as ScenarioMatch);
276
- } else {
277
- storyboardMatches.push(workflowMatch.match as StoryboardMatch);
278
- }
257
+ // Skip if already matched by another storyboard
258
+ if (matchedSpanIds.has(span.spanId)) continue;
259
+
260
+ // Find workflow where spanPattern matches span name
261
+ const workflowMatch = await this.matchSpanToWorkflow(
262
+ span,
263
+ sbWithContent,
264
+ scopeWithStoryboards.scopeName,
265
+ spanMatcher
266
+ );
267
+
268
+ if (workflowMatch) {
269
+ matchedSpanIds.add(span.spanId);
270
+
271
+ if (workflowMatch.type === 'scenario') {
272
+ scenarioMatches.push(workflowMatch.match as ScenarioMatch);
273
+ } else {
274
+ storyboardMatches.push(workflowMatch.match as StoryboardMatch);
279
275
  }
280
276
  }
281
277
  }
282
278
  }
283
279
  }
284
280
 
285
- // Collect unmatched spans (spans that didn't match any workflow)
281
+ // Collect unmatched spans (spans that didn't match any workflow's spanPattern)
286
282
  for (const span of spans) {
287
283
  if (!matchedSpanIds.has(span.spanId)) {
288
284
  const scopeHasStoryboards = scopeStoryboards.some(
@@ -296,7 +292,7 @@ export class TraceOrchestrator {
296
292
  timestamp: span.startTime,
297
293
  duration: span.duration,
298
294
  reason: scopeHasStoryboards
299
- ? 'No canvas nodes matched this span'
295
+ ? 'No workflow spanPattern matched this span'
300
296
  : 'No storyboards found for scope',
301
297
  attributes: span.attributes,
302
298
  });
@@ -311,101 +307,88 @@ export class TraceOrchestrator {
311
307
  }
312
308
 
313
309
  /**
314
- * Type guard to check if storyboard has content loaded
310
+ * Match a span against a storyboard's workflows by spanPattern
311
+ *
312
+ * Returns the first workflow where spanPattern === span.spanName,
313
+ * then runs scenario matching on that workflow.
315
314
  */
316
- private isStoryboardWithContent(
317
- storyboard: DiscoveredStoryboardWithContent
318
- ): storyboard is DiscoveredStoryboardWithContent {
319
- const canvas = storyboard.canvas as DiscoveredCanvasWithContent | undefined;
320
- return canvas?.content !== undefined;
321
- }
322
-
323
- /**
324
- * Convert ScopeSpan to OtelSpanData format
325
- */
326
- private convertToOtelSpan(span: ScopeSpan): OtelSpanData {
327
- return {
328
- traceId: span.traceId,
329
- spanId: span.spanId,
330
- name: span.spanName,
331
- parentSpanId: span.parentSpanId,
332
- kind: 1, // SPAN_KIND_INTERNAL (default - would be extracted from original OTLP)
333
- startTimeUnixNano: String(span.startTime * 1000000), // Convert ms back to nanos
334
- endTimeUnixNano: String(span.endTime * 1000000),
335
- attributes: Object.entries(span.attributes || {}).map(([key, value]) => ({
336
- key,
337
- value: { stringValue: String(value) },
338
- })),
339
- events: span.events.map((e) => ({
340
- timeUnixNano: String(e.timestamp * 1000000),
341
- name: e.name,
342
- attributes: Object.entries(e.attributes || {}).map(([key, value]) => ({
343
- key,
344
- value: { stringValue: String(value) },
345
- })),
346
- })),
347
- status: span.status,
348
- };
349
- }
350
-
351
- /**
352
- * Try to match a span that matched canvas nodes against workflows
353
- */
354
- private async matchWorkflowsForSpan(
315
+ private async matchSpanToWorkflow(
355
316
  span: ScopeSpan,
356
- matchedNodeIds: string[],
357
317
  storyboard: DiscoveredStoryboardWithContent,
358
- scopeName: string
318
+ scopeName: string,
319
+ spanMatcher: SpanMatcher | null
359
320
  ): Promise<
360
- | {
361
- type: 'scenario';
362
- match: ScenarioMatch;
363
- }
364
- | {
365
- type: 'storyboard';
366
- match: StoryboardMatch;
367
- }
321
+ | { type: 'scenario'; match: ScenarioMatch }
322
+ | { type: 'storyboard'; match: StoryboardMatch }
368
323
  | null
369
324
  > {
370
- // Convert span events to OtelEvent format for scenario matcher
371
- const otelEvents: OtelEvent[] = span.events.map((e) => ({
372
- name: e.name,
373
- timestamp: e.timestamp,
374
- attributes: e.attributes as Record<string, string | number | boolean>,
375
- }));
376
-
377
325
  // Try each workflow in the storyboard
378
326
  for (const workflow of storyboard.workflows) {
379
- // Validate that workflow has content loaded - cast to check content
380
327
  const wfWithContent = workflow as DiscoveredWorkflowWithContent;
381
328
  if (!this.isWorkflowWithContent(wfWithContent)) {
382
329
  console.error('[TraceOrchestrator] Workflow content not loaded:', workflow.id);
383
330
  continue;
384
331
  }
385
332
 
386
- // Try to match scenario using scenario matcher
333
+ // Check if span name matches workflow's spanPattern (exact match)
334
+ const spanPattern = wfWithContent.content.spanPattern;
335
+ if (!spanPattern || span.spanName !== spanPattern) {
336
+ continue; // spanPattern doesn't match, try next workflow
337
+ }
338
+
339
+ // spanPattern matched! Now run scenario matching
340
+ console.log('[TraceOrchestrator] spanPattern matched:', {
341
+ spanName: span.spanName,
342
+ spanPattern,
343
+ workflowId: wfWithContent.id,
344
+ });
345
+
346
+ // Convert span events to OtelEvent format for scenario matcher
347
+ const otelEvents: OtelEvent[] = span.events.map((e) => ({
348
+ name: e.name,
349
+ timestamp: e.timestamp,
350
+ attributes: e.attributes as Record<string, string | number | boolean>,
351
+ }));
352
+
353
+ // Get matched canvas node IDs (for visualization)
354
+ let matchedNodeIds: string[] = [];
355
+ if (spanMatcher) {
356
+ const otelSpan = this.convertToOtelSpan(span);
357
+ const matchResult = spanMatcher.matchSpan(otelSpan, { attributes: [] });
358
+ matchedNodeIds = matchResult.matchedNodeIds;
359
+ }
360
+
361
+ // Run scenario matching
387
362
  const scenarioMatchResult = selectScenario(wfWithContent.content, otelEvents);
388
363
 
389
- // Check if we have a recommended match with actual coverage
390
- // We only consider it a scenario match if there's meaningful overlap
391
364
  if (
392
365
  scenarioMatchResult.recommendedScenario &&
393
366
  scenarioMatchResult.recommendedScenario.matchPercentage > 0
394
367
  ) {
368
+ // Category 1: Scenario Match
395
369
  const detail = scenarioMatchResult.recommendedScenario;
396
370
 
397
- // Category 1: Scenario Match
398
- // For each matched node, create a MatchedSpan
399
- const matchedSpans: MatchedSpan[] = matchedNodeIds.map((nodeId) => ({
400
- spanId: span.spanId,
401
- spanName: span.spanName,
402
- nodeId,
403
- timestamp: span.startTime,
404
- duration: span.duration,
405
- events: detail.matchedEventNames,
406
- attributes: span.attributes,
407
- matchConfidence: 'exact' as const,
408
- }));
371
+ const matchedSpans: MatchedSpan[] = matchedNodeIds.length > 0
372
+ ? matchedNodeIds.map((nodeId) => ({
373
+ spanId: span.spanId,
374
+ spanName: span.spanName,
375
+ nodeId,
376
+ timestamp: span.startTime,
377
+ duration: span.duration,
378
+ events: detail.matchedEventNames,
379
+ attributes: span.attributes,
380
+ matchConfidence: 'exact' as const,
381
+ }))
382
+ : [{
383
+ spanId: span.spanId,
384
+ spanName: span.spanName,
385
+ nodeId: 'workflow-root', // No canvas node matched, use placeholder
386
+ timestamp: span.startTime,
387
+ duration: span.duration,
388
+ events: detail.matchedEventNames,
389
+ attributes: span.attributes,
390
+ matchConfidence: 'exact' as const,
391
+ }];
409
392
 
410
393
  return {
411
394
  type: 'scenario',
@@ -422,29 +405,29 @@ export class TraceOrchestrator {
422
405
  },
423
406
  };
424
407
  } else {
425
- // No scenario matched - create orphaned span
426
- // Category 2: Storyboard Match (canvas matched, but scenario didn't)
427
- const orphanedSpans: OrphanedSpan[] = matchedNodeIds.map((nodeId) => ({
408
+ // Category 2: Storyboard Match (workflow matched, but scenario didn't)
409
+ const orphanedSpans: OrphanedSpan[] = [{
428
410
  spanId: span.spanId,
429
411
  spanName: span.spanName,
430
- nodeId,
412
+ nodeId: matchedNodeIds[0] || 'workflow-root',
431
413
  timestamp: span.startTime,
432
414
  duration: span.duration,
433
- reason: 'No scenario matched the observed events',
415
+ reason: 'Workflow spanPattern matched but no scenario matched the observed events',
434
416
  observedEvents: span.events.map((e) => e.name),
435
- expectedEvents: wfWithContent.content.scenarios.flatMap((s: { template: { events?: Record<string, unknown> } }) =>
436
- Object.keys(s.template.events || {})
417
+ expectedEvents: wfWithContent.content.scenarios.flatMap(
418
+ (s: { template: { events?: Record<string, unknown> } }) =>
419
+ Object.keys(s.template.events || {})
437
420
  ),
438
421
  attributes: span.attributes,
439
- }));
422
+ }];
440
423
 
441
424
  return {
442
425
  type: 'storyboard',
443
426
  match: {
444
427
  storyboardId: storyboard.id,
445
428
  storyboardName: storyboard.name,
446
- workflowId: workflow.id,
447
- workflowName: workflow.name,
429
+ workflowId: wfWithContent.id,
430
+ workflowName: wfWithContent.name,
448
431
  scopeName,
449
432
  orphanedSpans,
450
433
  },
@@ -452,7 +435,45 @@ export class TraceOrchestrator {
452
435
  }
453
436
  }
454
437
 
455
- return null; // No workflow matched
438
+ return null; // No workflow's spanPattern matched this span
439
+ }
440
+
441
+ /**
442
+ * Type guard to check if storyboard has content loaded
443
+ */
444
+ private isStoryboardWithContent(
445
+ storyboard: DiscoveredStoryboardWithContent
446
+ ): storyboard is DiscoveredStoryboardWithContent {
447
+ const canvas = storyboard.canvas as DiscoveredCanvasWithContent | undefined;
448
+ return canvas?.content !== undefined;
449
+ }
450
+
451
+ /**
452
+ * Convert ScopeSpan to OtelSpanData format
453
+ */
454
+ private convertToOtelSpan(span: ScopeSpan): OtelSpanData {
455
+ return {
456
+ traceId: span.traceId,
457
+ spanId: span.spanId,
458
+ name: span.spanName,
459
+ parentSpanId: span.parentSpanId,
460
+ kind: 1, // SPAN_KIND_INTERNAL (default - would be extracted from original OTLP)
461
+ startTimeUnixNano: String(span.startTime * 1000000), // Convert ms back to nanos
462
+ endTimeUnixNano: String(span.endTime * 1000000),
463
+ attributes: Object.entries(span.attributes || {}).map(([key, value]) => ({
464
+ key,
465
+ value: { stringValue: String(value) },
466
+ })),
467
+ events: span.events.map((e) => ({
468
+ timeUnixNano: String(e.timestamp * 1000000),
469
+ name: e.name,
470
+ attributes: Object.entries(e.attributes || {}).map(([key, value]) => ({
471
+ key,
472
+ value: { stringValue: String(value) },
473
+ })),
474
+ })),
475
+ status: span.status,
476
+ };
456
477
  }
457
478
 
458
479
  /**
@@ -310,6 +310,7 @@ describe('TraceOrchestrator', () => {
310
310
  const workflow: WorkflowTemplate = {
311
311
  name: 'Checkout Flow',
312
312
  mode: 'strict',
313
+ spanPattern: 'handleCheckout', // Match span by name
313
314
  scenarios: [
314
315
  {
315
316
  id: 'successful-checkout',
@@ -438,6 +439,7 @@ describe('TraceOrchestrator', () => {
438
439
  const workflow: WorkflowTemplate = {
439
440
  name: 'Checkout Flow',
440
441
  mode: 'strict',
442
+ spanPattern: 'handleCheckout', // Match span by name
441
443
  scenarios: [
442
444
  {
443
445
  id: 'full-checkout',
@@ -561,6 +563,7 @@ describe('TraceOrchestrator', () => {
561
563
  const workflow: WorkflowTemplate = {
562
564
  name: 'Checkout Flow',
563
565
  mode: 'strict',
566
+ spanPattern: 'handleCheckout', // Match span by name
564
567
  scenarios: [
565
568
  {
566
569
  id: 'successful-checkout',
@@ -662,7 +665,7 @@ describe('TraceOrchestrator', () => {
662
665
  'checkout.failed'
663
666
  );
664
667
  expect(result.storyboardMatches[0].orphanedSpans[0].reason).toContain(
665
- 'No scenario matched'
668
+ 'no scenario matched'
666
669
  );
667
670
 
668
671
  // No unmatched spans
@@ -755,7 +758,7 @@ describe('TraceOrchestrator', () => {
755
758
  // Should have unmatched span
756
759
  expect(result.unmatchedSpans.spans).toHaveLength(1);
757
760
  expect(result.unmatchedSpans.spans[0].spanId).toBe('span-001');
758
- expect(result.unmatchedSpans.spans[0].reason).toBe('No canvas nodes matched this span');
761
+ expect(result.unmatchedSpans.spans[0].reason).toBe('No workflow spanPattern matched this span');
759
762
  });
760
763
 
761
764
  it('should mark all spans as unmatched when scope has no storyboards', async () => {
@@ -951,6 +954,7 @@ describe('TraceOrchestrator', () => {
951
954
  const workflow: WorkflowTemplate = {
952
955
  name: 'Test Workflow',
953
956
  mode: 'strict',
957
+ spanPattern: 'operation', // Match span by name
954
958
  scenarios: [
955
959
  {
956
960
  id: 'scenario-1',
@@ -301,6 +301,30 @@ export class WorkflowValidator {
301
301
  suggestion: 'Provide a valid span name (e.g., "payment.authorize", "checkout.process")',
302
302
  fixable: false,
303
303
  });
304
+ } else if (workflow.spanPattern.includes('*')) {
305
+ // Reject glob/wildcard patterns - only exact match is supported
306
+ violations.push({
307
+ ruleId: 'workflow-span-pattern-exact',
308
+ severity: 'error',
309
+ file: workflowPath,
310
+ path: 'spanPattern',
311
+ message: `spanPattern contains wildcard "*" which is not supported: "${workflow.spanPattern}"`,
312
+ impact: 'Glob patterns create ambiguity when multiple workflows could match the same span',
313
+ suggestion: 'Use an exact span name instead (e.g., "payment.authorize" not "payment.*")',
314
+ fixable: false,
315
+ });
316
+ } else if (/[[\]{}()^$|\\+?]/.test(workflow.spanPattern)) {
317
+ // Reject regex special characters (except . which is common in span names)
318
+ violations.push({
319
+ ruleId: 'workflow-span-pattern-exact',
320
+ severity: 'error',
321
+ file: workflowPath,
322
+ path: 'spanPattern',
323
+ message: `spanPattern contains regex special characters which are not supported: "${workflow.spanPattern}"`,
324
+ impact: 'Regex patterns are not supported - only exact span name matching is used',
325
+ suggestion: 'Use an exact span name that matches your instrumented span (e.g., "GET /api/auth/me/route")',
326
+ fixable: false,
327
+ });
304
328
  }
305
329
 
306
330
  // Check mode