@principal-ai/subsystems-core 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -110
- package/dist/index.d.ts +7 -75
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -205
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +7 -62
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +11 -146
- package/dist/node.js.map +1 -1
- package/dist/types/index.d.ts +3 -348
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -19
- package/dist/types/index.js.map +1 -1
- package/package.json +7 -24
- package/src/index.ts +7 -580
- package/src/node.ts +21 -262
- package/src/types/index.ts +3 -456
- package/dist/ConfigurationLoader.d.ts +0 -76
- package/dist/ConfigurationLoader.d.ts.map +0 -1
- package/dist/ConfigurationLoader.js +0 -148
- package/dist/ConfigurationLoader.js.map +0 -1
- package/dist/ConfigurationValidator.d.ts +0 -31
- package/dist/ConfigurationValidator.d.ts.map +0 -1
- package/dist/ConfigurationValidator.js +0 -239
- package/dist/ConfigurationValidator.js.map +0 -1
- package/dist/EventProcessor.d.ts +0 -49
- package/dist/EventProcessor.d.ts.map +0 -1
- package/dist/EventProcessor.js +0 -220
- package/dist/EventProcessor.js.map +0 -1
- package/dist/EventRecorderService.d.ts +0 -305
- package/dist/EventRecorderService.d.ts.map +0 -1
- package/dist/EventRecorderService.js +0 -467
- package/dist/EventRecorderService.js.map +0 -1
- package/dist/LibraryLoader.d.ts +0 -65
- package/dist/LibraryLoader.d.ts.map +0 -1
- package/dist/LibraryLoader.js +0 -197
- package/dist/LibraryLoader.js.map +0 -1
- package/dist/PathBasedEventProcessor.d.ts +0 -77
- package/dist/PathBasedEventProcessor.d.ts.map +0 -1
- package/dist/PathBasedEventProcessor.js +0 -136
- package/dist/PathBasedEventProcessor.js.map +0 -1
- package/dist/SessionManager.d.ts +0 -194
- package/dist/SessionManager.d.ts.map +0 -1
- package/dist/SessionManager.js +0 -302
- package/dist/SessionManager.js.map +0 -1
- package/dist/ValidationEngine.d.ts +0 -31
- package/dist/ValidationEngine.d.ts.map +0 -1
- package/dist/ValidationEngine.js +0 -162
- package/dist/ValidationEngine.js.map +0 -1
- package/dist/auxiliary/AuxiliaryManifestValidator.d.ts +0 -41
- package/dist/auxiliary/AuxiliaryManifestValidator.d.ts.map +0 -1
- package/dist/auxiliary/AuxiliaryManifestValidator.js +0 -100
- package/dist/auxiliary/AuxiliaryManifestValidator.js.map +0 -1
- package/dist/auxiliary/index.d.ts +0 -9
- package/dist/auxiliary/index.d.ts.map +0 -1
- package/dist/auxiliary/index.js +0 -14
- package/dist/auxiliary/index.js.map +0 -1
- package/dist/auxiliary/validateAreaScopeDisjoint.d.ts +0 -24
- package/dist/auxiliary/validateAreaScopeDisjoint.d.ts.map +0 -1
- package/dist/auxiliary/validateAreaScopeDisjoint.js +0 -61
- package/dist/auxiliary/validateAreaScopeDisjoint.js.map +0 -1
- package/dist/cli/codegen.d.ts +0 -41
- package/dist/cli/codegen.d.ts.map +0 -1
- package/dist/cli/codegen.js +0 -257
- package/dist/cli/codegen.js.map +0 -1
- package/dist/codegen/type-generator.d.ts +0 -123
- package/dist/codegen/type-generator.d.ts.map +0 -1
- package/dist/codegen/type-generator.js +0 -433
- package/dist/codegen/type-generator.js.map +0 -1
- package/dist/codegen/usage-example.d.ts +0 -103
- package/dist/codegen/usage-example.d.ts.map +0 -1
- package/dist/codegen/usage-example.js +0 -258
- package/dist/codegen/usage-example.js.map +0 -1
- package/dist/dashboard/DashboardValidator.d.ts +0 -85
- package/dist/dashboard/DashboardValidator.d.ts.map +0 -1
- package/dist/dashboard/DashboardValidator.js +0 -775
- package/dist/dashboard/DashboardValidator.js.map +0 -1
- package/dist/dashboard/index.d.ts +0 -6
- package/dist/dashboard/index.d.ts.map +0 -1
- package/dist/dashboard/index.js +0 -10
- package/dist/dashboard/index.js.map +0 -1
- package/dist/discovery/CanvasDiscovery.d.ts +0 -160
- package/dist/discovery/CanvasDiscovery.d.ts.map +0 -1
- package/dist/discovery/CanvasDiscovery.js +0 -865
- package/dist/discovery/CanvasDiscovery.js.map +0 -1
- package/dist/discovery/CanvasFileManifest.d.ts +0 -86
- package/dist/discovery/CanvasFileManifest.d.ts.map +0 -1
- package/dist/discovery/CanvasFileManifest.js +0 -338
- package/dist/discovery/CanvasFileManifest.js.map +0 -1
- package/dist/discovery/LibraryDiscovery.d.ts +0 -108
- package/dist/discovery/LibraryDiscovery.d.ts.map +0 -1
- package/dist/discovery/LibraryDiscovery.js +0 -263
- package/dist/discovery/LibraryDiscovery.js.map +0 -1
- package/dist/discovery/types.d.ts +0 -403
- package/dist/discovery/types.d.ts.map +0 -1
- package/dist/discovery/types.js +0 -6
- package/dist/discovery/types.js.map +0 -1
- package/dist/events/EventsCanvasValidator.d.ts +0 -139
- package/dist/events/EventsCanvasValidator.d.ts.map +0 -1
- package/dist/events/EventsCanvasValidator.js +0 -281
- package/dist/events/EventsCanvasValidator.js.map +0 -1
- package/dist/events/NamespacePathIndex.d.ts +0 -61
- package/dist/events/NamespacePathIndex.d.ts.map +0 -1
- package/dist/events/NamespacePathIndex.js +0 -74
- package/dist/events/NamespacePathIndex.js.map +0 -1
- package/dist/events/OtelEventPathsValidator.d.ts +0 -75
- package/dist/events/OtelEventPathsValidator.d.ts.map +0 -1
- package/dist/events/OtelEventPathsValidator.js +0 -126
- package/dist/events/OtelEventPathsValidator.js.map +0 -1
- package/dist/events/ScopeEventsValidator.d.ts +0 -68
- package/dist/events/ScopeEventsValidator.d.ts.map +0 -1
- package/dist/events/ScopeEventsValidator.js +0 -91
- package/dist/events/ScopeEventsValidator.js.map +0 -1
- package/dist/events/index.d.ts +0 -9
- package/dist/events/index.d.ts.map +0 -1
- package/dist/events/index.js +0 -12
- package/dist/events/index.js.map +0 -1
- package/dist/events/path-helpers.d.ts +0 -33
- package/dist/events/path-helpers.d.ts.map +0 -1
- package/dist/events/path-helpers.js +0 -59
- package/dist/events/path-helpers.js.map +0 -1
- package/dist/execution/ExecutionLoader.d.ts +0 -135
- package/dist/execution/ExecutionLoader.d.ts.map +0 -1
- package/dist/execution/ExecutionLoader.js +0 -266
- package/dist/execution/ExecutionLoader.js.map +0 -1
- package/dist/execution/ExecutionValidator.d.ts +0 -94
- package/dist/execution/ExecutionValidator.d.ts.map +0 -1
- package/dist/execution/ExecutionValidator.js +0 -503
- package/dist/execution/ExecutionValidator.js.map +0 -1
- package/dist/generated/graph-converter-execution.types.d.ts +0 -177
- package/dist/generated/graph-converter-execution.types.d.ts.map +0 -1
- package/dist/generated/graph-converter-execution.types.js +0 -12
- package/dist/generated/graph-converter-execution.types.js.map +0 -1
- package/dist/helpers/GraphInstrumentationHelper.d.ts +0 -93
- package/dist/helpers/GraphInstrumentationHelper.d.ts.map +0 -1
- package/dist/helpers/GraphInstrumentationHelper.js +0 -252
- package/dist/helpers/GraphInstrumentationHelper.js.map +0 -1
- package/dist/matchers/SpanMatcher.d.ts +0 -107
- package/dist/matchers/SpanMatcher.d.ts.map +0 -1
- package/dist/matchers/SpanMatcher.js +0 -274
- package/dist/matchers/SpanMatcher.js.map +0 -1
- package/dist/orchestration/TraceOrchestrator.d.ts +0 -71
- package/dist/orchestration/TraceOrchestrator.d.ts.map +0 -1
- package/dist/orchestration/TraceOrchestrator.js +0 -416
- package/dist/orchestration/TraceOrchestrator.js.map +0 -1
- package/dist/parsers/OtlpTraceParser.d.ts +0 -131
- package/dist/parsers/OtlpTraceParser.d.ts.map +0 -1
- package/dist/parsers/OtlpTraceParser.js +0 -310
- package/dist/parsers/OtlpTraceParser.js.map +0 -1
- package/dist/registry/CompositeRegistry.d.ts +0 -71
- package/dist/registry/CompositeRegistry.d.ts.map +0 -1
- package/dist/registry/CompositeRegistry.js +0 -113
- package/dist/registry/CompositeRegistry.js.map +0 -1
- package/dist/registry/EventRegistry.d.ts +0 -79
- package/dist/registry/EventRegistry.d.ts.map +0 -1
- package/dist/registry/EventRegistry.js +0 -165
- package/dist/registry/EventRegistry.js.map +0 -1
- package/dist/registry/LocalRegistry.d.ts +0 -111
- package/dist/registry/LocalRegistry.d.ts.map +0 -1
- package/dist/registry/LocalRegistry.js +0 -335
- package/dist/registry/LocalRegistry.js.map +0 -1
- package/dist/registry/RemoteRegistry.d.ts +0 -122
- package/dist/registry/RemoteRegistry.d.ts.map +0 -1
- package/dist/registry/RemoteRegistry.js +0 -399
- package/dist/registry/RemoteRegistry.js.map +0 -1
- package/dist/registry/VersionRegistry.d.ts +0 -51
- package/dist/registry/VersionRegistry.d.ts.map +0 -1
- package/dist/registry/VersionRegistry.js +0 -105
- package/dist/registry/VersionRegistry.js.map +0 -1
- package/dist/rules/config.d.ts +0 -57
- package/dist/rules/config.d.ts.map +0 -1
- package/dist/rules/config.js +0 -382
- package/dist/rules/config.js.map +0 -1
- package/dist/rules/engine.d.ts +0 -70
- package/dist/rules/engine.d.ts.map +0 -1
- package/dist/rules/engine.js +0 -373
- package/dist/rules/engine.js.map +0 -1
- package/dist/rules/implementations/connection-type-references.d.ts +0 -7
- package/dist/rules/implementations/connection-type-references.d.ts.map +0 -1
- package/dist/rules/implementations/connection-type-references.js +0 -107
- package/dist/rules/implementations/connection-type-references.js.map +0 -1
- package/dist/rules/implementations/dead-end-states.d.ts +0 -17
- package/dist/rules/implementations/dead-end-states.d.ts.map +0 -1
- package/dist/rules/implementations/dead-end-states.js +0 -75
- package/dist/rules/implementations/dead-end-states.js.map +0 -1
- package/dist/rules/implementations/index.d.ts +0 -23
- package/dist/rules/implementations/index.d.ts.map +0 -1
- package/dist/rules/implementations/index.js +0 -73
- package/dist/rules/implementations/index.js.map +0 -1
- package/dist/rules/implementations/minimum-node-sources.d.ts +0 -24
- package/dist/rules/implementations/minimum-node-sources.d.ts.map +0 -1
- package/dist/rules/implementations/minimum-node-sources.js +0 -59
- package/dist/rules/implementations/minimum-node-sources.js.map +0 -1
- package/dist/rules/implementations/no-unknown-fields.d.ts +0 -7
- package/dist/rules/implementations/no-unknown-fields.d.ts.map +0 -1
- package/dist/rules/implementations/no-unknown-fields.js +0 -216
- package/dist/rules/implementations/no-unknown-fields.js.map +0 -1
- package/dist/rules/implementations/orphaned-edge-types.d.ts +0 -7
- package/dist/rules/implementations/orphaned-edge-types.d.ts.map +0 -1
- package/dist/rules/implementations/orphaned-edge-types.js +0 -50
- package/dist/rules/implementations/orphaned-edge-types.js.map +0 -1
- package/dist/rules/implementations/orphaned-node-types.d.ts +0 -7
- package/dist/rules/implementations/orphaned-node-types.d.ts.map +0 -1
- package/dist/rules/implementations/orphaned-node-types.js +0 -53
- package/dist/rules/implementations/orphaned-node-types.js.map +0 -1
- package/dist/rules/implementations/required-metadata.d.ts +0 -7
- package/dist/rules/implementations/required-metadata.d.ts.map +0 -1
- package/dist/rules/implementations/required-metadata.js +0 -48
- package/dist/rules/implementations/required-metadata.js.map +0 -1
- package/dist/rules/implementations/state-transition-references.d.ts +0 -7
- package/dist/rules/implementations/state-transition-references.d.ts.map +0 -1
- package/dist/rules/implementations/state-transition-references.js +0 -138
- package/dist/rules/implementations/state-transition-references.js.map +0 -1
- package/dist/rules/implementations/unreachable-states.d.ts +0 -7
- package/dist/rules/implementations/unreachable-states.d.ts.map +0 -1
- package/dist/rules/implementations/unreachable-states.js +0 -83
- package/dist/rules/implementations/unreachable-states.js.map +0 -1
- package/dist/rules/implementations/valid-action-patterns.d.ts +0 -17
- package/dist/rules/implementations/valid-action-patterns.d.ts.map +0 -1
- package/dist/rules/implementations/valid-action-patterns.js +0 -112
- package/dist/rules/implementations/valid-action-patterns.js.map +0 -1
- package/dist/rules/implementations/valid-color-format.d.ts +0 -7
- package/dist/rules/implementations/valid-color-format.d.ts.map +0 -1
- package/dist/rules/implementations/valid-color-format.js +0 -94
- package/dist/rules/implementations/valid-color-format.js.map +0 -1
- package/dist/rules/implementations/valid-edge-types.d.ts +0 -7
- package/dist/rules/implementations/valid-edge-types.d.ts.map +0 -1
- package/dist/rules/implementations/valid-edge-types.js +0 -248
- package/dist/rules/implementations/valid-edge-types.js.map +0 -1
- package/dist/rules/implementations/valid-node-types.d.ts +0 -7
- package/dist/rules/implementations/valid-node-types.d.ts.map +0 -1
- package/dist/rules/implementations/valid-node-types.js +0 -187
- package/dist/rules/implementations/valid-node-types.js.map +0 -1
- package/dist/rules/index.d.ts +0 -28
- package/dist/rules/index.d.ts.map +0 -1
- package/dist/rules/index.js +0 -70
- package/dist/rules/index.js.map +0 -1
- package/dist/rules/types.d.ts +0 -309
- package/dist/rules/types.d.ts.map +0 -1
- package/dist/rules/types.js +0 -40
- package/dist/rules/types.js.map +0 -1
- package/dist/scopes/ScopePathIndex.d.ts +0 -56
- package/dist/scopes/ScopePathIndex.d.ts.map +0 -1
- package/dist/scopes/ScopePathIndex.js +0 -67
- package/dist/scopes/ScopePathIndex.js.map +0 -1
- package/dist/scopes/ScopesCanvasValidator.d.ts +0 -76
- package/dist/scopes/ScopesCanvasValidator.d.ts.map +0 -1
- package/dist/scopes/ScopesCanvasValidator.js +0 -221
- package/dist/scopes/ScopesCanvasValidator.js.map +0 -1
- package/dist/scopes/index.d.ts +0 -12
- package/dist/scopes/index.d.ts.map +0 -1
- package/dist/scopes/index.js +0 -30
- package/dist/scopes/index.js.map +0 -1
- package/dist/scopes/utils.d.ts +0 -85
- package/dist/scopes/utils.d.ts.map +0 -1
- package/dist/scopes/utils.js +0 -143
- package/dist/scopes/utils.js.map +0 -1
- package/dist/scopes/validateScopeNamespaceNesting.d.ts +0 -38
- package/dist/scopes/validateScopeNamespaceNesting.d.ts.map +0 -1
- package/dist/scopes/validateScopeNamespaceNesting.js +0 -69
- package/dist/scopes/validateScopeNamespaceNesting.js.map +0 -1
- package/dist/spans/index.d.ts +0 -12
- package/dist/spans/index.d.ts.map +0 -1
- package/dist/spans/index.js +0 -25
- package/dist/spans/index.js.map +0 -1
- package/dist/spans/utils.d.ts +0 -70
- package/dist/spans/utils.d.ts.map +0 -1
- package/dist/spans/utils.js +0 -205
- package/dist/spans/utils.js.map +0 -1
- package/dist/storyboard/builder.d.ts +0 -135
- package/dist/storyboard/builder.d.ts.map +0 -1
- package/dist/storyboard/builder.js +0 -235
- package/dist/storyboard/builder.js.map +0 -1
- package/dist/storyboard/index.d.ts +0 -9
- package/dist/storyboard/index.d.ts.map +0 -1
- package/dist/storyboard/index.js +0 -18
- package/dist/storyboard/index.js.map +0 -1
- package/dist/storyboard/types.d.ts +0 -101
- package/dist/storyboard/types.d.ts.map +0 -1
- package/dist/storyboard/types.js +0 -10
- package/dist/storyboard/types.js.map +0 -1
- package/dist/telemetry/coverage.d.ts +0 -92
- package/dist/telemetry/coverage.d.ts.map +0 -1
- package/dist/telemetry/coverage.js +0 -335
- package/dist/telemetry/coverage.js.map +0 -1
- package/dist/telemetry/event-validator.d.ts +0 -86
- package/dist/telemetry/event-validator.d.ts.map +0 -1
- package/dist/telemetry/event-validator.js +0 -257
- package/dist/telemetry/event-validator.js.map +0 -1
- package/dist/types/audit.d.ts +0 -236
- package/dist/types/audit.d.ts.map +0 -1
- package/dist/types/audit.js +0 -53
- package/dist/types/audit.js.map +0 -1
- package/dist/types/auxiliary.d.ts +0 -54
- package/dist/types/auxiliary.d.ts.map +0 -1
- package/dist/types/auxiliary.js +0 -27
- package/dist/types/auxiliary.js.map +0 -1
- package/dist/types/canvas-scope.d.ts +0 -156
- package/dist/types/canvas-scope.d.ts.map +0 -1
- package/dist/types/canvas-scope.js +0 -62
- package/dist/types/canvas-scope.js.map +0 -1
- package/dist/types/canvas.d.ts +0 -1138
- package/dist/types/canvas.d.ts.map +0 -1
- package/dist/types/canvas.js +0 -178
- package/dist/types/canvas.js.map +0 -1
- package/dist/types/dashboard.d.ts +0 -170
- package/dist/types/dashboard.d.ts.map +0 -1
- package/dist/types/dashboard.js +0 -14
- package/dist/types/dashboard.js.map +0 -1
- package/dist/types/library.d.ts +0 -227
- package/dist/types/library.d.ts.map +0 -1
- package/dist/types/library.js +0 -16
- package/dist/types/library.js.map +0 -1
- package/dist/types/otel.d.ts +0 -465
- package/dist/types/otel.d.ts.map +0 -1
- package/dist/types/otel.js +0 -163
- package/dist/types/otel.js.map +0 -1
- package/dist/types/path-based-config.d.ts +0 -235
- package/dist/types/path-based-config.d.ts.map +0 -1
- package/dist/types/path-based-config.js +0 -11
- package/dist/types/path-based-config.js.map +0 -1
- package/dist/types/registered-trace.d.ts +0 -337
- package/dist/types/registered-trace.d.ts.map +0 -1
- package/dist/types/registered-trace.js +0 -16
- package/dist/types/registered-trace.js.map +0 -1
- package/dist/types/resource-match.d.ts +0 -207
- package/dist/types/resource-match.d.ts.map +0 -1
- package/dist/types/resource-match.js +0 -74
- package/dist/types/resource-match.js.map +0 -1
- package/dist/types/version-registry.d.ts +0 -137
- package/dist/types/version-registry.d.ts.map +0 -1
- package/dist/types/version-registry.js +0 -10
- package/dist/types/version-registry.js.map +0 -1
- package/dist/utils/CanvasConverter.d.ts +0 -148
- package/dist/utils/CanvasConverter.d.ts.map +0 -1
- package/dist/utils/CanvasConverter.js +0 -530
- package/dist/utils/CanvasConverter.js.map +0 -1
- package/dist/utils/GraphConverter.d.ts +0 -18
- package/dist/utils/GraphConverter.d.ts.map +0 -1
- package/dist/utils/GraphConverter.js +0 -80
- package/dist/utils/GraphConverter.js.map +0 -1
- package/dist/utils/PathMatcher.d.ts +0 -55
- package/dist/utils/PathMatcher.d.ts.map +0 -1
- package/dist/utils/PathMatcher.js +0 -178
- package/dist/utils/PathMatcher.js.map +0 -1
- package/dist/utils/TraceToCanvas.d.ts +0 -83
- package/dist/utils/TraceToCanvas.d.ts.map +0 -1
- package/dist/utils/TraceToCanvas.js +0 -336
- package/dist/utils/TraceToCanvas.js.map +0 -1
- package/dist/utils/YamlParser.d.ts +0 -36
- package/dist/utils/YamlParser.d.ts.map +0 -1
- package/dist/utils/YamlParser.js +0 -92
- package/dist/utils/YamlParser.js.map +0 -1
- package/dist/utils/registeredTraceHelpers.d.ts +0 -76
- package/dist/utils/registeredTraceHelpers.d.ts.map +0 -1
- package/dist/utils/registeredTraceHelpers.js +0 -203
- package/dist/utils/registeredTraceHelpers.js.map +0 -1
- package/dist/utils/traceAggregation.d.ts +0 -25
- package/dist/utils/traceAggregation.d.ts.map +0 -1
- package/dist/utils/traceAggregation.js +0 -140
- package/dist/utils/traceAggregation.js.map +0 -1
- package/dist/validation/OtelCanvasValidator.d.ts +0 -40
- package/dist/validation/OtelCanvasValidator.d.ts.map +0 -1
- package/dist/validation/OtelCanvasValidator.js +0 -59
- package/dist/validation/OtelCanvasValidator.js.map +0 -1
- package/dist/validation/index.d.ts +0 -8
- package/dist/validation/index.d.ts.map +0 -1
- package/dist/validation/index.js +0 -13
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/libraryValidation.d.ts +0 -53
- package/dist/validation/libraryValidation.d.ts.map +0 -1
- package/dist/validation/libraryValidation.js +0 -115
- package/dist/validation/libraryValidation.js.map +0 -1
- package/dist/workflow/edge-derivation.d.ts +0 -111
- package/dist/workflow/edge-derivation.d.ts.map +0 -1
- package/dist/workflow/edge-derivation.js +0 -174
- package/dist/workflow/edge-derivation.js.map +0 -1
- package/dist/workflow/edge-validation.d.ts +0 -170
- package/dist/workflow/edge-validation.d.ts.map +0 -1
- package/dist/workflow/edge-validation.js +0 -332
- package/dist/workflow/edge-validation.js.map +0 -1
- package/dist/workflow/example.d.ts +0 -11
- package/dist/workflow/example.d.ts.map +0 -1
- package/dist/workflow/example.js +0 -310
- package/dist/workflow/example.js.map +0 -1
- package/dist/workflow/index.d.ts +0 -20
- package/dist/workflow/index.d.ts.map +0 -1
- package/dist/workflow/index.js +0 -49
- package/dist/workflow/index.js.map +0 -1
- package/dist/workflow/scenario-matcher.d.ts +0 -63
- package/dist/workflow/scenario-matcher.d.ts.map +0 -1
- package/dist/workflow/scenario-matcher.js +0 -215
- package/dist/workflow/scenario-matcher.js.map +0 -1
- package/dist/workflow/template-parser.d.ts +0 -73
- package/dist/workflow/template-parser.d.ts.map +0 -1
- package/dist/workflow/template-parser.js +0 -280
- package/dist/workflow/template-parser.js.map +0 -1
- package/dist/workflow/template-renderer.d.ts +0 -45
- package/dist/workflow/template-renderer.d.ts.map +0 -1
- package/dist/workflow/template-renderer.js +0 -401
- package/dist/workflow/template-renderer.js.map +0 -1
- package/dist/workflow/types.d.ts +0 -393
- package/dist/workflow/types.d.ts.map +0 -1
- package/dist/workflow/types.js +0 -40
- package/dist/workflow/types.js.map +0 -1
- package/dist/workflow/validator.d.ts +0 -363
- package/dist/workflow/validator.d.ts.map +0 -1
- package/dist/workflow/validator.js +0 -2283
- package/dist/workflow/validator.js.map +0 -1
- package/schemas/auxiliary.manifest.schema.json +0 -56
- package/src/ConfigurationLoader.test.ts +0 -466
- package/src/ConfigurationLoader.ts +0 -184
- package/src/ConfigurationValidator.test.ts +0 -200
- package/src/ConfigurationValidator.ts +0 -273
- package/src/EventProcessor.test.ts +0 -405
- package/src/EventProcessor.ts +0 -256
- package/src/EventRecorderService.test.ts +0 -543
- package/src/EventRecorderService.ts +0 -741
- package/src/LibraryLoader.ts +0 -194
- package/src/PathBasedEventProcessor.test.ts +0 -336
- package/src/PathBasedEventProcessor.ts +0 -196
- package/src/SessionManager.test.ts +0 -424
- package/src/SessionManager.ts +0 -471
- package/src/ValidationEngine.test.ts +0 -520
- package/src/ValidationEngine.ts +0 -200
- package/src/auxiliary/AuxiliaryManifestValidator.test.ts +0 -93
- package/src/auxiliary/AuxiliaryManifestValidator.ts +0 -132
- package/src/auxiliary/index.ts +0 -18
- package/src/auxiliary/validateAreaScopeDisjoint.test.ts +0 -85
- package/src/auxiliary/validateAreaScopeDisjoint.ts +0 -72
- package/src/cli/codegen.ts +0 -286
- package/src/codegen/type-generator.test.ts +0 -219
- package/src/codegen/type-generator.ts +0 -560
- package/src/codegen/usage-example.ts +0 -357
- package/src/dashboard/DashboardValidator.ts +0 -904
- package/src/dashboard/index.ts +0 -14
- package/src/discovery/CanvasDiscovery.test.ts +0 -691
- package/src/discovery/CanvasDiscovery.ts +0 -1114
- package/src/discovery/CanvasFileManifest.test.ts +0 -521
- package/src/discovery/CanvasFileManifest.ts +0 -419
- package/src/discovery/LibraryDiscovery.test.ts +0 -329
- package/src/discovery/LibraryDiscovery.ts +0 -386
- package/src/discovery/types.ts +0 -453
- package/src/events/EventsCanvasValidator.test.ts +0 -191
- package/src/events/EventsCanvasValidator.ts +0 -428
- package/src/events/NamespacePathIndex.test.ts +0 -97
- package/src/events/NamespacePathIndex.ts +0 -100
- package/src/events/OtelEventPathsValidator.test.ts +0 -243
- package/src/events/OtelEventPathsValidator.ts +0 -191
- package/src/events/ScopeEventsValidator.test.ts +0 -173
- package/src/events/ScopeEventsValidator.ts +0 -158
- package/src/events/index.ts +0 -27
- package/src/events/path-helpers.ts +0 -53
- package/src/execution/ExecutionLoader.test.ts +0 -378
- package/src/execution/ExecutionLoader.ts +0 -331
- package/src/execution/ExecutionValidator.test.ts +0 -503
- package/src/execution/ExecutionValidator.ts +0 -617
- package/src/generated/graph-converter-execution.types.ts +0 -193
- package/src/helpers/GraphInstrumentationHelper.test.ts +0 -364
- package/src/helpers/GraphInstrumentationHelper.ts +0 -323
- package/src/matchers/SpanMatcher.test.ts +0 -1105
- package/src/matchers/SpanMatcher.ts +0 -381
- package/src/orchestration/TraceOrchestrator.ts +0 -560
- package/src/orchestration/__tests__/TraceOrchestrator.test.ts +0 -1098
- package/src/parsers/OtlpTraceParser.ts +0 -401
- package/src/parsers/__tests__/OtlpTraceParser.test.ts +0 -197
- package/src/registry/CompositeRegistry.ts +0 -140
- package/src/registry/EventRegistry.test.ts +0 -387
- package/src/registry/EventRegistry.ts +0 -191
- package/src/registry/LocalRegistry.ts +0 -416
- package/src/registry/RemoteRegistry.ts +0 -499
- package/src/registry/VersionRegistry.test.ts +0 -223
- package/src/registry/VersionRegistry.ts +0 -121
- package/src/rules/config.test.ts +0 -277
- package/src/rules/config.ts +0 -450
- package/src/rules/engine.test.ts +0 -331
- package/src/rules/engine.ts +0 -448
- package/src/rules/implementations/connection-type-references.ts +0 -117
- package/src/rules/implementations/dead-end-states.ts +0 -101
- package/src/rules/implementations/index.ts +0 -66
- package/src/rules/implementations/minimum-node-sources.ts +0 -84
- package/src/rules/implementations/no-unknown-fields.ts +0 -372
- package/src/rules/implementations/orphaned-edge-types.ts +0 -55
- package/src/rules/implementations/orphaned-node-types.ts +0 -58
- package/src/rules/implementations/required-metadata.ts +0 -52
- package/src/rules/implementations/state-transition-references.ts +0 -155
- package/src/rules/implementations/unreachable-states.ts +0 -94
- package/src/rules/implementations/valid-action-patterns.ts +0 -140
- package/src/rules/implementations/valid-color-format.ts +0 -152
- package/src/rules/implementations/valid-edge-types.ts +0 -273
- package/src/rules/implementations/valid-node-types.ts +0 -200
- package/src/rules/index.ts +0 -92
- package/src/rules/types.ts +0 -426
- package/src/scopes/ScopePathIndex.test.ts +0 -94
- package/src/scopes/ScopePathIndex.ts +0 -89
- package/src/scopes/ScopesCanvasValidator.test.ts +0 -127
- package/src/scopes/ScopesCanvasValidator.ts +0 -305
- package/src/scopes/__tests__/utils.test.ts +0 -383
- package/src/scopes/index.ts +0 -42
- package/src/scopes/utils.ts +0 -182
- package/src/scopes/validateScopeNamespaceNesting.test.ts +0 -127
- package/src/scopes/validateScopeNamespaceNesting.ts +0 -88
- package/src/spans/index.ts +0 -24
- package/src/spans/utils.ts +0 -249
- package/src/storyboard/builder.ts +0 -308
- package/src/storyboard/index.ts +0 -26
- package/src/storyboard/types.ts +0 -117
- package/src/telemetry/coverage.ts +0 -480
- package/src/telemetry/event-validator.ts +0 -312
- package/src/types/audit.ts +0 -314
- package/src/types/auxiliary.ts +0 -63
- package/src/types/canvas-scope.ts +0 -190
- package/src/types/canvas.test.ts +0 -199
- package/src/types/canvas.ts +0 -1395
- package/src/types/dashboard.ts +0 -257
- package/src/types/library.ts +0 -283
- package/src/types/otel.test.ts +0 -219
- package/src/types/otel.ts +0 -620
- package/src/types/path-based-config.ts +0 -285
- package/src/types/registered-trace.ts +0 -432
- package/src/types/resource-match.ts +0 -263
- package/src/types/version-registry.ts +0 -150
- package/src/utils/CanvasConverter.ts +0 -670
- package/src/utils/GraphConverter.test.ts +0 -322
- package/src/utils/GraphConverter.ts +0 -84
- package/src/utils/PathMatcher.test.ts +0 -139
- package/src/utils/PathMatcher.ts +0 -185
- package/src/utils/TraceToCanvas.test.ts +0 -310
- package/src/utils/TraceToCanvas.ts +0 -510
- package/src/utils/YamlParser.ts +0 -77
- package/src/utils/registeredTraceHelpers.ts +0 -251
- package/src/utils/traceAggregation.test.ts +0 -385
- package/src/utils/traceAggregation.ts +0 -173
- package/src/validation/OtelCanvasValidator.ts +0 -86
- package/src/validation/index.ts +0 -17
- package/src/validation/libraryValidation.ts +0 -206
- package/src/workflow/README.md +0 -408
- package/src/workflow/__tests__/edge-derivation.test.ts +0 -449
- package/src/workflow/__tests__/edge-validation.test.ts +0 -417
- package/src/workflow/__tests__/scenario-matcher.test.ts +0 -225
- package/src/workflow/__tests__/template-parser.test.ts +0 -276
- package/src/workflow/__tests__/template-renderer.test.ts +0 -509
- package/src/workflow/__tests__/types.test.ts +0 -187
- package/src/workflow/__tests__/validator.test.ts +0 -3225
- package/src/workflow/edge-derivation.ts +0 -265
- package/src/workflow/edge-validation.ts +0 -503
- package/src/workflow/example.ts +0 -330
- package/src/workflow/index.ts +0 -86
- package/src/workflow/scenario-matcher.ts +0 -253
- package/src/workflow/template-parser.ts +0 -350
- package/src/workflow/template-renderer.ts +0 -453
- package/src/workflow/types.ts +0 -511
- package/src/workflow/validator.ts +0 -2737
|
@@ -1,335 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Telemetry Coverage Analysis
|
|
4
|
-
*
|
|
5
|
-
* Measures observability coverage by analyzing which implementation files
|
|
6
|
-
* contain the OpenTelemetry events documented in canvas nodes.
|
|
7
|
-
*
|
|
8
|
-
* Uses codebase-composition's ImplementationFileLayerModule for accurate,
|
|
9
|
-
* framework-aware detection of implementation files.
|
|
10
|
-
*/
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.analyzeCoverage = void 0;
|
|
13
|
-
const CanvasDiscovery_1 = require("../discovery/CanvasDiscovery");
|
|
14
|
-
const canvas_1 = require("../types/canvas");
|
|
15
|
-
const builder_1 = require("../storyboard/builder");
|
|
16
|
-
const codebase_composition_1 = require("@principal-ai/codebase-composition");
|
|
17
|
-
/**
|
|
18
|
-
* Extract event name from a canvas node
|
|
19
|
-
* Uses the canonical getNodeEventName() which supports all event reference formats
|
|
20
|
-
*/
|
|
21
|
-
function getEventName(node) {
|
|
22
|
-
return (0, builder_1.getNodeEventName)(node) ?? null;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Extract instrumentation file paths from a canvas node
|
|
26
|
-
* Supports both new format (node.otel.files) and legacy format (pv.otel.files)
|
|
27
|
-
*/
|
|
28
|
-
function getInstrumentationFiles(node) {
|
|
29
|
-
// Check OTEL nodes (top-level otel field)
|
|
30
|
-
if ((0, canvas_1.isOtelNode)(node) && node.otel?.files) {
|
|
31
|
-
return node.otel.files;
|
|
32
|
-
}
|
|
33
|
-
// Check standard nodes (pv.otel.files)
|
|
34
|
-
if ((0, canvas_1.isStandardCanvasNode)(node) && node.pv?.otel?.files) {
|
|
35
|
-
return node.pv.otel.files;
|
|
36
|
-
}
|
|
37
|
-
return [];
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Check if a file contains a specific event name (simple string match)
|
|
41
|
-
*/
|
|
42
|
-
async function fileContainsEvent(filePath, eventName, fileReader) {
|
|
43
|
-
try {
|
|
44
|
-
const content = await fileReader(filePath);
|
|
45
|
-
return content.includes(eventName);
|
|
46
|
-
}
|
|
47
|
-
catch {
|
|
48
|
-
return false;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Get the status of a node (returns undefined if not specified)
|
|
53
|
-
* Supports both new format (node.otel.status) and legacy format (pv.status)
|
|
54
|
-
*/
|
|
55
|
-
function getNodeStatus(node) {
|
|
56
|
-
// Check OTEL nodes (otel.status)
|
|
57
|
-
if ((0, canvas_1.isOtelNode)(node) && node.otel?.status) {
|
|
58
|
-
return node.otel.status;
|
|
59
|
-
}
|
|
60
|
-
// Check standard nodes (pv.status)
|
|
61
|
-
if ((0, canvas_1.isStandardCanvasNode)(node) && node.pv?.status) {
|
|
62
|
-
return node.pv.status;
|
|
63
|
-
}
|
|
64
|
-
return undefined;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Get the scope from a node
|
|
68
|
-
* Only supports new format (node.otel.scope). Legacy format (pv.otel.scope) is rejected.
|
|
69
|
-
*/
|
|
70
|
-
function getNodeScope(node) {
|
|
71
|
-
const otelNode = node;
|
|
72
|
-
return otelNode.otel?.scope;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Build a map of file -> expected events from canvas nodes
|
|
76
|
-
* Only includes nodes with status='implemented'
|
|
77
|
-
*/
|
|
78
|
-
async function buildFileEventMap(otelCanvases) {
|
|
79
|
-
const fileEventMap = new Map();
|
|
80
|
-
for (const canvas of otelCanvases) {
|
|
81
|
-
if (!canvas.content?.nodes || canvas.content.nodes.length === 0) {
|
|
82
|
-
continue;
|
|
83
|
-
}
|
|
84
|
-
for (const node of canvas.content.nodes) {
|
|
85
|
-
const eventName = getEventName(node);
|
|
86
|
-
if (!eventName)
|
|
87
|
-
continue;
|
|
88
|
-
// Only check implemented nodes for coverage
|
|
89
|
-
const status = getNodeStatus(node);
|
|
90
|
-
if (status !== 'implemented')
|
|
91
|
-
continue;
|
|
92
|
-
const files = getInstrumentationFiles(node);
|
|
93
|
-
for (const file of files) {
|
|
94
|
-
if (!fileEventMap.has(file)) {
|
|
95
|
-
fileEventMap.set(file, new Set());
|
|
96
|
-
}
|
|
97
|
-
fileEventMap.get(file).add(eventName);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return fileEventMap;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Validate nodes and collect validation errors
|
|
105
|
-
*/
|
|
106
|
-
function validateNodes(otelCanvases) {
|
|
107
|
-
const errors = [];
|
|
108
|
-
const statusBreakdown = {
|
|
109
|
-
missingStatusCount: 0,
|
|
110
|
-
draftCount: 0,
|
|
111
|
-
approvedCount: 0,
|
|
112
|
-
approvedWithFilesCount: 0,
|
|
113
|
-
implementedCount: 0,
|
|
114
|
-
implementedWithFilesCount: 0,
|
|
115
|
-
};
|
|
116
|
-
for (const canvas of otelCanvases) {
|
|
117
|
-
if (!canvas.content?.nodes || canvas.content.nodes.length === 0) {
|
|
118
|
-
continue;
|
|
119
|
-
}
|
|
120
|
-
for (const node of canvas.content.nodes) {
|
|
121
|
-
const status = getNodeStatus(node);
|
|
122
|
-
const eventName = getEventName(node);
|
|
123
|
-
// Only validate nodes with events
|
|
124
|
-
if (!eventName)
|
|
125
|
-
continue;
|
|
126
|
-
const files = getInstrumentationFiles(node);
|
|
127
|
-
const hasFiles = files.length > 0;
|
|
128
|
-
// Validate: nodes with events MUST have a status
|
|
129
|
-
if (!status) {
|
|
130
|
-
statusBreakdown.missingStatusCount++;
|
|
131
|
-
errors.push({
|
|
132
|
-
nodeId: node.id,
|
|
133
|
-
canvasPath: canvas.path,
|
|
134
|
-
error: `Node with event "${eventName}" must have pv.status field. Set to "draft" (design phase), "approved" (ready to implement), or "implemented" (code exists)`,
|
|
135
|
-
});
|
|
136
|
-
continue; // Skip further validation for this node
|
|
137
|
-
}
|
|
138
|
-
// Get references for grounding validation
|
|
139
|
-
let references = [];
|
|
140
|
-
if ((0, canvas_1.isOtelNode)(node) && node.otel?.references) {
|
|
141
|
-
references = node.otel.references;
|
|
142
|
-
}
|
|
143
|
-
else if ((0, canvas_1.isStandardCanvasNode)(node) && node.pv?.references) {
|
|
144
|
-
references = node.pv.references;
|
|
145
|
-
}
|
|
146
|
-
const hasReferences = references.length > 0;
|
|
147
|
-
// Count by status
|
|
148
|
-
if (status === 'draft') {
|
|
149
|
-
statusBreakdown.draftCount++;
|
|
150
|
-
// Drafts must be grounded: require either files (if implementation location is known) or references
|
|
151
|
-
if (!hasFiles && !hasReferences) {
|
|
152
|
-
errors.push({
|
|
153
|
-
nodeId: node.id,
|
|
154
|
-
canvasPath: canvas.path,
|
|
155
|
-
status,
|
|
156
|
-
error: `Node with status="draft" must have either pv.otel.files (if implementation location is known) or pv.references (to ground the event in something)`,
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
else if (status === 'approved') {
|
|
161
|
-
statusBreakdown.approvedCount++;
|
|
162
|
-
if (hasFiles) {
|
|
163
|
-
statusBreakdown.approvedWithFilesCount++;
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
else if (status === 'implemented') {
|
|
167
|
-
statusBreakdown.implementedCount++;
|
|
168
|
-
if (hasFiles) {
|
|
169
|
-
statusBreakdown.implementedWithFilesCount++;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
// Validate approved and implemented nodes have pv.otel.files
|
|
173
|
-
if ((status === 'approved' || status === 'implemented') && !hasFiles) {
|
|
174
|
-
errors.push({
|
|
175
|
-
nodeId: node.id,
|
|
176
|
-
canvasPath: canvas.path,
|
|
177
|
-
status,
|
|
178
|
-
error: `Node with status="${status}" must have pv.otel.files specified`,
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
// Error if using deprecated pv.otel.scope (only for standard nodes)
|
|
182
|
-
let legacyScope;
|
|
183
|
-
if ((0, canvas_1.isStandardCanvasNode)(node)) {
|
|
184
|
-
legacyScope = node.pv?.otel?.scope;
|
|
185
|
-
}
|
|
186
|
-
if (legacyScope) {
|
|
187
|
-
errors.push({
|
|
188
|
-
nodeId: node.id,
|
|
189
|
-
canvasPath: canvas.path,
|
|
190
|
-
status,
|
|
191
|
-
error: `Node uses deprecated "pv.otel.scope" field. Use new format: convert to type: "otel-event" with top-level "otel.scope" field instead. Run: npx @principal-ai/principal-studio-cli migrate-nodes`,
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
// Require scope for ALL event nodes (using new format)
|
|
195
|
-
const scope = getNodeScope(node);
|
|
196
|
-
if (!scope) {
|
|
197
|
-
errors.push({
|
|
198
|
-
nodeId: node.id,
|
|
199
|
-
canvasPath: canvas.path,
|
|
200
|
-
status,
|
|
201
|
-
error: `Event node must have otel.scope specified. Scope defines which instrumentation library emits this event (e.g., "terminal-activity", "auth"). Document scopes in your .scopes.canvas file with otel-scope nodes.`,
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
return { statusBreakdown, errors };
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Analyze instrumentation for a single file
|
|
210
|
-
*/
|
|
211
|
-
async function analyzeFileInstrumentation(filePath, expectedEvents, fileReader, isImplFile) {
|
|
212
|
-
const foundEvents = [];
|
|
213
|
-
for (const eventName of expectedEvents) {
|
|
214
|
-
const found = await fileContainsEvent(filePath, eventName, fileReader);
|
|
215
|
-
if (found) {
|
|
216
|
-
foundEvents.push(eventName);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
const missingEvents = expectedEvents.filter(e => !foundEvents.includes(e));
|
|
220
|
-
return {
|
|
221
|
-
filePath,
|
|
222
|
-
expectedEvents,
|
|
223
|
-
foundEvents,
|
|
224
|
-
instrumentationCount: foundEvents.length,
|
|
225
|
-
hasInstrumentation: foundEvents.length > 0,
|
|
226
|
-
missingEvents,
|
|
227
|
-
isImplementationFile: isImplFile,
|
|
228
|
-
};
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Get implementation files using codebase-composition's ImplementationFileLayerModule
|
|
232
|
-
* This provides accurate detection with framework-awareness and package boundaries
|
|
233
|
-
*/
|
|
234
|
-
async function getImplementationFilesFromLayer(fileTree) {
|
|
235
|
-
// Detect packages
|
|
236
|
-
const packageModule = new codebase_composition_1.PackageLayerModule();
|
|
237
|
-
const packageLayers = await packageModule.discoverPackages(fileTree);
|
|
238
|
-
// Get implementation files per package
|
|
239
|
-
const implModule = new codebase_composition_1.ImplementationFileLayerModule();
|
|
240
|
-
const implLayers = implModule.createImplementationFileLayers(packageLayers, fileTree);
|
|
241
|
-
// Flatten to set of file paths
|
|
242
|
-
const files = new Set();
|
|
243
|
-
for (const layer of implLayers) {
|
|
244
|
-
for (const file of layer.implementationData.implementationFiles) {
|
|
245
|
-
files.add(file);
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
return { files, layers: implLayers };
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* Generate telemetry coverage report from canvas files
|
|
252
|
-
*
|
|
253
|
-
* Uses codebase-composition's ImplementationFileLayerModule for accurate,
|
|
254
|
-
* framework-aware detection of implementation files.
|
|
255
|
-
*
|
|
256
|
-
* @param fileTree - FileTree representation of the codebase
|
|
257
|
-
* @param fileReader - Function to read file contents
|
|
258
|
-
* @returns Coverage metrics based on file instrumentation
|
|
259
|
-
*
|
|
260
|
-
* @example
|
|
261
|
-
* ```typescript
|
|
262
|
-
* import { FilesystemService, NodeFileSystemAdapter } from '@principal-ai/codebase-composition/node';
|
|
263
|
-
* import { readFile } from 'fs/promises';
|
|
264
|
-
* import { resolve } from 'path';
|
|
265
|
-
*
|
|
266
|
-
* const service = new FilesystemService(new NodeFileSystemAdapter());
|
|
267
|
-
* const fileTree = await service.buildFileSystemTreeFromPath('/path/to/project');
|
|
268
|
-
* const fileReader = async (path: string) => readFile(resolve('/path/to/project', path), 'utf-8');
|
|
269
|
-
* const metrics = await analyzeCoverage(fileTree, fileReader);
|
|
270
|
-
* ```
|
|
271
|
-
*/
|
|
272
|
-
async function analyzeCoverage(fileTree, fileReader) {
|
|
273
|
-
// Use CanvasDiscovery to find all canvas files
|
|
274
|
-
const discovery = new CanvasDiscovery_1.CanvasDiscovery();
|
|
275
|
-
const result = await discovery.discover(fileTree, {
|
|
276
|
-
fileReader,
|
|
277
|
-
includeContent: true, // Need content to parse nodes
|
|
278
|
-
});
|
|
279
|
-
// Filter for .otel.canvas files only
|
|
280
|
-
const otelCanvases = result.canvases.filter(c => c.type === 'otel');
|
|
281
|
-
// Validate nodes and collect status breakdown
|
|
282
|
-
const { statusBreakdown, errors } = validateNodes(otelCanvases);
|
|
283
|
-
// Build map of file -> expected events from canvas (only implemented nodes)
|
|
284
|
-
const fileEventMap = await buildFileEventMap(otelCanvases);
|
|
285
|
-
// Get all implementation files from the codebase using implementation layer
|
|
286
|
-
const { files: implementationFiles, layers: implLayers } = await getImplementationFilesFromLayer(fileTree);
|
|
287
|
-
// Get all files referenced in canvas (for coverage denominator)
|
|
288
|
-
const referencedFiles = new Set(fileEventMap.keys());
|
|
289
|
-
// Combine: we want to check all files referenced in canvas that are also implementation files
|
|
290
|
-
const filesToCheck = new Set([...referencedFiles].filter(f => implementationFiles.has(f)));
|
|
291
|
-
// Analyze each file
|
|
292
|
-
const fileCoverage = [];
|
|
293
|
-
for (const filePath of filesToCheck) {
|
|
294
|
-
const expectedEvents = Array.from(fileEventMap.get(filePath) || []);
|
|
295
|
-
const coverage = await analyzeFileInstrumentation(filePath, expectedEvents, fileReader, implementationFiles.has(filePath));
|
|
296
|
-
fileCoverage.push(coverage);
|
|
297
|
-
}
|
|
298
|
-
// Calculate metrics
|
|
299
|
-
const filesWithInstrumentation = fileCoverage.filter(f => f.hasInstrumentation).length;
|
|
300
|
-
const totalImplementationFiles = filesToCheck.size;
|
|
301
|
-
const coveragePercentage = totalImplementationFiles > 0
|
|
302
|
-
? (filesWithInstrumentation / totalImplementationFiles) * 100
|
|
303
|
-
: 0;
|
|
304
|
-
const totalExpectedEvents = fileCoverage.reduce((sum, f) => sum + f.expectedEvents.length, 0);
|
|
305
|
-
const totalFoundEvents = fileCoverage.reduce((sum, f) => sum + f.foundEvents.length, 0);
|
|
306
|
-
// Calculate per-package metrics
|
|
307
|
-
const packageCoverage = implLayers.map(layer => {
|
|
308
|
-
const packageFiles = new Set(layer.implementationData.implementationFiles);
|
|
309
|
-
const packageInstrumented = fileCoverage.filter(f => packageFiles.has(f.filePath) && f.hasInstrumentation);
|
|
310
|
-
return {
|
|
311
|
-
packageName: layer.implementationData.packageName,
|
|
312
|
-
packagePath: layer.implementationData.packagePath,
|
|
313
|
-
totalFiles: layer.implementationData.fileCount,
|
|
314
|
-
filesWithInstrumentation: packageInstrumented.length,
|
|
315
|
-
coveragePercentage: layer.implementationData.fileCount > 0
|
|
316
|
-
? (packageInstrumented.length / layer.implementationData.fileCount) * 100
|
|
317
|
-
: 0,
|
|
318
|
-
filesByExtension: layer.implementationData.filesByExtension || {},
|
|
319
|
-
};
|
|
320
|
-
});
|
|
321
|
-
return {
|
|
322
|
-
totalImplementationFiles,
|
|
323
|
-
filesWithInstrumentation,
|
|
324
|
-
coveragePercentage,
|
|
325
|
-
fileCoverage,
|
|
326
|
-
canvasFiles: otelCanvases.map(c => c.path),
|
|
327
|
-
totalExpectedEvents,
|
|
328
|
-
totalFoundEvents,
|
|
329
|
-
packageCoverage,
|
|
330
|
-
nodeStatus: statusBreakdown,
|
|
331
|
-
validationErrors: errors,
|
|
332
|
-
};
|
|
333
|
-
}
|
|
334
|
-
exports.analyzeCoverage = analyzeCoverage;
|
|
335
|
-
//# sourceMappingURL=coverage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"coverage.js","sourceRoot":"","sources":["../../src/telemetry/coverage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Event Validator
|
|
3
|
-
*
|
|
4
|
-
* Type-safe telemetry event validation against canvas event schemas.
|
|
5
|
-
* Ensures that emitted events match the schema defined in the canvas.
|
|
6
|
-
*/
|
|
7
|
-
import type { ExtendedCanvas, PVEventSchema } from '../types/canvas';
|
|
8
|
-
import type { ComponentLibrary } from '../types/library';
|
|
9
|
-
import type { JsonObject } from '../types';
|
|
10
|
-
/**
|
|
11
|
-
* Validation error for telemetry events
|
|
12
|
-
*/
|
|
13
|
-
export declare class EventValidationError extends Error {
|
|
14
|
-
eventName: string;
|
|
15
|
-
nodeId: string;
|
|
16
|
-
errors: string[];
|
|
17
|
-
constructor(eventName: string, nodeId: string, errors: string[]);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Validation result
|
|
21
|
-
*/
|
|
22
|
-
export interface ValidationResult {
|
|
23
|
-
valid: boolean;
|
|
24
|
-
errors: string[];
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Event validator that checks events against canvas schema
|
|
28
|
-
*/
|
|
29
|
-
export declare class EventValidator {
|
|
30
|
-
private eventSchemasByNode;
|
|
31
|
-
private eventSchemasByName;
|
|
32
|
-
private nodeIdsByBaseId;
|
|
33
|
-
private library?;
|
|
34
|
-
constructor(canvas: ExtendedCanvas, library?: ComponentLibrary);
|
|
35
|
-
/**
|
|
36
|
-
* Index all event schemas from canvas nodes
|
|
37
|
-
*/
|
|
38
|
-
private indexEventSchemas;
|
|
39
|
-
/**
|
|
40
|
-
* Resolve an event schema from library by event name
|
|
41
|
-
*/
|
|
42
|
-
private resolveLibraryEvent;
|
|
43
|
-
/**
|
|
44
|
-
* Validate an event against the schema for a specific node
|
|
45
|
-
*/
|
|
46
|
-
validate(nodeId: string, eventName: string, attributes: JsonObject): ValidationResult;
|
|
47
|
-
/**
|
|
48
|
-
* Get the type of a value
|
|
49
|
-
*/
|
|
50
|
-
private getValueType;
|
|
51
|
-
/**
|
|
52
|
-
* Get event schema for a node
|
|
53
|
-
*/
|
|
54
|
-
getNodeSchema(nodeId: string): PVEventSchema | undefined;
|
|
55
|
-
/**
|
|
56
|
-
* Get event name for a node
|
|
57
|
-
*/
|
|
58
|
-
getNodeEventName(nodeId: string): string | undefined;
|
|
59
|
-
/**
|
|
60
|
-
* Get all event names for a node (including related nodes with same base ID)
|
|
61
|
-
*/
|
|
62
|
-
getNodeEventNames(nodeId: string): string[];
|
|
63
|
-
/**
|
|
64
|
-
* Check if a node has event schema defined
|
|
65
|
-
* Supports both exact node IDs and base IDs (without numeric suffixes)
|
|
66
|
-
*/
|
|
67
|
-
hasSchema(nodeId: string): boolean;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Create a validated event emitter for a specific node
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```typescript
|
|
74
|
-
* const emit = createValidatedEmitter(validator, 'graph-converter', span);
|
|
75
|
-
*
|
|
76
|
-
* // Type-safe and runtime-validated
|
|
77
|
-
* emit('conversion.started', {
|
|
78
|
-
* 'config.nodeTypes': nodeTypes.length,
|
|
79
|
-
* 'config.edgeTypes': edgeTypes.length
|
|
80
|
-
* });
|
|
81
|
-
* ```
|
|
82
|
-
*/
|
|
83
|
-
export declare function createValidatedEmitter(validator: EventValidator, nodeId: string, addEventFn: (eventName: string, attributes: JsonObject) => void, options?: {
|
|
84
|
-
strict?: boolean;
|
|
85
|
-
}): (eventName: string, attributes: JsonObject) => void;
|
|
86
|
-
//# sourceMappingURL=event-validator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event-validator.d.ts","sourceRoot":"","sources":["../../src/telemetry/event-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtD;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAEpC,SAAS,EAAE,MAAM;IACjB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM,EAAE;gBAFhB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE;CAK1B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,kBAAkB,CAAyC;IACnE,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,OAAO,CAAC,CAAmB;gBAEvB,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAK9D;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,QAAQ,CACN,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,GACrB,gBAAgB;IA8EnB;;OAEG;IACH,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIxD;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKpD;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAmB3C;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CAUnC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,cAAc,EACzB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,EAC/D,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACjC,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,CAqBrD"}
|