@exellix/ai-tasks 7.8.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/.env.example +3 -0
- package/.metadata/instructions-builders/create-expected-output-instructions.md +195 -0
- package/.metadata/readme.md +48 -0
- package/.metadata/shared/audit.md +29 -0
- package/.metadata/skills/professional-answer +32 -0
- package/.metadata/skills/professional-answer.compressed.md +11 -0
- package/.metadata/skills/professional-answer.instructions +33 -0
- package/.metadata/skills/professional-answer.instructions.md +33 -0
- package/.metadata/skills/professional-answer.l2.md +28 -0
- package/.metadata/skills/professional-answer.md +32 -0
- package/.metadata/skills/professional-answer.prompt +1 -0
- package/.metadata/skills/professional-answer.prompt.md +1 -0
- package/.metadata/skills/professional-decision.md +26 -0
- package/BREAKING-CHANGES.md +43 -0
- package/CHANGELOG.md +147 -0
- package/README.md +2497 -0
- package/RUNTASK_REQUEST.md +369 -0
- package/dist/activix/activixClient.d.ts +6 -0
- package/dist/activix/activixClient.d.ts.map +1 -0
- package/dist/activix/activixClient.js +131 -0
- package/dist/activix/activixClient.js.map +1 -0
- package/dist/activix/getTaskActivities.d.ts +10 -0
- package/dist/activix/getTaskActivities.d.ts.map +1 -0
- package/dist/activix/getTaskActivities.js +17 -0
- package/dist/activix/getTaskActivities.js.map +1 -0
- package/dist/activix/phaseTracking.d.ts +17 -0
- package/dist/activix/phaseTracking.d.ts.map +1 -0
- package/dist/activix/phaseTracking.js +85 -0
- package/dist/activix/phaseTracking.js.map +1 -0
- package/dist/aiScoping/index.d.ts +6 -0
- package/dist/aiScoping/index.d.ts.map +1 -0
- package/dist/aiScoping/index.js +4 -0
- package/dist/aiScoping/index.js.map +1 -0
- package/dist/aiScoping/runAiScoping.d.ts +36 -0
- package/dist/aiScoping/runAiScoping.d.ts.map +1 -0
- package/dist/aiScoping/runAiScoping.js +100 -0
- package/dist/aiScoping/runAiScoping.js.map +1 -0
- package/dist/aiScoping/runScopingCall.d.ts +23 -0
- package/dist/aiScoping/runScopingCall.d.ts.map +1 -0
- package/dist/aiScoping/runScopingCall.js +50 -0
- package/dist/aiScoping/runScopingCall.js.map +1 -0
- package/dist/aiScoping/validateAiScoping.d.ts +7 -0
- package/dist/aiScoping/validateAiScoping.d.ts.map +1 -0
- package/dist/aiScoping/validateAiScoping.js +33 -0
- package/dist/aiScoping/validateAiScoping.js.map +1 -0
- package/dist/aiSkillsUpstreamExports.d.ts +13 -0
- package/dist/aiSkillsUpstreamExports.d.ts.map +1 -0
- package/dist/aiSkillsUpstreamExports.js +12 -0
- package/dist/aiSkillsUpstreamExports.js.map +1 -0
- package/dist/analysis/analyzeRunTaskRequest.d.ts +29 -0
- package/dist/analysis/analyzeRunTaskRequest.d.ts.map +1 -0
- package/dist/analysis/analyzeRunTaskRequest.js +85 -0
- package/dist/analysis/analyzeRunTaskRequest.js.map +1 -0
- package/dist/analysis/index.d.ts +3 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +2 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/builders/task-request-builder.d.ts +310 -0
- package/dist/builders/task-request-builder.d.ts.map +1 -0
- package/dist/builders/task-request-builder.js +581 -0
- package/dist/builders/task-request-builder.js.map +1 -0
- package/dist/compile/compileTaskConfiguration.d.ts +15 -0
- package/dist/compile/compileTaskConfiguration.d.ts.map +1 -0
- package/dist/compile/compileTaskConfiguration.js +184 -0
- package/dist/compile/compileTaskConfiguration.js.map +1 -0
- package/dist/compile/index.d.ts +2 -0
- package/dist/compile/index.d.ts.map +1 -0
- package/dist/compile/index.js +2 -0
- package/dist/compile/index.js.map +1 -0
- package/dist/core/task-sdk.d.ts +36 -0
- package/dist/core/task-sdk.d.ts.map +1 -0
- package/dist/core/task-sdk.js +2432 -0
- package/dist/core/task-sdk.js.map +1 -0
- package/dist/errors/smartInputValidationError.d.ts +39 -0
- package/dist/errors/smartInputValidationError.d.ts.map +1 -0
- package/dist/errors/smartInputValidationError.js +97 -0
- package/dist/errors/smartInputValidationError.js.map +1 -0
- package/dist/errors/taskConfigurationCompileError.d.ts +16 -0
- package/dist/errors/taskConfigurationCompileError.d.ts.map +1 -0
- package/dist/errors/taskConfigurationCompileError.js +20 -0
- package/dist/errors/taskConfigurationCompileError.js.map +1 -0
- package/dist/execution-strategies/applyExecutionStrategyOutputs.d.ts +17 -0
- package/dist/execution-strategies/applyExecutionStrategyOutputs.d.ts.map +1 -0
- package/dist/execution-strategies/applyExecutionStrategyOutputs.js +63 -0
- package/dist/execution-strategies/applyExecutionStrategyOutputs.js.map +1 -0
- package/dist/execution-strategies/constants.d.ts +14 -0
- package/dist/execution-strategies/constants.d.ts.map +1 -0
- package/dist/execution-strategies/constants.js +13 -0
- package/dist/execution-strategies/constants.js.map +1 -0
- package/dist/execution-strategies/executionStrategyCatalogMetadata.d.ts +9 -0
- package/dist/execution-strategies/executionStrategyCatalogMetadata.d.ts.map +1 -0
- package/dist/execution-strategies/executionStrategyCatalogMetadata.js +37 -0
- package/dist/execution-strategies/executionStrategyCatalogMetadata.js.map +1 -0
- package/dist/execution-strategies/genericExecutionFuncxEnvelope.d.ts +94 -0
- package/dist/execution-strategies/genericExecutionFuncxEnvelope.d.ts.map +1 -0
- package/dist/execution-strategies/genericExecutionFuncxEnvelope.js +306 -0
- package/dist/execution-strategies/genericExecutionFuncxEnvelope.js.map +1 -0
- package/dist/execution-strategies/resolveExecutionStrategies.d.ts +14 -0
- package/dist/execution-strategies/resolveExecutionStrategies.d.ts.map +1 -0
- package/dist/execution-strategies/resolveExecutionStrategies.js +108 -0
- package/dist/execution-strategies/resolveExecutionStrategies.js.map +1 -0
- package/dist/execution-strategies/runFuncxExecutionStrategy.d.ts +37 -0
- package/dist/execution-strategies/runFuncxExecutionStrategy.d.ts.map +1 -0
- package/dist/execution-strategies/runFuncxExecutionStrategy.js +72 -0
- package/dist/execution-strategies/runFuncxExecutionStrategy.js.map +1 -0
- package/dist/index.d.ts +99 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +106 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/resolveLlmCallForXynthesis.d.ts +52 -0
- package/dist/internal/resolveLlmCallForXynthesis.d.ts.map +1 -0
- package/dist/internal/resolveLlmCallForXynthesis.js +81 -0
- package/dist/internal/resolveLlmCallForXynthesis.js.map +1 -0
- package/dist/internal/resolveRunTaskRuntimeKnobs.d.ts +19 -0
- package/dist/internal/resolveRunTaskRuntimeKnobs.d.ts.map +1 -0
- package/dist/internal/resolveRunTaskRuntimeKnobs.js +52 -0
- package/dist/internal/resolveRunTaskRuntimeKnobs.js.map +1 -0
- package/dist/internal/runPostStepLlmCall.d.ts +52 -0
- package/dist/internal/runPostStepLlmCall.d.ts.map +1 -0
- package/dist/internal/runPostStepLlmCall.js +170 -0
- package/dist/internal/runPostStepLlmCall.js.map +1 -0
- package/dist/localTasks/collectEvidence.d.ts +3 -0
- package/dist/localTasks/collectEvidence.d.ts.map +1 -0
- package/dist/localTasks/collectEvidence.js +364 -0
- package/dist/localTasks/collectEvidence.js.map +1 -0
- package/dist/localTasks/decideWebScope.d.ts +3 -0
- package/dist/localTasks/decideWebScope.d.ts.map +1 -0
- package/dist/localTasks/decideWebScope.js +56 -0
- package/dist/localTasks/decideWebScope.js.map +1 -0
- package/dist/localTasks/index.d.ts +5 -0
- package/dist/localTasks/index.d.ts.map +1 -0
- package/dist/localTasks/index.js +19 -0
- package/dist/localTasks/index.js.map +1 -0
- package/dist/localTasks/narrixAssetPlayground.d.ts +13 -0
- package/dist/localTasks/narrixAssetPlayground.d.ts.map +1 -0
- package/dist/localTasks/narrixAssetPlayground.js +161 -0
- package/dist/localTasks/narrixAssetPlayground.js.map +1 -0
- package/dist/localTasks/narrixSubnetPlayground.d.ts +14 -0
- package/dist/localTasks/narrixSubnetPlayground.d.ts.map +1 -0
- package/dist/localTasks/narrixSubnetPlayground.js +168 -0
- package/dist/localTasks/narrixSubnetPlayground.js.map +1 -0
- package/dist/localTasks/narrixVulnGroupPlayground.d.ts +13 -0
- package/dist/localTasks/narrixVulnGroupPlayground.d.ts.map +1 -0
- package/dist/localTasks/narrixVulnGroupPlayground.js +161 -0
- package/dist/localTasks/narrixVulnGroupPlayground.js.map +1 -0
- package/dist/localTasks/narrixVulnInstancePlayground.d.ts +13 -0
- package/dist/localTasks/narrixVulnInstancePlayground.d.ts.map +1 -0
- package/dist/localTasks/narrixVulnInstancePlayground.js +165 -0
- package/dist/localTasks/narrixVulnInstancePlayground.js.map +1 -0
- package/dist/localTasks/nodeCallExport.d.ts +6 -0
- package/dist/localTasks/nodeCallExport.d.ts.map +1 -0
- package/dist/localTasks/nodeCallExport.js +99 -0
- package/dist/localTasks/nodeCallExport.js.map +1 -0
- package/dist/localTasks/nodeCallExportBatch.d.ts +3 -0
- package/dist/localTasks/nodeCallExportBatch.d.ts.map +1 -0
- package/dist/localTasks/nodeCallExportBatch.js +52 -0
- package/dist/localTasks/nodeCallExportBatch.js.map +1 -0
- package/dist/localTasks/normalizeNarrixResult.d.ts +3 -0
- package/dist/localTasks/normalizeNarrixResult.d.ts.map +1 -0
- package/dist/localTasks/normalizeNarrixResult.js +106 -0
- package/dist/localTasks/normalizeNarrixResult.js.map +1 -0
- package/dist/localTasks/registry.d.ts +4 -0
- package/dist/localTasks/registry.d.ts.map +1 -0
- package/dist/localTasks/registry.js +8 -0
- package/dist/localTasks/registry.js.map +1 -0
- package/dist/localTasks/types.d.ts +28 -0
- package/dist/localTasks/types.d.ts.map +1 -0
- package/dist/localTasks/types.js +2 -0
- package/dist/localTasks/types.js.map +1 -0
- package/dist/localTasks/validateInput.d.ts +3 -0
- package/dist/localTasks/validateInput.d.ts.map +1 -0
- package/dist/localTasks/validateInput.js +66 -0
- package/dist/localTasks/validateInput.js.map +1 -0
- package/dist/methods/convenience-methods.d.ts +45 -0
- package/dist/methods/convenience-methods.d.ts.map +1 -0
- package/dist/methods/convenience-methods.js +39 -0
- package/dist/methods/convenience-methods.js.map +1 -0
- package/dist/narrix/applyNarrixScope.d.ts +10 -0
- package/dist/narrix/applyNarrixScope.d.ts.map +1 -0
- package/dist/narrix/applyNarrixScope.js +69 -0
- package/dist/narrix/applyNarrixScope.js.map +1 -0
- package/dist/narrix/buildNarrixAttachment.d.ts +9 -0
- package/dist/narrix/buildNarrixAttachment.d.ts.map +1 -0
- package/dist/narrix/buildNarrixAttachment.js +29 -0
- package/dist/narrix/buildNarrixAttachment.js.map +1 -0
- package/dist/narrix/buildWebScopeScopeInput.d.ts +39 -0
- package/dist/narrix/buildWebScopeScopeInput.d.ts.map +1 -0
- package/dist/narrix/buildWebScopeScopeInput.js +193 -0
- package/dist/narrix/buildWebScopeScopeInput.js.map +1 -0
- package/dist/narrix/flags.d.ts +4 -0
- package/dist/narrix/flags.d.ts.map +1 -0
- package/dist/narrix/flags.js +4 -0
- package/dist/narrix/flags.js.map +1 -0
- package/dist/narrix/index.d.ts +11 -0
- package/dist/narrix/index.d.ts.map +1 -0
- package/dist/narrix/index.js +14 -0
- package/dist/narrix/index.js.map +1 -0
- package/dist/narrix/narrixClient.d.ts +9 -0
- package/dist/narrix/narrixClient.d.ts.map +1 -0
- package/dist/narrix/narrixClient.js +46 -0
- package/dist/narrix/narrixClient.js.map +1 -0
- package/dist/narrix/narrixContextMarkdown.d.ts +15 -0
- package/dist/narrix/narrixContextMarkdown.d.ts.map +1 -0
- package/dist/narrix/narrixContextMarkdown.js +98 -0
- package/dist/narrix/narrixContextMarkdown.js.map +1 -0
- package/dist/narrix/narrixRunnerModule.d.ts +11 -0
- package/dist/narrix/narrixRunnerModule.d.ts.map +1 -0
- package/dist/narrix/narrixRunnerModule.js +17 -0
- package/dist/narrix/narrixRunnerModule.js.map +1 -0
- package/dist/narrix/runNarrixForChat.d.ts +3 -0
- package/dist/narrix/runNarrixForChat.d.ts.map +1 -0
- package/dist/narrix/runNarrixForChat.js +51 -0
- package/dist/narrix/runNarrixForChat.js.map +1 -0
- package/dist/narrix/runNarrixForDocs.d.ts +3 -0
- package/dist/narrix/runNarrixForDocs.d.ts.map +1 -0
- package/dist/narrix/runNarrixForDocs.js +50 -0
- package/dist/narrix/runNarrixForDocs.js.map +1 -0
- package/dist/narrix/runNarrixForRecord.d.ts +3 -0
- package/dist/narrix/runNarrixForRecord.d.ts.map +1 -0
- package/dist/narrix/runNarrixForRecord.js +47 -0
- package/dist/narrix/runNarrixForRecord.js.map +1 -0
- package/dist/narrix/runNarrixForText.d.ts +3 -0
- package/dist/narrix/runNarrixForText.d.ts.map +1 -0
- package/dist/narrix/runNarrixForText.js +49 -0
- package/dist/narrix/runNarrixForText.js.map +1 -0
- package/dist/narrix/runnerDispatch.d.ts +12 -0
- package/dist/narrix/runnerDispatch.d.ts.map +1 -0
- package/dist/narrix/runnerDispatch.js +19 -0
- package/dist/narrix/runnerDispatch.js.map +1 -0
- package/dist/narrix/seedBundleRouting.d.ts +15 -0
- package/dist/narrix/seedBundleRouting.d.ts.map +1 -0
- package/dist/narrix/seedBundleRouting.js +46 -0
- package/dist/narrix/seedBundleRouting.js.map +1 -0
- package/dist/narrix/task.d.ts +4 -0
- package/dist/narrix/task.d.ts.map +1 -0
- package/dist/narrix/task.js +143 -0
- package/dist/narrix/task.js.map +1 -0
- package/dist/narrix/types.d.ts +104 -0
- package/dist/narrix/types.d.ts.map +1 -0
- package/dist/narrix/types.js +3 -0
- package/dist/narrix/types.js.map +1 -0
- package/dist/narrix/webContextMarkdown.d.ts +54 -0
- package/dist/narrix/webContextMarkdown.d.ts.map +1 -0
- package/dist/narrix/webContextMarkdown.js +206 -0
- package/dist/narrix/webContextMarkdown.js.map +1 -0
- package/dist/narrix/webScoper.d.ts +43 -0
- package/dist/narrix/webScoper.d.ts.map +1 -0
- package/dist/narrix/webScoper.js +144 -0
- package/dist/narrix/webScoper.js.map +1 -0
- package/dist/observability/debugTrace.d.ts +31 -0
- package/dist/observability/debugTrace.d.ts.map +1 -0
- package/dist/observability/debugTrace.js +117 -0
- package/dist/observability/debugTrace.js.map +1 -0
- package/dist/observability/extractAiTasksObservability.d.ts +7 -0
- package/dist/observability/extractAiTasksObservability.d.ts.map +1 -0
- package/dist/observability/extractAiTasksObservability.js +98 -0
- package/dist/observability/extractAiTasksObservability.js.map +1 -0
- package/dist/observability/graphExecutionRunLogContract.d.ts +19 -0
- package/dist/observability/graphExecutionRunLogContract.d.ts.map +1 -0
- package/dist/observability/graphExecutionRunLogContract.js +11 -0
- package/dist/observability/graphExecutionRunLogContract.js.map +1 -0
- package/dist/packaged-tasks-client.d.ts +66 -0
- package/dist/packaged-tasks-client.d.ts.map +1 -0
- package/dist/packaged-tasks-client.js +100 -0
- package/dist/packaged-tasks-client.js.map +1 -0
- package/dist/planWebScopeQuestions/index.d.ts +78 -0
- package/dist/planWebScopeQuestions/index.d.ts.map +1 -0
- package/dist/planWebScopeQuestions/index.js +282 -0
- package/dist/planWebScopeQuestions/index.js.map +1 -0
- package/dist/planWebScopeQuestions/runResearchPlanQuestionsFuncx.d.ts +18 -0
- package/dist/planWebScopeQuestions/runResearchPlanQuestionsFuncx.d.ts.map +1 -0
- package/dist/planWebScopeQuestions/runResearchPlanQuestionsFuncx.js +42 -0
- package/dist/planWebScopeQuestions/runResearchPlanQuestionsFuncx.js.map +1 -0
- package/dist/post-steps/audit/loadAuditTemplates.d.ts +72 -0
- package/dist/post-steps/audit/loadAuditTemplates.d.ts.map +1 -0
- package/dist/post-steps/audit/loadAuditTemplates.js +62 -0
- package/dist/post-steps/audit/loadAuditTemplates.js.map +1 -0
- package/dist/post-steps/audit/parseAuditOutput.d.ts +11 -0
- package/dist/post-steps/audit/parseAuditOutput.d.ts.map +1 -0
- package/dist/post-steps/audit/parseAuditOutput.js +50 -0
- package/dist/post-steps/audit/parseAuditOutput.js.map +1 -0
- package/dist/post-steps/audit/runAudit.d.ts +22 -0
- package/dist/post-steps/audit/runAudit.d.ts.map +1 -0
- package/dist/post-steps/audit/runAudit.js +406 -0
- package/dist/post-steps/audit/runAudit.js.map +1 -0
- package/dist/post-steps/audit/runAuditCall.d.ts +23 -0
- package/dist/post-steps/audit/runAuditCall.d.ts.map +1 -0
- package/dist/post-steps/audit/runAuditCall.js +32 -0
- package/dist/post-steps/audit/runAuditCall.js.map +1 -0
- package/dist/post-steps/polish/loadPolishTemplates.d.ts +35 -0
- package/dist/post-steps/polish/loadPolishTemplates.d.ts.map +1 -0
- package/dist/post-steps/polish/loadPolishTemplates.js +38 -0
- package/dist/post-steps/polish/loadPolishTemplates.js.map +1 -0
- package/dist/post-steps/polish/parsePolishOutput.d.ts +6 -0
- package/dist/post-steps/polish/parsePolishOutput.d.ts.map +1 -0
- package/dist/post-steps/polish/parsePolishOutput.js +47 -0
- package/dist/post-steps/polish/parsePolishOutput.js.map +1 -0
- package/dist/post-steps/polish/runPolish.d.ts +24 -0
- package/dist/post-steps/polish/runPolish.d.ts.map +1 -0
- package/dist/post-steps/polish/runPolish.js +147 -0
- package/dist/post-steps/polish/runPolish.js.map +1 -0
- package/dist/post-steps/polish/runPolishCall.d.ts +22 -0
- package/dist/post-steps/polish/runPolishCall.d.ts.map +1 -0
- package/dist/post-steps/polish/runPolishCall.js +32 -0
- package/dist/post-steps/polish/runPolishCall.js.map +1 -0
- package/dist/post-steps/resolvePostStepConfig.d.ts +58 -0
- package/dist/post-steps/resolvePostStepConfig.d.ts.map +1 -0
- package/dist/post-steps/resolvePostStepConfig.js +105 -0
- package/dist/post-steps/resolvePostStepConfig.js.map +1 -0
- package/dist/rendrixUpstreamExports.d.ts +7 -0
- package/dist/rendrixUpstreamExports.d.ts.map +1 -0
- package/dist/rendrixUpstreamExports.js +6 -0
- package/dist/rendrixUpstreamExports.js.map +1 -0
- package/dist/skillCatalogExports.d.ts +8 -0
- package/dist/skillCatalogExports.d.ts.map +1 -0
- package/dist/skillCatalogExports.js +8 -0
- package/dist/skillCatalogExports.js.map +1 -0
- package/dist/strategies/direct-execution-strategy.d.ts +31 -0
- package/dist/strategies/direct-execution-strategy.d.ts.map +1 -0
- package/dist/strategies/direct-execution-strategy.js +107 -0
- package/dist/strategies/direct-execution-strategy.js.map +1 -0
- package/dist/strategies/execution-strategy.interface.d.ts +31 -0
- package/dist/strategies/execution-strategy.interface.d.ts.map +1 -0
- package/dist/strategies/execution-strategy.interface.js +2 -0
- package/dist/strategies/execution-strategy.interface.js.map +1 -0
- package/dist/strategies/index.d.ts +9 -0
- package/dist/strategies/index.d.ts.map +1 -0
- package/dist/strategies/index.js +8 -0
- package/dist/strategies/index.js.map +1 -0
- package/dist/strategies/strategy-factory.d.ts +45 -0
- package/dist/strategies/strategy-factory.d.ts.map +1 -0
- package/dist/strategies/strategy-factory.js +59 -0
- package/dist/strategies/strategy-factory.js.map +1 -0
- package/dist/synthesis/index.d.ts +9 -0
- package/dist/synthesis/index.d.ts.map +1 -0
- package/dist/synthesis/index.js +8 -0
- package/dist/synthesis/index.js.map +1 -0
- package/dist/synthesis/resolveSourceMaterial.d.ts +35 -0
- package/dist/synthesis/resolveSourceMaterial.d.ts.map +1 -0
- package/dist/synthesis/resolveSourceMaterial.js +152 -0
- package/dist/synthesis/resolveSourceMaterial.js.map +1 -0
- package/dist/synthesis/runStructuredSynthesisRobust.d.ts +42 -0
- package/dist/synthesis/runStructuredSynthesisRobust.d.ts.map +1 -0
- package/dist/synthesis/runStructuredSynthesisRobust.js +303 -0
- package/dist/synthesis/runStructuredSynthesisRobust.js.map +1 -0
- package/dist/task-strategies/buildTaskStrategyCatalogDescriptor.d.ts +19 -0
- package/dist/task-strategies/buildTaskStrategyCatalogDescriptor.d.ts.map +1 -0
- package/dist/task-strategies/buildTaskStrategyCatalogDescriptor.js +242 -0
- package/dist/task-strategies/buildTaskStrategyCatalogDescriptor.js.map +1 -0
- package/dist/task-strategies/canonicalInputExecutionStrategies.d.ts +171 -0
- package/dist/task-strategies/canonicalInputExecutionStrategies.d.ts.map +1 -0
- package/dist/task-strategies/canonicalInputExecutionStrategies.js +117 -0
- package/dist/task-strategies/canonicalInputExecutionStrategies.js.map +1 -0
- package/dist/task-strategies/canonicalNarrixModes.d.ts +31 -0
- package/dist/task-strategies/canonicalNarrixModes.d.ts.map +1 -0
- package/dist/task-strategies/canonicalNarrixModes.js +35 -0
- package/dist/task-strategies/canonicalNarrixModes.js.map +1 -0
- package/dist/task-strategies/canonicalTaskStrategies.d.ts +104 -0
- package/dist/task-strategies/canonicalTaskStrategies.d.ts.map +1 -0
- package/dist/task-strategies/canonicalTaskStrategies.js +77 -0
- package/dist/task-strategies/canonicalTaskStrategies.js.map +1 -0
- package/dist/task-strategies/cataloxCatalogViews.d.ts +55 -0
- package/dist/task-strategies/cataloxCatalogViews.d.ts.map +1 -0
- package/dist/task-strategies/cataloxCatalogViews.js +65 -0
- package/dist/task-strategies/cataloxCatalogViews.js.map +1 -0
- package/dist/task-strategies/constants.d.ts +49 -0
- package/dist/task-strategies/constants.d.ts.map +1 -0
- package/dist/task-strategies/constants.js +49 -0
- package/dist/task-strategies/constants.js.map +1 -0
- package/dist/task-strategies/index.d.ts +22 -0
- package/dist/task-strategies/index.d.ts.map +1 -0
- package/dist/task-strategies/index.js +13 -0
- package/dist/task-strategies/index.js.map +1 -0
- package/dist/task-strategies/listAiTaskStrategies.d.ts +43 -0
- package/dist/task-strategies/listAiTaskStrategies.d.ts.map +1 -0
- package/dist/task-strategies/listAiTaskStrategies.js +74 -0
- package/dist/task-strategies/listAiTaskStrategies.js.map +1 -0
- package/dist/task-strategies/normalize.d.ts +7 -0
- package/dist/task-strategies/normalize.d.ts.map +1 -0
- package/dist/task-strategies/normalize.js +44 -0
- package/dist/task-strategies/normalize.js.map +1 -0
- package/dist/task-strategies/types.d.ts +37 -0
- package/dist/task-strategies/types.d.ts.map +1 -0
- package/dist/task-strategies/types.js +2 -0
- package/dist/task-strategies/types.js.map +1 -0
- package/dist/types/decision-contracts.d.ts +31 -0
- package/dist/types/decision-contracts.d.ts.map +1 -0
- package/dist/types/decision-contracts.js +23 -0
- package/dist/types/decision-contracts.js.map +1 -0
- package/dist/types/evidence-types.d.ts +108 -0
- package/dist/types/evidence-types.d.ts.map +1 -0
- package/dist/types/evidence-types.js +9 -0
- package/dist/types/evidence-types.js.map +1 -0
- package/dist/types/executionType.d.ts +9 -0
- package/dist/types/executionType.d.ts.map +1 -0
- package/dist/types/executionType.js +8 -0
- package/dist/types/executionType.js.map +1 -0
- package/dist/types/index.d.ts +28 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +12 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/llmCall.d.ts +121 -0
- package/dist/types/llmCall.d.ts.map +1 -0
- package/dist/types/llmCall.js +39 -0
- package/dist/types/llmCall.js.map +1 -0
- package/dist/types/task-configuration.d.ts +60 -0
- package/dist/types/task-configuration.d.ts.map +1 -0
- package/dist/types/task-configuration.js +3 -0
- package/dist/types/task-configuration.js.map +1 -0
- package/dist/types/task-types.d.ts +887 -0
- package/dist/types/task-types.d.ts.map +1 -0
- package/dist/types/task-types.js +21 -0
- package/dist/types/task-types.js.map +1 -0
- package/dist/utilities/runUtility.d.ts +3 -0
- package/dist/utilities/runUtility.d.ts.map +1 -0
- package/dist/utilities/runUtility.js +204 -0
- package/dist/utilities/runUtility.js.map +1 -0
- package/dist/utils/assertRequiredRunSkillCorrelation.d.ts +7 -0
- package/dist/utils/assertRequiredRunSkillCorrelation.d.ts.map +1 -0
- package/dist/utils/assertRequiredRunSkillCorrelation.js +17 -0
- package/dist/utils/assertRequiredRunSkillCorrelation.js.map +1 -0
- package/dist/utils/assertValidSmartInputConfig.d.ts +5 -0
- package/dist/utils/assertValidSmartInputConfig.d.ts.map +1 -0
- package/dist/utils/assertValidSmartInputConfig.js +71 -0
- package/dist/utils/assertValidSmartInputConfig.js.map +1 -0
- package/dist/utils/bridgeRunSkillGatewayMemory.d.ts +13 -0
- package/dist/utils/bridgeRunSkillGatewayMemory.d.ts.map +1 -0
- package/dist/utils/bridgeRunSkillGatewayMemory.js +65 -0
- package/dist/utils/bridgeRunSkillGatewayMemory.js.map +1 -0
- package/dist/utils/extractSmartInputRenderResult.d.ts +7 -0
- package/dist/utils/extractSmartInputRenderResult.d.ts.map +1 -0
- package/dist/utils/extractSmartInputRenderResult.js +30 -0
- package/dist/utils/extractSmartInputRenderResult.js.map +1 -0
- package/dist/utils/jsonPaths.d.ts +6 -0
- package/dist/utils/jsonPaths.d.ts.map +1 -0
- package/dist/utils/jsonPaths.js +32 -0
- package/dist/utils/jsonPaths.js.map +1 -0
- package/dist/utils/normalizeSmartInputConfig.d.ts +5 -0
- package/dist/utils/normalizeSmartInputConfig.d.ts.map +1 -0
- package/dist/utils/normalizeSmartInputConfig.js +30 -0
- package/dist/utils/normalizeSmartInputConfig.js.map +1 -0
- package/dist/utils/outputValidation.d.ts +19 -0
- package/dist/utils/outputValidation.d.ts.map +1 -0
- package/dist/utils/outputValidation.js +75 -0
- package/dist/utils/outputValidation.js.map +1 -0
- package/dist/utils/runTaskRequestShape.d.ts +16 -0
- package/dist/utils/runTaskRequestShape.d.ts.map +1 -0
- package/dist/utils/runTaskRequestShape.js +80 -0
- package/dist/utils/runTaskRequestShape.js.map +1 -0
- package/dist/utils/skillTemplateVariables.d.ts +20 -0
- package/dist/utils/skillTemplateVariables.d.ts.map +1 -0
- package/dist/utils/skillTemplateVariables.js +63 -0
- package/dist/utils/skillTemplateVariables.js.map +1 -0
- package/dist/utils/xynthesizedSmartInputPaths.d.ts +16 -0
- package/dist/utils/xynthesizedSmartInputPaths.d.ts.map +1 -0
- package/dist/utils/xynthesizedSmartInputPaths.js +56 -0
- package/dist/utils/xynthesizedSmartInputPaths.js.map +1 -0
- package/dist/utils/xynthesizedWrite.d.ts +10 -0
- package/dist/utils/xynthesizedWrite.d.ts.map +1 -0
- package/dist/utils/xynthesizedWrite.js +61 -0
- package/dist/utils/xynthesizedWrite.js.map +1 -0
- package/dist/validation/analyzeExpectedRunTaskInput.d.ts +41 -0
- package/dist/validation/analyzeExpectedRunTaskInput.d.ts.map +1 -0
- package/dist/validation/analyzeExpectedRunTaskInput.js +133 -0
- package/dist/validation/analyzeExpectedRunTaskInput.js.map +1 -0
- package/dist/validation/collectSmartInputValidationIssues.d.ts +6 -0
- package/dist/validation/collectSmartInputValidationIssues.d.ts.map +1 -0
- package/dist/validation/collectSmartInputValidationIssues.js +38 -0
- package/dist/validation/collectSmartInputValidationIssues.js.map +1 -0
- package/dist/validation/helpers.d.ts +15 -0
- package/dist/validation/helpers.d.ts.map +1 -0
- package/dist/validation/helpers.js +184 -0
- package/dist/validation/helpers.js.map +1 -0
- package/dist/validation/index.d.ts +9 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +6 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/types.d.ts +51 -0
- package/dist/validation/types.d.ts.map +1 -0
- package/dist/validation/types.js +5 -0
- package/dist/validation/types.js.map +1 -0
- package/dist/validation/validateRunTaskConfig.d.ts +8 -0
- package/dist/validation/validateRunTaskConfig.d.ts.map +1 -0
- package/dist/validation/validateRunTaskConfig.js +158 -0
- package/dist/validation/validateRunTaskConfig.js.map +1 -0
- package/dist/validation/validateRunTaskInvoke.d.ts +30 -0
- package/dist/validation/validateRunTaskInvoke.d.ts.map +1 -0
- package/dist/validation/validateRunTaskInvoke.js +108 -0
- package/dist/validation/validateRunTaskInvoke.js.map +1 -0
- package/documenations/activix-feature-request-identity.md +123 -0
- package/documenations/activix.md +175 -0
- package/documenations/bug-report-xynthesis-and-synthesis-call.md +217 -0
- package/documenations/core-runtime-tokens-and-strategies.md +123 -0
- package/documenations/downstream-environment.md +48 -0
- package/documenations/downstream-test-runtime-teardown-cleanup.md +73 -0
- package/documenations/examples/xynthesis-run-task-request.example.json +170 -0
- package/documenations/feature-request-ai-skills-raw-template-access.md +82 -0
- package/documenations/feature-request-athenix-core-directive.md +145 -0
- package/documenations/feature-request-athenix-token-extraction.md +124 -0
- package/documenations/funcx-catalog-hosting-checklist.md +107 -0
- package/documenations/funcx-scoping-integration-gaps.md +120 -0
- package/documenations/funcx-upstream-github-issues-draft.md +153 -0
- package/documenations/identity-metadata-contract.md +165 -0
- package/documenations/intermediate-steps.md +33 -0
- package/documenations/record-and-template-variables.md +32 -0
- package/documenations/run-task-execution-flow.md +153 -0
- package/documenations/run-task-single-run-checklist.md +109 -0
- package/documenations/schemas/README.md +40 -0
- package/documenations/schemas/openapi-3.1-components.yaml +24 -0
- package/documenations/schemas/v1/output-schema.json +55 -0
- package/documenations/schemas/v1/output-validation-result.json +41 -0
- package/documenations/schemas/v1/run-task-request.json +219 -0
- package/documenations/schemas/v1/synthesized-artifacts.json +133 -0
- package/documenations/synthesis-invocation-notes.md +26 -0
- package/documenations/synthesized-context-guide.md +84 -0
- package/documenations/task-core-and-core-aware-synthesis.md +58 -0
- package/documenations/upstream-feature-requests/ai-skills-llm-observability.md +129 -0
- package/documenations/upstream-feature-requests/xynthesis-llm-observability.md +125 -0
- package/documenations/upstream-feedback-request-shape-clarification.md +101 -0
- package/documenations/web-context-precedence.md +33 -0
- package/documenations/web-scoping-in-ai-tasks.md +503 -0
- package/documenations/xynthesis-activix-telemetry.md +28 -0
- package/documenations/xynthesis-upstream-fixes-checklist.md +71 -0
- package/package.json +92 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { RunSkillResponse } from "../types/index.js";
|
|
2
|
+
import type { ExecutionStrategyFactory } from "../strategies/strategy-factory.js";
|
|
3
|
+
/**
|
|
4
|
+
* Convenience methods for common task execution patterns.
|
|
5
|
+
*
|
|
6
|
+
* These methods provide simplified APIs for common use cases,
|
|
7
|
+
* reducing boilerplate when executing tasks.
|
|
8
|
+
*/
|
|
9
|
+
export declare class TaskConvenienceMethods {
|
|
10
|
+
private strategyFactory;
|
|
11
|
+
constructor(strategyFactory: ExecutionStrategyFactory);
|
|
12
|
+
/**
|
|
13
|
+
* Convenience method for direct task execution.
|
|
14
|
+
*
|
|
15
|
+
* This is the most common execution pattern - directly executing
|
|
16
|
+
* a task without complex orchestration.
|
|
17
|
+
*
|
|
18
|
+
* @param skillKey The skill key to execute (e.g., "skills/professional-answer")
|
|
19
|
+
* @param input The input data
|
|
20
|
+
* @param options Must include `agentId`, `jobTypeId`, and `taskTypeId` (see `@exellix/ai-skills`).
|
|
21
|
+
* @returns Promise resolving to the task response
|
|
22
|
+
*/
|
|
23
|
+
executeDirect<TParsed = any>(skillKey: string, input: Record<string, any> | string, options: {
|
|
24
|
+
/** Required — forwarded to `RunTaskRequest` / `@exellix/ai-skills`. */
|
|
25
|
+
agentId: string;
|
|
26
|
+
jobTypeId: string;
|
|
27
|
+
taskTypeId: string;
|
|
28
|
+
variables?: Record<string, any>;
|
|
29
|
+
context?: Record<string, any> | string;
|
|
30
|
+
knowledge?: Record<string, any>;
|
|
31
|
+
jobMemory?: any;
|
|
32
|
+
taskMemory?: any;
|
|
33
|
+
executionMemory?: any;
|
|
34
|
+
jobId?: string;
|
|
35
|
+
/** Defaults to a new UUID when omitted (required by `@exellix/ai-skills` RunSkillRequest). */
|
|
36
|
+
taskId?: string;
|
|
37
|
+
coreSkillId?: string;
|
|
38
|
+
masterSkillId?: string;
|
|
39
|
+
masterSkillActivityId?: string;
|
|
40
|
+
graphId?: string;
|
|
41
|
+
nodeId?: string;
|
|
42
|
+
timeoutMs?: number;
|
|
43
|
+
}): Promise<RunSkillResponse<TParsed>>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=convenience-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convenience-methods.d.ts","sourceRoot":"","sources":["../../src/methods/convenience-methods.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF;;;;;GAKG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,eAAe,CAA2B;gBAEtC,eAAe,EAAE,wBAAwB;IAIrD;;;;;;;;;;OAUG;IACG,aAAa,CAAC,OAAO,GAAG,GAAG,EAC/B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EACnC,OAAO,EAAE;QACP,uEAAuE;QACvE,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;QACvC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,UAAU,CAAC,EAAE,GAAG,CAAC;QACjB,eAAe,CAAC,EAAE,GAAG,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,8FAA8F;QAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAetC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
/**
|
|
3
|
+
* Convenience methods for common task execution patterns.
|
|
4
|
+
*
|
|
5
|
+
* These methods provide simplified APIs for common use cases,
|
|
6
|
+
* reducing boilerplate when executing tasks.
|
|
7
|
+
*/
|
|
8
|
+
export class TaskConvenienceMethods {
|
|
9
|
+
strategyFactory;
|
|
10
|
+
constructor(strategyFactory) {
|
|
11
|
+
this.strategyFactory = strategyFactory;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Convenience method for direct task execution.
|
|
15
|
+
*
|
|
16
|
+
* This is the most common execution pattern - directly executing
|
|
17
|
+
* a task without complex orchestration.
|
|
18
|
+
*
|
|
19
|
+
* @param skillKey The skill key to execute (e.g., "skills/professional-answer")
|
|
20
|
+
* @param input The input data
|
|
21
|
+
* @param options Must include `agentId`, `jobTypeId`, and `taskTypeId` (see `@exellix/ai-skills`).
|
|
22
|
+
* @returns Promise resolving to the task response
|
|
23
|
+
*/
|
|
24
|
+
async executeDirect(skillKey, input, options) {
|
|
25
|
+
const taskId = options.taskId ?? randomUUID();
|
|
26
|
+
const jobId = options.jobId ?? randomUUID();
|
|
27
|
+
const request = {
|
|
28
|
+
skillKey,
|
|
29
|
+
input,
|
|
30
|
+
...options,
|
|
31
|
+
taskId,
|
|
32
|
+
jobId,
|
|
33
|
+
executionStrategies: [],
|
|
34
|
+
};
|
|
35
|
+
const strategy = this.strategyFactory.getStrategy(request);
|
|
36
|
+
return strategy.execute(request);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=convenience-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convenience-methods.js","sourceRoot":"","sources":["../../src/methods/convenience-methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC;;;;;GAKG;AACH,MAAM,OAAO,sBAAsB;IACzB,eAAe,CAA2B;IAElD,YAAY,eAAyC;QACnD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,aAAa,CACjB,QAAgB,EAChB,KAAmC,EACnC,OAoBC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAmB;YAC9B,QAAQ;YACR,KAAK;YACL,GAAG,OAAO;YACV,MAAM;YACN,KAAK;YACL,mBAAmB,EAAE,EAAE;SACxB,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,OAAO,CAAU,OAAO,CAAC,CAAC;IAC5C,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { NarrixRunOutputSuccess } from "./types.js";
|
|
2
|
+
import type { NarrixScope, TaskMemoryNarrixEntry } from "../types/task-types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Filters Narrix output by narrixScope before writing to task memory.
|
|
5
|
+
* - Signals: if includeSignals set, keep only those codes; else if excludeSignals set, drop those; else keep all.
|
|
6
|
+
* - Stories: same for includeStories / excludeStories with narrativeTypeId.
|
|
7
|
+
* - Entity and meta always pass through. If scope is undefined, returns full entry.
|
|
8
|
+
*/
|
|
9
|
+
export declare function applyNarrixScope(narrixOutput: NarrixRunOutputSuccess, scope?: NarrixScope | null): TaskMemoryNarrixEntry;
|
|
10
|
+
//# sourceMappingURL=applyNarrixScope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applyNarrixScope.d.ts","sourceRoot":"","sources":["../../src/narrix/applyNarrixScope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAkBjF;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,sBAAsB,EACpC,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,GACzB,qBAAqB,CAiDvB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
function getSignalCode(s) {
|
|
2
|
+
if (s !== null && typeof s === "object" && "code" in s) {
|
|
3
|
+
const v = s.code;
|
|
4
|
+
return typeof v === "string" ? v : undefined;
|
|
5
|
+
}
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
function getStoryNarrativeTypeId(st) {
|
|
9
|
+
if (st !== null && typeof st === "object" && "narrativeTypeId" in st) {
|
|
10
|
+
const v = st.narrativeTypeId;
|
|
11
|
+
return typeof v === "string" ? v : undefined;
|
|
12
|
+
}
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Filters Narrix output by narrixScope before writing to task memory.
|
|
17
|
+
* - Signals: if includeSignals set, keep only those codes; else if excludeSignals set, drop those; else keep all.
|
|
18
|
+
* - Stories: same for includeStories / excludeStories with narrativeTypeId.
|
|
19
|
+
* - Entity and meta always pass through. If scope is undefined, returns full entry.
|
|
20
|
+
*/
|
|
21
|
+
export function applyNarrixScope(narrixOutput, scope) {
|
|
22
|
+
const entity = narrixOutput.entity ?? { entityKind: "", entityKey: "" };
|
|
23
|
+
const meta = (narrixOutput.meta && typeof narrixOutput.meta === "object") ? narrixOutput.meta : {};
|
|
24
|
+
if (!scope) {
|
|
25
|
+
return {
|
|
26
|
+
entity: { entityKind: entity.entityKind, entityKey: entity.entityKey },
|
|
27
|
+
signals: Array.isArray(narrixOutput.signals) ? [...narrixOutput.signals] : [],
|
|
28
|
+
stories: Array.isArray(narrixOutput.stories) ? [...narrixOutput.stories] : [],
|
|
29
|
+
meta: { ...meta },
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
let signals = Array.isArray(narrixOutput.signals) ? narrixOutput.signals : [];
|
|
33
|
+
if (scope.includeSignals?.length) {
|
|
34
|
+
const set = new Set(scope.includeSignals);
|
|
35
|
+
signals = signals.filter((s) => {
|
|
36
|
+
const code = getSignalCode(s);
|
|
37
|
+
return code !== undefined && set.has(code);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
else if (scope.excludeSignals?.length) {
|
|
41
|
+
const set = new Set(scope.excludeSignals);
|
|
42
|
+
signals = signals.filter((s) => {
|
|
43
|
+
const code = getSignalCode(s);
|
|
44
|
+
return code === undefined || !set.has(code);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
let stories = Array.isArray(narrixOutput.stories) ? narrixOutput.stories : [];
|
|
48
|
+
if (scope.includeStories?.length) {
|
|
49
|
+
const set = new Set(scope.includeStories);
|
|
50
|
+
stories = stories.filter((st) => {
|
|
51
|
+
const id = getStoryNarrativeTypeId(st);
|
|
52
|
+
return id !== undefined && set.has(id);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
else if (scope.excludeStories?.length) {
|
|
56
|
+
const set = new Set(scope.excludeStories);
|
|
57
|
+
stories = stories.filter((st) => {
|
|
58
|
+
const id = getStoryNarrativeTypeId(st);
|
|
59
|
+
return id === undefined || !set.has(id);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
entity: { entityKind: entity.entityKind, entityKey: entity.entityKey },
|
|
64
|
+
signals,
|
|
65
|
+
stories,
|
|
66
|
+
meta: { ...meta },
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=applyNarrixScope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applyNarrixScope.js","sourceRoot":"","sources":["../../src/narrix/applyNarrixScope.ts"],"names":[],"mappings":"AAGA,SAAS,aAAa,CAAC,CAAU;IAC/B,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,GAAI,CAAwB,CAAC,IAAI,CAAC;QACzC,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,uBAAuB,CAAC,EAAW;IAC1C,IAAI,EAAE,KAAK,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,iBAAiB,IAAI,EAAE,EAAE,CAAC;QACrE,MAAM,CAAC,GAAI,EAAoC,CAAC,eAAe,CAAC;QAChE,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAAoC,EACpC,KAA0B;IAE1B,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACxE,MAAM,IAAI,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,OAAO,YAAY,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnG,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;YACtE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YAC7E,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YAC7E,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE;SAClB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO,IAAI,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;QACtE,OAAO;QACP,OAAO;QACP,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { NarrixRunOutputSuccess, NarrixEnrichedAttachment } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Build the _narrix attachment from a successful NARRIX run for injection into
|
|
4
|
+
* executionMemory (and optionally jobMemory). Uses result.passes when
|
|
5
|
+
* passes.scoping and passes.discovery exist; otherwise uses top-level
|
|
6
|
+
* signals/stories for both scoping and discovery.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildNarrixAttachment(result: NarrixRunOutputSuccess): NarrixEnrichedAttachment;
|
|
9
|
+
//# sourceMappingURL=buildNarrixAttachment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildNarrixAttachment.d.ts","sourceRoot":"","sources":["../../src/narrix/buildNarrixAttachment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEnF;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,sBAAsB,GAAG,wBAAwB,CA0B9F"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the _narrix attachment from a successful NARRIX run for injection into
|
|
3
|
+
* executionMemory (and optionally jobMemory). Uses result.passes when
|
|
4
|
+
* passes.scoping and passes.discovery exist; otherwise uses top-level
|
|
5
|
+
* signals/stories for both scoping and discovery.
|
|
6
|
+
*/
|
|
7
|
+
export function buildNarrixAttachment(result) {
|
|
8
|
+
const passes = result.passes;
|
|
9
|
+
const topSignals = Array.isArray(result.signals) ? result.signals : [];
|
|
10
|
+
const topStories = Array.isArray(result.stories) ? result.stories : [];
|
|
11
|
+
const scoping = passes && typeof passes.scoping === "object" && passes.scoping !== null
|
|
12
|
+
? {
|
|
13
|
+
signals: Array.isArray(passes.scoping.signals) ? passes.scoping.signals : topSignals,
|
|
14
|
+
stories: Array.isArray(passes.scoping.stories) ? passes.scoping.stories : topStories,
|
|
15
|
+
}
|
|
16
|
+
: { signals: topSignals, stories: topStories };
|
|
17
|
+
const discovery = passes && typeof passes.discovery === "object" && passes.discovery !== null
|
|
18
|
+
? {
|
|
19
|
+
signals: Array.isArray(passes.discovery.signals) ? passes.discovery.signals : topSignals,
|
|
20
|
+
stories: Array.isArray(passes.discovery.stories) ? passes.discovery.stories : topStories,
|
|
21
|
+
}
|
|
22
|
+
: { signals: topSignals, stories: topStories };
|
|
23
|
+
return {
|
|
24
|
+
scoping,
|
|
25
|
+
discovery,
|
|
26
|
+
meta: result.meta && typeof result.meta === "object" ? result.meta : {},
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=buildNarrixAttachment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildNarrixAttachment.js","sourceRoot":"","sources":["../../src/narrix/buildNarrixAttachment.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA8B;IAClE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvE,MAAM,OAAO,GACX,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI;QACrE,CAAC,CAAC;YACE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;YACpF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;SACrF;QACH,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAEnD,MAAM,SAAS,GACb,MAAM,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI;QACzE,CAAC,CAAC;YACE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;YACxF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;SACzF;QACH,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAEnD,OAAO;QACL,OAAO;QACP,SAAS;QACT,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;KACxE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { NarrixCniLike, WebScopePackInput } from "@exellix/narrix-web-scoper";
|
|
2
|
+
type WebScopeQuestion = WebScopePackInput["questions"][number];
|
|
3
|
+
import type { NarrixPreProcessorConfig, NarrixWebScopeQuestion } from "../types/task-types.js";
|
|
4
|
+
import type { NarrixRunOutputSuccess } from "./types.js";
|
|
5
|
+
export type BuildWebScopeTemplateContextArgs = {
|
|
6
|
+
cni?: NarrixCniLike;
|
|
7
|
+
entity?: Record<string, unknown>;
|
|
8
|
+
baseQuestion?: string;
|
|
9
|
+
entityKey?: string;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Flatten CNI knownFacts, common graphized entity paths, and question aliases for web scope templates / Handlebars.
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildWebScopeTemplateContext(args: BuildWebScopeTemplateContextArgs): Record<string, unknown>;
|
|
15
|
+
export type ResolveWebScopeQuestionAndTemplatesArgs = {
|
|
16
|
+
narrix: NarrixPreProcessorConfig;
|
|
17
|
+
requestInput: Record<string, unknown> | string | null | undefined;
|
|
18
|
+
successResult: NarrixRunOutputSuccess;
|
|
19
|
+
entity?: Record<string, unknown>;
|
|
20
|
+
};
|
|
21
|
+
/** Fields merged into `scopeGeneric` or into `scopeQuestionPack` base input. */
|
|
22
|
+
export type ResolvedWebScopeScopeFields = {
|
|
23
|
+
question?: string;
|
|
24
|
+
webScopeTemplates?: string[];
|
|
25
|
+
webScopeObjects?: Record<string, unknown>;
|
|
26
|
+
/** When non-empty, task-sdk uses `scopeQuestionPack` instead of `scopeGeneric`. */
|
|
27
|
+
packQuestions?: WebScopeQuestion[];
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Normalize `narrix.webScopeQuestions` into `@exellix/narrix-web-scoper` `WebScopeQuestion[]`
|
|
31
|
+
* (stable `id`, trimmed `question`, optional `purpose` from `source`).
|
|
32
|
+
*/
|
|
33
|
+
export declare function normalizeNarrixWebScopeQuestions(entries: NarrixWebScopeQuestion[] | undefined): WebScopeQuestion[];
|
|
34
|
+
/**
|
|
35
|
+
* Resolves ScopeInput fields for web scoping: optional athenix templates + objects, or enriched question (Handlebars or default append).
|
|
36
|
+
*/
|
|
37
|
+
export declare function resolveWebScopeQuestionAndTemplates(args: ResolveWebScopeQuestionAndTemplatesArgs): ResolvedWebScopeScopeFields;
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=buildWebScopeScopeInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildWebScopeScopeInput.d.ts","sourceRoot":"","sources":["../../src/narrix/buildWebScopeScopeInput.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,KAAK,gBAAgB,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AA2BzD,MAAM,MAAM,gCAAgC,GAAG;IAC7C,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,gCAAgC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsD5G;AA2BD,MAAM,MAAM,uCAAuC,GAAG;IACpD,MAAM,EAAE,wBAAwB,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClE,aAAa,EAAE,sBAAsB,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,mFAAmF;IACnF,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,sBAAsB,EAAE,GAAG,SAAS,GAC5C,gBAAgB,EAAE,CAkBpB;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,IAAI,EAAE,uCAAuC,GAC5C,2BAA2B,CA6D7B"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import Handlebars from "handlebars";
|
|
3
|
+
function isRecord(v) {
|
|
4
|
+
return v !== null && typeof v === "object" && !Array.isArray(v);
|
|
5
|
+
}
|
|
6
|
+
function digGraphized(entity, path) {
|
|
7
|
+
if (!entity)
|
|
8
|
+
return undefined;
|
|
9
|
+
const g = entity.graphized;
|
|
10
|
+
if (!isRecord(g))
|
|
11
|
+
return undefined;
|
|
12
|
+
let cur = g;
|
|
13
|
+
for (const key of path) {
|
|
14
|
+
if (!isRecord(cur))
|
|
15
|
+
return undefined;
|
|
16
|
+
cur = cur[key];
|
|
17
|
+
}
|
|
18
|
+
return cur;
|
|
19
|
+
}
|
|
20
|
+
function pickScalarString(obj, keys) {
|
|
21
|
+
for (const k of keys) {
|
|
22
|
+
const v = obj[k];
|
|
23
|
+
if (typeof v === "string" && v.trim())
|
|
24
|
+
return v.trim();
|
|
25
|
+
if (v != null && typeof v !== "object" && String(v).trim())
|
|
26
|
+
return String(v).trim();
|
|
27
|
+
}
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Flatten CNI knownFacts, common graphized entity paths, and question aliases for web scope templates / Handlebars.
|
|
32
|
+
*/
|
|
33
|
+
export function buildWebScopeTemplateContext(args) {
|
|
34
|
+
const out = {};
|
|
35
|
+
const { cni, entity, baseQuestion, entityKey } = args;
|
|
36
|
+
if (baseQuestion !== undefined && baseQuestion !== "") {
|
|
37
|
+
out.question = baseQuestion;
|
|
38
|
+
out.baseQuestion = baseQuestion;
|
|
39
|
+
}
|
|
40
|
+
if (entityKey !== undefined && entityKey !== "") {
|
|
41
|
+
out.label = entityKey;
|
|
42
|
+
out.entityKey = entityKey;
|
|
43
|
+
}
|
|
44
|
+
const facts = cni?.knownFacts;
|
|
45
|
+
if (Array.isArray(facts)) {
|
|
46
|
+
for (const f of facts) {
|
|
47
|
+
if (!isRecord(f))
|
|
48
|
+
continue;
|
|
49
|
+
const key = f.key;
|
|
50
|
+
if (typeof key !== "string" || !key.trim())
|
|
51
|
+
continue;
|
|
52
|
+
const value = f.value;
|
|
53
|
+
if (value !== undefined)
|
|
54
|
+
out[key.trim()] = value;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if (entity) {
|
|
58
|
+
const cveId = pickScalarString(out, ["cveId", "CVE_ID", "cve", "CVE"]) ??
|
|
59
|
+
(() => {
|
|
60
|
+
const v = digGraphized(entity, ["vulnerability", "cveId"]);
|
|
61
|
+
if (typeof v === "string" && v.trim())
|
|
62
|
+
return v.trim();
|
|
63
|
+
const v2 = digGraphized(entity, ["vulnerability", "cve"]);
|
|
64
|
+
if (typeof v2 === "string" && v2.trim())
|
|
65
|
+
return v2.trim();
|
|
66
|
+
return undefined;
|
|
67
|
+
})();
|
|
68
|
+
if (cveId && out.cveId === undefined)
|
|
69
|
+
out.cveId = cveId;
|
|
70
|
+
const vendor = pickScalarString(out, ["vendor", "Vendor"]) ??
|
|
71
|
+
(() => {
|
|
72
|
+
const v = digGraphized(entity, ["vulnerability", "vendor"]);
|
|
73
|
+
return typeof v === "string" && v.trim() ? v.trim() : undefined;
|
|
74
|
+
})();
|
|
75
|
+
if (vendor && out.vendor === undefined)
|
|
76
|
+
out.vendor = vendor;
|
|
77
|
+
const product = pickScalarString(out, ["product", "Product"]) ??
|
|
78
|
+
(() => {
|
|
79
|
+
const v = digGraphized(entity, ["vulnerability", "product"]);
|
|
80
|
+
return typeof v === "string" && v.trim() ? v.trim() : undefined;
|
|
81
|
+
})();
|
|
82
|
+
if (product && out.product === undefined)
|
|
83
|
+
out.product = product;
|
|
84
|
+
}
|
|
85
|
+
return out;
|
|
86
|
+
}
|
|
87
|
+
function tokenNotInBase(base, token) {
|
|
88
|
+
if (!token)
|
|
89
|
+
return false;
|
|
90
|
+
return !base.toLowerCase().includes(token.toLowerCase());
|
|
91
|
+
}
|
|
92
|
+
function defaultEnrichQuestion(baseQuestion, ctx) {
|
|
93
|
+
const cveId = pickScalarString(ctx, ["cveId", "CVE_ID", "cve", "CVE"]);
|
|
94
|
+
const vendor = pickScalarString(ctx, ["vendor", "Vendor"]);
|
|
95
|
+
const product = pickScalarString(ctx, ["product", "Product"]);
|
|
96
|
+
const extras = [];
|
|
97
|
+
const base = baseQuestion?.trim() ?? "";
|
|
98
|
+
for (const t of [cveId, vendor, product]) {
|
|
99
|
+
if (t && (!base || tokenNotInBase(base, t)))
|
|
100
|
+
extras.push(t);
|
|
101
|
+
}
|
|
102
|
+
const suffix = extras.join(" ").trim();
|
|
103
|
+
if (!base && !suffix)
|
|
104
|
+
return undefined;
|
|
105
|
+
if (!suffix)
|
|
106
|
+
return base || undefined;
|
|
107
|
+
if (!base)
|
|
108
|
+
return suffix;
|
|
109
|
+
return `${base} ${suffix}`.trim();
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Normalize `narrix.webScopeQuestions` into `@exellix/narrix-web-scoper` `WebScopeQuestion[]`
|
|
113
|
+
* (stable `id`, trimmed `question`, optional `purpose` from `source`).
|
|
114
|
+
*/
|
|
115
|
+
export function normalizeNarrixWebScopeQuestions(entries) {
|
|
116
|
+
if (!Array.isArray(entries))
|
|
117
|
+
return [];
|
|
118
|
+
const out = [];
|
|
119
|
+
for (const e of entries) {
|
|
120
|
+
if (!e || typeof e !== "object")
|
|
121
|
+
continue;
|
|
122
|
+
const q = typeof e.question === "string" ? e.question.trim() : "";
|
|
123
|
+
if (!q)
|
|
124
|
+
continue;
|
|
125
|
+
const id = typeof e.id === "string" && e.id.trim()
|
|
126
|
+
? e.id.trim()
|
|
127
|
+
: randomUUID();
|
|
128
|
+
const purpose = e.source === "manual" || e.source === "ai-driven"
|
|
129
|
+
? `source:${e.source}`
|
|
130
|
+
: undefined;
|
|
131
|
+
out.push({ id, question: q, ...(purpose ? { purpose } : {}) });
|
|
132
|
+
}
|
|
133
|
+
return out;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Resolves ScopeInput fields for web scoping: optional athenix templates + objects, or enriched question (Handlebars or default append).
|
|
137
|
+
*/
|
|
138
|
+
export function resolveWebScopeQuestionAndTemplates(args) {
|
|
139
|
+
const { narrix, requestInput, successResult, entity } = args;
|
|
140
|
+
const baseQuestion = typeof requestInput === "string"
|
|
141
|
+
? requestInput.trim() || undefined
|
|
142
|
+
: requestInput && typeof requestInput === "object" && typeof requestInput.question === "string"
|
|
143
|
+
? requestInput.question.trim() || undefined
|
|
144
|
+
: undefined;
|
|
145
|
+
const cni = successResult.cni;
|
|
146
|
+
const autoContext = buildWebScopeTemplateContext({
|
|
147
|
+
cni,
|
|
148
|
+
entity,
|
|
149
|
+
baseQuestion,
|
|
150
|
+
entityKey: successResult.entity.entityKey,
|
|
151
|
+
});
|
|
152
|
+
const templates = narrix.webScopeTemplates?.filter((t) => typeof t === "string" && t.trim());
|
|
153
|
+
if (templates?.length) {
|
|
154
|
+
const webScopeObjects = {
|
|
155
|
+
...autoContext,
|
|
156
|
+
...(narrix.webScopeObjects ?? {}),
|
|
157
|
+
};
|
|
158
|
+
return {
|
|
159
|
+
webScopeTemplates: templates.map((t) => t.trim()),
|
|
160
|
+
webScopeObjects,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
const packQuestions = normalizeNarrixWebScopeQuestions(narrix.webScopeQuestions);
|
|
164
|
+
if (packQuestions.length > 0) {
|
|
165
|
+
return { packQuestions };
|
|
166
|
+
}
|
|
167
|
+
const mergedForHandlebars = {
|
|
168
|
+
...autoContext,
|
|
169
|
+
...(narrix.webScopeObjects ?? {}),
|
|
170
|
+
input: requestInput ?? {},
|
|
171
|
+
};
|
|
172
|
+
const hbTpl = narrix.webScopeQuestionTemplate?.trim();
|
|
173
|
+
if (hbTpl) {
|
|
174
|
+
try {
|
|
175
|
+
const compiled = Handlebars.compile(hbTpl);
|
|
176
|
+
const rendered = compiled(mergedForHandlebars).trim().replace(/\s+/g, " ");
|
|
177
|
+
if (rendered) {
|
|
178
|
+
return { question: rendered };
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
catch {
|
|
182
|
+
// fall through to default enrichment
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
const ctxForDefault = mergedForHandlebars;
|
|
186
|
+
const enriched = defaultEnrichQuestion(baseQuestion, ctxForDefault);
|
|
187
|
+
const finalQ = enriched ?? baseQuestion;
|
|
188
|
+
if (finalQ !== undefined && finalQ !== "") {
|
|
189
|
+
return { question: finalQ };
|
|
190
|
+
}
|
|
191
|
+
return {};
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=buildWebScopeScopeInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildWebScopeScopeInput.js","sourceRoot":"","sources":["../../src/narrix/buildWebScopeScopeInput.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../../src/narrix/flags.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;CAEvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.js","sourceRoot":"","sources":["../../src/narrix/flags.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,GAAG;CACvD,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { runNarrixForRecord } from "./runNarrixForRecord.js";
|
|
2
|
+
export { runNarrixForText } from "./runNarrixForText.js";
|
|
3
|
+
export { runNarrixForDocs } from "./runNarrixForDocs.js";
|
|
4
|
+
export { runNarrixForChat } from "./runNarrixForChat.js";
|
|
5
|
+
export { getNarrixClient } from "./narrixClient.js";
|
|
6
|
+
export { narrixFlags } from "./flags.js";
|
|
7
|
+
export { NARRIX_RUN_SKILL_KEY } from "./task.js";
|
|
8
|
+
export { getNarrixCatalogBundle, pickQuestionIdForDataset, resolveDatasetIngestHints } from "./seedBundleRouting.js";
|
|
9
|
+
export type { DatasetIngestHints } from "./seedBundleRouting.js";
|
|
10
|
+
export type { NarrixMedium, NarrixRunRouting, NarrixRunInput, NarrixRunInputRecord, NarrixRunInputText, NarrixRunInputDocs, NarrixRunInputChat, NarrixRunOutput, NarrixRunOutputSuccess, NarrixRunOutputFailure, } from "./types.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/narrix/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACrH,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { registerLocalTask } from "../localTasks/registry.js";
|
|
2
|
+
import { NARRIX_RUN_SKILL_KEY, narrixRunHandler } from "./task.js";
|
|
3
|
+
// Side effect: registers skills/skill.local:narrixRun when this module is imported
|
|
4
|
+
registerLocalTask(NARRIX_RUN_SKILL_KEY, narrixRunHandler);
|
|
5
|
+
// Public exports for use inside ai-tasks
|
|
6
|
+
export { runNarrixForRecord } from "./runNarrixForRecord.js";
|
|
7
|
+
export { runNarrixForText } from "./runNarrixForText.js";
|
|
8
|
+
export { runNarrixForDocs } from "./runNarrixForDocs.js";
|
|
9
|
+
export { runNarrixForChat } from "./runNarrixForChat.js";
|
|
10
|
+
export { getNarrixClient } from "./narrixClient.js";
|
|
11
|
+
export { narrixFlags } from "./flags.js";
|
|
12
|
+
export { NARRIX_RUN_SKILL_KEY } from "./task.js";
|
|
13
|
+
export { getNarrixCatalogBundle, pickQuestionIdForDataset, resolveDatasetIngestHints } from "./seedBundleRouting.js";
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/narrix/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAEnE,mFAAmF;AACnF,iBAAiB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;AAE1D,yCAAyC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { NarrixIngest } from "@exellix/narrix-ingest";
|
|
2
|
+
import type { NarrixRunner } from "@exellix/narrix-runner";
|
|
3
|
+
type NarrixClient = {
|
|
4
|
+
ingest: NarrixIngest;
|
|
5
|
+
runner: NarrixRunner;
|
|
6
|
+
};
|
|
7
|
+
export declare function getNarrixClient(): Promise<NarrixClient>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=narrixClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"narrixClient.d.ts","sourceRoot":"","sources":["../../src/narrix/narrixClient.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,wBAAwB,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAuB3D,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;CACtB,CAAC;AAIF,wBAAgB,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC,CAqBvD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { createIngest } from "@exellix/narrix-ingest";
|
|
2
|
+
import { getNarrixRunnerModule } from "./narrixRunnerModule.js";
|
|
3
|
+
import { recordAdapter } from "@exellix/narrix-adapter-records";
|
|
4
|
+
import { adapter as textAdapter } from "@exellix/narrix-adapter-text";
|
|
5
|
+
import { toCni as chatToCni } from "@exellix/narrix-adapter-chat";
|
|
6
|
+
import { adapter as docsAdapter } from "@exellix/narrix-adapter-docs";
|
|
7
|
+
const CHAT_ADAPTER_ID = "@exellix/narrix-adapter-chat";
|
|
8
|
+
const CHAT_VERSION = "1.1.0";
|
|
9
|
+
const chatProducer = {
|
|
10
|
+
kind: "chat",
|
|
11
|
+
adapterId: CHAT_ADAPTER_ID,
|
|
12
|
+
version: CHAT_VERSION,
|
|
13
|
+
toCni(input, options) {
|
|
14
|
+
return chatToCni(input, options);
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
function createFullIngest() {
|
|
18
|
+
const ingest = createIngest();
|
|
19
|
+
ingest.registry.register(recordAdapter, { makeDefault: true });
|
|
20
|
+
ingest.registry.register(textAdapter, { makeDefault: true });
|
|
21
|
+
ingest.registry.register(docsAdapter, { makeDefault: true });
|
|
22
|
+
ingest.registry.register(chatProducer, { makeDefault: true });
|
|
23
|
+
return ingest;
|
|
24
|
+
}
|
|
25
|
+
let singleton = null;
|
|
26
|
+
export function getNarrixClient() {
|
|
27
|
+
if (!singleton) {
|
|
28
|
+
singleton = (async () => {
|
|
29
|
+
const ingest = createFullIngest();
|
|
30
|
+
const { createRunner } = await getNarrixRunnerModule();
|
|
31
|
+
const runner = await createRunner({
|
|
32
|
+
runtime: {
|
|
33
|
+
onProcessorNotMatched: "attachError",
|
|
34
|
+
onMissingMapping: "attachError",
|
|
35
|
+
deterministicSort: true,
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
return { ingest, runner };
|
|
39
|
+
})().catch((err) => {
|
|
40
|
+
singleton = null;
|
|
41
|
+
throw err;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
return singleton;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=narrixClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"narrixClient.js","sourceRoot":"","sources":["../../src/narrix/narrixClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAItE,MAAM,eAAe,GAAG,8BAA8B,CAAC;AACvD,MAAM,YAAY,GAAG,OAAO,CAAC;AAE7B,MAAM,YAAY,GAAmB;IACnC,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,eAAe;IAC1B,OAAO,EAAE,YAAY;IACrB,KAAK,CAAC,KAAc,EAAE,OAAiB;QACrC,OAAO,SAAS,CAAC,KAAwC,EAAE,OAA0C,CAAC,CAAC;IACzG,CAAC;CACF,CAAC;AAEF,SAAS,gBAAgB;IACvB,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAOD,IAAI,SAAS,GAAiC,IAAI,CAAC;AAEnD,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;YAElC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,qBAAqB,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,OAAO,EAAE;oBACP,qBAAqB,EAAE,aAAa;oBACpC,gBAAgB,EAAE,aAAa;oBAC/B,iBAAiB,EAAE,IAAI;iBACxB;aACF,CAAC,CAAC;YAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC5B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACjB,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { TaskMemoryNarrixEntry } from "../types/task-types.js";
|
|
2
|
+
import type { NarrixEnrichedAttachment } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Builds a "## Scoping and discovery" markdown section from executionMemory._narrix (task-level pre-processor attachment).
|
|
5
|
+
* Used when the request had narrix config and the DIRECT path includes the enriched context in the LLM prompt.
|
|
6
|
+
* Returns empty string when there is no content (no signals or stories in scoping or discovery); does not include
|
|
7
|
+
* internal product names in the output.
|
|
8
|
+
*/
|
|
9
|
+
export declare function buildNarrixPreProcessorContextMarkdown(attachment: NarrixEnrichedAttachment): string;
|
|
10
|
+
/**
|
|
11
|
+
* Builds a "## Narrix Scoping" markdown section from taskMemory.narrix (array of entries).
|
|
12
|
+
* Used to inject Narrix context into the LLM prompt. Returns empty string if array is empty or missing.
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildNarrixContextMarkdown(narrixArray: TaskMemoryNarrixEntry[] | undefined | null): string;
|
|
15
|
+
//# sourceMappingURL=narrixContextMarkdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"narrixContextMarkdown.d.ts","sourceRoot":"","sources":["../../src/narrix/narrixContextMarkdown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;;GAKG;AACH,wBAAgB,sCAAsC,CAAC,UAAU,EAAE,wBAAwB,GAAG,MAAM,CAuDnG;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAuC1G"}
|