sdlc-agent-4-enterprise-server 1.37.1 → 1.41.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/.code-intel/database.example.json +27 -0
- package/.env.example +38 -0
- package/.lintstagedrc.json +3 -0
- package/Dockerfile +38 -0
- package/README.md +4 -3
- package/dist/admin/db/core.js +16 -2
- package/dist/admin/db/core.js.map +1 -1
- package/dist/config/SandboxConfig.d.ts +97 -0
- package/dist/config/SandboxConfig.js +67 -0
- package/dist/config/SandboxConfig.js.map +1 -0
- package/dist/config/index.d.ts +104 -0
- package/dist/config/index.js +8 -1
- package/dist/config/index.js.map +1 -1
- package/dist/database/config/DatabaseConfigService.d.ts +19 -5
- package/dist/database/config/DatabaseConfigService.js +26 -3
- package/dist/database/config/DatabaseConfigService.js.map +1 -1
- package/dist/database/migration/ensure-pega-category-counters.d.ts +8 -0
- package/dist/database/migration/ensure-pega-category-counters.js +29 -0
- package/dist/database/migration/ensure-pega-category-counters.js.map +1 -0
- package/dist/database/migration/migrate-pega-category-counters.d.ts +10 -0
- package/dist/database/migration/migrate-pega-category-counters.js +32 -0
- package/dist/database/migration/migrate-pega-category-counters.js.map +1 -0
- package/dist/database/models/file-checksum.d.ts +12 -0
- package/dist/database/models/file-checksum.js +6 -0
- package/dist/database/models/file-checksum.js.map +1 -0
- package/dist/database/models/index-operation.d.ts +17 -0
- package/dist/database/models/index-operation.js +6 -0
- package/dist/database/models/index-operation.js.map +1 -0
- package/dist/database/repositories/FileChecksumRepository.d.ts +25 -0
- package/dist/database/repositories/FileChecksumRepository.js +74 -0
- package/dist/database/repositories/FileChecksumRepository.js.map +1 -0
- package/dist/database/repositories/IndexOperationRepository.d.ts +46 -0
- package/dist/database/repositories/IndexOperationRepository.js +149 -0
- package/dist/database/repositories/IndexOperationRepository.js.map +1 -0
- package/dist/database/repositories/SymbolRepository.js +4 -2
- package/dist/database/repositories/SymbolRepository.js.map +1 -1
- package/dist/database/schema-registry/ensure-sa4e-101.d.ts +10 -0
- package/dist/database/schema-registry/ensure-sa4e-101.js +61 -0
- package/dist/database/schema-registry/ensure-sa4e-101.js.map +1 -0
- package/dist/database/schema-registry/ensure-sa4e-215.d.ts +2 -0
- package/dist/database/schema-registry/ensure-sa4e-215.js +74 -0
- package/dist/database/schema-registry/ensure-sa4e-215.js.map +1 -0
- package/dist/database/schema-registry/ensure-sa4e-237.d.ts +14 -0
- package/dist/database/schema-registry/ensure-sa4e-237.js +53 -0
- package/dist/database/schema-registry/ensure-sa4e-237.js.map +1 -0
- package/dist/database/schema-registry/sa4e-215.d.ts +33 -0
- package/dist/database/schema-registry/sa4e-215.js +98 -0
- package/dist/database/schema-registry/sa4e-215.js.map +1 -0
- package/dist/engine/db/migration-v5.js +5 -2
- package/dist/engine/db/migration-v5.js.map +1 -1
- package/dist/engine/enrichment/CodeEnrichmentHandler.d.ts +16 -0
- package/dist/engine/enrichment/CodeEnrichmentHandler.js +100 -3
- package/dist/engine/enrichment/CodeEnrichmentHandler.js.map +1 -1
- package/dist/engine/enrichment/CodeEnrichmentPromptBuilder.js +15 -8
- package/dist/engine/enrichment/CodeEnrichmentPromptBuilder.js.map +1 -1
- package/dist/engine/enrichment/types.d.ts +2 -0
- package/dist/engine/enrichment/types.js.map +1 -1
- package/dist/engine/graph/graph-sync-service.js +2 -2
- package/dist/engine/graph/graph-sync-service.js.map +1 -1
- package/dist/engine/indexer/async-file-scanner.js +10 -4
- package/dist/engine/indexer/async-file-scanner.js.map +1 -1
- package/dist/engine/indexer/checksum-service.d.ts +21 -0
- package/dist/engine/indexer/checksum-service.js +54 -0
- package/dist/engine/indexer/checksum-service.js.map +1 -0
- package/dist/engine/indexer/cleanup-scheduler.d.ts +14 -0
- package/dist/engine/indexer/cleanup-scheduler.js +48 -0
- package/dist/engine/indexer/cleanup-scheduler.js.map +1 -0
- package/dist/engine/indexer/file-scanner.d.ts +7 -0
- package/dist/engine/indexer/file-scanner.js +40 -13
- package/dist/engine/indexer/file-scanner.js.map +1 -1
- package/dist/engine/indexer/index-operation-manager.d.ts +51 -29
- package/dist/engine/indexer/index-operation-manager.js +226 -69
- package/dist/engine/indexer/index-operation-manager.js.map +1 -1
- package/dist/engine/indexer/indexing-engine.d.ts +5 -2
- package/dist/engine/indexer/indexing-engine.js +54 -10
- package/dist/engine/indexer/indexing-engine.js.map +1 -1
- package/dist/engine/indexer/module-helper.js +40 -8
- package/dist/engine/indexer/module-helper.js.map +1 -1
- package/dist/engine/indexer/path-safety.d.ts +22 -0
- package/dist/engine/indexer/path-safety.js +45 -0
- package/dist/engine/indexer/path-safety.js.map +1 -0
- package/dist/engine/indexer/project-type/models.d.ts +2 -2
- package/dist/engine/indexer/project-type/resolver.d.ts +2 -0
- package/dist/engine/indexer/project-type/resolver.js +5 -1
- package/dist/engine/indexer/project-type/resolver.js.map +1 -1
- package/dist/engine/indexer/startup-interrupt-detector.d.ts +9 -0
- package/dist/engine/indexer/startup-interrupt-detector.js +31 -0
- package/dist/engine/indexer/startup-interrupt-detector.js.map +1 -0
- package/dist/engine/indexer/types.d.ts +19 -4
- package/dist/engine/indexer/types.js +1 -1
- package/dist/engine/parsers/embedding/EmbeddingService.d.ts +3 -7
- package/dist/engine/parsers/embedding/EmbeddingService.js +21 -25
- package/dist/engine/parsers/embedding/EmbeddingService.js.map +1 -1
- package/dist/engine/parsers/grammar-registry.js +3 -1
- package/dist/engine/parsers/grammar-registry.js.map +1 -1
- package/dist/engine/parsers/grammars/grammar-config-loader.d.ts +1 -0
- package/dist/engine/parsers/grammars/grammar-config-loader.js +1 -1
- package/dist/engine/parsers/grammars/grammar-config-loader.js.map +1 -1
- package/dist/engine/parsers/indexer/storage.js +3 -1
- package/dist/engine/parsers/indexer/storage.js.map +1 -1
- package/dist/engine/parsers/languages/aura/index.d.ts +1 -0
- package/dist/engine/parsers/languages/aura/index.js +2 -0
- package/dist/engine/parsers/languages/aura/index.js.map +1 -0
- package/dist/engine/parsers/languages/aura/parser.d.ts +7 -0
- package/dist/engine/parsers/languages/aura/parser.js +30 -0
- package/dist/engine/parsers/languages/aura/parser.js.map +1 -0
- package/dist/engine/parsers/languages/aura-parser.d.ts +1 -0
- package/dist/engine/parsers/languages/aura-parser.js +2 -0
- package/dist/engine/parsers/languages/aura-parser.js.map +1 -0
- package/dist/engine/parsers/languages/bash.d.ts +8 -0
- package/dist/engine/parsers/languages/bash.js +13 -0
- package/dist/engine/parsers/languages/bash.js.map +1 -0
- package/dist/engine/parsers/languages/builtin.d.ts +14 -0
- package/dist/engine/parsers/languages/builtin.js +51 -0
- package/dist/engine/parsers/languages/builtin.js.map +1 -0
- package/dist/engine/parsers/languages/c.d.ts +6 -0
- package/dist/engine/parsers/languages/c.js +13 -0
- package/dist/engine/parsers/languages/c.js.map +1 -0
- package/dist/engine/parsers/languages/cpp.d.ts +8 -0
- package/dist/engine/parsers/languages/cpp.js +15 -0
- package/dist/engine/parsers/languages/cpp.js.map +1 -0
- package/dist/engine/parsers/languages/csharp.d.ts +10 -0
- package/dist/engine/parsers/languages/csharp.js +20 -0
- package/dist/engine/parsers/languages/csharp.js.map +1 -0
- package/dist/engine/parsers/languages/index.d.ts +8 -0
- package/dist/engine/parsers/languages/index.js +32 -0
- package/dist/engine/parsers/languages/index.js.map +1 -0
- package/dist/engine/parsers/languages/php.d.ts +8 -0
- package/dist/engine/parsers/languages/php.js +15 -0
- package/dist/engine/parsers/languages/php.js.map +1 -0
- package/dist/engine/parsers/languages/powershell.d.ts +12 -0
- package/dist/engine/parsers/languages/powershell.js +20 -0
- package/dist/engine/parsers/languages/powershell.js.map +1 -0
- package/dist/engine/parsers/languages/ruby.d.ts +8 -0
- package/dist/engine/parsers/languages/ruby.js +15 -0
- package/dist/engine/parsers/languages/ruby.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-markup/shared.d.ts +32 -0
- package/dist/engine/parsers/languages/salesforce-markup/shared.js +60 -0
- package/dist/engine/parsers/languages/salesforce-markup/shared.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/detectMetaType.d.ts +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/detectMetaType.js +50 -0
- package/dist/engine/parsers/languages/salesforce-meta/detectMetaType.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/helpers.d.ts +19 -0
- package/dist/engine/parsers/languages/salesforce-meta/helpers.js +33 -1
- package/dist/engine/parsers/languages/salesforce-meta/helpers.js.map +1 -1
- package/dist/engine/parsers/languages/salesforce-meta/parser.js +144 -23
- package/dist/engine/parsers/languages/salesforce-meta/parser.js.map +1 -1
- package/dist/engine/parsers/languages/salesforce-meta/parsers/aura.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/aura.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/aura.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/dashboard.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/dashboard.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/dashboard.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/email.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/email.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/email.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/field.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/field.js +14 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/field.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flexipage.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flexipage.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flexipage.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flow.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flow.js +42 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/flow.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/index.d.ts +17 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/index.js +19 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/index.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/labels.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/labels.js +15 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/labels.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/layout.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/layout.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/layout.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/lwc.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/lwc.js +13 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/lwc.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/object.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/object.js +26 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/object.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/permissionset.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/permissionset.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/permissionset.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/profile.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/profile.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/profile.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/report.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/report.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/report.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/resource.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/resource.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/resource.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/site.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/site.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/site.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/tab.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/tab.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/tab.js.map +1 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/testSuite.d.ts +2 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/testSuite.js +7 -0
- package/dist/engine/parsers/languages/salesforce-meta/parsers/testSuite.js.map +1 -0
- package/dist/engine/parsers/languages/scala.d.ts +6 -0
- package/dist/engine/parsers/languages/scala.js +13 -0
- package/dist/engine/parsers/languages/scala.js.map +1 -0
- package/dist/engine/parsers/languages/swift.d.ts +11 -0
- package/dist/engine/parsers/languages/swift.js +21 -0
- package/dist/engine/parsers/languages/swift.js.map +1 -0
- package/dist/engine/parsers/languages/types.d.ts +1 -0
- package/dist/engine/parsers/languages/types.js +2 -0
- package/dist/engine/parsers/languages/types.js.map +1 -0
- package/dist/engine/parsers/languages/visualforce/index.d.ts +1 -0
- package/dist/engine/parsers/languages/visualforce/index.js +2 -0
- package/dist/engine/parsers/languages/visualforce/index.js.map +1 -0
- package/dist/engine/parsers/languages/visualforce/parser.d.ts +7 -0
- package/dist/engine/parsers/languages/visualforce/parser.js +22 -0
- package/dist/engine/parsers/languages/visualforce/parser.js.map +1 -0
- package/dist/engine/parsers/languages/visualforce-parser.d.ts +1 -0
- package/dist/engine/parsers/languages/visualforce-parser.js +2 -0
- package/dist/engine/parsers/languages/visualforce-parser.js.map +1 -0
- package/dist/engine/parsers/signature-extractor.d.ts +9 -0
- package/dist/engine/parsers/signature-extractor.js +18 -48
- package/dist/engine/parsers/signature-extractor.js.map +1 -1
- package/dist/engine/parsers/tree-sitter-indexer.d.ts +9 -1
- package/dist/engine/parsers/tree-sitter-indexer.js +48 -3
- package/dist/engine/parsers/tree-sitter-indexer.js.map +1 -1
- package/dist/engine/parsers/types.d.ts +1 -1
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -1
- package/dist/knowledge/routes.d.ts +4 -1
- package/dist/knowledge/routes.js +12 -5
- package/dist/knowledge/routes.js.map +1 -1
- package/dist/models/pega-schema.models.d.ts +509 -0
- package/dist/models/pega-schema.models.js +61 -0
- package/dist/models/pega-schema.models.js.map +1 -0
- package/dist/modules/ModuleFactory.js +3 -0
- package/dist/modules/ModuleFactory.js.map +1 -1
- package/dist/modules/kb-graph/service/constants.d.ts +15 -0
- package/dist/modules/kb-graph/service/constants.js +27 -17
- package/dist/modules/kb-graph/service/constants.js.map +1 -1
- package/dist/modules/kb-graph/service/index.d.ts +1 -1
- package/dist/modules/kb-graph/service/index.js +1 -1
- package/dist/modules/kb-graph/service/index.js.map +1 -1
- package/dist/modules/kb-graph/service/sync.js +2 -2
- package/dist/modules/kb-graph/service/sync.js.map +1 -1
- package/dist/modules/memory/dispatchers/graph-fallback.d.ts +2 -1
- package/dist/modules/memory/dispatchers/graph-fallback.js +9 -6
- package/dist/modules/memory/dispatchers/graph-fallback.js.map +1 -1
- package/dist/modules/memory/engine/crud.js +8 -1
- package/dist/modules/memory/engine/crud.js.map +1 -1
- package/dist/modules/memory/migrations/003-pending-tasks.js +5 -0
- package/dist/modules/memory/migrations/003-pending-tasks.js.map +1 -1
- package/dist/modules/memory/pega-concept-retriever.d.ts +38 -0
- package/dist/modules/memory/pega-concept-retriever.js +54 -0
- package/dist/modules/memory/pega-concept-retriever.js.map +1 -0
- package/dist/modules/memory/task-queue/PendingTaskRepository.d.ts +7 -0
- package/dist/modules/memory/task-queue/PendingTaskRepository.js +22 -5
- package/dist/modules/memory/task-queue/PendingTaskRepository.js.map +1 -1
- package/dist/modules/memory/task-queue/TaskWorker.d.ts +9 -2
- package/dist/modules/memory/task-queue/TaskWorker.js +23 -3
- package/dist/modules/memory/task-queue/TaskWorker.js.map +1 -1
- package/dist/modules/memory/task-queue/models.d.ts +12 -0
- package/dist/modules/memory/task-queue/models.js +11 -0
- package/dist/modules/memory/task-queue/models.js.map +1 -1
- package/dist/modules/orchestration/McpClientManager.d.ts +8 -0
- package/dist/modules/orchestration/McpClientManager.js +13 -0
- package/dist/modules/orchestration/McpClientManager.js.map +1 -1
- package/dist/modules/orchestration/OrchestrationModule.js +7 -0
- package/dist/modules/orchestration/OrchestrationModule.js.map +1 -1
- package/dist/modules/pega/ChecksumStore.d.ts +32 -0
- package/dist/modules/pega/ChecksumStore.js +53 -0
- package/dist/modules/pega/ChecksumStore.js.map +1 -0
- package/dist/modules/pega/DiskBackedSet.d.ts +189 -0
- package/dist/modules/pega/DiskBackedSet.js +423 -0
- package/dist/modules/pega/DiskBackedSet.js.map +1 -0
- package/dist/modules/pega/PegaCaseTypeExtractor.d.ts +12 -0
- package/dist/modules/pega/PegaCaseTypeExtractor.js +76 -0
- package/dist/modules/pega/PegaCaseTypeExtractor.js.map +1 -0
- package/dist/modules/pega/PegaContentExtractor.d.ts +17 -1
- package/dist/modules/pega/PegaContentExtractor.js +56 -53
- package/dist/modules/pega/PegaContentExtractor.js.map +1 -1
- package/dist/modules/pega/PegaExprAnnotator.d.ts +30 -0
- package/dist/modules/pega/PegaExprAnnotator.js +64 -0
- package/dist/modules/pega/PegaExprAnnotator.js.map +1 -0
- package/dist/modules/pega/PegaFlowExtractor.d.ts +12 -0
- package/dist/modules/pega/PegaFlowExtractor.js +107 -0
- package/dist/modules/pega/PegaFlowExtractor.js.map +1 -0
- package/dist/modules/pega/PegaHashCache.d.ts +9 -0
- package/dist/modules/pega/PegaHashCache.js +18 -0
- package/dist/modules/pega/PegaHashCache.js.map +1 -1
- package/dist/modules/pega/PegaIndexer.js +37 -5
- package/dist/modules/pega/PegaIndexer.js.map +1 -1
- package/dist/modules/pega/PegaIndexerTool.js +7 -1
- package/dist/modules/pega/PegaIndexerTool.js.map +1 -1
- package/dist/modules/pega/PegaKbSync.js +9 -1
- package/dist/modules/pega/PegaKbSync.js.map +1 -1
- package/dist/modules/pega/PegaNestedLogicExtractor.d.ts +22 -0
- package/dist/modules/pega/PegaNestedLogicExtractor.js +73 -0
- package/dist/modules/pega/PegaNestedLogicExtractor.js.map +1 -0
- package/dist/modules/pega/PegaParser.d.ts +12 -0
- package/dist/modules/pega/PegaParser.js +17 -0
- package/dist/modules/pega/PegaParser.js.map +1 -1
- package/dist/modules/pega/PegaRuleAstParser.js +18 -4
- package/dist/modules/pega/PegaRuleAstParser.js.map +1 -1
- package/dist/modules/pega/PegaService.d.ts +7 -0
- package/dist/modules/pega/PegaService.js +35 -8
- package/dist/modules/pega/PegaService.js.map +1 -1
- package/dist/modules/pega/PegaSymbolSync.d.ts +16 -1
- package/dist/modules/pega/PegaSymbolSync.js +75 -16
- package/dist/modules/pega/PegaSymbolSync.js.map +1 -1
- package/dist/modules/pega/declare/PegaDeclareParser.d.ts +1 -2
- package/dist/modules/pega/declare/PegaDeclareParser.js +7 -9
- package/dist/modules/pega/declare/PegaDeclareParser.js.map +1 -1
- package/dist/modules/pega/declare/PegaDeclareTypes.d.ts +2 -2
- package/dist/modules/pega/discovery/PegaCodeIntelClient.d.ts +36 -0
- package/dist/modules/pega/discovery/PegaCodeIntelClient.js +79 -0
- package/dist/modules/pega/discovery/PegaCodeIntelClient.js.map +1 -0
- package/dist/modules/pega/discovery/PegaServiceDiscovery.d.ts +60 -0
- package/dist/modules/pega/discovery/PegaServiceDiscovery.js +118 -0
- package/dist/modules/pega/discovery/PegaServiceDiscovery.js.map +1 -0
- package/dist/modules/pega/discovery/PegaServiceMethodLinker.d.ts +22 -0
- package/dist/modules/pega/discovery/PegaServiceMethodLinker.js +132 -0
- package/dist/modules/pega/discovery/PegaServiceMethodLinker.js.map +1 -0
- package/dist/modules/pega/discovery/index.d.ts +6 -0
- package/dist/modules/pega/discovery/index.js +4 -0
- package/dist/modules/pega/discovery/index.js.map +1 -0
- package/dist/modules/pega/expression/ExprNodeEvaluator.d.ts +41 -0
- package/dist/modules/pega/expression/ExprNodeEvaluator.js +94 -0
- package/dist/modules/pega/expression/ExprNodeEvaluator.js.map +1 -0
- package/dist/modules/pega/expression/ExprNodeValidator.d.ts +39 -0
- package/dist/modules/pega/expression/ExprNodeValidator.js +71 -0
- package/dist/modules/pega/expression/ExprNodeValidator.js.map +1 -0
- package/dist/modules/pega/expression/ExprOperators.d.ts +31 -0
- package/dist/modules/pega/expression/ExprOperators.js +89 -0
- package/dist/modules/pega/expression/ExprOperators.js.map +1 -0
- package/dist/modules/pega/expression/ExprReferenceResolver.d.ts +21 -0
- package/dist/modules/pega/expression/ExprReferenceResolver.js +40 -0
- package/dist/modules/pega/expression/ExprReferenceResolver.js.map +1 -0
- package/dist/modules/pega/expression/PegaConstraintEvaluator.d.ts +0 -1
- package/dist/modules/pega/expression/PegaConstraintEvaluator.js +3 -4
- package/dist/modules/pega/expression/PegaConstraintEvaluator.js.map +1 -1
- package/dist/modules/pega/expression/PegaExpressionAst.d.ts +29 -59
- package/dist/modules/pega/expression/PegaExpressionAst.js +27 -100
- package/dist/modules/pega/expression/PegaExpressionAst.js.map +1 -1
- package/dist/modules/pega/expression/PegaExpressionEvaluator.d.ts +29 -4
- package/dist/modules/pega/expression/PegaExpressionEvaluator.js +33 -16
- package/dist/modules/pega/expression/PegaExpressionEvaluator.js.map +1 -1
- package/dist/modules/pega/expression/PegaWhenEvaluator.d.ts +22 -4
- package/dist/modules/pega/expression/PegaWhenEvaluator.js +36 -42
- package/dist/modules/pega/expression/PegaWhenEvaluator.js.map +1 -1
- package/dist/modules/pega/expression/pega-expr/astBuilder.d.ts +61 -0
- package/dist/modules/pega/expression/pega-expr/astBuilder.js +189 -0
- package/dist/modules/pega/expression/pega-expr/astBuilder.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/exprEmit.d.ts +24 -0
- package/dist/modules/pega/expression/pega-expr/exprEmit.js +125 -0
- package/dist/modules/pega/expression/pega-expr/exprEmit.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprLexer.d.ts +53 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprLexer.js +164 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprLexer.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprListener.d.ts +90 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprListener.js +271 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprListener.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprParser.d.ts +567 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprParser.js +2975 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprParser.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprVisitor.d.ts +46 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprVisitor.js +183 -0
- package/dist/modules/pega/expression/pega-expr/generated/PegaExprVisitor.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/nodes.d.ts +157 -0
- package/dist/modules/pega/expression/pega-expr/nodes.js +107 -0
- package/dist/modules/pega/expression/pega-expr/nodes.js.map +1 -0
- package/dist/modules/pega/expression/pega-expr/parser.d.ts +38 -0
- package/dist/modules/pega/expression/pega-expr/parser.js +83 -0
- package/dist/modules/pega/expression/pega-expr/parser.js.map +1 -0
- package/dist/modules/pega/extraction/PegaDocsIngestor.d.ts +51 -0
- package/dist/modules/pega/extraction/PegaDocsIngestor.js +54 -0
- package/dist/modules/pega/extraction/PegaDocsIngestor.js.map +1 -0
- package/dist/modules/pega/extraction/PegaGenericLogicExtractor.d.ts +25 -0
- package/dist/modules/pega/extraction/PegaGenericLogicExtractor.js +162 -0
- package/dist/modules/pega/extraction/PegaGenericLogicExtractor.js.map +1 -0
- package/dist/modules/pega/extraction/SchemaDrivenRenderer.d.ts +19 -0
- package/dist/modules/pega/extraction/SchemaDrivenRenderer.js +80 -0
- package/dist/modules/pega/extraction/SchemaDrivenRenderer.js.map +1 -0
- package/dist/modules/pega/extraction/types.d.ts +21 -0
- package/dist/modules/pega/extraction/types.js +14 -0
- package/dist/modules/pega/extraction/types.js.map +1 -0
- package/dist/modules/pega/harness-schema/parser/HarnessParser.d.ts +46 -1
- package/dist/modules/pega/harness-schema/parser/HarnessParser.js +124 -2
- package/dist/modules/pega/harness-schema/parser/HarnessParser.js.map +1 -1
- package/dist/modules/pega/harness-schema/parser/LlmSectionExtractor.d.ts +29 -0
- package/dist/modules/pega/harness-schema/parser/LlmSectionExtractor.js +127 -0
- package/dist/modules/pega/harness-schema/parser/LlmSectionExtractor.js.map +1 -0
- package/dist/modules/pega/pega-mapping.d.ts +56 -20
- package/dist/modules/pega/pega-mapping.js +109 -49
- package/dist/modules/pega/pega-mapping.js.map +1 -1
- package/dist/modules/pega/pegaBulkCheckSchema.d.ts +50 -0
- package/dist/modules/pega/pegaBulkCheckSchema.js +27 -0
- package/dist/modules/pega/pegaBulkCheckSchema.js.map +1 -0
- package/dist/modules/pega/references/PegaReferenceExtractor.d.ts +11 -0
- package/dist/modules/pega/references/PegaReferenceExtractor.js +25 -0
- package/dist/modules/pega/references/PegaReferenceExtractor.js.map +1 -1
- package/dist/modules/pega/references/PxRuleReferences.d.ts +28 -0
- package/dist/modules/pega/references/PxRuleReferences.js +65 -0
- package/dist/modules/pega/references/PxRuleReferences.js.map +1 -0
- package/dist/modules/pega/resolve/PegaResolutionPass.d.ts +31 -0
- package/dist/modules/pega/resolve/PegaResolutionPass.js +86 -0
- package/dist/modules/pega/resolve/PegaResolutionPass.js.map +1 -0
- package/dist/modules/pega/resolve/PegaResolutionResolver.d.ts +52 -0
- package/dist/modules/pega/resolve/PegaResolutionResolver.js +112 -0
- package/dist/modules/pega/resolve/PegaResolutionResolver.js.map +1 -0
- package/dist/modules/pega/schema/PegaSchemaCreator.d.ts +26 -0
- package/dist/modules/pega/schema/PegaSchemaCreator.js +86 -0
- package/dist/modules/pega/schema/PegaSchemaCreator.js.map +1 -0
- package/dist/modules/pega/schema/SchemaAggregator.d.ts +17 -0
- package/dist/modules/pega/schema/SchemaAggregator.js +38 -0
- package/dist/modules/pega/schema/SchemaAggregator.js.map +1 -0
- package/dist/modules/pega/schema/SchemaAnalyzeService.d.ts +60 -0
- package/dist/modules/pega/schema/SchemaAnalyzeService.js +249 -0
- package/dist/modules/pega/schema/SchemaAnalyzeService.js.map +1 -0
- package/dist/modules/pega/schema/SchemaStorageService.d.ts +42 -0
- package/dist/modules/pega/schema/SchemaStorageService.js +96 -0
- package/dist/modules/pega/schema/SchemaStorageService.js.map +1 -0
- package/dist/modules/pega/schemas/ingest-rule.schema.d.ts +18 -18
- package/dist/modules/pega/schemas/ingest-rule.schema.js +10 -2
- package/dist/modules/pega/schemas/ingest-rule.schema.js.map +1 -1
- package/dist/modules/pega/security/PegaEvaluationSandbox.d.ts +8 -1
- package/dist/modules/pega/security/PegaEvaluationSandbox.js +21 -10
- package/dist/modules/pega/security/PegaEvaluationSandbox.js.map +1 -1
- package/dist/modules/pega/storage/PegaResolutionStore.d.ts +65 -0
- package/dist/modules/pega/storage/PegaResolutionStore.js +93 -0
- package/dist/modules/pega/storage/PegaResolutionStore.js.map +1 -0
- package/dist/modules/pega/strategies/ActivityParserStrategy.js +2 -2
- package/dist/modules/pega/strategies/ActivityParserStrategy.js.map +1 -1
- package/dist/modules/pega/strategies/DataTransformParserStrategy.js +2 -2
- package/dist/modules/pega/strategies/DataTransformParserStrategy.js.map +1 -1
- package/dist/modules/pega/strategies/DefaultPegaParserStrategy.js +2 -2
- package/dist/modules/pega/strategies/DefaultPegaParserStrategy.js.map +1 -1
- package/dist/modules/pega/strategies/KbDrivenPegaParserStrategy.js +2 -2
- package/dist/modules/pega/strategies/KbDrivenPegaParserStrategy.js.map +1 -1
- package/dist/modules/sandbox/ExecutionManager.d.ts +39 -0
- package/dist/modules/sandbox/ExecutionManager.js +142 -0
- package/dist/modules/sandbox/ExecutionManager.js.map +1 -0
- package/dist/modules/sandbox/Reaper.d.ts +16 -0
- package/dist/modules/sandbox/Reaper.js +36 -0
- package/dist/modules/sandbox/Reaper.js.map +1 -0
- package/dist/modules/sandbox/SandboxModule.d.ts +27 -0
- package/dist/modules/sandbox/SandboxModule.js +74 -0
- package/dist/modules/sandbox/SandboxModule.js.map +1 -0
- package/dist/modules/sandbox/SessionStore.d.ts +17 -0
- package/dist/modules/sandbox/SessionStore.js +47 -0
- package/dist/modules/sandbox/SessionStore.js.map +1 -0
- package/dist/modules/sandbox/errors.d.ts +30 -0
- package/dist/modules/sandbox/errors.js +50 -0
- package/dist/modules/sandbox/errors.js.map +1 -0
- package/dist/modules/sandbox/executors/DockerExecutor.d.ts +28 -0
- package/dist/modules/sandbox/executors/DockerExecutor.js +257 -0
- package/dist/modules/sandbox/executors/DockerExecutor.js.map +1 -0
- package/dist/modules/sandbox/executors/IExecutor.d.ts +28 -0
- package/dist/modules/sandbox/executors/IExecutor.js +7 -0
- package/dist/modules/sandbox/executors/IExecutor.js.map +1 -0
- package/dist/modules/sandbox/executors/LocalExecutor.d.ts +20 -0
- package/dist/modules/sandbox/executors/LocalExecutor.js +111 -0
- package/dist/modules/sandbox/executors/LocalExecutor.js.map +1 -0
- package/dist/modules/sandbox/executors/dockerHostConfig.d.ts +18 -0
- package/dist/modules/sandbox/executors/dockerHostConfig.js +49 -0
- package/dist/modules/sandbox/executors/dockerHostConfig.js.map +1 -0
- package/dist/modules/sandbox/executors/hardening.d.ts +14 -0
- package/dist/modules/sandbox/executors/hardening.js +17 -0
- package/dist/modules/sandbox/executors/hardening.js.map +1 -0
- package/dist/modules/sandbox/executors/mountSecurity.d.ts +17 -0
- package/dist/modules/sandbox/executors/mountSecurity.js +66 -0
- package/dist/modules/sandbox/executors/mountSecurity.js.map +1 -0
- package/dist/modules/sandbox/executors/result.d.ts +8 -0
- package/dist/modules/sandbox/executors/result.js +22 -0
- package/dist/modules/sandbox/executors/result.js.map +1 -0
- package/dist/modules/sandbox/models.d.ts +79 -0
- package/dist/modules/sandbox/models.js +13 -0
- package/dist/modules/sandbox/models.js.map +1 -0
- package/dist/modules/sandbox/parsers/OutputBuffer.d.ts +21 -0
- package/dist/modules/sandbox/parsers/OutputBuffer.js +61 -0
- package/dist/modules/sandbox/parsers/OutputBuffer.js.map +1 -0
- package/dist/modules/sandbox/parsers/TestResultParser.d.ts +6 -0
- package/dist/modules/sandbox/parsers/TestResultParser.js +161 -0
- package/dist/modules/sandbox/parsers/TestResultParser.js.map +1 -0
- package/dist/modules/sandbox/tools/tool-definitions.d.ts +6 -0
- package/dist/modules/sandbox/tools/tool-definitions.js +114 -0
- package/dist/modules/sandbox/tools/tool-definitions.js.map +1 -0
- package/dist/modules/sandbox/tools/tool-handlers.d.ts +11 -0
- package/dist/modules/sandbox/tools/tool-handlers.js +233 -0
- package/dist/modules/sandbox/tools/tool-handlers.js.map +1 -0
- package/dist/sa4e-190/dto/GenerateBRDRequest.d.ts +2 -2
- package/dist/server/HttpServer.d.ts +2 -0
- package/dist/server/HttpServer.js +41 -3
- package/dist/server/HttpServer.js.map +1 -1
- package/dist/server/middleware/rate-limiter.d.ts +27 -4
- package/dist/server/middleware/rate-limiter.js +89 -8
- package/dist/server/middleware/rate-limiter.js.map +1 -1
- package/dist/server/routes/admin/analytics.js +12 -10
- package/dist/server/routes/admin/analytics.js.map +1 -1
- package/dist/server/routes/admin/config.js +20 -0
- package/dist/server/routes/admin/config.js.map +1 -1
- package/dist/server/routes/admin/database.js +15 -3
- package/dist/server/routes/admin/database.js.map +1 -1
- package/dist/server/routes/admin/index.js +3 -1
- package/dist/server/routes/admin/index.js.map +1 -1
- package/dist/server/routes/admin/kb-entries.js +126 -61
- package/dist/server/routes/admin/kb-entries.js.map +1 -1
- package/dist/server/routes/admin/static.js +37 -9
- package/dist/server/routes/admin/static.js.map +1 -1
- package/dist/server/routes/api-index-decoupled.d.ts +10 -5
- package/dist/server/routes/api-index-decoupled.js +22 -22
- package/dist/server/routes/api-index-decoupled.js.map +1 -1
- package/dist/server/routes/enrichment-status-routes.d.ts +1 -1
- package/dist/server/routes/enrichment-status-routes.js +7 -5
- package/dist/server/routes/enrichment-status-routes.js.map +1 -1
- package/dist/server/routes/mcp/servers.d.ts +11 -0
- package/dist/server/routes/mcp/servers.js +199 -0
- package/dist/server/routes/mcp/servers.js.map +1 -0
- package/dist/server/routes/pega-api.d.ts +11 -1
- package/dist/server/routes/pega-api.js +157 -11
- package/dist/server/routes/pega-api.js.map +1 -1
- package/dist/server/routes/pega-ingest-rule.d.ts +11 -1
- package/dist/server/routes/pega-ingest-rule.js +16 -8
- package/dist/server/routes/pega-ingest-rule.js.map +1 -1
- package/dist/server/routes/pega-references.d.ts +19 -0
- package/dist/server/routes/pega-references.js +82 -0
- package/dist/server/routes/pega-references.js.map +1 -0
- package/dist/server/routes/pega-schema-routes.d.ts +8 -3
- package/dist/server/routes/pega-schema-routes.js +179 -8
- package/dist/server/routes/pega-schema-routes.js.map +1 -1
- package/dist/server/routes/pega-stream.d.ts +11 -1
- package/dist/server/routes/pega-stream.js +16 -9
- package/dist/server/routes/pega-stream.js.map +1 -1
- package/dist/server/routes/rate-limit-config-routes.d.ts +13 -0
- package/dist/server/routes/rate-limit-config-routes.js +72 -0
- package/dist/server/routes/rate-limit-config-routes.js.map +1 -0
- package/dist/server/routes/sa4e-215/auth.d.ts +14 -0
- package/dist/server/routes/sa4e-215/auth.js +105 -0
- package/dist/server/routes/sa4e-215/auth.js.map +1 -0
- package/dist/server/routes/sa4e-215/decisions.d.ts +9 -0
- package/dist/server/routes/sa4e-215/decisions.js +128 -0
- package/dist/server/routes/sa4e-215/decisions.js.map +1 -0
- package/dist/server/routes/sa4e-215/guard.d.ts +14 -0
- package/dist/server/routes/sa4e-215/guard.js +18 -0
- package/dist/server/routes/sa4e-215/guard.js.map +1 -0
- package/dist/server/routes/sa4e-215/index.d.ts +11 -0
- package/dist/server/routes/sa4e-215/index.js +21 -0
- package/dist/server/routes/sa4e-215/index.js.map +1 -0
- package/dist/server/routes/schemas/index-schemas.d.ts +114 -0
- package/dist/server/routes/schemas/index-schemas.js +41 -0
- package/dist/server/routes/schemas/index-schemas.js.map +1 -0
- package/dist/servers/atlassian/clients/kb-cache-client.d.ts +52 -0
- package/dist/servers/atlassian/clients/kb-cache-client.js +135 -0
- package/dist/servers/atlassian/clients/kb-cache-client.js.map +1 -0
- package/dist/servers/atlassian/models/jira-schemas.d.ts +2 -2
- package/dist/shared/EventBus.d.ts +2 -0
- package/dist/shared/EventBus.js +2 -0
- package/dist/shared/EventBus.js.map +1 -1
- package/dist/types/tool.d.ts +1 -1
- package/dist/viewer/admin/camera-physics.d.ts +0 -0
- package/dist/viewer/admin/camera-physics.js.map +1 -0
- package/dist/viewer/admin/gesture-fsm.d.ts +0 -0
- package/dist/viewer/admin/gesture-fsm.js.map +1 -0
- package/dist/viewer/admin/index.html +2 -2
- package/dist/viewer/admin/kb-graph-renderer.d.ts +0 -0
- package/dist/viewer/admin/kb-graph-renderer.js +37 -3
- package/dist/viewer/admin/kb-graph-renderer.js.map +1 -0
- package/dist/viewer/admin/lod-animation.d.ts +43 -0
- package/dist/viewer/admin/lod-animation.js.map +1 -0
- package/dist/viewer/admin/lod-clustering.d.ts +30 -0
- package/dist/viewer/admin/lod-clustering.js.map +1 -0
- package/dist/viewer/admin/lod-manager.d.ts +59 -0
- package/dist/viewer/admin/lod-manager.js.map +1 -0
- package/dist/viewer/admin/map-controls.d.ts +0 -0
- package/dist/viewer/admin/map-controls.js.map +1 -0
- package/dist/viewer/admin/vendor/OrbitControls.d.ts +0 -0
- package/dist/viewer/admin/vendor/OrbitControls.js.map +1 -0
- package/dist/viewer/admin/zoom-animator.d.ts +0 -0
- package/dist/viewer/admin/zoom-animator.js.map +1 -0
- package/dist/viewer/analytics.d.ts +11 -0
- package/dist/viewer/analytics.js.map +1 -0
- package/dist/viewer/browser.d.ts +11 -0
- package/dist/viewer/browser.js.map +1 -0
- package/dist/viewer/dashboard.d.ts +16 -0
- package/dist/viewer/dashboard.js.map +1 -0
- package/dist/viewer/graph.d.ts +29 -0
- package/dist/viewer/graph.js.map +1 -0
- package/dist/viewer/lod-animation.d.ts +43 -0
- package/dist/viewer/lod-animation.js.map +1 -0
- package/dist/viewer/lod-clustering.d.ts +30 -0
- package/dist/viewer/lod-clustering.js.map +1 -0
- package/dist/viewer/lod-manager.d.ts +40 -0
- package/dist/viewer/lod-manager.js.map +1 -0
- package/dist/viewer/modules/empty-states.d.ts +6 -0
- package/dist/viewer/modules/empty-states.js.map +1 -0
- package/dist/viewer/modules/event-bus.d.ts +15 -0
- package/dist/viewer/modules/event-bus.js.map +1 -0
- package/dist/viewer/modules/graph-analysis.d.ts +6 -0
- package/dist/viewer/modules/graph-analysis.js.map +1 -0
- package/dist/viewer/modules/help-panel.d.ts +6 -0
- package/dist/viewer/modules/help-panel.js.map +1 -0
- package/dist/viewer/modules/markdown-renderer.d.ts +11 -0
- package/dist/viewer/modules/markdown-renderer.js.map +1 -0
- package/dist/viewer/modules/recommendations.d.ts +6 -0
- package/dist/viewer/modules/recommendations.js.map +1 -0
- package/dist/viewer/modules/tooltips.d.ts +6 -0
- package/dist/viewer/modules/tooltips.js.map +1 -0
- package/dist/viewer/modules/tour-ui.d.ts +4 -0
- package/dist/viewer/modules/tour-ui.js.map +1 -0
- package/dist/viewer/modules/tour.d.ts +12 -0
- package/dist/viewer/modules/tour.js.map +1 -0
- package/dist/viewer/quality.d.ts +11 -0
- package/dist/viewer/quality.js.map +1 -0
- package/dist/viewer/session-export.d.ts +4 -0
- package/dist/viewer/session-export.js.map +1 -0
- package/dist/viewer/session-playback.d.ts +14 -0
- package/dist/viewer/session-playback.js.map +1 -0
- package/dist/viewer/session-timeline.d.ts +19 -0
- package/dist/viewer/session-timeline.js.map +1 -0
- package/dist/viewer/sessions.d.ts +18 -0
- package/dist/viewer/sessions.js.map +1 -0
- package/dist/viewer/stream.d.ts +19 -0
- package/dist/viewer/stream.js.map +1 -0
- package/dist/viewer/tags.d.ts +15 -0
- package/dist/viewer/tags.js.map +1 -0
- package/docker-compose.dev.yml +79 -0
- package/docker-compose.sa4e-241.yml +44 -0
- package/docker-compose.test.yml +24 -0
- package/fix-pending-tasks-priority.cjs +73 -0
- package/package.json +15 -6
- package/scripts/clear-pega-symbols.ts +72 -0
- package/scripts/db/run-sa4e-241-migration.mjs +73 -0
- package/scripts/db/sa4e-241-content-hash-index.sql +20 -0
- package/scripts/ingest-pega-docs.ts +104 -0
- package/scripts/ingest-raw2-pega-docs.ts +303 -0
- package/scripts/migrate-mcp.js +227 -0
- package/scripts/pega-discover.ts +76 -0
- package/scripts/purge-superseded-tasks.ts +37 -0
- package/scripts/rebuild-graph-nodes.ts +53 -0
- package/scripts/reclassify-pega-kinds.ts +63 -0
- package/scripts/reenrich-pega-all.ts +119 -0
- package/scripts/reenrich-pega-declarative.ts +106 -0
- package/scripts/reenrich-pega.ts +89 -0
- package/src/admin/db/core.ts +12 -2
- package/src/config/SandboxConfig.ts +74 -0
- package/src/config/__tests__/salesforce-extensions.test.ts +26 -0
- package/src/config/index.ts +8 -1
- package/src/database/config/DatabaseConfigService.ts +39 -6
- package/src/database/migration/ensure-pega-category-counters.ts +31 -0
- package/src/database/migration/migrate-pega-category-counters.ts +35 -0
- package/src/database/models/file-checksum.ts +13 -0
- package/src/database/models/index-operation.ts +19 -0
- package/src/database/repositories/FileChecksumRepository.ts +97 -0
- package/src/database/repositories/IndexOperationRepository.ts +196 -0
- package/src/database/repositories/SymbolRepository.ts +4 -2
- package/src/database/repositories/__tests__/FileChecksumRepository.test.ts +98 -0
- package/src/database/repositories/__tests__/IndexOperationRepository.test.ts +159 -0
- package/src/database/schema-registry/ensure-sa4e-101.ts +64 -0
- package/src/database/schema-registry/ensure-sa4e-215.ts +74 -0
- package/src/database/schema-registry/ensure-sa4e-237.ts +56 -0
- package/src/database/schema-registry/sa4e-215.ts +105 -0
- package/src/engine/db/migration-v5.ts +5 -2
- package/src/engine/enrichment/CodeEnrichmentHandler.ts +104 -3
- package/src/engine/enrichment/CodeEnrichmentPromptBuilder.ts +15 -8
- package/src/engine/enrichment/__tests__/enrichment-e2e.test.ts +121 -0
- package/src/engine/enrichment/types.ts +2 -0
- package/src/engine/graph/__tests__/graph-sync-service.test.ts +6 -6
- package/src/engine/graph/graph-sync-service.ts +2 -2
- package/src/engine/indexer/__tests__/checksum-service.test.ts +77 -0
- package/src/engine/indexer/__tests__/cleanup-scheduler.test.ts +72 -0
- package/src/engine/indexer/__tests__/file-scanner.part2.test.ts +173 -0
- package/src/engine/indexer/__tests__/file-scanner.test.ts +49 -90
- package/src/engine/indexer/__tests__/index-operation-manager.test.ts +143 -0
- package/src/engine/indexer/__tests__/module-helper.test.ts +54 -0
- package/src/engine/indexer/__tests__/path-safety.test.ts +81 -0
- package/src/engine/indexer/__tests__/startup-interrupt-detector.test.ts +90 -0
- package/src/engine/indexer/async-file-scanner.ts +10 -3
- package/src/engine/indexer/checksum-service.ts +56 -0
- package/src/engine/indexer/cleanup-scheduler.ts +50 -0
- package/src/engine/indexer/file-scanner.ts +41 -13
- package/src/engine/indexer/index-operation-manager.ts +290 -74
- package/src/engine/indexer/indexing-engine.ts +61 -11
- package/src/engine/indexer/module-helper.ts +27 -8
- package/src/engine/indexer/path-safety.ts +45 -0
- package/src/engine/indexer/project-type/__tests__/resolver.test.ts +7 -0
- package/src/engine/indexer/project-type/resolver.ts +5 -1
- package/src/engine/indexer/startup-interrupt-detector.ts +39 -0
- package/src/engine/indexer/types.ts +26 -4
- package/src/engine/parsers/__tests__/sa4e-225-language-extraction.test.ts +448 -0
- package/src/engine/parsers/__tests__/signature-extractor.test.ts +20 -0
- package/src/engine/parsers/__tests__/tree-sitter-timeout.test.ts +79 -0
- package/src/engine/parsers/embedding/EmbeddingService.ts +21 -29
- package/src/engine/parsers/grammar-config.json +19 -2
- package/src/engine/parsers/grammar-registry.ts +3 -1
- package/src/engine/parsers/grammars/grammar-config-loader.ts +1 -1
- package/src/engine/parsers/indexer/storage.ts +3 -1
- package/src/engine/parsers/languages/__tests__/aura-parser.test.ts +50 -0
- package/src/engine/parsers/languages/__tests__/salesforce-markup-redos.test.ts +72 -0
- package/src/engine/parsers/languages/__tests__/salesforce-meta-parser.part2.test.ts +161 -0
- package/src/engine/parsers/languages/__tests__/salesforce-meta-parser.test.ts +0 -65
- package/src/engine/parsers/languages/__tests__/secret-scrub.test.ts +53 -0
- package/src/engine/parsers/languages/__tests__/visualforce-parser.test.ts +50 -0
- package/src/engine/parsers/languages/aura/index.ts +1 -0
- package/src/engine/parsers/languages/aura/parser.ts +35 -0
- package/src/engine/parsers/languages/aura-parser.ts +1 -0
- package/src/engine/parsers/languages/bash.ts +15 -0
- package/src/engine/parsers/languages/builtin.ts +59 -0
- package/src/engine/parsers/languages/c.ts +15 -0
- package/src/engine/parsers/languages/cpp.ts +17 -0
- package/src/engine/parsers/languages/csharp.ts +23 -0
- package/src/engine/parsers/languages/index.ts +37 -0
- package/src/engine/parsers/languages/php.ts +17 -0
- package/src/engine/parsers/languages/powershell.ts +22 -0
- package/src/engine/parsers/languages/ruby.ts +17 -0
- package/src/engine/parsers/languages/salesforce-markup/shared.ts +94 -0
- package/src/engine/parsers/languages/salesforce-meta/detectMetaType.ts +34 -0
- package/src/engine/parsers/languages/salesforce-meta/helpers.ts +36 -1
- package/src/engine/parsers/languages/salesforce-meta/parser.ts +43 -19
- package/src/engine/parsers/languages/salesforce-meta/parsers/aura.ts +10 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/dashboard.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/email.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/field.ts +17 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/flexipage.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/flow.ts +42 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/index.ts +19 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/labels.ts +16 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/layout.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/lwc.ts +16 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/object.ts +28 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/permissionset.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/profile.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/report.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/resource.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/site.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/tab.ts +8 -0
- package/src/engine/parsers/languages/salesforce-meta/parsers/testSuite.ts +8 -0
- package/src/engine/parsers/languages/scala.ts +15 -0
- package/src/engine/parsers/languages/swift.ts +24 -0
- package/src/engine/parsers/languages/types.ts +1 -0
- package/src/engine/parsers/languages/visualforce/index.ts +1 -0
- package/src/engine/parsers/languages/visualforce/parser.ts +26 -0
- package/src/engine/parsers/languages/visualforce-parser.ts +1 -0
- package/src/engine/parsers/signature-extractor.ts +23 -55
- package/src/engine/parsers/tree-sitter-indexer.ts +54 -4
- package/src/engine/parsers/types.ts +1 -1
- package/src/index.ts +54 -1
- package/src/knowledge/routes.ts +12 -5
- package/src/models/pega-schema.models.ts +78 -0
- package/src/modules/ModuleFactory.ts +3 -0
- package/src/modules/kb-graph/service/constants.ts +26 -17
- package/src/modules/kb-graph/service/index.ts +1 -1
- package/src/modules/kb-graph/service/sync.ts +2 -2
- package/src/modules/memory/__tests__/graph-fallback.test.ts +12 -8
- package/src/modules/memory/__tests__/pega-concept-retriever.test.ts +60 -0
- package/src/modules/memory/dispatchers/graph-fallback.ts +7 -5
- package/src/modules/memory/engine/crud.ts +10 -1
- package/src/modules/memory/migrations/003-pending-tasks.ts +5 -0
- package/src/modules/memory/pega-concept-retriever.ts +88 -0
- package/src/modules/memory/task-queue/PendingTaskRepository.ts +26 -5
- package/src/modules/memory/task-queue/TaskWorker.ts +25 -3
- package/src/modules/memory/task-queue/__tests__/PendingTaskRepository.earliest.test.ts +93 -0
- package/src/modules/memory/task-queue/__tests__/PendingTaskRepository.purge.test.ts +93 -0
- package/src/modules/memory/task-queue/__tests__/TaskWorker.it.test.ts +24 -0
- package/src/modules/memory/task-queue/models.ts +13 -0
- package/src/modules/orchestration/McpClientManager.ts +14 -0
- package/src/modules/orchestration/OrchestrationModule.ts +9 -0
- package/src/modules/orchestration/__tests__/McpClientManager.reserved.test.ts +56 -0
- package/src/modules/pega/ChecksumStore.ts +57 -0
- package/src/modules/pega/DiskBackedSet.ts +514 -0
- package/src/modules/pega/PegaCaseTypeExtractor.ts +77 -0
- package/src/modules/pega/PegaContentExtractor.ts +60 -57
- package/src/modules/pega/PegaExprAnnotator.ts +67 -0
- package/src/modules/pega/PegaFlowExtractor.ts +110 -0
- package/src/modules/pega/PegaHashCache.ts +19 -0
- package/src/modules/pega/PegaIndexer.ts +46 -5
- package/src/modules/pega/PegaIndexerTool.ts +7 -1
- package/src/modules/pega/PegaKbSync.ts +9 -1
- package/src/modules/pega/PegaNestedLogicExtractor.ts +76 -0
- package/src/modules/pega/PegaParser.ts +17 -0
- package/src/modules/pega/PegaRuleAstParser.ts +19 -4
- package/src/modules/pega/PegaService.ts +49 -11
- package/src/modules/pega/PegaSymbolSync.ts +87 -16
- package/src/modules/pega/__tests__/ChecksumStore.test.ts +98 -0
- package/src/modules/pega/__tests__/PegaCaseTypeExtractor.test.ts +68 -0
- package/src/modules/pega/__tests__/PegaContentExtractor.test.ts +31 -0
- package/src/modules/pega/__tests__/PegaFlowExtractor.test.ts +60 -0
- package/src/modules/pega/__tests__/PegaGenericLogicExtractor.test.ts +96 -0
- package/src/modules/pega/__tests__/PegaIndexerTool.test.ts +12 -1
- package/src/modules/pega/__tests__/PegaNestedLogicExtractor.test.ts +85 -0
- package/src/modules/pega/__tests__/PegaSymbolSync.test.ts +50 -12
- package/src/modules/pega/__tests__/SchemaDrivenRenderer.test.ts +61 -0
- package/src/modules/pega/__tests__/declare/PegaDeclareParser.test.ts +11 -7
- package/src/modules/pega/__tests__/expression/ExprNodeEvaluator.test.ts +64 -0
- package/src/modules/pega/__tests__/expression/ExprNodeValidator.test.ts +48 -0
- package/src/modules/pega/__tests__/expression/PegaExprParser.test.ts +122 -0
- package/src/modules/pega/__tests__/expression/PegaExpressionEvaluator.test.ts +6 -6
- package/src/modules/pega/__tests__/expression/PegaWhenEvaluator.test.ts +47 -0
- package/src/modules/pega/__tests__/pega-indexing.e2e.test.ts +18 -10
- package/src/modules/pega/__tests__/pega-mapping.test.ts +82 -59
- package/src/modules/pega/__tests__/references/PxRuleReferences.test.ts +72 -0
- package/src/modules/pega/__tests__/resolve/PegaResolutionPass.test.ts +166 -0
- package/src/modules/pega/__tests__/security/PegaSecurity.test.ts +14 -32
- package/src/modules/pega/declare/PegaDeclareParser.ts +6 -9
- package/src/modules/pega/declare/PegaDeclareTypes.ts +2 -2
- package/src/modules/pega/discovery/PegaCodeIntelClient.ts +91 -0
- package/src/modules/pega/discovery/PegaServiceDiscovery.ts +171 -0
- package/src/modules/pega/discovery/PegaServiceMethodLinker.ts +177 -0
- package/src/modules/pega/discovery/__tests__/PegaServiceDiscovery.test.ts +54 -0
- package/src/modules/pega/discovery/__tests__/PegaServiceMethodLinker.test.ts +61 -0
- package/src/modules/pega/discovery/index.ts +10 -0
- package/src/modules/pega/expression/ExprNodeEvaluator.ts +107 -0
- package/src/modules/pega/expression/ExprNodeValidator.ts +90 -0
- package/src/modules/pega/expression/ExprOperators.ts +91 -0
- package/src/modules/pega/expression/ExprReferenceResolver.ts +43 -0
- package/src/modules/pega/expression/PegaConstraintEvaluator.ts +3 -4
- package/src/modules/pega/expression/PegaExpressionAst.ts +30 -119
- package/src/modules/pega/expression/PegaExpressionEvaluator.ts +37 -25
- package/src/modules/pega/expression/PegaWhenEvaluator.ts +41 -55
- package/src/modules/pega/expression/pega-expr/astBuilder.ts +203 -0
- package/src/modules/pega/expression/pega-expr/exprEmit.ts +138 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExpr.interp +98 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExpr.tokens +67 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprLexer.d.ts +12 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprLexer.interp +137 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprLexer.js +175 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprLexer.tokens +67 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprListener.js +405 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprParser.d.ts +13 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprParser.js +3380 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprVisitor.d.ts +11 -0
- package/src/modules/pega/expression/pega-expr/generated/PegaExprVisitor.js +274 -0
- package/src/modules/pega/expression/pega-expr/nodes.ts +231 -0
- package/src/modules/pega/expression/pega-expr/parser.ts +121 -0
- package/src/modules/pega/extraction/PegaDocsIngestor.ts +75 -0
- package/src/modules/pega/extraction/PegaGenericLogicExtractor.ts +155 -0
- package/src/modules/pega/extraction/SchemaDrivenRenderer.ts +89 -0
- package/src/modules/pega/extraction/__tests__/PegaDocsIngestor.test.ts +56 -0
- package/src/modules/pega/extraction/types.ts +28 -0
- package/src/modules/pega/harness-schema/parser/HarnessParser.ts +154 -2
- package/src/modules/pega/harness-schema/parser/LlmSectionExtractor.ts +133 -0
- package/src/modules/pega/pega-mapping.ts +113 -47
- package/src/modules/pega/pegaBulkCheckSchema.ts +33 -0
- package/src/modules/pega/references/PegaReferenceExtractor.ts +28 -0
- package/src/modules/pega/references/PxRuleReferences.ts +83 -0
- package/src/modules/pega/resolve/PegaResolutionPass.ts +131 -0
- package/src/modules/pega/resolve/PegaResolutionResolver.ts +136 -0
- package/src/modules/pega/schema/PegaSchemaCreator.ts +91 -0
- package/src/modules/pega/schema/SchemaAggregator.ts +42 -0
- package/src/modules/pega/schema/SchemaAnalyzeService.ts +278 -0
- package/src/modules/pega/schema/SchemaStorageService.ts +131 -0
- package/src/modules/pega/schema/__tests__/PegaSchemaCreator.test.ts +64 -0
- package/src/modules/pega/schemas/ingest-rule.schema.ts +10 -2
- package/src/modules/pega/security/PegaEvaluationSandbox.ts +22 -11
- package/src/modules/pega/storage/PegaResolutionStore.ts +151 -0
- package/src/modules/pega/strategies/ActivityParserStrategy.ts +2 -2
- package/src/modules/pega/strategies/DataTransformParserStrategy.ts +2 -2
- package/src/modules/pega/strategies/DefaultPegaParserStrategy.ts +2 -2
- package/src/modules/pega/strategies/KbDrivenPegaParserStrategy.ts +2 -2
- package/src/modules/sandbox/ExecutionManager.ts +165 -0
- package/src/modules/sandbox/Reaper.ts +39 -0
- package/src/modules/sandbox/SandboxModule.ts +89 -0
- package/src/modules/sandbox/SessionStore.ts +56 -0
- package/src/modules/sandbox/errors.ts +57 -0
- package/src/modules/sandbox/executors/DockerExecutor.ts +282 -0
- package/src/modules/sandbox/executors/IExecutor.ts +32 -0
- package/src/modules/sandbox/executors/LocalExecutor.ts +137 -0
- package/src/modules/sandbox/executors/dockerHostConfig.ts +60 -0
- package/src/modules/sandbox/executors/hardening.ts +26 -0
- package/src/modules/sandbox/executors/mountSecurity.ts +69 -0
- package/src/modules/sandbox/executors/result.ts +31 -0
- package/src/modules/sandbox/models.ts +97 -0
- package/src/modules/sandbox/parsers/OutputBuffer.ts +62 -0
- package/src/modules/sandbox/parsers/TestResultParser.ts +183 -0
- package/src/modules/sandbox/tools/tool-definitions.ts +116 -0
- package/src/modules/sandbox/tools/tool-handlers.ts +265 -0
- package/src/server/HttpServer.ts +46 -3
- package/src/server/__tests__/sa4e217-uat.test.ts +139 -0
- package/src/server/middleware/__tests__/rate-limiter.test.ts +75 -4
- package/src/server/middleware/rate-limiter.ts +94 -8
- package/src/server/routes/__tests__/enrichment-status-routes.test.ts +140 -0
- package/src/server/routes/__tests__/pega-bulk-check.test.ts +196 -0
- package/src/server/routes/__tests__/pega-schema-routes.test.ts +75 -0
- package/src/server/routes/admin/analytics.ts +12 -13
- package/src/server/routes/admin/config.ts +17 -0
- package/src/server/routes/admin/database.ts +17 -5
- package/src/server/routes/admin/index.ts +3 -1
- package/src/server/routes/admin/kb-entries.ts +140 -64
- package/src/server/routes/admin/static.ts +40 -8
- package/src/server/routes/api-index-decoupled.ts +25 -22
- package/src/server/routes/enrichment-status-routes.ts +7 -5
- package/src/server/routes/mcp/servers.ts +243 -0
- package/src/server/routes/pega-api.ts +170 -13
- package/src/server/routes/pega-ingest-rule.ts +23 -5
- package/src/server/routes/pega-references.ts +93 -0
- package/src/server/routes/pega-schema-routes.ts +197 -8
- package/src/server/routes/pega-stream.ts +22 -5
- package/src/server/routes/rate-limit-config-routes.ts +111 -0
- package/src/server/routes/sa4e-215/__tests__/sa4e-215.routes.test.ts +239 -0
- package/src/server/routes/sa4e-215/auth.ts +139 -0
- package/src/server/routes/sa4e-215/decisions.ts +146 -0
- package/src/server/routes/sa4e-215/guard.ts +32 -0
- package/src/server/routes/sa4e-215/index.ts +23 -0
- package/src/server/routes/schemas/index-schemas.ts +45 -0
- package/src/servers/atlassian/clients/kb-cache-client.ts +152 -0
- package/src/shared/EventBus.ts +2 -0
- package/src/shared/schemas/__tests__/EnrichmentStatusSchema.test.ts +85 -0
- package/src/types/tool.ts +1 -1
- package/src/viewer/admin/index.html +2 -2
- package/src/viewer/admin/kb-graph-renderer.js +37 -3
- package/tests/e2e/pega-schema.e2e.test.ts +49 -0
- package/tests/integration/debug_sandbox.test.ts +126 -0
- package/tests/integration/debug_sandbox.ts +130 -0
- package/tests/integration/sandbox.it.test.ts +151 -0
- package/tests/unit/sandbox/ExecutionManager.test.ts +70 -0
- package/tests/unit/sandbox/LocalExecutor.test.ts +71 -0
- package/tests/unit/sandbox/OutputBuffer.test.ts +30 -0
- package/tests/unit/sandbox/Reaper.test.ts +20 -0
- package/tests/unit/sandbox/SandboxModule.test.ts +54 -0
- package/tests/unit/sandbox/SessionStore.test.ts +61 -0
- package/tests/unit/sandbox/TestResultParser.test.ts +64 -0
- package/tests/unit/sandbox/dockerHostConfig.test.ts +49 -0
- package/tests/unit/sandbox/mockLogger.ts +20 -0
- package/tests/unit/sandbox/mountSecurity.test.ts +42 -0
- package/tsconfig.json +3 -1
- package/.env.test +0 -24
- package/dist/admin/db/index.d.ts +0 -13
- package/dist/admin/db/index.js +0 -13
- package/dist/admin/db/index.js.map +0 -1
- package/dist/admin/index.d.ts +0 -13
- package/dist/admin/index.js +0 -73
- package/dist/admin/index.js.map +0 -1
- package/dist/admin/middleware/audit.middleware.d.ts +0 -13
- package/dist/admin/middleware/audit.middleware.js +0 -57
- package/dist/admin/middleware/audit.middleware.js.map +0 -1
- package/dist/admin/middleware/rate-limit.middleware.d.ts +0 -2
- package/dist/admin/middleware/rate-limit.middleware.js +0 -47
- package/dist/admin/middleware/rate-limit.middleware.js.map +0 -1
- package/dist/admin/middleware/rbac.middleware.d.ts +0 -8
- package/dist/admin/middleware/rbac.middleware.js +0 -111
- package/dist/admin/middleware/rbac.middleware.js.map +0 -1
- package/dist/admin/routes/analytics.router.d.ts +0 -3
- package/dist/admin/routes/analytics.router.js +0 -47
- package/dist/admin/routes/analytics.router.js.map +0 -1
- package/dist/admin/routes/audit.router.d.ts +0 -4
- package/dist/admin/routes/audit.router.js +0 -27
- package/dist/admin/routes/audit.router.js.map +0 -1
- package/dist/admin/routes/config.router.d.ts +0 -4
- package/dist/admin/routes/config.router.js +0 -23
- package/dist/admin/routes/config.router.js.map +0 -1
- package/dist/admin/routes/dashboard.router.d.ts +0 -5
- package/dist/admin/routes/dashboard.router.js +0 -11
- package/dist/admin/routes/dashboard.router.js.map +0 -1
- package/dist/admin/routes/helpers.d.ts +0 -26
- package/dist/admin/routes/helpers.js +0 -13
- package/dist/admin/routes/helpers.js.map +0 -1
- package/dist/admin/routes/kb-admin.router.d.ts +0 -5
- package/dist/admin/routes/kb-admin.router.js +0 -49
- package/dist/admin/routes/kb-admin.router.js.map +0 -1
- package/dist/admin/routes/mcp-admin.router.d.ts +0 -4
- package/dist/admin/routes/mcp-admin.router.js +0 -35
- package/dist/admin/routes/mcp-admin.router.js.map +0 -1
- package/dist/admin/routes/rbac.router.d.ts +0 -4
- package/dist/admin/routes/rbac.router.js +0 -71
- package/dist/admin/routes/rbac.router.js.map +0 -1
- package/dist/admin/routes/search.router.d.ts +0 -3
- package/dist/admin/routes/search.router.js +0 -20
- package/dist/admin/routes/search.router.js.map +0 -1
- package/dist/admin/routes/user.router.d.ts +0 -4
- package/dist/admin/routes/user.router.js +0 -54
- package/dist/admin/routes/user.router.js.map +0 -1
- package/dist/admin/services/audit.service.d.ts +0 -13
- package/dist/admin/services/audit.service.js +0 -40
- package/dist/admin/services/audit.service.js.map +0 -1
- package/dist/admin/services/config.service.d.ts +0 -10
- package/dist/admin/services/config.service.js +0 -31
- package/dist/admin/services/config.service.js.map +0 -1
- package/dist/admin/services/dashboard.service.d.ts +0 -9
- package/dist/admin/services/dashboard.service.js +0 -67
- package/dist/admin/services/dashboard.service.js.map +0 -1
- package/dist/admin/services/kb-admin.service.d.ts +0 -28
- package/dist/admin/services/kb-admin.service.js +0 -74
- package/dist/admin/services/kb-admin.service.js.map +0 -1
- package/dist/admin/services/mcp-admin.service.d.ts +0 -13
- package/dist/admin/services/mcp-admin.service.js +0 -40
- package/dist/admin/services/mcp-admin.service.js.map +0 -1
- package/dist/admin/services/rbac.service.d.ts +0 -16
- package/dist/admin/services/rbac.service.js +0 -109
- package/dist/admin/services/rbac.service.js.map +0 -1
- package/dist/admin/services/search.service.d.ts +0 -23
- package/dist/admin/services/search.service.js +0 -36
- package/dist/admin/services/search.service.js.map +0 -1
- package/dist/admin/services/sse.manager.d.ts +0 -12
- package/dist/admin/services/sse.manager.js +0 -66
- package/dist/admin/services/sse.manager.js.map +0 -1
- package/dist/admin/services/user.service.d.ts +0 -25
- package/dist/admin/services/user.service.js +0 -69
- package/dist/admin/services/user.service.js.map +0 -1
- package/dist/admin/types/admin.types.d.ts +0 -187
- package/dist/admin/types/admin.types.js +0 -28
- package/dist/admin/types/admin.types.js.map +0 -1
- package/dist/admin/types/api.types.d.ts +0 -41
- package/dist/admin/types/api.types.js +0 -44
- package/dist/admin/types/api.types.js.map +0 -1
- package/dist/engine/parsers/languages/salesforce-meta/parsers.d.ts +0 -6
- package/dist/engine/parsers/languages/salesforce-meta/parsers.js +0 -94
- package/dist/engine/parsers/languages/salesforce-meta/parsers.js.map +0 -1
- package/dist/modules/pega/PegaGraphProjector.d.ts +0 -18
- package/dist/modules/pega/PegaGraphProjector.js +0 -80
- package/dist/modules/pega/PegaGraphProjector.js.map +0 -1
- package/dist/modules/pega/expression/PegaExpressionLexer.d.ts +0 -22
- package/dist/modules/pega/expression/PegaExpressionLexer.js +0 -217
- package/dist/modules/pega/expression/PegaExpressionLexer.js.map +0 -1
- package/dist/modules/pega/expression/PegaExpressionParser.d.ts +0 -18
- package/dist/modules/pega/expression/PegaExpressionParser.js +0 -151
- package/dist/modules/pega/expression/PegaExpressionParser.js.map +0 -1
- package/dist/modules/pega/security/PegaExpressionValidator.d.ts +0 -16
- package/dist/modules/pega/security/PegaExpressionValidator.js +0 -69
- package/dist/modules/pega/security/PegaExpressionValidator.js.map +0 -1
- package/dist/server/middleware/localhost-only.d.ts +0 -6
- package/dist/server/middleware/localhost-only.js +0 -21
- package/dist/server/middleware/localhost-only.js.map +0 -1
- package/src/engine/parsers/languages/salesforce-meta/parsers.ts +0 -105
- package/src/modules/pega/PegaGraphProjector.ts +0 -104
- package/src/modules/pega/__tests__/expression/PegaExpressionLexer.test.ts +0 -78
- package/src/modules/pega/__tests__/expression/PegaExpressionParser.test.ts +0 -92
- package/src/modules/pega/__tests__/expression/PegaExpressionProperty.test.ts +0 -490
- package/src/modules/pega/expression/PegaExpressionLexer.ts +0 -263
- package/src/modules/pega/expression/PegaExpressionParser.ts +0 -203
- package/src/modules/pega/security/PegaExpressionValidator.ts +0 -93
- package/src/server/middleware/__tests__/localhost-only.test.ts +0 -82
- package/src/server/middleware/localhost-only.ts +0 -29
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"activeEngine": "sqlite",
|
|
3
|
+
"engines": {
|
|
4
|
+
"sqlite": { "dbPath": "index.db", "active": true },
|
|
5
|
+
"postgresql": {
|
|
6
|
+
"host": "<PG_HOST>",
|
|
7
|
+
"port": 5432,
|
|
8
|
+
"username": "<PG_USER>",
|
|
9
|
+
"password": "<PG_PASSWORD>",
|
|
10
|
+
"database": "<PG_DATABASE>",
|
|
11
|
+
"ssl": false,
|
|
12
|
+
"active": false,
|
|
13
|
+
"pool": { "min": 2, "max": 10 }
|
|
14
|
+
},
|
|
15
|
+
"mysql": {
|
|
16
|
+
"host": "<MYSQL_HOST>",
|
|
17
|
+
"port": 3306,
|
|
18
|
+
"username": "<MYSQL_USER>",
|
|
19
|
+
"password": "<MYSQL_PASSWORD>",
|
|
20
|
+
"database": "<MYSQL_DATABASE>",
|
|
21
|
+
"ssl": false,
|
|
22
|
+
"active": false,
|
|
23
|
+
"pool": { "min": 2, "max": 10 }
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"migration": { "lastMigration": null, "backupSqlitePaths": [] }
|
|
27
|
+
}
|
package/.env.example
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
# --- Server ---
|
|
5
5
|
NODE_ENV=development
|
|
6
6
|
PORT=48721
|
|
7
|
+
# Per-IP rate limit (requests per minute). Defaults: 6000 in production, 10000 otherwise.
|
|
8
|
+
# Raise this when many clients share one egress IP (proxy/NAT) behind the remote server.
|
|
9
|
+
RATE_LIMIT_MAX_RPM=6000
|
|
10
|
+
# Set to 'true' when behind a reverse proxy so x-forwarded-for is used for the client IP.
|
|
11
|
+
TRUST_PROXY=false
|
|
7
12
|
|
|
8
13
|
# --- Database ---
|
|
9
14
|
DATABASE_ADAPTER=postgresql
|
|
@@ -34,3 +39,36 @@ API_KEY_REQUIRED=false
|
|
|
34
39
|
# --- Logging ---
|
|
35
40
|
LOG_LEVEL=info
|
|
36
41
|
LOG_FORMAT=pretty
|
|
42
|
+
|
|
43
|
+
# =============================================================================
|
|
44
|
+
# SA4E-241 — Incremental Checksum Indexing (env template — placeholders only)
|
|
45
|
+
# =============================================================================
|
|
46
|
+
|
|
47
|
+
# --- Auth / tenant isolation (SEC-01) ---
|
|
48
|
+
# When true, /pega/* requires identity (X-Project-Id header or JWT `pid` claim).
|
|
49
|
+
# projectId is derived from the authenticated identity — body.projectId is only
|
|
50
|
+
# used to cross-check (mismatch -> 403). NEVER a hardcoded default.
|
|
51
|
+
CODE_INTEL_REQUIRE_AUTH=false
|
|
52
|
+
# JWT signing/verification secret. Set a strong random value in real envs.
|
|
53
|
+
# Leave EMPTY here — do NOT commit a real secret. Use a secret manager in prod.
|
|
54
|
+
KB_TOKEN_SECRET=
|
|
55
|
+
|
|
56
|
+
# --- Pega credentials (SEC-03) — DO NOT hardcode; DO NOT commit real values ---
|
|
57
|
+
# Credentials must be provided by the extension via VS Code SecretStorage and
|
|
58
|
+
# forwarded per-request (authHeader). These template keys exist only for local
|
|
59
|
+
# manual testing. The leaked pair SSA@TGB / pega123! MUST be rotated and is
|
|
60
|
+
# blocked by scripts/check-secrets.sh — use your own operator id/password here.
|
|
61
|
+
PEGA_ENDPOINT=http://localhost:8080/prweb
|
|
62
|
+
PEGA_USERNAME=<your-pega-operator-id>
|
|
63
|
+
PEGA_PASSWORD=<your-pega-password>
|
|
64
|
+
|
|
65
|
+
# --- Checksum download / zip-bomb guards (SEC-05) ---
|
|
66
|
+
# Trần tài nguyên cho resumable download + ZIP extraction (chống DoS/zip-bomb).
|
|
67
|
+
CHECKSUM_MAX_TOTAL_SIZE=209715200 # 200 MB — trần tổng bytes tải về
|
|
68
|
+
CHECKSUM_MAX_CHUNKS=4096 # trần số chunk (chống loop vô hạn)
|
|
69
|
+
CHECKSUM_MAX_UNCOMPRESSED_SIZE=524288000 # 500 MB — trần tổng bytes sau giải nén
|
|
70
|
+
CHECKSUM_MAX_ZIP_ENTRIES=50000 # trần số entry trong ZIP
|
|
71
|
+
|
|
72
|
+
# --- Bulk-check limits (SEC-04) ---
|
|
73
|
+
# Server-side cap on checksums per bulk-check request (client batches <= 1000).
|
|
74
|
+
BULK_CHECK_MAX_CHECKSUMS=5000
|
package/.lintstagedrc.json
CHANGED
package/Dockerfile
CHANGED
|
@@ -49,3 +49,41 @@ HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
|
|
|
49
49
|
CMD wget --no-verbose --tries=1 --spider http://localhost:48721/health || exit 1
|
|
50
50
|
|
|
51
51
|
CMD ["node", "dist/index.js"]
|
|
52
|
+
|
|
53
|
+
# -----------------------------------------------------------------------------
|
|
54
|
+
# Development stage — hot reload (tsx watch) for local dev. Non-root user.
|
|
55
|
+
# Build: docker compose -f docker-compose.yml -f docker-compose.dev.yml up
|
|
56
|
+
# -----------------------------------------------------------------------------
|
|
57
|
+
FROM base AS development
|
|
58
|
+
WORKDIR /app
|
|
59
|
+
ENV NODE_ENV=development
|
|
60
|
+
COPY package.json package-lock.json ./
|
|
61
|
+
RUN npm ci
|
|
62
|
+
COPY tsconfig.json ./
|
|
63
|
+
COPY src/ ./src/
|
|
64
|
+
RUN addgroup -g 1001 -S sa4e && \
|
|
65
|
+
adduser -S sa4e -u 1001 -G sa4e && \
|
|
66
|
+
chown -R sa4e:sa4e /app
|
|
67
|
+
USER sa4e
|
|
68
|
+
EXPOSE 48721
|
|
69
|
+
CMD ["npx", "tsx", "watch", "--ignore", ".code-intel/**", "src/index.ts"]
|
|
70
|
+
|
|
71
|
+
# -----------------------------------------------------------------------------
|
|
72
|
+
# Test stage — runs the vitest unit suite inside the container (non-root).
|
|
73
|
+
# Build: docker build --target test -t sa4e-backend-test .
|
|
74
|
+
# Run: docker run --rm sa4e-backend-test
|
|
75
|
+
# -----------------------------------------------------------------------------
|
|
76
|
+
FROM base AS test
|
|
77
|
+
WORKDIR /app
|
|
78
|
+
ENV NODE_ENV=test
|
|
79
|
+
COPY package.json package-lock.json ./
|
|
80
|
+
RUN npm ci
|
|
81
|
+
COPY tsconfig.json ./
|
|
82
|
+
COPY src/ ./src/
|
|
83
|
+
COPY tests/ ./tests/
|
|
84
|
+
COPY .env.test ./
|
|
85
|
+
RUN addgroup -g 1001 -S sa4e && \
|
|
86
|
+
adduser -S sa4e -u 1001 -G sa4e && \
|
|
87
|
+
chown -R sa4e:sa4e /app
|
|
88
|
+
USER sa4e
|
|
89
|
+
CMD ["npx", "vitest", "run"]
|
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
9
|
-
<img src="https://img.shields.io/badge/version-1.
|
|
9
|
+
<img src="https://img.shields.io/badge/version-1.41.0-blue?style=for-the-badge" alt="Version">
|
|
10
10
|
<img src="https://img.shields.io/badge/tools-66+-teal?style=for-the-badge" alt="Tools">
|
|
11
11
|
<img src="https://img.shields.io/badge/node-%3E%3D18-green?style=for-the-badge" alt="Node">
|
|
12
12
|
</p>
|
|
@@ -38,7 +38,7 @@ Server starts at **http://localhost:48721**. Verify it's running:
|
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
40
|
curl http://localhost:48721/health
|
|
41
|
-
# → {"status":"healthy","version":"1.
|
|
41
|
+
# → {"status":"healthy","version":"1.41.0","uptime":5,"tools_loaded":52}
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
### Development Mode (auto-reload)
|
|
@@ -233,7 +233,8 @@ The embedding model is expected at `.code-intel/models/model.onnx`. Download it:
|
|
|
233
233
|
|
|
234
234
|
| Version | Date | Ticket | Changes |
|
|
235
235
|
|---------|------|--------|---------|
|
|
236
|
-
| 1.
|
|
236
|
+
| 1.38.0 | 2026-08-25 | SA4E-214 | Extension-driven schema creation for Pega rule types. Dual-strategy harness analysis (HarnessParser + LlmSectionExtractor fallback for stream-rendered harnesses), new `/api/v1/pega/schema/{analyze,store,find,update}` endpoints, schema-guided code enrichment. Fixed: TaskWorker delegates CODE_ENRICHMENT to CodeEnrichmentHandler (Pega flow summary/pseudo_code), enrichment percent Math.floor, admin static vendor asset MIME type. Backend 2634 tests ✓. |
|
|
237
|
+
| 1.37.2 | 2026-08-24 | — | Proxy bug fix: global-fetch-patch defensive fallback for curl/powershell mode, cookie jar persistence, followRedirects, workspace-scoped config, PowerShell CLM compat, pwsh binary. SA4E-204/205/206 parallel orchestration docs. |
|
|
237
238
|
| 1.37.0 | 2026-08-24 | SA4E-193 | Config Commands — 4 slash commands (/create-new-agent, hook, steering, skill) with ValidationGate schema enforcement (closes GAP-01, fixes D-1..D-7), offline-safe template fallback. Consolidated release carrying SA4E-190 content. Ext tests 1621 ✓ · Backend 2621 ✓ |
|
|
238
239
|
| 1.35.0 | 2026-08-23 | SA4E-190 | SDLC Pipeline Autonomy L3 Reset & Rebuild. New backend module `backend/src/sa4e-190/` with PipelineController, StatusManager, repository, unit/integration/e2e tests. Merge origin/main into dnguyenminh/SA4E-190, lint fixes applied. Tests PASS. |
|
|
239
240
|
| 1.33.1 | 2026-08-23 | SA4E-189 | Extension hot-reload for .code-intel agentics — no backend changes. ChatStateManager watches agents/steering/hooks/skills with 300ms debounce, recursive patterns. Unit+e2e tests added. |
|
package/dist/admin/db/core.js
CHANGED
|
@@ -30,6 +30,12 @@ export function getActiveEngine() {
|
|
|
30
30
|
if (!fs.existsSync(configPath))
|
|
31
31
|
return 'sqlite';
|
|
32
32
|
const raw = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
33
|
+
// Source of truth: per-engine `active` flag. Fallback to legacy activeEngine.
|
|
34
|
+
const engines = raw.engines || {};
|
|
35
|
+
for (const e of ['postgresql', 'mysql', 'sqlite']) {
|
|
36
|
+
if (engines[e] && engines[e].active === true)
|
|
37
|
+
return e;
|
|
38
|
+
}
|
|
33
39
|
return raw.activeEngine || 'sqlite';
|
|
34
40
|
}
|
|
35
41
|
catch {
|
|
@@ -43,10 +49,18 @@ export function getActiveDbConfig() {
|
|
|
43
49
|
if (!fs.existsSync(configPath))
|
|
44
50
|
return { engine: 'sqlite', dbPath: DB_PATH };
|
|
45
51
|
const raw = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
46
|
-
|
|
52
|
+
const engines = raw.engines || {};
|
|
53
|
+
let engine = raw.activeEngine;
|
|
54
|
+
for (const e of ['postgresql', 'mysql', 'sqlite']) {
|
|
55
|
+
if (engines[e] && engines[e].active === true) {
|
|
56
|
+
engine = e;
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (engine === 'sqlite' || !engine) {
|
|
47
61
|
return { engine: 'sqlite', dbPath: DB_PATH };
|
|
48
62
|
}
|
|
49
|
-
return { engine
|
|
63
|
+
return { engine, ...engines[engine] };
|
|
50
64
|
}
|
|
51
65
|
catch {
|
|
52
66
|
return { engine: 'sqlite', dbPath: DB_PATH };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/admin/db/core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAEvF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AAEvD,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;AAEjD,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;AAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;AAClE,4DAA4D;AAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;AAE5D,mFAAmF;AACnF,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACxD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,QAAQ,CAAC;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC,YAAY,IAAI,QAAQ,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,QAAQ,CAAC;IAAC,CAAC;AAC9B,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,iBAAiB;IAC/B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACxD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,QAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACtF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,IAAI,GAAG,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/admin/db/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* SA4E-6 — Sandbox module configuration schema.
|
|
4
|
+
* Loaded as `config.sandbox` from the unified backend config (see config/index.ts).
|
|
5
|
+
* All values have safe defaults; do NOT hardcode these in executor code — read from here.
|
|
6
|
+
*/
|
|
7
|
+
export declare const DEFAULT_MOUNT_EXCLUDE_PATTERNS: string[];
|
|
8
|
+
export declare const DEFAULT_SANDBOX_RESOURCES: {
|
|
9
|
+
readonly memory: "512m";
|
|
10
|
+
readonly cpu: "1.0";
|
|
11
|
+
readonly disk: "1g";
|
|
12
|
+
readonly pidsLimit: 100;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Resolve the default sandbox execution mode for the current host at runtime.
|
|
16
|
+
*
|
|
17
|
+
* Full container isolation (cgroup memory/pid limits + `NetworkMode: 'none'`
|
|
18
|
+
* enforcement) is only reliable on a native Linux Docker Engine. Docker Desktop for
|
|
19
|
+
* Windows/macOS runs containers inside a WSL2/LinuxKit VM that ignores
|
|
20
|
+
* `NetworkMode: 'none'` at the network layer and enforces memory limits at the VM
|
|
21
|
+
* kernel layer, so those isolation guarantees do not hold there.
|
|
22
|
+
*
|
|
23
|
+
* Resolution rule (read `process.platform` + env var at runtime — do NOT hardcode):
|
|
24
|
+
* - Linux host → `docker`
|
|
25
|
+
* - Non-Linux host (Win/macOS) → `local`, UNLESS `SANDBOX_FULL_ISOLATION=true`
|
|
26
|
+
* is set (then `docker`)
|
|
27
|
+
*
|
|
28
|
+
* This is invoked lazily via zod's function-default, so the platform/env are read at
|
|
29
|
+
* parse time rather than import time.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveDefaultSandboxMode(): 'docker' | 'local';
|
|
32
|
+
export declare const SandboxConfigSchema: z.ZodObject<{
|
|
33
|
+
defaultMode: z.ZodDefault<z.ZodEnum<["docker", "local"]>>;
|
|
34
|
+
fallbackToLocal: z.ZodDefault<z.ZodBoolean>;
|
|
35
|
+
maxSessions: z.ZodDefault<z.ZodNumber>;
|
|
36
|
+
defaultTtl: z.ZodDefault<z.ZodNumber>;
|
|
37
|
+
defaultImage: z.ZodDefault<z.ZodString>;
|
|
38
|
+
reaperIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
39
|
+
maxOutputBytes: z.ZodDefault<z.ZodNumber>;
|
|
40
|
+
commandTimeoutDefault: z.ZodDefault<z.ZodNumber>;
|
|
41
|
+
commandTimeoutMax: z.ZodDefault<z.ZodNumber>;
|
|
42
|
+
mountExcludePatterns: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
43
|
+
defaultResources: z.ZodDefault<z.ZodObject<{
|
|
44
|
+
memory: z.ZodDefault<z.ZodString>;
|
|
45
|
+
cpu: z.ZodDefault<z.ZodString>;
|
|
46
|
+
disk: z.ZodDefault<z.ZodString>;
|
|
47
|
+
pidsLimit: z.ZodDefault<z.ZodNumber>;
|
|
48
|
+
}, "strip", z.ZodTypeAny, {
|
|
49
|
+
memory: string;
|
|
50
|
+
cpu: string;
|
|
51
|
+
disk: string;
|
|
52
|
+
pidsLimit: number;
|
|
53
|
+
}, {
|
|
54
|
+
memory?: string | undefined;
|
|
55
|
+
cpu?: string | undefined;
|
|
56
|
+
disk?: string | undefined;
|
|
57
|
+
pidsLimit?: number | undefined;
|
|
58
|
+
}>>;
|
|
59
|
+
dockerSocket: z.ZodOptional<z.ZodString>;
|
|
60
|
+
}, "strip", z.ZodTypeAny, {
|
|
61
|
+
defaultMode: "docker" | "local";
|
|
62
|
+
fallbackToLocal: boolean;
|
|
63
|
+
maxSessions: number;
|
|
64
|
+
defaultTtl: number;
|
|
65
|
+
defaultImage: string;
|
|
66
|
+
reaperIntervalMs: number;
|
|
67
|
+
maxOutputBytes: number;
|
|
68
|
+
commandTimeoutDefault: number;
|
|
69
|
+
commandTimeoutMax: number;
|
|
70
|
+
mountExcludePatterns: string[];
|
|
71
|
+
defaultResources: {
|
|
72
|
+
memory: string;
|
|
73
|
+
cpu: string;
|
|
74
|
+
disk: string;
|
|
75
|
+
pidsLimit: number;
|
|
76
|
+
};
|
|
77
|
+
dockerSocket?: string | undefined;
|
|
78
|
+
}, {
|
|
79
|
+
defaultMode?: "docker" | "local" | undefined;
|
|
80
|
+
fallbackToLocal?: boolean | undefined;
|
|
81
|
+
maxSessions?: number | undefined;
|
|
82
|
+
defaultTtl?: number | undefined;
|
|
83
|
+
defaultImage?: string | undefined;
|
|
84
|
+
reaperIntervalMs?: number | undefined;
|
|
85
|
+
maxOutputBytes?: number | undefined;
|
|
86
|
+
commandTimeoutDefault?: number | undefined;
|
|
87
|
+
commandTimeoutMax?: number | undefined;
|
|
88
|
+
mountExcludePatterns?: string[] | undefined;
|
|
89
|
+
defaultResources?: {
|
|
90
|
+
memory?: string | undefined;
|
|
91
|
+
cpu?: string | undefined;
|
|
92
|
+
disk?: string | undefined;
|
|
93
|
+
pidsLimit?: number | undefined;
|
|
94
|
+
} | undefined;
|
|
95
|
+
dockerSocket?: string | undefined;
|
|
96
|
+
}>;
|
|
97
|
+
export type SandboxConfig = z.infer<typeof SandboxConfigSchema>;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* SA4E-6 — Sandbox module configuration schema.
|
|
4
|
+
* Loaded as `config.sandbox` from the unified backend config (see config/index.ts).
|
|
5
|
+
* All values have safe defaults; do NOT hardcode these in executor code — read from here.
|
|
6
|
+
*/
|
|
7
|
+
export const DEFAULT_MOUNT_EXCLUDE_PATTERNS = [
|
|
8
|
+
'.env',
|
|
9
|
+
'.env.*',
|
|
10
|
+
'*.pem',
|
|
11
|
+
'*.key',
|
|
12
|
+
'*.p12',
|
|
13
|
+
'.git/credentials',
|
|
14
|
+
'.ssh/',
|
|
15
|
+
'.aws/',
|
|
16
|
+
'.docker/config.json',
|
|
17
|
+
'node_modules/.cache/*/secrets*',
|
|
18
|
+
];
|
|
19
|
+
export const DEFAULT_SANDBOX_RESOURCES = {
|
|
20
|
+
memory: '512m',
|
|
21
|
+
cpu: '1.0',
|
|
22
|
+
disk: '1g',
|
|
23
|
+
pidsLimit: 100,
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Resolve the default sandbox execution mode for the current host at runtime.
|
|
27
|
+
*
|
|
28
|
+
* Full container isolation (cgroup memory/pid limits + `NetworkMode: 'none'`
|
|
29
|
+
* enforcement) is only reliable on a native Linux Docker Engine. Docker Desktop for
|
|
30
|
+
* Windows/macOS runs containers inside a WSL2/LinuxKit VM that ignores
|
|
31
|
+
* `NetworkMode: 'none'` at the network layer and enforces memory limits at the VM
|
|
32
|
+
* kernel layer, so those isolation guarantees do not hold there.
|
|
33
|
+
*
|
|
34
|
+
* Resolution rule (read `process.platform` + env var at runtime — do NOT hardcode):
|
|
35
|
+
* - Linux host → `docker`
|
|
36
|
+
* - Non-Linux host (Win/macOS) → `local`, UNLESS `SANDBOX_FULL_ISOLATION=true`
|
|
37
|
+
* is set (then `docker`)
|
|
38
|
+
*
|
|
39
|
+
* This is invoked lazily via zod's function-default, so the platform/env are read at
|
|
40
|
+
* parse time rather than import time.
|
|
41
|
+
*/
|
|
42
|
+
export function resolveDefaultSandboxMode() {
|
|
43
|
+
const fullIsolation = process.env.SANDBOX_FULL_ISOLATION === 'true' || process.platform === 'linux';
|
|
44
|
+
return fullIsolation ? 'docker' : 'local';
|
|
45
|
+
}
|
|
46
|
+
export const SandboxConfigSchema = z.object({
|
|
47
|
+
defaultMode: z.enum(['docker', 'local']).default(resolveDefaultSandboxMode),
|
|
48
|
+
fallbackToLocal: z.boolean().default(true),
|
|
49
|
+
maxSessions: z.number().int().positive().default(5),
|
|
50
|
+
defaultTtl: z.number().int().positive().default(1800),
|
|
51
|
+
defaultImage: z.string().default('node:20'),
|
|
52
|
+
reaperIntervalMs: z.number().int().positive().default(60000),
|
|
53
|
+
maxOutputBytes: z.number().int().positive().default(1048576),
|
|
54
|
+
commandTimeoutDefault: z.number().int().positive().default(300),
|
|
55
|
+
commandTimeoutMax: z.number().int().positive().default(600),
|
|
56
|
+
mountExcludePatterns: z.array(z.string()).default(DEFAULT_MOUNT_EXCLUDE_PATTERNS),
|
|
57
|
+
defaultResources: z
|
|
58
|
+
.object({
|
|
59
|
+
memory: z.string().default('512m'),
|
|
60
|
+
cpu: z.string().default('1.0'),
|
|
61
|
+
disk: z.string().default('1g'),
|
|
62
|
+
pidsLimit: z.number().int().positive().default(100),
|
|
63
|
+
})
|
|
64
|
+
.default(DEFAULT_SANDBOX_RESOURCES),
|
|
65
|
+
dockerSocket: z.string().optional(),
|
|
66
|
+
});
|
|
67
|
+
//# sourceMappingURL=SandboxConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxConfig.js","sourceRoot":"","sources":["../../src/config/SandboxConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAa;IACtD,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;IACP,OAAO;IACP,kBAAkB;IAClB,OAAO;IACP,OAAO;IACP,qBAAqB;IACrB,gCAAgC;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,GAAG;CACN,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,yBAAyB;IACvC,MAAM,aAAa,GACjB,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,MAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAChF,OAAO,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC3E,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACrD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAC3C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5D,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/D,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC3D,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC;IACjF,gBAAgB,EAAE,CAAC;SAChB,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;KACpD,CAAC;SACD,OAAO,CAAC,yBAAyB,CAAC;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC"}
|
package/dist/config/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
export declare const DEFAULT_EXTENSIONS: string[];
|
|
2
3
|
declare const UnifiedConfigSchema: z.ZodObject<{
|
|
3
4
|
port: z.ZodDefault<z.ZodNumber>;
|
|
4
5
|
host: z.ZodDefault<z.ZodString>;
|
|
@@ -20,6 +21,71 @@ declare const UnifiedConfigSchema: z.ZodObject<{
|
|
|
20
21
|
orchestrationConfigPath: z.ZodString;
|
|
21
22
|
excludePatterns: z.ZodArray<z.ZodString, "many">;
|
|
22
23
|
includeExtensions: z.ZodArray<z.ZodString, "many">;
|
|
24
|
+
sandbox: z.ZodObject<{
|
|
25
|
+
defaultMode: z.ZodDefault<z.ZodEnum<["docker", "local"]>>;
|
|
26
|
+
fallbackToLocal: z.ZodDefault<z.ZodBoolean>;
|
|
27
|
+
maxSessions: z.ZodDefault<z.ZodNumber>;
|
|
28
|
+
defaultTtl: z.ZodDefault<z.ZodNumber>;
|
|
29
|
+
defaultImage: z.ZodDefault<z.ZodString>;
|
|
30
|
+
reaperIntervalMs: z.ZodDefault<z.ZodNumber>;
|
|
31
|
+
maxOutputBytes: z.ZodDefault<z.ZodNumber>;
|
|
32
|
+
commandTimeoutDefault: z.ZodDefault<z.ZodNumber>;
|
|
33
|
+
commandTimeoutMax: z.ZodDefault<z.ZodNumber>;
|
|
34
|
+
mountExcludePatterns: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
35
|
+
defaultResources: z.ZodDefault<z.ZodObject<{
|
|
36
|
+
memory: z.ZodDefault<z.ZodString>;
|
|
37
|
+
cpu: z.ZodDefault<z.ZodString>;
|
|
38
|
+
disk: z.ZodDefault<z.ZodString>;
|
|
39
|
+
pidsLimit: z.ZodDefault<z.ZodNumber>;
|
|
40
|
+
}, "strip", z.ZodTypeAny, {
|
|
41
|
+
memory: string;
|
|
42
|
+
cpu: string;
|
|
43
|
+
disk: string;
|
|
44
|
+
pidsLimit: number;
|
|
45
|
+
}, {
|
|
46
|
+
memory?: string | undefined;
|
|
47
|
+
cpu?: string | undefined;
|
|
48
|
+
disk?: string | undefined;
|
|
49
|
+
pidsLimit?: number | undefined;
|
|
50
|
+
}>>;
|
|
51
|
+
dockerSocket: z.ZodOptional<z.ZodString>;
|
|
52
|
+
}, "strip", z.ZodTypeAny, {
|
|
53
|
+
defaultMode: "docker" | "local";
|
|
54
|
+
fallbackToLocal: boolean;
|
|
55
|
+
maxSessions: number;
|
|
56
|
+
defaultTtl: number;
|
|
57
|
+
defaultImage: string;
|
|
58
|
+
reaperIntervalMs: number;
|
|
59
|
+
maxOutputBytes: number;
|
|
60
|
+
commandTimeoutDefault: number;
|
|
61
|
+
commandTimeoutMax: number;
|
|
62
|
+
mountExcludePatterns: string[];
|
|
63
|
+
defaultResources: {
|
|
64
|
+
memory: string;
|
|
65
|
+
cpu: string;
|
|
66
|
+
disk: string;
|
|
67
|
+
pidsLimit: number;
|
|
68
|
+
};
|
|
69
|
+
dockerSocket?: string | undefined;
|
|
70
|
+
}, {
|
|
71
|
+
defaultMode?: "docker" | "local" | undefined;
|
|
72
|
+
fallbackToLocal?: boolean | undefined;
|
|
73
|
+
maxSessions?: number | undefined;
|
|
74
|
+
defaultTtl?: number | undefined;
|
|
75
|
+
defaultImage?: string | undefined;
|
|
76
|
+
reaperIntervalMs?: number | undefined;
|
|
77
|
+
maxOutputBytes?: number | undefined;
|
|
78
|
+
commandTimeoutDefault?: number | undefined;
|
|
79
|
+
commandTimeoutMax?: number | undefined;
|
|
80
|
+
mountExcludePatterns?: string[] | undefined;
|
|
81
|
+
defaultResources?: {
|
|
82
|
+
memory?: string | undefined;
|
|
83
|
+
cpu?: string | undefined;
|
|
84
|
+
disk?: string | undefined;
|
|
85
|
+
pidsLimit?: number | undefined;
|
|
86
|
+
} | undefined;
|
|
87
|
+
dockerSocket?: string | undefined;
|
|
88
|
+
}>;
|
|
23
89
|
}, "strip", z.ZodTypeAny, {
|
|
24
90
|
port: number;
|
|
25
91
|
host: string;
|
|
@@ -41,6 +107,25 @@ declare const UnifiedConfigSchema: z.ZodObject<{
|
|
|
41
107
|
orchestrationConfigPath: string;
|
|
42
108
|
excludePatterns: string[];
|
|
43
109
|
includeExtensions: string[];
|
|
110
|
+
sandbox: {
|
|
111
|
+
defaultMode: "docker" | "local";
|
|
112
|
+
fallbackToLocal: boolean;
|
|
113
|
+
maxSessions: number;
|
|
114
|
+
defaultTtl: number;
|
|
115
|
+
defaultImage: string;
|
|
116
|
+
reaperIntervalMs: number;
|
|
117
|
+
maxOutputBytes: number;
|
|
118
|
+
commandTimeoutDefault: number;
|
|
119
|
+
commandTimeoutMax: number;
|
|
120
|
+
mountExcludePatterns: string[];
|
|
121
|
+
defaultResources: {
|
|
122
|
+
memory: string;
|
|
123
|
+
cpu: string;
|
|
124
|
+
disk: string;
|
|
125
|
+
pidsLimit: number;
|
|
126
|
+
};
|
|
127
|
+
dockerSocket?: string | undefined;
|
|
128
|
+
};
|
|
44
129
|
}, {
|
|
45
130
|
workspace: string;
|
|
46
131
|
indexTempDir: string;
|
|
@@ -51,6 +136,25 @@ declare const UnifiedConfigSchema: z.ZodObject<{
|
|
|
51
136
|
orchestrationConfigPath: string;
|
|
52
137
|
excludePatterns: string[];
|
|
53
138
|
includeExtensions: string[];
|
|
139
|
+
sandbox: {
|
|
140
|
+
defaultMode?: "docker" | "local" | undefined;
|
|
141
|
+
fallbackToLocal?: boolean | undefined;
|
|
142
|
+
maxSessions?: number | undefined;
|
|
143
|
+
defaultTtl?: number | undefined;
|
|
144
|
+
defaultImage?: string | undefined;
|
|
145
|
+
reaperIntervalMs?: number | undefined;
|
|
146
|
+
maxOutputBytes?: number | undefined;
|
|
147
|
+
commandTimeoutDefault?: number | undefined;
|
|
148
|
+
commandTimeoutMax?: number | undefined;
|
|
149
|
+
mountExcludePatterns?: string[] | undefined;
|
|
150
|
+
defaultResources?: {
|
|
151
|
+
memory?: string | undefined;
|
|
152
|
+
cpu?: string | undefined;
|
|
153
|
+
disk?: string | undefined;
|
|
154
|
+
pidsLimit?: number | undefined;
|
|
155
|
+
} | undefined;
|
|
156
|
+
dockerSocket?: string | undefined;
|
|
157
|
+
};
|
|
54
158
|
port?: number | undefined;
|
|
55
159
|
host?: string | undefined;
|
|
56
160
|
onnxModelPath?: string | undefined;
|
package/dist/config/index.js
CHANGED
|
@@ -6,18 +6,23 @@ import * as crypto from 'crypto';
|
|
|
6
6
|
import { execSync } from 'child_process';
|
|
7
7
|
import * as os from 'os';
|
|
8
8
|
import pino from 'pino';
|
|
9
|
+
import { SandboxConfigSchema } from './SandboxConfig.js';
|
|
9
10
|
const logger = pino({ name: 'app-config' });
|
|
10
11
|
const DEFAULT_EXCLUDE = [
|
|
11
12
|
'node_modules', '.git', 'dist', 'build', '.gradle',
|
|
12
13
|
'.idea', '.vscode', '__pycache__', '.venv', 'target',
|
|
13
14
|
'.code-intel', 'coverage', '.next', '.nuxt',
|
|
14
15
|
];
|
|
15
|
-
const DEFAULT_EXTENSIONS = [
|
|
16
|
+
export const DEFAULT_EXTENSIONS = [
|
|
16
17
|
'.ts', '.tsx', '.js', '.jsx', '.kt', '.java', '.py',
|
|
17
18
|
'.go', '.rs', '.c', '.cpp', '.h', '.hpp', '.cs',
|
|
18
19
|
'.rb', '.php', '.swift', '.scala', '.sql', '.sh',
|
|
19
20
|
'.yaml', '.yml', '.json', '.toml', '.gradle.kts',
|
|
20
21
|
'.cls', '.trigger', '.pega',
|
|
22
|
+
// ---- SA4E-223: new Salesforce simple extensions (Gate 2) ----
|
|
23
|
+
'.apex', '.soql', '.page', '.component', '.cmp', '.app', '.evt', '.intf', '.tokens',
|
|
24
|
+
// ---- SA4E-225: un-skip PowerShell ----
|
|
25
|
+
'.ps1',
|
|
21
26
|
];
|
|
22
27
|
const UnifiedConfigSchema = z.object({
|
|
23
28
|
port: z.number().min(1024).max(65535).default(48721),
|
|
@@ -40,6 +45,7 @@ const UnifiedConfigSchema = z.object({
|
|
|
40
45
|
orchestrationConfigPath: z.string(),
|
|
41
46
|
excludePatterns: z.array(z.string()),
|
|
42
47
|
includeExtensions: z.array(z.string()),
|
|
48
|
+
sandbox: SandboxConfigSchema,
|
|
43
49
|
});
|
|
44
50
|
export function getWorkspacePath() {
|
|
45
51
|
const args = process.argv.slice(2);
|
|
@@ -155,6 +161,7 @@ export function loadConfig(overrides) {
|
|
|
155
161
|
orchestrationConfigPath: process.env.CODE_INTEL_ORCHESTRATION || 'orchestration.json',
|
|
156
162
|
excludePatterns: fileConfig.excludePatterns ?? DEFAULT_EXCLUDE,
|
|
157
163
|
includeExtensions: fileConfig.includeExtensions ?? DEFAULT_EXTENSIONS,
|
|
164
|
+
sandbox: fileConfig.sandbox ?? {},
|
|
158
165
|
...overrides,
|
|
159
166
|
};
|
|
160
167
|
return UnifiedConfigSchema.parse(raw);
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;AAE5C,MAAM,eAAe,GAAG;IACtB,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IAClD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ;IACpD,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;IACnD,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK;IAC/C,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK;IAChD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa;IAChD,MAAM,EAAE,UAAU,EAAE,OAAO;IAC3B,gEAAgE;IAChE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IACnF,yCAAyC;IACzC,MAAM;CACP,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IACnC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACpE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACnD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACtC,OAAO,EAAE,mBAAmB;CAC7B,CAAC,CAAC;AAMH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC/C,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC1C,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACtD,IAAI,OAAO;QAAE,OAAO,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW;IAClB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/C,IAAI,OAAO;QAAE,OAAO,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,UAAkB;IACxC,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,2BAA2B,UAAU,GAAG,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,OAAO,CAAC,GAAW,EAAE,QAAiB;IAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACvC,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;AACrD,CAAC;AAED,SAAS,MAAM,CAAC,GAAW,EAAE,QAAgB;IAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3C,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB,EAAE,SAAkC;IAC5E,IAAI,SAAS,EAAE,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,SAAS,CAAC;IAC1F,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAChD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QAC/E,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;YACtE,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC/D,OAAO,OAAO,CAAC,SAAS,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAAC,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACrH,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,8BAA8B,CAAC,CAAC;IAAC,CAAC;IACxE,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,SAAS,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;IACzD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAAkC;IAC3D,MAAM,SAAS,GAAG,SAAS,EAAE,SAAS,IAAI,gBAAgB,EAAE,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,aAAa,CAAC;IACvE,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACjG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAE/E,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,WAAW,EAAE;QACnB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,SAAS;QAC9C,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,mBAAmB;QACvE,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,MAAM,CAAQ;QAC7D,UAAU,EAAE,iBAAiB,EAAE;QAC/B,YAAY,EAAE,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC,YAAY,IAAI,IAAI,CAAC;QAC1E,eAAe,EAAE,MAAM,CAAC,qBAAqB,EAAE,UAAU,CAAC,eAAe,IAAI,GAAG,CAAC;QACjF,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,SAAS,IAAI,IAAI;QACpE,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,WAAW,IAAI,kBAAkB;QACxF,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,OAAO;QAC9C,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC;QAChD,SAAS;QACT,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC;QAC1F,MAAM;QACN,UAAU;QACV,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,UAAU;QACrD,uBAAuB,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,oBAAoB;QACrF,eAAe,EAAE,UAAU,CAAC,eAAe,IAAI,eAAe;QAC9D,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,IAAI,kBAAkB;QACrE,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;QACjC,GAAG,SAAS;KACb,CAAC;IAEF,OAAO,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAqB,EAAE,OAAsB;IACxE,IAAI,uBAAuB,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACrE,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,SAAS,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC1F,OAAO,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,uBAAuB;IAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAsB;IACvD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAClD,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,OAAO;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB;IACpC,OAAO,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -4,14 +4,23 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { DatabaseEngine } from '../adapters/DatabaseAdapter.js';
|
|
6
6
|
import type { DatabaseConnectionConfig } from '../factory/DatabaseAdapterFactory.js';
|
|
7
|
+
export interface ActiveEngineFlag {
|
|
8
|
+
/** Whether this engine is the currently active one. Exactly ONE engine must be true at a time. */
|
|
9
|
+
active: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface SqliteEngineConfig extends ActiveEngineFlag {
|
|
12
|
+
dbPath: string;
|
|
13
|
+
}
|
|
14
|
+
export interface PostgresEngineConfig extends ConnectionParams, ActiveEngineFlag {
|
|
15
|
+
}
|
|
16
|
+
export interface MysqlEngineConfig extends ConnectionParams, ActiveEngineFlag {
|
|
17
|
+
}
|
|
7
18
|
export interface DatabaseJsonConfig {
|
|
8
19
|
activeEngine: DatabaseEngine;
|
|
9
20
|
engines: {
|
|
10
|
-
sqlite:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
postgresql?: ConnectionParams;
|
|
14
|
-
mysql?: ConnectionParams;
|
|
21
|
+
sqlite: SqliteEngineConfig;
|
|
22
|
+
postgresql?: PostgresEngineConfig;
|
|
23
|
+
mysql?: MysqlEngineConfig;
|
|
15
24
|
};
|
|
16
25
|
migration: {
|
|
17
26
|
lastMigration: string | null;
|
|
@@ -38,6 +47,11 @@ export declare class DatabaseConfigService {
|
|
|
38
47
|
load(): DatabaseJsonConfig;
|
|
39
48
|
save(config: DatabaseJsonConfig): void;
|
|
40
49
|
getActiveConfig(): DatabaseConnectionConfig;
|
|
50
|
+
/**
|
|
51
|
+
* Determine the active engine from the per-engine `active` flag (source of truth).
|
|
52
|
+
* Falls back to the legacy `activeEngine` string for backward compatibility.
|
|
53
|
+
*/
|
|
54
|
+
private resolveActiveEngine;
|
|
41
55
|
setActiveEngine(engine: DatabaseEngine, params?: ConnectionParams): void;
|
|
42
56
|
private defaultConfig;
|
|
43
57
|
private getKey;
|