@principal-ai/subsystems-core 0.29.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 +124 -0
- package/dist/ConfigurationLoader.d.ts +76 -0
- package/dist/ConfigurationLoader.d.ts.map +1 -0
- package/dist/ConfigurationLoader.js +148 -0
- package/dist/ConfigurationLoader.js.map +1 -0
- package/dist/ConfigurationValidator.d.ts +31 -0
- package/dist/ConfigurationValidator.d.ts.map +1 -0
- package/dist/ConfigurationValidator.js +239 -0
- package/dist/ConfigurationValidator.js.map +1 -0
- package/dist/EventProcessor.d.ts +49 -0
- package/dist/EventProcessor.d.ts.map +1 -0
- package/dist/EventProcessor.js +220 -0
- package/dist/EventProcessor.js.map +1 -0
- package/dist/EventRecorderService.d.ts +305 -0
- package/dist/EventRecorderService.d.ts.map +1 -0
- package/dist/EventRecorderService.js +467 -0
- package/dist/EventRecorderService.js.map +1 -0
- package/dist/LibraryLoader.d.ts +65 -0
- package/dist/LibraryLoader.d.ts.map +1 -0
- package/dist/LibraryLoader.js +197 -0
- package/dist/LibraryLoader.js.map +1 -0
- package/dist/PathBasedEventProcessor.d.ts +77 -0
- package/dist/PathBasedEventProcessor.d.ts.map +1 -0
- package/dist/PathBasedEventProcessor.js +136 -0
- package/dist/PathBasedEventProcessor.js.map +1 -0
- package/dist/SessionManager.d.ts +194 -0
- package/dist/SessionManager.d.ts.map +1 -0
- package/dist/SessionManager.js +302 -0
- package/dist/SessionManager.js.map +1 -0
- package/dist/ValidationEngine.d.ts +31 -0
- package/dist/ValidationEngine.d.ts.map +1 -0
- package/dist/ValidationEngine.js +162 -0
- package/dist/ValidationEngine.js.map +1 -0
- package/dist/agent-sessions/fixture.d.ts +80 -0
- package/dist/agent-sessions/fixture.d.ts.map +1 -0
- package/dist/agent-sessions/fixture.js +130 -0
- package/dist/agent-sessions/fixture.js.map +1 -0
- package/dist/agent-sessions/index.d.ts +3 -0
- package/dist/agent-sessions/index.d.ts.map +1 -0
- package/dist/agent-sessions/index.js +6 -0
- package/dist/agent-sessions/index.js.map +1 -0
- package/dist/auxiliary/AuxiliaryManifestValidator.d.ts +41 -0
- package/dist/auxiliary/AuxiliaryManifestValidator.d.ts.map +1 -0
- package/dist/auxiliary/AuxiliaryManifestValidator.js +100 -0
- package/dist/auxiliary/AuxiliaryManifestValidator.js.map +1 -0
- package/dist/auxiliary/index.d.ts +9 -0
- package/dist/auxiliary/index.d.ts.map +1 -0
- package/dist/auxiliary/index.js +14 -0
- package/dist/auxiliary/index.js.map +1 -0
- package/dist/auxiliary/validateAreaScopeDisjoint.d.ts +24 -0
- package/dist/auxiliary/validateAreaScopeDisjoint.d.ts.map +1 -0
- package/dist/auxiliary/validateAreaScopeDisjoint.js +61 -0
- package/dist/auxiliary/validateAreaScopeDisjoint.js.map +1 -0
- package/dist/cli/codegen.d.ts +41 -0
- package/dist/cli/codegen.d.ts.map +1 -0
- package/dist/cli/codegen.js +257 -0
- package/dist/cli/codegen.js.map +1 -0
- package/dist/codegen/type-generator.d.ts +123 -0
- package/dist/codegen/type-generator.d.ts.map +1 -0
- package/dist/codegen/type-generator.js +433 -0
- package/dist/codegen/type-generator.js.map +1 -0
- package/dist/codegen/usage-example.d.ts +103 -0
- package/dist/codegen/usage-example.d.ts.map +1 -0
- package/dist/codegen/usage-example.js +258 -0
- package/dist/codegen/usage-example.js.map +1 -0
- package/dist/dashboard/DashboardValidator.d.ts +85 -0
- package/dist/dashboard/DashboardValidator.d.ts.map +1 -0
- package/dist/dashboard/DashboardValidator.js +775 -0
- package/dist/dashboard/DashboardValidator.js.map +1 -0
- package/dist/dashboard/index.d.ts +6 -0
- package/dist/dashboard/index.d.ts.map +1 -0
- package/dist/dashboard/index.js +10 -0
- package/dist/dashboard/index.js.map +1 -0
- package/dist/discovery/CanvasDiscovery.d.ts +160 -0
- package/dist/discovery/CanvasDiscovery.d.ts.map +1 -0
- package/dist/discovery/CanvasDiscovery.js +865 -0
- package/dist/discovery/CanvasDiscovery.js.map +1 -0
- package/dist/discovery/CanvasFileManifest.d.ts +86 -0
- package/dist/discovery/CanvasFileManifest.d.ts.map +1 -0
- package/dist/discovery/CanvasFileManifest.js +338 -0
- package/dist/discovery/CanvasFileManifest.js.map +1 -0
- package/dist/discovery/LibraryDiscovery.d.ts +108 -0
- package/dist/discovery/LibraryDiscovery.d.ts.map +1 -0
- package/dist/discovery/LibraryDiscovery.js +263 -0
- package/dist/discovery/LibraryDiscovery.js.map +1 -0
- package/dist/discovery/types.d.ts +403 -0
- package/dist/discovery/types.d.ts.map +1 -0
- package/dist/discovery/types.js +6 -0
- package/dist/discovery/types.js.map +1 -0
- package/dist/events/EventsCanvasValidator.d.ts +139 -0
- package/dist/events/EventsCanvasValidator.d.ts.map +1 -0
- package/dist/events/EventsCanvasValidator.js +281 -0
- package/dist/events/EventsCanvasValidator.js.map +1 -0
- package/dist/events/NamespacePathIndex.d.ts +61 -0
- package/dist/events/NamespacePathIndex.d.ts.map +1 -0
- package/dist/events/NamespacePathIndex.js +74 -0
- package/dist/events/NamespacePathIndex.js.map +1 -0
- package/dist/events/OtelEventPathsValidator.d.ts +75 -0
- package/dist/events/OtelEventPathsValidator.d.ts.map +1 -0
- package/dist/events/OtelEventPathsValidator.js +126 -0
- package/dist/events/OtelEventPathsValidator.js.map +1 -0
- package/dist/events/ScopeEventsValidator.d.ts +68 -0
- package/dist/events/ScopeEventsValidator.d.ts.map +1 -0
- package/dist/events/ScopeEventsValidator.js +91 -0
- package/dist/events/ScopeEventsValidator.js.map +1 -0
- package/dist/events/index.d.ts +9 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +12 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/path-helpers.d.ts +33 -0
- package/dist/events/path-helpers.d.ts.map +1 -0
- package/dist/events/path-helpers.js +59 -0
- package/dist/events/path-helpers.js.map +1 -0
- package/dist/execution/ExecutionLoader.d.ts +135 -0
- package/dist/execution/ExecutionLoader.d.ts.map +1 -0
- package/dist/execution/ExecutionLoader.js +266 -0
- package/dist/execution/ExecutionLoader.js.map +1 -0
- package/dist/execution/ExecutionValidator.d.ts +94 -0
- package/dist/execution/ExecutionValidator.d.ts.map +1 -0
- package/dist/execution/ExecutionValidator.js +503 -0
- package/dist/execution/ExecutionValidator.js.map +1 -0
- package/dist/generated/graph-converter-execution.types.d.ts +177 -0
- package/dist/generated/graph-converter-execution.types.d.ts.map +1 -0
- package/dist/generated/graph-converter-execution.types.js +12 -0
- package/dist/generated/graph-converter-execution.types.js.map +1 -0
- package/dist/helpers/GraphInstrumentationHelper.d.ts +93 -0
- package/dist/helpers/GraphInstrumentationHelper.d.ts.map +1 -0
- package/dist/helpers/GraphInstrumentationHelper.js +252 -0
- package/dist/helpers/GraphInstrumentationHelper.js.map +1 -0
- package/dist/index.d.ts +82 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +214 -0
- package/dist/index.js.map +1 -0
- package/dist/matchers/SpanMatcher.d.ts +107 -0
- package/dist/matchers/SpanMatcher.d.ts.map +1 -0
- package/dist/matchers/SpanMatcher.js +274 -0
- package/dist/matchers/SpanMatcher.js.map +1 -0
- package/dist/node.d.ts +78 -0
- package/dist/node.d.ts.map +1 -0
- package/dist/node.js +177 -0
- package/dist/node.js.map +1 -0
- package/dist/opencode/OpenCodeEventStore.d.ts +25 -0
- package/dist/opencode/OpenCodeEventStore.d.ts.map +1 -0
- package/dist/opencode/OpenCodeEventStore.js +182 -0
- package/dist/opencode/OpenCodeEventStore.js.map +1 -0
- package/dist/opencode/agent-sessions.d.ts +46 -0
- package/dist/opencode/agent-sessions.d.ts.map +1 -0
- package/dist/opencode/agent-sessions.js +302 -0
- package/dist/opencode/agent-sessions.js.map +1 -0
- package/dist/opencode/index.d.ts +6 -0
- package/dist/opencode/index.d.ts.map +1 -0
- package/dist/opencode/index.js +15 -0
- package/dist/opencode/index.js.map +1 -0
- package/dist/opencode/node-path-adapter.d.ts +25 -0
- package/dist/opencode/node-path-adapter.d.ts.map +1 -0
- package/dist/opencode/node-path-adapter.js +188 -0
- package/dist/opencode/node-path-adapter.js.map +1 -0
- package/dist/opencode/pipeline.d.ts +42 -0
- package/dist/opencode/pipeline.d.ts.map +1 -0
- package/dist/opencode/pipeline.js +90 -0
- package/dist/opencode/pipeline.js.map +1 -0
- package/dist/opencode/types.d.ts +39 -0
- package/dist/opencode/types.d.ts.map +1 -0
- package/dist/opencode/types.js +3 -0
- package/dist/opencode/types.js.map +1 -0
- package/dist/orchestration/TraceOrchestrator.d.ts +71 -0
- package/dist/orchestration/TraceOrchestrator.d.ts.map +1 -0
- package/dist/orchestration/TraceOrchestrator.js +416 -0
- package/dist/orchestration/TraceOrchestrator.js.map +1 -0
- package/dist/parsers/OtlpTraceParser.d.ts +131 -0
- package/dist/parsers/OtlpTraceParser.d.ts.map +1 -0
- package/dist/parsers/OtlpTraceParser.js +310 -0
- package/dist/parsers/OtlpTraceParser.js.map +1 -0
- package/dist/registry/CompositeRegistry.d.ts +71 -0
- package/dist/registry/CompositeRegistry.d.ts.map +1 -0
- package/dist/registry/CompositeRegistry.js +113 -0
- package/dist/registry/CompositeRegistry.js.map +1 -0
- package/dist/registry/EventRegistry.d.ts +79 -0
- package/dist/registry/EventRegistry.d.ts.map +1 -0
- package/dist/registry/EventRegistry.js +165 -0
- package/dist/registry/EventRegistry.js.map +1 -0
- package/dist/registry/LocalRegistry.d.ts +111 -0
- package/dist/registry/LocalRegistry.d.ts.map +1 -0
- package/dist/registry/LocalRegistry.js +335 -0
- package/dist/registry/LocalRegistry.js.map +1 -0
- package/dist/registry/RemoteRegistry.d.ts +122 -0
- package/dist/registry/RemoteRegistry.d.ts.map +1 -0
- package/dist/registry/RemoteRegistry.js +399 -0
- package/dist/registry/RemoteRegistry.js.map +1 -0
- package/dist/registry/VersionRegistry.d.ts +51 -0
- package/dist/registry/VersionRegistry.d.ts.map +1 -0
- package/dist/registry/VersionRegistry.js +105 -0
- package/dist/registry/VersionRegistry.js.map +1 -0
- package/dist/rules/config.d.ts +57 -0
- package/dist/rules/config.d.ts.map +1 -0
- package/dist/rules/config.js +382 -0
- package/dist/rules/config.js.map +1 -0
- package/dist/rules/engine.d.ts +70 -0
- package/dist/rules/engine.d.ts.map +1 -0
- package/dist/rules/engine.js +373 -0
- package/dist/rules/engine.js.map +1 -0
- package/dist/rules/implementations/connection-type-references.d.ts +7 -0
- package/dist/rules/implementations/connection-type-references.d.ts.map +1 -0
- package/dist/rules/implementations/connection-type-references.js +107 -0
- package/dist/rules/implementations/connection-type-references.js.map +1 -0
- package/dist/rules/implementations/dead-end-states.d.ts +17 -0
- package/dist/rules/implementations/dead-end-states.d.ts.map +1 -0
- package/dist/rules/implementations/dead-end-states.js +75 -0
- package/dist/rules/implementations/dead-end-states.js.map +1 -0
- package/dist/rules/implementations/index.d.ts +23 -0
- package/dist/rules/implementations/index.d.ts.map +1 -0
- package/dist/rules/implementations/index.js +73 -0
- package/dist/rules/implementations/index.js.map +1 -0
- package/dist/rules/implementations/minimum-node-sources.d.ts +24 -0
- package/dist/rules/implementations/minimum-node-sources.d.ts.map +1 -0
- package/dist/rules/implementations/minimum-node-sources.js +59 -0
- package/dist/rules/implementations/minimum-node-sources.js.map +1 -0
- package/dist/rules/implementations/no-unknown-fields.d.ts +7 -0
- package/dist/rules/implementations/no-unknown-fields.d.ts.map +1 -0
- package/dist/rules/implementations/no-unknown-fields.js +216 -0
- package/dist/rules/implementations/no-unknown-fields.js.map +1 -0
- package/dist/rules/implementations/orphaned-edge-types.d.ts +7 -0
- package/dist/rules/implementations/orphaned-edge-types.d.ts.map +1 -0
- package/dist/rules/implementations/orphaned-edge-types.js +50 -0
- package/dist/rules/implementations/orphaned-edge-types.js.map +1 -0
- package/dist/rules/implementations/orphaned-node-types.d.ts +7 -0
- package/dist/rules/implementations/orphaned-node-types.d.ts.map +1 -0
- package/dist/rules/implementations/orphaned-node-types.js +53 -0
- package/dist/rules/implementations/orphaned-node-types.js.map +1 -0
- package/dist/rules/implementations/required-metadata.d.ts +7 -0
- package/dist/rules/implementations/required-metadata.d.ts.map +1 -0
- package/dist/rules/implementations/required-metadata.js +48 -0
- package/dist/rules/implementations/required-metadata.js.map +1 -0
- package/dist/rules/implementations/state-transition-references.d.ts +7 -0
- package/dist/rules/implementations/state-transition-references.d.ts.map +1 -0
- package/dist/rules/implementations/state-transition-references.js +138 -0
- package/dist/rules/implementations/state-transition-references.js.map +1 -0
- package/dist/rules/implementations/unreachable-states.d.ts +7 -0
- package/dist/rules/implementations/unreachable-states.d.ts.map +1 -0
- package/dist/rules/implementations/unreachable-states.js +83 -0
- package/dist/rules/implementations/unreachable-states.js.map +1 -0
- package/dist/rules/implementations/valid-action-patterns.d.ts +17 -0
- package/dist/rules/implementations/valid-action-patterns.d.ts.map +1 -0
- package/dist/rules/implementations/valid-action-patterns.js +112 -0
- package/dist/rules/implementations/valid-action-patterns.js.map +1 -0
- package/dist/rules/implementations/valid-color-format.d.ts +7 -0
- package/dist/rules/implementations/valid-color-format.d.ts.map +1 -0
- package/dist/rules/implementations/valid-color-format.js +94 -0
- package/dist/rules/implementations/valid-color-format.js.map +1 -0
- package/dist/rules/implementations/valid-edge-types.d.ts +7 -0
- package/dist/rules/implementations/valid-edge-types.d.ts.map +1 -0
- package/dist/rules/implementations/valid-edge-types.js +248 -0
- package/dist/rules/implementations/valid-edge-types.js.map +1 -0
- package/dist/rules/implementations/valid-node-types.d.ts +7 -0
- package/dist/rules/implementations/valid-node-types.d.ts.map +1 -0
- package/dist/rules/implementations/valid-node-types.js +187 -0
- package/dist/rules/implementations/valid-node-types.js.map +1 -0
- package/dist/rules/index.d.ts +28 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +70 -0
- package/dist/rules/index.js.map +1 -0
- package/dist/rules/types.d.ts +309 -0
- package/dist/rules/types.d.ts.map +1 -0
- package/dist/rules/types.js +40 -0
- package/dist/rules/types.js.map +1 -0
- package/dist/scopes/ScopePathIndex.d.ts +56 -0
- package/dist/scopes/ScopePathIndex.d.ts.map +1 -0
- package/dist/scopes/ScopePathIndex.js +67 -0
- package/dist/scopes/ScopePathIndex.js.map +1 -0
- package/dist/scopes/ScopesCanvasValidator.d.ts +76 -0
- package/dist/scopes/ScopesCanvasValidator.d.ts.map +1 -0
- package/dist/scopes/ScopesCanvasValidator.js +221 -0
- package/dist/scopes/ScopesCanvasValidator.js.map +1 -0
- package/dist/scopes/index.d.ts +12 -0
- package/dist/scopes/index.d.ts.map +1 -0
- package/dist/scopes/index.js +30 -0
- package/dist/scopes/index.js.map +1 -0
- package/dist/scopes/utils.d.ts +85 -0
- package/dist/scopes/utils.d.ts.map +1 -0
- package/dist/scopes/utils.js +143 -0
- package/dist/scopes/utils.js.map +1 -0
- package/dist/scopes/validateScopeNamespaceNesting.d.ts +38 -0
- package/dist/scopes/validateScopeNamespaceNesting.d.ts.map +1 -0
- package/dist/scopes/validateScopeNamespaceNesting.js +69 -0
- package/dist/scopes/validateScopeNamespaceNesting.js.map +1 -0
- package/dist/spans/index.d.ts +12 -0
- package/dist/spans/index.d.ts.map +1 -0
- package/dist/spans/index.js +25 -0
- package/dist/spans/index.js.map +1 -0
- package/dist/spans/utils.d.ts +70 -0
- package/dist/spans/utils.d.ts.map +1 -0
- package/dist/spans/utils.js +205 -0
- package/dist/spans/utils.js.map +1 -0
- package/dist/storage/topic-types.d.ts +203 -0
- package/dist/storage/topic-types.d.ts.map +1 -0
- package/dist/storage/topic-types.js +60 -0
- package/dist/storage/topic-types.js.map +1 -0
- package/dist/storage/topicStore.d.ts +135 -0
- package/dist/storage/topicStore.d.ts.map +1 -0
- package/dist/storage/topicStore.js +389 -0
- package/dist/storage/topicStore.js.map +1 -0
- package/dist/storyboard/builder.d.ts +135 -0
- package/dist/storyboard/builder.d.ts.map +1 -0
- package/dist/storyboard/builder.js +235 -0
- package/dist/storyboard/builder.js.map +1 -0
- package/dist/storyboard/index.d.ts +9 -0
- package/dist/storyboard/index.d.ts.map +1 -0
- package/dist/storyboard/index.js +18 -0
- package/dist/storyboard/index.js.map +1 -0
- package/dist/storyboard/types.d.ts +101 -0
- package/dist/storyboard/types.d.ts.map +1 -0
- package/dist/storyboard/types.js +10 -0
- package/dist/storyboard/types.js.map +1 -0
- package/dist/telemetry/coverage.d.ts +92 -0
- package/dist/telemetry/coverage.d.ts.map +1 -0
- package/dist/telemetry/coverage.js +335 -0
- package/dist/telemetry/coverage.js.map +1 -0
- package/dist/telemetry/event-validator.d.ts +86 -0
- package/dist/telemetry/event-validator.d.ts.map +1 -0
- package/dist/telemetry/event-validator.js +257 -0
- package/dist/telemetry/event-validator.js.map +1 -0
- package/dist/types/audit.d.ts +236 -0
- package/dist/types/audit.d.ts.map +1 -0
- package/dist/types/audit.js +53 -0
- package/dist/types/audit.js.map +1 -0
- package/dist/types/auxiliary.d.ts +54 -0
- package/dist/types/auxiliary.d.ts.map +1 -0
- package/dist/types/auxiliary.js +27 -0
- package/dist/types/auxiliary.js.map +1 -0
- package/dist/types/canvas-scope.d.ts +156 -0
- package/dist/types/canvas-scope.d.ts.map +1 -0
- package/dist/types/canvas-scope.js +62 -0
- package/dist/types/canvas-scope.js.map +1 -0
- package/dist/types/canvas.d.ts +1138 -0
- package/dist/types/canvas.d.ts.map +1 -0
- package/dist/types/canvas.js +178 -0
- package/dist/types/canvas.js.map +1 -0
- package/dist/types/dashboard.d.ts +170 -0
- package/dist/types/dashboard.d.ts.map +1 -0
- package/dist/types/dashboard.js +14 -0
- package/dist/types/dashboard.js.map +1 -0
- package/dist/types/index.d.ts +352 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +39 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/library.d.ts +227 -0
- package/dist/types/library.d.ts.map +1 -0
- package/dist/types/library.js +16 -0
- package/dist/types/library.js.map +1 -0
- package/dist/types/otel.d.ts +465 -0
- package/dist/types/otel.d.ts.map +1 -0
- package/dist/types/otel.js +163 -0
- package/dist/types/otel.js.map +1 -0
- package/dist/types/path-based-config.d.ts +235 -0
- package/dist/types/path-based-config.d.ts.map +1 -0
- package/dist/types/path-based-config.js +11 -0
- package/dist/types/path-based-config.js.map +1 -0
- package/dist/types/registered-trace.d.ts +337 -0
- package/dist/types/registered-trace.d.ts.map +1 -0
- package/dist/types/registered-trace.js +16 -0
- package/dist/types/registered-trace.js.map +1 -0
- package/dist/types/resource-match.d.ts +207 -0
- package/dist/types/resource-match.d.ts.map +1 -0
- package/dist/types/resource-match.js +74 -0
- package/dist/types/resource-match.js.map +1 -0
- package/dist/types/subsystem-model.d.ts +265 -0
- package/dist/types/subsystem-model.d.ts.map +1 -0
- package/dist/types/subsystem-model.js +35 -0
- package/dist/types/subsystem-model.js.map +1 -0
- package/dist/types/version-registry.d.ts +137 -0
- package/dist/types/version-registry.d.ts.map +1 -0
- package/dist/types/version-registry.js +10 -0
- package/dist/types/version-registry.js.map +1 -0
- package/dist/utils/CanvasConverter.d.ts +148 -0
- package/dist/utils/CanvasConverter.d.ts.map +1 -0
- package/dist/utils/CanvasConverter.js +530 -0
- package/dist/utils/CanvasConverter.js.map +1 -0
- package/dist/utils/GraphConverter.d.ts +18 -0
- package/dist/utils/GraphConverter.d.ts.map +1 -0
- package/dist/utils/GraphConverter.js +80 -0
- package/dist/utils/GraphConverter.js.map +1 -0
- package/dist/utils/PathMatcher.d.ts +55 -0
- package/dist/utils/PathMatcher.d.ts.map +1 -0
- package/dist/utils/PathMatcher.js +178 -0
- package/dist/utils/PathMatcher.js.map +1 -0
- package/dist/utils/TraceToCanvas.d.ts +83 -0
- package/dist/utils/TraceToCanvas.d.ts.map +1 -0
- package/dist/utils/TraceToCanvas.js +336 -0
- package/dist/utils/TraceToCanvas.js.map +1 -0
- package/dist/utils/YamlParser.d.ts +36 -0
- package/dist/utils/YamlParser.d.ts.map +1 -0
- package/dist/utils/YamlParser.js +92 -0
- package/dist/utils/YamlParser.js.map +1 -0
- package/dist/utils/registeredTraceHelpers.d.ts +76 -0
- package/dist/utils/registeredTraceHelpers.d.ts.map +1 -0
- package/dist/utils/registeredTraceHelpers.js +203 -0
- package/dist/utils/registeredTraceHelpers.js.map +1 -0
- package/dist/utils/traceAggregation.d.ts +25 -0
- package/dist/utils/traceAggregation.d.ts.map +1 -0
- package/dist/utils/traceAggregation.js +140 -0
- package/dist/utils/traceAggregation.js.map +1 -0
- package/dist/validation/OtelCanvasValidator.d.ts +40 -0
- package/dist/validation/OtelCanvasValidator.d.ts.map +1 -0
- package/dist/validation/OtelCanvasValidator.js +59 -0
- package/dist/validation/OtelCanvasValidator.js.map +1 -0
- package/dist/validation/index.d.ts +8 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +13 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/libraryValidation.d.ts +53 -0
- package/dist/validation/libraryValidation.d.ts.map +1 -0
- package/dist/validation/libraryValidation.js +115 -0
- package/dist/validation/libraryValidation.js.map +1 -0
- package/dist/workflow/edge-derivation.d.ts +111 -0
- package/dist/workflow/edge-derivation.d.ts.map +1 -0
- package/dist/workflow/edge-derivation.js +174 -0
- package/dist/workflow/edge-derivation.js.map +1 -0
- package/dist/workflow/edge-validation.d.ts +170 -0
- package/dist/workflow/edge-validation.d.ts.map +1 -0
- package/dist/workflow/edge-validation.js +332 -0
- package/dist/workflow/edge-validation.js.map +1 -0
- package/dist/workflow/example.d.ts +11 -0
- package/dist/workflow/example.d.ts.map +1 -0
- package/dist/workflow/example.js +310 -0
- package/dist/workflow/example.js.map +1 -0
- package/dist/workflow/index.d.ts +20 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +49 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/scenario-matcher.d.ts +63 -0
- package/dist/workflow/scenario-matcher.d.ts.map +1 -0
- package/dist/workflow/scenario-matcher.js +215 -0
- package/dist/workflow/scenario-matcher.js.map +1 -0
- package/dist/workflow/template-parser.d.ts +73 -0
- package/dist/workflow/template-parser.d.ts.map +1 -0
- package/dist/workflow/template-parser.js +280 -0
- package/dist/workflow/template-parser.js.map +1 -0
- package/dist/workflow/template-renderer.d.ts +45 -0
- package/dist/workflow/template-renderer.d.ts.map +1 -0
- package/dist/workflow/template-renderer.js +401 -0
- package/dist/workflow/template-renderer.js.map +1 -0
- package/dist/workflow/types.d.ts +393 -0
- package/dist/workflow/types.d.ts.map +1 -0
- package/dist/workflow/types.js +40 -0
- package/dist/workflow/types.js.map +1 -0
- package/dist/workflow/validator.d.ts +363 -0
- package/dist/workflow/validator.d.ts.map +1 -0
- package/dist/workflow/validator.js +2283 -0
- package/dist/workflow/validator.js.map +1 -0
- package/package.json +84 -0
- package/schemas/auxiliary.manifest.schema.json +56 -0
- package/schemas/subsystem-model.schema.json +767 -0
- package/src/ConfigurationLoader.test.ts +466 -0
- package/src/ConfigurationLoader.ts +184 -0
- package/src/ConfigurationValidator.test.ts +200 -0
- package/src/ConfigurationValidator.ts +273 -0
- package/src/EventProcessor.test.ts +405 -0
- package/src/EventProcessor.ts +256 -0
- package/src/EventRecorderService.test.ts +543 -0
- package/src/EventRecorderService.ts +741 -0
- package/src/LibraryLoader.ts +194 -0
- package/src/PathBasedEventProcessor.test.ts +336 -0
- package/src/PathBasedEventProcessor.ts +196 -0
- package/src/SessionManager.test.ts +424 -0
- package/src/SessionManager.ts +471 -0
- package/src/ValidationEngine.test.ts +520 -0
- package/src/ValidationEngine.ts +200 -0
- package/src/agent-sessions/fixture.ts +225 -0
- package/src/agent-sessions/index.ts +10 -0
- package/src/auxiliary/AuxiliaryManifestValidator.test.ts +93 -0
- package/src/auxiliary/AuxiliaryManifestValidator.ts +132 -0
- package/src/auxiliary/index.ts +18 -0
- package/src/auxiliary/validateAreaScopeDisjoint.test.ts +85 -0
- package/src/auxiliary/validateAreaScopeDisjoint.ts +72 -0
- package/src/browser-safety.test.ts +170 -0
- package/src/cli/codegen.ts +286 -0
- package/src/codegen/type-generator.test.ts +219 -0
- package/src/codegen/type-generator.ts +560 -0
- package/src/codegen/usage-example.ts +357 -0
- package/src/dashboard/DashboardValidator.ts +904 -0
- package/src/dashboard/index.ts +14 -0
- package/src/discovery/CanvasDiscovery.test.ts +691 -0
- package/src/discovery/CanvasDiscovery.ts +1114 -0
- package/src/discovery/CanvasFileManifest.test.ts +521 -0
- package/src/discovery/CanvasFileManifest.ts +419 -0
- package/src/discovery/LibraryDiscovery.test.ts +329 -0
- package/src/discovery/LibraryDiscovery.ts +386 -0
- package/src/discovery/types.ts +453 -0
- package/src/events/EventsCanvasValidator.test.ts +191 -0
- package/src/events/EventsCanvasValidator.ts +428 -0
- package/src/events/NamespacePathIndex.test.ts +97 -0
- package/src/events/NamespacePathIndex.ts +100 -0
- package/src/events/OtelEventPathsValidator.test.ts +243 -0
- package/src/events/OtelEventPathsValidator.ts +191 -0
- package/src/events/ScopeEventsValidator.test.ts +173 -0
- package/src/events/ScopeEventsValidator.ts +158 -0
- package/src/events/index.ts +27 -0
- package/src/events/path-helpers.ts +53 -0
- package/src/execution/ExecutionLoader.test.ts +378 -0
- package/src/execution/ExecutionLoader.ts +331 -0
- package/src/execution/ExecutionValidator.test.ts +503 -0
- package/src/execution/ExecutionValidator.ts +617 -0
- package/src/generated/graph-converter-execution.types.ts +193 -0
- package/src/helpers/GraphInstrumentationHelper.test.ts +364 -0
- package/src/helpers/GraphInstrumentationHelper.ts +323 -0
- package/src/index.ts +587 -0
- package/src/matchers/SpanMatcher.test.ts +1105 -0
- package/src/matchers/SpanMatcher.ts +381 -0
- package/src/node.ts +316 -0
- package/src/opencode/EVENT_MAPPING.md +82 -0
- package/src/opencode/OpenCodeEventStore.ts +214 -0
- package/src/opencode/__fixtures__/event-shapes.json +443 -0
- package/src/opencode/__fixtures__/session-events.json +13491 -0
- package/src/opencode/agent-sessions.ts +376 -0
- package/src/opencode/index.ts +23 -0
- package/src/opencode/node-path-adapter.ts +205 -0
- package/src/opencode/pipeline.ts +141 -0
- package/src/opencode/types.ts +43 -0
- package/src/orchestration/TraceOrchestrator.ts +560 -0
- package/src/orchestration/__tests__/TraceOrchestrator.test.ts +1098 -0
- package/src/parsers/OtlpTraceParser.ts +401 -0
- package/src/parsers/__tests__/OtlpTraceParser.test.ts +197 -0
- package/src/registry/CompositeRegistry.ts +140 -0
- package/src/registry/EventRegistry.test.ts +387 -0
- package/src/registry/EventRegistry.ts +191 -0
- package/src/registry/LocalRegistry.ts +416 -0
- package/src/registry/RemoteRegistry.ts +499 -0
- package/src/registry/VersionRegistry.test.ts +223 -0
- package/src/registry/VersionRegistry.ts +121 -0
- package/src/rules/config.test.ts +277 -0
- package/src/rules/config.ts +450 -0
- package/src/rules/engine.test.ts +331 -0
- package/src/rules/engine.ts +448 -0
- package/src/rules/implementations/connection-type-references.ts +117 -0
- package/src/rules/implementations/dead-end-states.ts +101 -0
- package/src/rules/implementations/index.ts +66 -0
- package/src/rules/implementations/minimum-node-sources.ts +84 -0
- package/src/rules/implementations/no-unknown-fields.ts +372 -0
- package/src/rules/implementations/orphaned-edge-types.ts +55 -0
- package/src/rules/implementations/orphaned-node-types.ts +58 -0
- package/src/rules/implementations/required-metadata.ts +52 -0
- package/src/rules/implementations/state-transition-references.ts +155 -0
- package/src/rules/implementations/unreachable-states.ts +94 -0
- package/src/rules/implementations/valid-action-patterns.ts +140 -0
- package/src/rules/implementations/valid-color-format.ts +152 -0
- package/src/rules/implementations/valid-edge-types.ts +273 -0
- package/src/rules/implementations/valid-node-types.ts +200 -0
- package/src/rules/index.ts +92 -0
- package/src/rules/types.ts +426 -0
- package/src/scopes/ScopePathIndex.test.ts +94 -0
- package/src/scopes/ScopePathIndex.ts +89 -0
- package/src/scopes/ScopesCanvasValidator.test.ts +127 -0
- package/src/scopes/ScopesCanvasValidator.ts +305 -0
- package/src/scopes/__tests__/utils.test.ts +383 -0
- package/src/scopes/index.ts +42 -0
- package/src/scopes/utils.ts +182 -0
- package/src/scopes/validateScopeNamespaceNesting.test.ts +127 -0
- package/src/scopes/validateScopeNamespaceNesting.ts +88 -0
- package/src/spans/index.ts +24 -0
- package/src/spans/utils.ts +249 -0
- package/src/storage/topic-types.ts +235 -0
- package/src/storage/topicStore.test.ts +193 -0
- package/src/storage/topicStore.ts +489 -0
- package/src/storyboard/builder.ts +308 -0
- package/src/storyboard/index.ts +26 -0
- package/src/storyboard/types.ts +117 -0
- package/src/telemetry/coverage.ts +480 -0
- package/src/telemetry/event-validator.ts +312 -0
- package/src/types/audit.ts +314 -0
- package/src/types/auxiliary.ts +63 -0
- package/src/types/canvas-scope.ts +190 -0
- package/src/types/canvas.test.ts +199 -0
- package/src/types/canvas.ts +1395 -0
- package/src/types/dashboard.ts +257 -0
- package/src/types/index.ts +460 -0
- package/src/types/library.ts +283 -0
- package/src/types/otel.test.ts +219 -0
- package/src/types/otel.ts +620 -0
- package/src/types/path-based-config.ts +285 -0
- package/src/types/registered-trace.ts +432 -0
- package/src/types/resource-match.ts +263 -0
- package/src/types/subsystem-model.ts +352 -0
- package/src/types/version-registry.ts +150 -0
- package/src/utils/CanvasConverter.ts +670 -0
- package/src/utils/GraphConverter.test.ts +322 -0
- package/src/utils/GraphConverter.ts +84 -0
- package/src/utils/PathMatcher.test.ts +139 -0
- package/src/utils/PathMatcher.ts +185 -0
- package/src/utils/TraceToCanvas.test.ts +310 -0
- package/src/utils/TraceToCanvas.ts +510 -0
- package/src/utils/YamlParser.ts +77 -0
- package/src/utils/registeredTraceHelpers.ts +251 -0
- package/src/utils/traceAggregation.test.ts +385 -0
- package/src/utils/traceAggregation.ts +173 -0
- package/src/validation/OtelCanvasValidator.ts +86 -0
- package/src/validation/index.ts +17 -0
- package/src/validation/libraryValidation.ts +206 -0
- package/src/workflow/README.md +408 -0
- package/src/workflow/__tests__/edge-derivation.test.ts +449 -0
- package/src/workflow/__tests__/edge-validation.test.ts +417 -0
- package/src/workflow/__tests__/scenario-matcher.test.ts +225 -0
- package/src/workflow/__tests__/template-parser.test.ts +276 -0
- package/src/workflow/__tests__/template-renderer.test.ts +509 -0
- package/src/workflow/__tests__/types.test.ts +187 -0
- package/src/workflow/__tests__/validator.test.ts +3225 -0
- package/src/workflow/edge-derivation.ts +265 -0
- package/src/workflow/edge-validation.ts +503 -0
- package/src/workflow/example.ts +330 -0
- package/src/workflow/index.ts +86 -0
- package/src/workflow/scenario-matcher.ts +253 -0
- package/src/workflow/template-parser.ts +350 -0
- package/src/workflow/template-renderer.ts +453 -0
- package/src/workflow/types.ts +511 -0
- package/src/workflow/validator.ts +2737 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Edge Validation
|
|
3
|
+
*
|
|
4
|
+
* Validates derived edges from workflows against spans.canvas definitions.
|
|
5
|
+
* Ensures documented span relationships match observed workflow behavior.
|
|
6
|
+
*
|
|
7
|
+
* @see .principal-views/WORKFLOW-SPAN-INTEGRATION.md
|
|
8
|
+
*/
|
|
9
|
+
import type { ExtendedCanvas } from '../types/canvas';
|
|
10
|
+
import type { DerivedEdge } from './edge-derivation';
|
|
11
|
+
/**
|
|
12
|
+
* Span node info extracted from spans.canvas
|
|
13
|
+
*/
|
|
14
|
+
export interface SpanNodeInfo {
|
|
15
|
+
/** Node ID in the canvas */
|
|
16
|
+
nodeId: string;
|
|
17
|
+
/** Span pattern this node matches (e.g., "validate.*") */
|
|
18
|
+
spanPattern: string;
|
|
19
|
+
/** Human-readable name */
|
|
20
|
+
name?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Canvas edge info extracted from spans.canvas
|
|
24
|
+
*/
|
|
25
|
+
export interface CanvasEdgeInfo {
|
|
26
|
+
/** Source node ID */
|
|
27
|
+
fromNodeId: string;
|
|
28
|
+
/** Target node ID */
|
|
29
|
+
toNodeId: string;
|
|
30
|
+
/** Source span pattern */
|
|
31
|
+
fromSpanPattern?: string;
|
|
32
|
+
/** Target span pattern */
|
|
33
|
+
toSpanPattern?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Edge validation result
|
|
37
|
+
*/
|
|
38
|
+
export interface EdgeValidationResult {
|
|
39
|
+
/** Edges that are documented in spans.canvas and observed in workflows */
|
|
40
|
+
validEdges: ValidatedEdge[];
|
|
41
|
+
/** Edges observed in workflows but missing from spans.canvas */
|
|
42
|
+
missingEdges: MissingEdge[];
|
|
43
|
+
/** Edges documented in spans.canvas but not observed in any workflow */
|
|
44
|
+
unusedEdges: UnusedEdge[];
|
|
45
|
+
/** Spans referenced in workflows that don't match any spans.canvas node */
|
|
46
|
+
unmatchedSpans: UnmatchedSpan[];
|
|
47
|
+
/** Summary statistics */
|
|
48
|
+
summary: {
|
|
49
|
+
totalDerivedEdges: number;
|
|
50
|
+
totalCanvasEdges: number;
|
|
51
|
+
matchedEdges: number;
|
|
52
|
+
missingEdges: number;
|
|
53
|
+
unusedEdges: number;
|
|
54
|
+
unmatchedSpans: number;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* An edge that passed validation
|
|
59
|
+
*/
|
|
60
|
+
export interface ValidatedEdge {
|
|
61
|
+
/** Source span name (exact) */
|
|
62
|
+
fromSpan: string;
|
|
63
|
+
/** Target span name (exact) */
|
|
64
|
+
toSpan: string;
|
|
65
|
+
/** Canvas edge it matched */
|
|
66
|
+
canvasEdge: CanvasEdgeInfo;
|
|
67
|
+
/** Workflows where this edge was observed */
|
|
68
|
+
sources: Array<{
|
|
69
|
+
workflowFile?: string;
|
|
70
|
+
scenarioId: string;
|
|
71
|
+
}>;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* An edge observed in workflows but missing from spans.canvas
|
|
75
|
+
*/
|
|
76
|
+
export interface MissingEdge {
|
|
77
|
+
/** Source span name */
|
|
78
|
+
fromSpan: string;
|
|
79
|
+
/** Target span name */
|
|
80
|
+
toSpan: string;
|
|
81
|
+
/** Source span matched to this node (if any) */
|
|
82
|
+
fromNodeId?: string;
|
|
83
|
+
/** Target span matched to this node (if any) */
|
|
84
|
+
toNodeId?: string;
|
|
85
|
+
/** Workflows where this edge was observed */
|
|
86
|
+
sources: Array<{
|
|
87
|
+
workflowFile?: string;
|
|
88
|
+
scenarioId: string;
|
|
89
|
+
}>;
|
|
90
|
+
/** Reason this edge is missing */
|
|
91
|
+
reason: 'no-edge-in-canvas' | 'span-not-matched';
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* An edge documented in spans.canvas but not observed in workflows
|
|
95
|
+
*/
|
|
96
|
+
export interface UnusedEdge {
|
|
97
|
+
/** Canvas edge */
|
|
98
|
+
canvasEdge: CanvasEdgeInfo;
|
|
99
|
+
/** Canvas file where this edge is defined */
|
|
100
|
+
canvasFile?: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* A span referenced in workflows that doesn't match any spans.canvas node
|
|
104
|
+
*/
|
|
105
|
+
export interface UnmatchedSpan {
|
|
106
|
+
/** Exact span name from workflow */
|
|
107
|
+
spanName: string;
|
|
108
|
+
/** Workflows that reference this span */
|
|
109
|
+
sources: Array<{
|
|
110
|
+
workflowFile?: string;
|
|
111
|
+
scenarioId: string;
|
|
112
|
+
}>;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Extract span nodes from a spans.canvas file
|
|
116
|
+
*
|
|
117
|
+
* @param canvas - Parsed spans.canvas content
|
|
118
|
+
* @returns Array of span node info
|
|
119
|
+
*/
|
|
120
|
+
export declare function extractSpanNodes(canvas: ExtendedCanvas): SpanNodeInfo[];
|
|
121
|
+
/**
|
|
122
|
+
* Extract edges from a spans.canvas file
|
|
123
|
+
*
|
|
124
|
+
* @param canvas - Parsed spans.canvas content
|
|
125
|
+
* @param spanNodes - Map of nodeId to span info
|
|
126
|
+
* @returns Array of canvas edge info
|
|
127
|
+
*/
|
|
128
|
+
export declare function extractCanvasEdges(canvas: ExtendedCanvas, spanNodes: SpanNodeInfo[]): CanvasEdgeInfo[];
|
|
129
|
+
/**
|
|
130
|
+
* Match an exact span name to a span pattern
|
|
131
|
+
*
|
|
132
|
+
* @param spanName - Exact span name (e.g., "validate.canvas")
|
|
133
|
+
* @param pattern - Span pattern (e.g., "validate.*")
|
|
134
|
+
* @returns true if the span matches the pattern
|
|
135
|
+
*/
|
|
136
|
+
export declare function matchSpanToPattern(spanName: string, pattern: string): boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Find the canvas node that matches a span name
|
|
139
|
+
*
|
|
140
|
+
* @param spanName - Exact span name
|
|
141
|
+
* @param spanNodes - Available span nodes
|
|
142
|
+
* @returns Matching node info or undefined
|
|
143
|
+
*/
|
|
144
|
+
export declare function findMatchingNode(spanName: string, spanNodes: SpanNodeInfo[]): SpanNodeInfo | undefined;
|
|
145
|
+
/**
|
|
146
|
+
* Check if a derived edge has a corresponding canvas edge
|
|
147
|
+
*
|
|
148
|
+
* @param derivedEdge - Edge derived from workflow
|
|
149
|
+
* @param canvasEdges - Edges from spans.canvas
|
|
150
|
+
* @param spanNodes - Span nodes from spans.canvas
|
|
151
|
+
* @returns Matching canvas edge or undefined
|
|
152
|
+
*/
|
|
153
|
+
export declare function findMatchingCanvasEdge(derivedEdge: DerivedEdge, canvasEdges: CanvasEdgeInfo[], spanNodes: SpanNodeInfo[]): CanvasEdgeInfo | undefined;
|
|
154
|
+
/**
|
|
155
|
+
* Validate derived edges against spans.canvas
|
|
156
|
+
*
|
|
157
|
+
* @param derivedEdges - Edges derived from workflows
|
|
158
|
+
* @param canvas - Parsed spans.canvas content
|
|
159
|
+
* @param canvasFile - Optional file path for tracking
|
|
160
|
+
* @returns Validation result
|
|
161
|
+
*/
|
|
162
|
+
export declare function validateEdges(derivedEdges: DerivedEdge[], canvas: ExtendedCanvas, canvasFile?: string): EdgeValidationResult;
|
|
163
|
+
/**
|
|
164
|
+
* Format validation result as human-readable text
|
|
165
|
+
*
|
|
166
|
+
* @param result - Validation result
|
|
167
|
+
* @returns Formatted string
|
|
168
|
+
*/
|
|
169
|
+
export declare function formatValidationResult(result: EdgeValidationResult): string;
|
|
170
|
+
//# sourceMappingURL=edge-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edge-validation.d.ts","sourceRoot":"","sources":["../../src/workflow/edge-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Edge Validation
|
|
4
|
+
*
|
|
5
|
+
* Validates derived edges from workflows against spans.canvas definitions.
|
|
6
|
+
* Ensures documented span relationships match observed workflow behavior.
|
|
7
|
+
*
|
|
8
|
+
* @see .principal-views/WORKFLOW-SPAN-INTEGRATION.md
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.formatValidationResult = exports.validateEdges = exports.findMatchingCanvasEdge = exports.findMatchingNode = exports.matchSpanToPattern = exports.extractCanvasEdges = exports.extractSpanNodes = void 0;
|
|
12
|
+
const canvas_1 = require("../types/canvas");
|
|
13
|
+
const minimatch_1 = require("minimatch");
|
|
14
|
+
/**
|
|
15
|
+
* Extract span nodes from a spans.canvas file
|
|
16
|
+
*
|
|
17
|
+
* @param canvas - Parsed spans.canvas content
|
|
18
|
+
* @returns Array of span node info
|
|
19
|
+
*/
|
|
20
|
+
function extractSpanNodes(canvas) {
|
|
21
|
+
if (!canvas.nodes) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
const spanNodes = [];
|
|
25
|
+
for (const node of canvas.nodes) {
|
|
26
|
+
// Check OTEL span convention nodes (top-level otel.spanPattern)
|
|
27
|
+
if ((0, canvas_1.isOtelSpanConventionNode)(node) && node.otel?.spanPattern) {
|
|
28
|
+
spanNodes.push({
|
|
29
|
+
nodeId: node.id,
|
|
30
|
+
spanPattern: node.otel.spanPattern,
|
|
31
|
+
name: node.label,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
// Check standard nodes (pv.otel.spanPattern)
|
|
35
|
+
else if ((0, canvas_1.isStandardCanvasNode)(node) && node.pv?.otel?.spanPattern) {
|
|
36
|
+
spanNodes.push({
|
|
37
|
+
nodeId: node.id,
|
|
38
|
+
spanPattern: node.pv.otel.spanPattern,
|
|
39
|
+
name: node.pv.name,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return spanNodes;
|
|
44
|
+
}
|
|
45
|
+
exports.extractSpanNodes = extractSpanNodes;
|
|
46
|
+
/**
|
|
47
|
+
* Extract edges from a spans.canvas file
|
|
48
|
+
*
|
|
49
|
+
* @param canvas - Parsed spans.canvas content
|
|
50
|
+
* @param spanNodes - Map of nodeId to span info
|
|
51
|
+
* @returns Array of canvas edge info
|
|
52
|
+
*/
|
|
53
|
+
function extractCanvasEdges(canvas, spanNodes) {
|
|
54
|
+
if (!canvas.edges) {
|
|
55
|
+
return [];
|
|
56
|
+
}
|
|
57
|
+
const nodeMap = new Map(spanNodes.map((n) => [n.nodeId, n]));
|
|
58
|
+
const edges = [];
|
|
59
|
+
for (const edge of canvas.edges) {
|
|
60
|
+
const fromNode = nodeMap.get(edge.fromNode);
|
|
61
|
+
const toNode = nodeMap.get(edge.toNode);
|
|
62
|
+
edges.push({
|
|
63
|
+
fromNodeId: edge.fromNode,
|
|
64
|
+
toNodeId: edge.toNode,
|
|
65
|
+
fromSpanPattern: fromNode?.spanPattern,
|
|
66
|
+
toSpanPattern: toNode?.spanPattern,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
return edges;
|
|
70
|
+
}
|
|
71
|
+
exports.extractCanvasEdges = extractCanvasEdges;
|
|
72
|
+
/**
|
|
73
|
+
* Match an exact span name to a span pattern
|
|
74
|
+
*
|
|
75
|
+
* @param spanName - Exact span name (e.g., "validate.canvas")
|
|
76
|
+
* @param pattern - Span pattern (e.g., "validate.*")
|
|
77
|
+
* @returns true if the span matches the pattern
|
|
78
|
+
*/
|
|
79
|
+
function matchSpanToPattern(spanName, pattern) {
|
|
80
|
+
// Exact match
|
|
81
|
+
if (spanName === pattern) {
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
// Use minimatch for glob pattern matching
|
|
85
|
+
return (0, minimatch_1.minimatch)(spanName, pattern);
|
|
86
|
+
}
|
|
87
|
+
exports.matchSpanToPattern = matchSpanToPattern;
|
|
88
|
+
/**
|
|
89
|
+
* Find the canvas node that matches a span name
|
|
90
|
+
*
|
|
91
|
+
* @param spanName - Exact span name
|
|
92
|
+
* @param spanNodes - Available span nodes
|
|
93
|
+
* @returns Matching node info or undefined
|
|
94
|
+
*/
|
|
95
|
+
function findMatchingNode(spanName, spanNodes) {
|
|
96
|
+
// First try exact match
|
|
97
|
+
for (const node of spanNodes) {
|
|
98
|
+
if (node.spanPattern === spanName) {
|
|
99
|
+
return node;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Then try pattern match
|
|
103
|
+
for (const node of spanNodes) {
|
|
104
|
+
if (matchSpanToPattern(spanName, node.spanPattern)) {
|
|
105
|
+
return node;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return undefined;
|
|
109
|
+
}
|
|
110
|
+
exports.findMatchingNode = findMatchingNode;
|
|
111
|
+
/**
|
|
112
|
+
* Check if a derived edge has a corresponding canvas edge
|
|
113
|
+
*
|
|
114
|
+
* @param derivedEdge - Edge derived from workflow
|
|
115
|
+
* @param canvasEdges - Edges from spans.canvas
|
|
116
|
+
* @param spanNodes - Span nodes from spans.canvas
|
|
117
|
+
* @returns Matching canvas edge or undefined
|
|
118
|
+
*/
|
|
119
|
+
function findMatchingCanvasEdge(derivedEdge, canvasEdges, spanNodes) {
|
|
120
|
+
const fromNode = findMatchingNode(derivedEdge.fromSpan, spanNodes);
|
|
121
|
+
const toNode = findMatchingNode(derivedEdge.toSpan, spanNodes);
|
|
122
|
+
if (!fromNode || !toNode) {
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
// Find canvas edge connecting these nodes
|
|
126
|
+
return canvasEdges.find((edge) => edge.fromNodeId === fromNode.nodeId && edge.toNodeId === toNode.nodeId);
|
|
127
|
+
}
|
|
128
|
+
exports.findMatchingCanvasEdge = findMatchingCanvasEdge;
|
|
129
|
+
/**
|
|
130
|
+
* Validate derived edges against spans.canvas
|
|
131
|
+
*
|
|
132
|
+
* @param derivedEdges - Edges derived from workflows
|
|
133
|
+
* @param canvas - Parsed spans.canvas content
|
|
134
|
+
* @param canvasFile - Optional file path for tracking
|
|
135
|
+
* @returns Validation result
|
|
136
|
+
*/
|
|
137
|
+
function validateEdges(derivedEdges, canvas, canvasFile) {
|
|
138
|
+
const spanNodes = extractSpanNodes(canvas);
|
|
139
|
+
const canvasEdges = extractCanvasEdges(canvas, spanNodes);
|
|
140
|
+
const validEdges = [];
|
|
141
|
+
const missingEdges = [];
|
|
142
|
+
const unmatchedSpans = [];
|
|
143
|
+
const matchedCanvasEdges = new Set();
|
|
144
|
+
// Track all unique spans
|
|
145
|
+
const allSpans = new Set();
|
|
146
|
+
for (const edge of derivedEdges) {
|
|
147
|
+
allSpans.add(edge.fromSpan);
|
|
148
|
+
allSpans.add(edge.toSpan);
|
|
149
|
+
}
|
|
150
|
+
// Check each span for matching node
|
|
151
|
+
for (const spanName of allSpans) {
|
|
152
|
+
const matchingNode = findMatchingNode(spanName, spanNodes);
|
|
153
|
+
if (!matchingNode) {
|
|
154
|
+
// Find sources for this span
|
|
155
|
+
const sources = [];
|
|
156
|
+
for (const edge of derivedEdges) {
|
|
157
|
+
if (edge.fromSpan === spanName || edge.toSpan === spanName) {
|
|
158
|
+
sources.push({
|
|
159
|
+
workflowFile: edge.workflowFile,
|
|
160
|
+
scenarioId: edge.scenarioId,
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
unmatchedSpans.push({
|
|
165
|
+
spanName,
|
|
166
|
+
sources: deduplicateSources(sources),
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// Validate each derived edge
|
|
171
|
+
for (const derivedEdge of derivedEdges) {
|
|
172
|
+
const fromNode = findMatchingNode(derivedEdge.fromSpan, spanNodes);
|
|
173
|
+
const toNode = findMatchingNode(derivedEdge.toSpan, spanNodes);
|
|
174
|
+
if (!fromNode || !toNode) {
|
|
175
|
+
// Skip if either span doesn't match - already reported as unmatched span
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
const matchingCanvasEdge = findMatchingCanvasEdge(derivedEdge, canvasEdges, spanNodes);
|
|
179
|
+
if (matchingCanvasEdge) {
|
|
180
|
+
// Valid edge - documented and observed
|
|
181
|
+
const edgeKey = `${matchingCanvasEdge.fromNodeId}->${matchingCanvasEdge.toNodeId}`;
|
|
182
|
+
matchedCanvasEdges.add(edgeKey);
|
|
183
|
+
// Check if we already have this edge in validEdges
|
|
184
|
+
const existingValid = validEdges.find((v) => v.fromSpan === derivedEdge.fromSpan && v.toSpan === derivedEdge.toSpan);
|
|
185
|
+
if (existingValid) {
|
|
186
|
+
existingValid.sources.push({
|
|
187
|
+
workflowFile: derivedEdge.workflowFile,
|
|
188
|
+
scenarioId: derivedEdge.scenarioId,
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
validEdges.push({
|
|
193
|
+
fromSpan: derivedEdge.fromSpan,
|
|
194
|
+
toSpan: derivedEdge.toSpan,
|
|
195
|
+
canvasEdge: matchingCanvasEdge,
|
|
196
|
+
sources: [
|
|
197
|
+
{
|
|
198
|
+
workflowFile: derivedEdge.workflowFile,
|
|
199
|
+
scenarioId: derivedEdge.scenarioId,
|
|
200
|
+
},
|
|
201
|
+
],
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
// Missing edge - observed but not documented
|
|
207
|
+
const existingMissing = missingEdges.find((m) => m.fromSpan === derivedEdge.fromSpan && m.toSpan === derivedEdge.toSpan);
|
|
208
|
+
if (existingMissing) {
|
|
209
|
+
existingMissing.sources.push({
|
|
210
|
+
workflowFile: derivedEdge.workflowFile,
|
|
211
|
+
scenarioId: derivedEdge.scenarioId,
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
missingEdges.push({
|
|
216
|
+
fromSpan: derivedEdge.fromSpan,
|
|
217
|
+
toSpan: derivedEdge.toSpan,
|
|
218
|
+
fromNodeId: fromNode.nodeId,
|
|
219
|
+
toNodeId: toNode.nodeId,
|
|
220
|
+
sources: [
|
|
221
|
+
{
|
|
222
|
+
workflowFile: derivedEdge.workflowFile,
|
|
223
|
+
scenarioId: derivedEdge.scenarioId,
|
|
224
|
+
},
|
|
225
|
+
],
|
|
226
|
+
reason: 'no-edge-in-canvas',
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
// Find unused canvas edges
|
|
232
|
+
const unusedEdges = [];
|
|
233
|
+
for (const canvasEdge of canvasEdges) {
|
|
234
|
+
const edgeKey = `${canvasEdge.fromNodeId}->${canvasEdge.toNodeId}`;
|
|
235
|
+
if (!matchedCanvasEdges.has(edgeKey)) {
|
|
236
|
+
unusedEdges.push({
|
|
237
|
+
canvasEdge,
|
|
238
|
+
canvasFile,
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
validEdges,
|
|
244
|
+
missingEdges,
|
|
245
|
+
unusedEdges,
|
|
246
|
+
unmatchedSpans,
|
|
247
|
+
summary: {
|
|
248
|
+
totalDerivedEdges: derivedEdges.length,
|
|
249
|
+
totalCanvasEdges: canvasEdges.length,
|
|
250
|
+
matchedEdges: validEdges.length,
|
|
251
|
+
missingEdges: missingEdges.length,
|
|
252
|
+
unusedEdges: unusedEdges.length,
|
|
253
|
+
unmatchedSpans: unmatchedSpans.length,
|
|
254
|
+
},
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
exports.validateEdges = validateEdges;
|
|
258
|
+
/**
|
|
259
|
+
* Deduplicate sources array
|
|
260
|
+
*/
|
|
261
|
+
function deduplicateSources(sources) {
|
|
262
|
+
const seen = new Set();
|
|
263
|
+
return sources.filter((s) => {
|
|
264
|
+
const key = `${s.workflowFile || ''}:${s.scenarioId}`;
|
|
265
|
+
if (seen.has(key)) {
|
|
266
|
+
return false;
|
|
267
|
+
}
|
|
268
|
+
seen.add(key);
|
|
269
|
+
return true;
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Format validation result as human-readable text
|
|
274
|
+
*
|
|
275
|
+
* @param result - Validation result
|
|
276
|
+
* @returns Formatted string
|
|
277
|
+
*/
|
|
278
|
+
function formatValidationResult(result) {
|
|
279
|
+
const lines = [];
|
|
280
|
+
lines.push('Edge Validation Results');
|
|
281
|
+
lines.push('=======================');
|
|
282
|
+
lines.push('');
|
|
283
|
+
// Summary
|
|
284
|
+
lines.push(`Summary:`);
|
|
285
|
+
lines.push(` Derived edges from workflows: ${result.summary.totalDerivedEdges}`);
|
|
286
|
+
lines.push(` Edges in spans.canvas: ${result.summary.totalCanvasEdges}`);
|
|
287
|
+
lines.push(` Matched: ${result.summary.matchedEdges}`);
|
|
288
|
+
lines.push(` Missing from canvas: ${result.summary.missingEdges}`);
|
|
289
|
+
lines.push(` Unused in canvas: ${result.summary.unusedEdges}`);
|
|
290
|
+
lines.push(` Unmatched spans: ${result.summary.unmatchedSpans}`);
|
|
291
|
+
lines.push('');
|
|
292
|
+
// Valid edges
|
|
293
|
+
if (result.validEdges.length > 0) {
|
|
294
|
+
lines.push('Valid Edges (documented and observed):');
|
|
295
|
+
for (const edge of result.validEdges) {
|
|
296
|
+
lines.push(` ✓ ${edge.fromSpan} → ${edge.toSpan}`);
|
|
297
|
+
}
|
|
298
|
+
lines.push('');
|
|
299
|
+
}
|
|
300
|
+
// Missing edges
|
|
301
|
+
if (result.missingEdges.length > 0) {
|
|
302
|
+
lines.push('Missing Edges (observed but not documented):');
|
|
303
|
+
for (const edge of result.missingEdges) {
|
|
304
|
+
lines.push(` ✗ ${edge.fromSpan} → ${edge.toSpan}`);
|
|
305
|
+
if (edge.fromNodeId && edge.toNodeId) {
|
|
306
|
+
lines.push(` Suggested: Add edge from "${edge.fromNodeId}" to "${edge.toNodeId}"`);
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
lines.push('');
|
|
310
|
+
}
|
|
311
|
+
// Unused edges
|
|
312
|
+
if (result.unusedEdges.length > 0) {
|
|
313
|
+
lines.push('Unused Edges (documented but not observed):');
|
|
314
|
+
for (const edge of result.unusedEdges) {
|
|
315
|
+
const from = edge.canvasEdge.fromSpanPattern || edge.canvasEdge.fromNodeId;
|
|
316
|
+
const to = edge.canvasEdge.toSpanPattern || edge.canvasEdge.toNodeId;
|
|
317
|
+
lines.push(` ⚠ ${from} → ${to}`);
|
|
318
|
+
}
|
|
319
|
+
lines.push('');
|
|
320
|
+
}
|
|
321
|
+
// Unmatched spans
|
|
322
|
+
if (result.unmatchedSpans.length > 0) {
|
|
323
|
+
lines.push('Unmatched Spans (no matching node in spans.canvas):');
|
|
324
|
+
for (const span of result.unmatchedSpans) {
|
|
325
|
+
lines.push(` ✗ ${span.spanName}`);
|
|
326
|
+
}
|
|
327
|
+
lines.push('');
|
|
328
|
+
}
|
|
329
|
+
return lines.join('\n');
|
|
330
|
+
}
|
|
331
|
+
exports.formatValidationResult = formatValidationResult;
|
|
332
|
+
//# sourceMappingURL=edge-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edge-validation.js","sourceRoot":"","sources":["../../src/workflow/edge-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example: Using the Workflow Template System
|
|
3
|
+
*
|
|
4
|
+
* This example demonstrates how to use the workflow renderer
|
|
5
|
+
* to transform OTEL events into human-readable workflows.
|
|
6
|
+
*/
|
|
7
|
+
declare function exampleSuccess(): void;
|
|
8
|
+
declare function exampleWithViolations(): void;
|
|
9
|
+
declare function exampleSpanTree(): void;
|
|
10
|
+
export { exampleSuccess, exampleWithViolations, exampleSpanTree };
|
|
11
|
+
//# sourceMappingURL=example.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/workflow/example.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,iBAAS,cAAc,SAqEtB;AAGD,iBAAS,qBAAqB,SA8I7B;AAGD,iBAAS,eAAe,SA2FvB;AAUD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,CAAC"}
|