@principal-ai/principal-view-core 0.26.28 → 0.26.30

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.
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ /**
3
+ * Scope Events Validator
4
+ *
5
+ * Validates that each instrumentation scope documented in architecture.scopes.canvas
6
+ * has a corresponding {scope-name}.events.canvas file documenting its event vocabulary.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ScopeEventsValidator = void 0;
10
+ const fs_1 = require("fs");
11
+ const path_1 = require("path");
12
+ /**
13
+ * Convert scope name to events canvas filename
14
+ * e.g., "backlog.md.cli" -> "backlog-md-cli.events.canvas"
15
+ */
16
+ function scopeToEventsCanvasFilename(scope) {
17
+ return `${scope.replace(/\./g, '-')}.events.canvas`;
18
+ }
19
+ /**
20
+ * Validates that scopes have corresponding events canvas files
21
+ */
22
+ class ScopeEventsValidator {
23
+ /**
24
+ * Validate that each scope documented in scopes canvas has an events canvas
25
+ */
26
+ async validate(context) {
27
+ const violations = [];
28
+ const { scopesCanvas, scopesCanvasPath, basePath } = context;
29
+ const scopesWithEvents = [];
30
+ const scopesMissingEvents = [];
31
+ // If no scopes canvas, nothing to validate
32
+ if (!scopesCanvas) {
33
+ return {
34
+ valid: true,
35
+ violations: [],
36
+ coverage: {
37
+ totalScopes: 0,
38
+ scopesWithEvents: [],
39
+ scopesMissingEvents: [],
40
+ },
41
+ };
42
+ }
43
+ // Extract scope nodes from the canvas
44
+ const scopeNodes = (scopesCanvas.nodes || []).filter((node) => node.type === 'otel-scope');
45
+ // Check each scope for corresponding events canvas
46
+ for (const scopeNode of scopeNodes) {
47
+ const scope = scopeNode.otel?.scope;
48
+ if (!scope)
49
+ continue;
50
+ const eventsCanvasFilename = scopeToEventsCanvasFilename(scope);
51
+ const eventsCanvasPath = (0, path_1.join)(basePath, '.principal-views', eventsCanvasFilename);
52
+ const relativePath = `.principal-views/${eventsCanvasFilename}`;
53
+ if ((0, fs_1.existsSync)(eventsCanvasPath)) {
54
+ scopesWithEvents.push(scope);
55
+ }
56
+ else {
57
+ scopesMissingEvents.push(scope);
58
+ violations.push({
59
+ ruleId: 'scope-events-canvas-required',
60
+ severity: 'warn',
61
+ scope,
62
+ expectedPath: relativePath,
63
+ message: `Scope "${scope}" is missing an events canvas`,
64
+ impact: `Event vocabulary for scope "${scope}" is not documented. This makes it impossible to:
65
+ - Understand what events the scope emits
66
+ - Validate event flows match actual code
67
+ - Track event schema changes over time
68
+ - Generate documentation for implementers`,
69
+ suggestion: `Create ${relativePath} that documents:
70
+ - Event namespaces (groups of related events like "validation", "file", etc.)
71
+ - Events within each namespace with their attributes
72
+ - Adjacency relationships (which event namespaces connect in workflows)
73
+
74
+ See architecture.events.md for conventions.`,
75
+ });
76
+ }
77
+ }
78
+ return {
79
+ valid: violations.filter(v => v.severity === 'error').length === 0,
80
+ violations,
81
+ coverage: {
82
+ totalScopes: scopeNodes.length,
83
+ scopesWithEvents,
84
+ scopesMissingEvents,
85
+ },
86
+ };
87
+ }
88
+ }
89
+ exports.ScopeEventsValidator = ScopeEventsValidator;
90
+ //# sourceMappingURL=ScopeEventsValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScopeEventsValidator.js","sourceRoot":"","sources":["../../src/events/ScopeEventsValidator.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,2BAAgC;AAChC,+BAAqC;AA+DrC;;;GAGG;AACH,SAAS,2BAA2B,CAAC,KAAa;IAChD,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAa,oBAAoB;IAC/B;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAqC;QAClD,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE7D,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,2CAA2C;QAC3C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE;oBACR,WAAW,EAAE,CAAC;oBACd,gBAAgB,EAAE,EAAE;oBACpB,mBAAmB,EAAE,EAAE;iBACxB;aACF,CAAC;SACH;QAED,sCAAsC;QACtC,MAAM,UAAU,GAAG,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAClD,CAAC,IAAI,EAAyB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAC5D,CAAC;QAEF,mDAAmD;QACnD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAClC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC;YACpC,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,MAAM,oBAAoB,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC;YAChE,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;YAClF,MAAM,YAAY,GAAG,oBAAoB,oBAAoB,EAAE,CAAC;YAEhE,IAAI,IAAA,eAAU,EAAC,gBAAgB,CAAC,EAAE;gBAChC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC9B;iBAAM;gBACL,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChC,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,8BAA8B;oBACtC,QAAQ,EAAE,MAAM;oBAChB,KAAK;oBACL,YAAY,EAAE,YAAY;oBAC1B,OAAO,EAAE,UAAU,KAAK,+BAA+B;oBACvD,MAAM,EAAE,+BAA+B,KAAK;;;;0CAIZ;oBAChC,UAAU,EAAE,UAAU,YAAY;;;;;4CAKA;iBACnC,CAAC,CAAC;aACJ;SACF;QAED,OAAO;YACL,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAClE,UAAU;YACV,QAAQ,EAAE;gBACR,WAAW,EAAE,UAAU,CAAC,MAAM;gBAC9B,gBAAgB;gBAChB,mBAAmB;aACpB;SACF,CAAC;IACJ,CAAC;CACF;AAzED,oDAyEC"}
@@ -0,0 +1,5 @@
1
+ export { EventsCanvasValidator } from './EventsCanvasValidator';
2
+ export type { EventNamespaceNode, EventsCanvasValidationContext, EventsCanvasViolation, EventsCanvasValidationResult, } from './EventsCanvasValidator';
3
+ export { ScopeEventsValidator } from './ScopeEventsValidator';
4
+ export type { ScopeEventsValidationContext, ScopeEventsViolation, ScopeEventsValidationResult, } from './ScopeEventsValidator';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EACV,kBAAkB,EAClB,6BAA6B,EAC7B,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,4BAA4B,EAC5B,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ScopeEventsValidator = exports.EventsCanvasValidator = void 0;
4
+ var EventsCanvasValidator_1 = require("./EventsCanvasValidator");
5
+ Object.defineProperty(exports, "EventsCanvasValidator", { enumerable: true, get: function () { return EventsCanvasValidator_1.EventsCanvasValidator; } });
6
+ var ScopeEventsValidator_1 = require("./ScopeEventsValidator");
7
+ Object.defineProperty(exports, "ScopeEventsValidator", { enumerable: true, get: function () { return ScopeEventsValidator_1.ScopeEventsValidator; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";;;AAAA,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAQ9B,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
package/dist/index.d.ts CHANGED
@@ -48,6 +48,8 @@ export type { DiscoveredCanvas, DiscoveredTestTrace, DiscoveredWorkflow, Discove
48
48
  export { buildCanvasFileManifest, buildWorkflowFileManifest, buildStoryboardFileManifest, } from './discovery/CanvasFileManifest';
49
49
  export { ScopesCanvasValidator, DEFAULT_SCOPE_COLOR, DRAFT_NODE_COLOR, getScopeNames, getScopeDefinition, getScopeColor, normalizeScopes, buildScopeColorMap, getAllScopeNames, } from './scopes';
50
50
  export type { ScopesCanvasValidationContext, ScopesCanvasValidationResult, ScopesCanvasViolation, NormalizedScope, } from './scopes';
51
+ export { EventsCanvasValidator } from './events';
52
+ export type { EventNamespaceNode, EventsCanvasValidationContext, EventsCanvasViolation, EventsCanvasValidationResult, } from './events';
51
53
  export { DEFAULT_SPAN_COLOR, extractSpanConvention, extractSpanConventions, buildSpanColorMap, buildSpanColorMapFromCanvases, matchSpanPattern, getSpanColor, resolveEventSpanColor, } from './spans';
52
54
  export type { NormalizedSpanConvention } from './spans';
53
55
  export { ExecutionValidator, createExecutionValidator } from './execution/ExecutionValidator';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,8 +11,8 @@
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.createInMemoryVersionRegistry = exports.InMemoryVersionRegistry = exports.isWarnSeverity = exports.isErrorSeverity = exports.getSpanDuration = exports.parseNanoTime = exports.flattenResourceAttributes = exports.getAttributeValue = exports.findAttribute = exports.getAttributeStringValue = exports.TraceOrchestrator = exports.CompositeRegistry = exports.LocalRegistry = exports.RemoteRegistry = exports.OtlpTraceParser = exports.getWorkflowRootSpan = exports.getEventSpan = exports.getEventTemplateString = exports.isEventTemplate = exports.deriveEdgesFromSequence = exports.extractEventSpans = exports.setNestedValue = exports.getNestedValue = exports.computeAggregates = exports.hasEventMatching = exports.getRequiredEvents = exports.selectScenario = exports.ParsedTemplate = exports.parseTemplate = exports.renderEventTemplate = exports.renderWorkflow = exports.getConfigNameFromFilename = exports.isYamlFile = exports.parseYaml = exports.CanvasConverter = exports.resolveCanvasColor = exports.CANVAS_COLOR_PRESETS = exports.getOtelNodeIdentifier = exports.isOtelNode = exports.isOtelBoundaryNode = exports.isOtelResourceNode = exports.isOtelScopeNode = exports.isOtelSpanConventionNode = exports.isOtelEventNode = exports.isStandardCanvasNode = exports.hasPVExtension = exports.isGroupNode = exports.isLinkNode = exports.isFileNode = exports.isTextNode = void 0;
14
- exports.buildEventNodeMap = exports.buildStoryboardContext = exports.LibraryDiscovery = exports.validateLibraryStructure = exports.LibraryConverter = exports.LibraryLoader = exports.EventRecorderService = exports.SessionManager = exports.PathBasedEventProcessor = exports.analyzeCoverage = exports.createDashboardValidator = exports.DashboardValidator = exports.createExecutionValidator = exports.ExecutionValidator = exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.ScopesCanvasValidator = exports.buildStoryboardFileManifest = exports.buildWorkflowFileManifest = exports.buildCanvasFileManifest = exports.CanvasDiscovery = exports.SpanMatcher = exports.getScopeMatchSummary = exports.scopeHasMatches = exports.getScopeWithMostSpans = exports.getSpanCountForScope = exports.findScopeByName = exports.getUnmatchedScopes = exports.getPartialMatchedScopes = exports.getMatchedScopes = exports.getAllScopes = exports.getPrimaryScope = exports.getScopeFromUnmatchedSpan = exports.getScopeFromStoryboardMatch = exports.getScopeFromScenarioMatch = exports.groupSpansByTrace = void 0;
15
- exports.InMemoryFileSystemAdapter = exports.getAllNodeIds = exports.findNodesMatchingEventPattern = exports.resolveWorkflowNodeIds = exports.resolveScenarioNodeIds = exports.getNodeEventName = void 0;
14
+ exports.buildStoryboardContext = exports.LibraryDiscovery = exports.validateLibraryStructure = exports.LibraryConverter = exports.LibraryLoader = exports.EventRecorderService = exports.SessionManager = exports.PathBasedEventProcessor = exports.analyzeCoverage = exports.createDashboardValidator = exports.DashboardValidator = exports.createExecutionValidator = exports.ExecutionValidator = exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = exports.EventsCanvasValidator = exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.ScopesCanvasValidator = exports.buildStoryboardFileManifest = exports.buildWorkflowFileManifest = exports.buildCanvasFileManifest = exports.CanvasDiscovery = exports.SpanMatcher = exports.getScopeMatchSummary = exports.scopeHasMatches = exports.getScopeWithMostSpans = exports.getSpanCountForScope = exports.findScopeByName = exports.getUnmatchedScopes = exports.getPartialMatchedScopes = exports.getMatchedScopes = exports.getAllScopes = exports.getPrimaryScope = exports.getScopeFromUnmatchedSpan = exports.getScopeFromStoryboardMatch = exports.getScopeFromScenarioMatch = exports.groupSpansByTrace = void 0;
15
+ exports.InMemoryFileSystemAdapter = exports.getAllNodeIds = exports.findNodesMatchingEventPattern = exports.resolveWorkflowNodeIds = exports.resolveScenarioNodeIds = exports.getNodeEventName = exports.buildEventNodeMap = void 0;
16
16
  // Import canvas utility functions to re-export (avoids export-from syntax that breaks with exports field)
17
17
  const canvas_1 = require("./types/canvas");
18
18
  Object.defineProperty(exports, "isTextNode", { enumerable: true, get: function () { return canvas_1.isTextNode; } });
@@ -126,6 +126,9 @@ Object.defineProperty(exports, "getScopeColor", { enumerable: true, get: functio
126
126
  Object.defineProperty(exports, "normalizeScopes", { enumerable: true, get: function () { return scopes_1.normalizeScopes; } });
127
127
  Object.defineProperty(exports, "buildScopeColorMap", { enumerable: true, get: function () { return scopes_1.buildScopeColorMap; } });
128
128
  Object.defineProperty(exports, "getAllScopeNames", { enumerable: true, get: function () { return scopes_1.getAllScopeNames; } });
129
+ // Export events module (event namespace canvas validation)
130
+ var events_1 = require("./events");
131
+ Object.defineProperty(exports, "EventsCanvasValidator", { enumerable: true, get: function () { return events_1.EventsCanvasValidator; } });
129
132
  // Export spans module (span conventions + span color utilities)
130
133
  var spans_1 = require("./spans");
131
134
  Object.defineProperty(exports, "DEFAULT_SPAN_COLOR", { enumerable: true, get: function () { return spans_1.DEFAULT_SPAN_COLOR; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/node.d.ts CHANGED
@@ -61,4 +61,6 @@ export { ExecutionLoader, createExecutionLoader } from './execution/ExecutionLoa
61
61
  export type { ExecutionFile, ExecutionLoadResult, } from './execution/ExecutionLoader';
62
62
  export { ScopesCanvasValidator, DEFAULT_SCOPE_COLOR, DRAFT_NODE_COLOR, getScopeNames, getScopeDefinition, getScopeColor, normalizeScopes, buildScopeColorMap, getAllScopeNames, } from './scopes';
63
63
  export type { ScopesCanvasValidationContext, ScopesCanvasValidationResult, ScopesCanvasViolation, NormalizedScope, } from './scopes';
64
+ export { EventsCanvasValidator, ScopeEventsValidator } from './events';
65
+ export type { EventsCanvasValidationContext, EventsCanvasValidationResult, EventsCanvasViolation, ScopeEventsValidationContext, ScopeEventsValidationResult, ScopeEventsViolation, } from './events';
64
66
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,YAAY,EACV,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAGlF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,YAAY,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG5E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAC3G,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAGpE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACjG,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG7F,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACzE,YAAY,EACV,SAAS,EACT,WAAW,EACX,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,aAAa,EACb,aAAa,EACb,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,WAAW,EACX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACtF,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAGjF,cAAc,SAAS,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,2BAA2B,EAC3B,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC9F,YAAY,EACV,aAAa,EACb,eAAe,EACf,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC3E,YAAY,EACV,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,aAAa,EACb,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,qBAAqB,EACrB,eAAe,GAChB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACvE,YAAY,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,UAAU,CAAC"}
package/dist/node.js CHANGED
@@ -26,7 +26,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.ScopesCanvasValidator = exports.createExecutionLoader = exports.ExecutionLoader = exports.createDashboardValidator = exports.DashboardValidator = exports.createExecutionValidator = exports.ExecutionValidator = exports.LibraryDiscovery = exports.CanvasDiscovery = exports.WorkflowValidator = exports.createWorkflowValidator = exports.setNestedValue = exports.getNestedValue = exports.computeAggregates = exports.hasEventMatching = exports.getRequiredEvents = exports.selectScenario = exports.ParsedTemplate = exports.parseTemplate = exports.renderWorkflow = exports.InMemoryFileSystemAdapter = exports.EventRegistry = exports.LibraryConverter = exports.LibraryLoader = exports.getConfigNameFromFilename = exports.isYamlFile = exports.parseYaml = exports.ConfigurationLoader = exports.EventRecorderService = exports.SessionManager = exports.traceToCanvasJson = exports.traceToCanvas = exports.generatorRegistry = exports.TypeScriptGenerator = exports.generateTypes = exports.analyzeCoverage = exports.EventValidationError = exports.createValidatedEmitter = exports.EventValidator = exports.CanvasConverter = exports.GraphConverter = exports.PathMatcher = exports.PathBasedEventProcessor = exports.GraphInstrumentationHelper = exports.ConfigurationValidator = exports.ValidationEngine = exports.EventProcessor = void 0;
29
- exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = void 0;
29
+ exports.ScopeEventsValidator = exports.EventsCanvasValidator = exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = void 0;
30
30
  // Export all types (safe in all environments)
31
31
  __exportStar(require("./types"), exports);
32
32
  // Export core classes (Node.js processing)
@@ -135,4 +135,8 @@ Object.defineProperty(exports, "getScopeColor", { enumerable: true, get: functio
135
135
  Object.defineProperty(exports, "normalizeScopes", { enumerable: true, get: function () { return scopes_1.normalizeScopes; } });
136
136
  Object.defineProperty(exports, "buildScopeColorMap", { enumerable: true, get: function () { return scopes_1.buildScopeColorMap; } });
137
137
  Object.defineProperty(exports, "getAllScopeNames", { enumerable: true, get: function () { return scopes_1.getAllScopeNames; } });
138
+ // Export events module (canvas validation)
139
+ var events_1 = require("./events");
140
+ Object.defineProperty(exports, "EventsCanvasValidator", { enumerable: true, get: function () { return events_1.EventsCanvasValidator; } });
141
+ Object.defineProperty(exports, "ScopeEventsValidator", { enumerable: true, get: function () { return events_1.ScopeEventsValidator; } });
138
142
  //# sourceMappingURL=node.js.map
package/dist/node.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;AAEH,8CAA8C;AAC9C,0CAAwB;AAExB,2CAA2C;AAC3C,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAGvB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AAEzB,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA;AAM/B,iBAAiB;AACjB,mFAAkF;AAAzE,wIAAA,0BAA0B,OAAA;AAEnC,iDAAiD;AACjD,qEAAoE;AAA3D,kIAAA,uBAAuB,OAAA;AAGhC,wBAAwB;AACxB,mDAAkD;AAAzC,0GAAA,WAAW,OAAA;AACpB,yDAAwD;AAA/C,gHAAA,cAAc,OAAA;AAEvB,oCAAoC;AACpC,iDAA+B;AAC/B,2DAA0D;AAAjD,kHAAA,eAAe,OAAA;AAGxB,oCAAoC;AACpC,+DAA2G;AAAlG,iHAAA,cAAc,OAAA;AAAE,yHAAA,sBAAsB,OAAA;AAAE,uHAAA,oBAAoB,OAAA;AAGrE,6EAA6E;AAC7E,iDAAuD;AAA9C,2GAAA,eAAe,OAAA;AAOxB,iEAAiE;AACjE,2DAAiG;AAAxF,+GAAA,aAAa,OAAA;AAAE,qHAAA,mBAAmB,OAAA;AAAE,mHAAA,iBAAiB,OAAA;AAG9D,oCAAoC;AACpC,uDAAyE;AAAhE,8GAAA,aAAa,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAQzC,qDAAqD;AACrD,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAYvB,gCAAgC;AAChC,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAqB7B,4DAA4D;AAC5D,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAE5B,iDAAsF;AAA7E,uGAAA,SAAS,OAAA;AAAE,wGAAA,UAAU,OAAA;AAAE,uHAAA,yBAAyB,OAAA;AAGzD,gEAAgE;AAChE,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,6DAA4D;AAAnD,oHAAA,gBAAgB,OAAA;AAGzB,wDAAwD;AACxD,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AAKtB,+EAAiF;AAAxE,mIAAA,yBAAyB,OAAA;AAElC,kEAAkE;AAClE,0CAAwB;AAExB,4EAA4E;AAC5E,uCAYoB;AAXlB,0GAAA,cAAc,OAAA;AACd,yGAAA,aAAa,OAAA;AACb,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AACd,6GAAA,iBAAiB,OAAA;AACjB,4GAAA,gBAAgB,OAAA;AAChB,6GAAA,iBAAiB,OAAA;AACjB,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AACd,mHAAA,uBAAuB,OAAA;AACvB,6GAAA,iBAAiB,OAAA;AAoBnB,oDAAoD;AACpD,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AAaxB,2BAA2B;AAC3B,iEAAgE;AAAvD,oHAAA,gBAAgB,OAAA;AAQzB,8BAA8B;AAC9B,qEAA8F;AAArF,wHAAA,kBAAkB,OAAA;AAAE,8HAAA,wBAAwB,OAAA;AAOrD,8BAA8B;AAC9B,yCAA2E;AAAlE,+GAAA,kBAAkB,OAAA;AAAE,qHAAA,wBAAwB,OAAA;AAOrD,wDAAwD;AACxD,+DAAqF;AAA5E,kHAAA,eAAe,OAAA;AAAE,wHAAA,qBAAqB,OAAA;AAM/C,6DAA6D;AAC7D,mCAUkB;AAThB,+GAAA,qBAAqB,OAAA;AACrB,6GAAA,mBAAmB,OAAA;AACnB,0GAAA,gBAAgB,OAAA;AAChB,uGAAA,aAAa,OAAA;AACb,4GAAA,kBAAkB,OAAA;AAClB,uGAAA,aAAa,OAAA;AACb,yGAAA,eAAe,OAAA;AACf,4GAAA,kBAAkB,OAAA;AAClB,0GAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.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.26.28",
3
+ "version": "0.26.30",
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",
@@ -778,6 +778,14 @@ export class CanvasDiscovery {
778
778
  };
779
779
  }
780
780
 
781
+ // Check for .events.canvas (must come before .canvas check)
782
+ if (filename.endsWith('.events.canvas')) {
783
+ return {
784
+ basename: filename.replace(/\.events\.canvas$/, ''),
785
+ type: 'events',
786
+ };
787
+ }
788
+
781
789
  // Check for .otel.canvas (must come before .canvas check)
782
790
  if (filename.endsWith('.otel.canvas')) {
783
791
  return {
@@ -786,7 +794,7 @@ export class CanvasDiscovery {
786
794
  };
787
795
  }
788
796
 
789
- // Check for .canvas (but not .otel.canvas, .scopes.canvas, .resources.canvas, or .spans.canvas)
797
+ // Check for .canvas (but not .otel.canvas, .scopes.canvas, .resources.canvas, .spans.canvas, or .events.canvas)
790
798
  if (filename.endsWith('.canvas')) {
791
799
  const basename = filename.replace(/\.canvas$/, '');
792
800
 
@@ -801,6 +809,9 @@ export class CanvasDiscovery {
801
809
  if (basename === 'scopes') {
802
810
  return { basename, type: 'scopes' };
803
811
  }
812
+ if (basename === 'events') {
813
+ return { basename, type: 'events' };
814
+ }
804
815
 
805
816
  return { basename, type: 'regular' };
806
817
  }
@@ -12,12 +12,13 @@ import type { WorkflowTemplate } from '../workflow/types';
12
12
  * - 'scopes': Scopes canvas (.scopes.canvas) for documenting instrumentation scopes
13
13
  * - 'resources': Resources canvas (.resources.canvas) for documenting OTel resources
14
14
  * - 'spans': Spans canvas (.spans.canvas) for documenting span conventions
15
+ * - 'events': Events canvas (.events.canvas) for documenting event namespaces and adjacency
15
16
  * - 'regular': Regular canvas (.canvas) for documentation/architecture diagrams
16
17
  *
17
18
  * Note: Dashboards (.dashboard.json) are NOT canvases - they live in .principal-views/dashboards/
18
19
  * and are discovered separately as DiscoveredDashboard.
19
20
  */
20
- export type CanvasType = 'otel' | 'scopes' | 'resources' | 'spans' | 'regular';
21
+ export type CanvasType = 'otel' | 'scopes' | 'resources' | 'spans' | 'events' | 'regular';
21
22
 
22
23
  /**
23
24
  * Test trace file type discriminator based on extension