@rbalchii/anchor-engine 4.7.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/LICENSE +609 -0
- package/README.md +317 -0
- package/anchor.bat +5 -0
- package/docs/API.md +314 -0
- package/docs/DEPLOYMENT.md +448 -0
- package/docs/INDEX.md +226 -0
- package/docs/STAR_Whitepaper_Executive.md +216 -0
- package/docs/TROUBLESHOOTING.md +535 -0
- package/docs/archive/GIT_BACKUP_VERIFICATION.md +297 -0
- package/docs/archive/adoption-guide.md +264 -0
- package/docs/archive/adoption-preparation.md +179 -0
- package/docs/archive/agent-harness-integration.md +227 -0
- package/docs/archive/api-reference.md +106 -0
- package/docs/archive/api_flows_diagram.md +118 -0
- package/docs/archive/architecture.md +410 -0
- package/docs/archive/architecture_diagram.md +174 -0
- package/docs/archive/broader-adoption-preparation.md +175 -0
- package/docs/archive/browser-paradigm-architecture.md +163 -0
- package/docs/archive/chat-integration.md +124 -0
- package/docs/archive/community-adoption-materials.md +103 -0
- package/docs/archive/community-adoption.md +147 -0
- package/docs/archive/comparison-with-siloed-solutions.md +192 -0
- package/docs/archive/comprehensive-docs.md +156 -0
- package/docs/archive/data_flow_diagram.md +251 -0
- package/docs/archive/enhancement-implementation-summary.md +146 -0
- package/docs/archive/evolution-summary.md +141 -0
- package/docs/archive/ingestion_pipeline_diagram.md +198 -0
- package/docs/archive/native-module-profiling-results.md +135 -0
- package/docs/archive/positioning-document.md +158 -0
- package/docs/archive/positioning.md +175 -0
- package/docs/archive/query-builder-documentation.md +218 -0
- package/docs/archive/quick-reference.md +40 -0
- package/docs/archive/quickstart.md +63 -0
- package/docs/archive/relationship-narrative-discovery.md +141 -0
- package/docs/archive/search-logic-improvement-plan.md +336 -0
- package/docs/archive/search_architecture_diagram.md +212 -0
- package/docs/archive/semantic-architecture-guide.md +97 -0
- package/docs/archive/sequence-diagrams.md +128 -0
- package/docs/archive/system_components_diagram.md +296 -0
- package/docs/archive/test-framework-integration.md +109 -0
- package/docs/archive/testing-framework-documentation.md +397 -0
- package/docs/archive/testing-framework-summary.md +121 -0
- package/docs/archive/testing-framework.md +377 -0
- package/docs/archive/ui-architecture.md +75 -0
- package/docs/arxiv/BIBLIOGRAPHY.bib +145 -0
- package/docs/arxiv/RELATED_WORK.tex +39 -0
- package/docs/arxiv/compile.bat +48 -0
- package/docs/arxiv/joss_response.md +33 -0
- package/docs/arxiv/prepare-submission.bat +46 -0
- package/docs/arxiv/review.md +128 -0
- package/docs/arxiv/star-whitepaper.tex +657 -0
- package/docs/code-patterns.md +289 -0
- package/docs/whitepaper.md +445 -0
- package/engine/dist/agent/runtime.d.ts +41 -0
- package/engine/dist/agent/runtime.d.ts.map +1 -0
- package/engine/dist/agent/runtime.js +73 -0
- package/engine/dist/agent/runtime.js.map +1 -0
- package/engine/dist/commands/audit-tags.d.ts +14 -0
- package/engine/dist/commands/audit-tags.d.ts.map +1 -0
- package/engine/dist/commands/audit-tags.js +180 -0
- package/engine/dist/commands/audit-tags.js.map +1 -0
- package/engine/dist/commands/distill.d.ts +19 -0
- package/engine/dist/commands/distill.d.ts.map +1 -0
- package/engine/dist/commands/distill.js +114 -0
- package/engine/dist/commands/distill.js.map +1 -0
- package/engine/dist/commands/generate-synonyms.d.ts +14 -0
- package/engine/dist/commands/generate-synonyms.d.ts.map +1 -0
- package/engine/dist/commands/generate-synonyms.js +91 -0
- package/engine/dist/commands/generate-synonyms.js.map +1 -0
- package/engine/dist/config/index.d.ts +115 -0
- package/engine/dist/config/index.d.ts.map +1 -0
- package/engine/dist/config/index.js +326 -0
- package/engine/dist/config/index.js.map +1 -0
- package/engine/dist/config/max-recall-config.d.ts +102 -0
- package/engine/dist/config/max-recall-config.d.ts.map +1 -0
- package/engine/dist/config/max-recall-config.js +102 -0
- package/engine/dist/config/max-recall-config.js.map +1 -0
- package/engine/dist/config/paths.d.ts +40 -0
- package/engine/dist/config/paths.d.ts.map +1 -0
- package/engine/dist/config/paths.js +49 -0
- package/engine/dist/config/paths.js.map +1 -0
- package/engine/dist/core/batch.d.ts +19 -0
- package/engine/dist/core/batch.d.ts.map +1 -0
- package/engine/dist/core/batch.js +37 -0
- package/engine/dist/core/batch.js.map +1 -0
- package/engine/dist/core/db.d.ts +58 -0
- package/engine/dist/core/db.d.ts.map +1 -0
- package/engine/dist/core/db.js +563 -0
- package/engine/dist/core/db.js.map +1 -0
- package/engine/dist/core/inference/ChatWorker.d.ts +2 -0
- package/engine/dist/core/inference/ChatWorker.d.ts.map +1 -0
- package/engine/dist/core/inference/ChatWorker.js +28 -0
- package/engine/dist/core/inference/ChatWorker.js.map +1 -0
- package/engine/dist/core/inference/context_manager.d.ts +49 -0
- package/engine/dist/core/inference/context_manager.d.ts.map +1 -0
- package/engine/dist/core/inference/context_manager.js +199 -0
- package/engine/dist/core/inference/context_manager.js.map +1 -0
- package/engine/dist/core/inference/llamaLoaderWorker.d.ts +2 -0
- package/engine/dist/core/inference/llamaLoaderWorker.d.ts.map +1 -0
- package/engine/dist/core/inference/llamaLoaderWorker.js +23 -0
- package/engine/dist/core/inference/llamaLoaderWorker.js.map +1 -0
- package/engine/dist/core/vector.d.ts +40 -0
- package/engine/dist/core/vector.d.ts.map +1 -0
- package/engine/dist/core/vector.js +167 -0
- package/engine/dist/core/vector.js.map +1 -0
- package/engine/dist/index.d.ts +4 -0
- package/engine/dist/index.d.ts.map +1 -0
- package/engine/dist/index.js +400 -0
- package/engine/dist/index.js.map +1 -0
- package/engine/dist/middleware/auth.d.ts +14 -0
- package/engine/dist/middleware/auth.d.ts.map +1 -0
- package/engine/dist/middleware/auth.js +44 -0
- package/engine/dist/middleware/auth.js.map +1 -0
- package/engine/dist/middleware/request-tracing.d.ts +29 -0
- package/engine/dist/middleware/request-tracing.d.ts.map +1 -0
- package/engine/dist/middleware/request-tracing.js +115 -0
- package/engine/dist/middleware/request-tracing.js.map +1 -0
- package/engine/dist/middleware/validate.d.ts +30 -0
- package/engine/dist/middleware/validate.d.ts.map +1 -0
- package/engine/dist/middleware/validate.js +117 -0
- package/engine/dist/middleware/validate.js.map +1 -0
- package/engine/dist/native/index.d.ts +106 -0
- package/engine/dist/native/index.d.ts.map +1 -0
- package/engine/dist/native/index.js +230 -0
- package/engine/dist/native/index.js.map +1 -0
- package/engine/dist/native/types.d.ts +45 -0
- package/engine/dist/native/types.d.ts.map +1 -0
- package/engine/dist/native/types.js +6 -0
- package/engine/dist/native/types.js.map +1 -0
- package/engine/dist/profiling/atomization-profiling.d.ts +8 -0
- package/engine/dist/profiling/atomization-profiling.d.ts.map +1 -0
- package/engine/dist/profiling/atomization-profiling.js +108 -0
- package/engine/dist/profiling/atomization-profiling.js.map +1 -0
- package/engine/dist/profiling/bottleneck-identification.d.ts +8 -0
- package/engine/dist/profiling/bottleneck-identification.d.ts.map +1 -0
- package/engine/dist/profiling/bottleneck-identification.js +249 -0
- package/engine/dist/profiling/bottleneck-identification.js.map +1 -0
- package/engine/dist/profiling/content-sanitization-profiling.d.ts +12 -0
- package/engine/dist/profiling/content-sanitization-profiling.d.ts.map +1 -0
- package/engine/dist/profiling/content-sanitization-profiling.js +266 -0
- package/engine/dist/profiling/content-sanitization-profiling.js.map +1 -0
- package/engine/dist/profiling/simhash-profiling.d.ts +11 -0
- package/engine/dist/profiling/simhash-profiling.d.ts.map +1 -0
- package/engine/dist/profiling/simhash-profiling.js +168 -0
- package/engine/dist/profiling/simhash-profiling.js.map +1 -0
- package/engine/dist/routes/api.d.ts +9 -0
- package/engine/dist/routes/api.d.ts.map +1 -0
- package/engine/dist/routes/api.js +37 -0
- package/engine/dist/routes/api.js.map +1 -0
- package/engine/dist/routes/enhanced-api.d.ts +9 -0
- package/engine/dist/routes/enhanced-api.d.ts.map +1 -0
- package/engine/dist/routes/enhanced-api.js +139 -0
- package/engine/dist/routes/enhanced-api.js.map +1 -0
- package/engine/dist/routes/health.d.ts +8 -0
- package/engine/dist/routes/health.d.ts.map +1 -0
- package/engine/dist/routes/health.js +89 -0
- package/engine/dist/routes/health.js.map +1 -0
- package/engine/dist/routes/monitoring.d.ts +8 -0
- package/engine/dist/routes/monitoring.d.ts.map +1 -0
- package/engine/dist/routes/monitoring.js +509 -0
- package/engine/dist/routes/monitoring.js.map +1 -0
- package/engine/dist/routes/v1/admin.d.ts +3 -0
- package/engine/dist/routes/v1/admin.d.ts.map +1 -0
- package/engine/dist/routes/v1/admin.js +261 -0
- package/engine/dist/routes/v1/admin.js.map +1 -0
- package/engine/dist/routes/v1/atoms.d.ts +3 -0
- package/engine/dist/routes/v1/atoms.d.ts.map +1 -0
- package/engine/dist/routes/v1/atoms.js +172 -0
- package/engine/dist/routes/v1/atoms.js.map +1 -0
- package/engine/dist/routes/v1/backup.d.ts +3 -0
- package/engine/dist/routes/v1/backup.d.ts.map +1 -0
- package/engine/dist/routes/v1/backup.js +100 -0
- package/engine/dist/routes/v1/backup.js.map +1 -0
- package/engine/dist/routes/v1/git.d.ts +3 -0
- package/engine/dist/routes/v1/git.d.ts.map +1 -0
- package/engine/dist/routes/v1/git.js +316 -0
- package/engine/dist/routes/v1/git.js.map +1 -0
- package/engine/dist/routes/v1/ingest.d.ts +3 -0
- package/engine/dist/routes/v1/ingest.d.ts.map +1 -0
- package/engine/dist/routes/v1/ingest.js +66 -0
- package/engine/dist/routes/v1/ingest.js.map +1 -0
- package/engine/dist/routes/v1/memory.d.ts +14 -0
- package/engine/dist/routes/v1/memory.d.ts.map +1 -0
- package/engine/dist/routes/v1/memory.js +87 -0
- package/engine/dist/routes/v1/memory.js.map +1 -0
- package/engine/dist/routes/v1/research.d.ts +3 -0
- package/engine/dist/routes/v1/research.d.ts.map +1 -0
- package/engine/dist/routes/v1/research.js +109 -0
- package/engine/dist/routes/v1/research.js.map +1 -0
- package/engine/dist/routes/v1/search.d.ts +3 -0
- package/engine/dist/routes/v1/search.d.ts.map +1 -0
- package/engine/dist/routes/v1/search.js +180 -0
- package/engine/dist/routes/v1/search.js.map +1 -0
- package/engine/dist/routes/v1/settings.d.ts +8 -0
- package/engine/dist/routes/v1/settings.d.ts.map +1 -0
- package/engine/dist/routes/v1/settings.js +211 -0
- package/engine/dist/routes/v1/settings.js.map +1 -0
- package/engine/dist/routes/v1/system.d.ts +3 -0
- package/engine/dist/routes/v1/system.d.ts.map +1 -0
- package/engine/dist/routes/v1/system.js +326 -0
- package/engine/dist/routes/v1/system.js.map +1 -0
- package/engine/dist/routes/v1/tags.d.ts +3 -0
- package/engine/dist/routes/v1/tags.d.ts.map +1 -0
- package/engine/dist/routes/v1/tags.js +102 -0
- package/engine/dist/routes/v1/tags.js.map +1 -0
- package/engine/dist/server-8080.d.ts +2 -0
- package/engine/dist/server-8080.d.ts.map +1 -0
- package/engine/dist/server-8080.js +74 -0
- package/engine/dist/server-8080.js.map +1 -0
- package/engine/dist/services/backup/backup-restore.d.ts +37 -0
- package/engine/dist/services/backup/backup-restore.d.ts.map +1 -0
- package/engine/dist/services/backup/backup-restore.js +385 -0
- package/engine/dist/services/backup/backup-restore.js.map +1 -0
- package/engine/dist/services/backup/backup.d.ts +14 -0
- package/engine/dist/services/backup/backup.d.ts.map +1 -0
- package/engine/dist/services/backup/backup.js +442 -0
- package/engine/dist/services/backup/backup.js.map +1 -0
- package/engine/dist/services/distillation/radial-distiller-v2.d.ts +127 -0
- package/engine/dist/services/distillation/radial-distiller-v2.d.ts.map +1 -0
- package/engine/dist/services/distillation/radial-distiller-v2.js +503 -0
- package/engine/dist/services/distillation/radial-distiller-v2.js.map +1 -0
- package/engine/dist/services/distillation/radial-distiller.d.ts +63 -0
- package/engine/dist/services/distillation/radial-distiller.d.ts.map +1 -0
- package/engine/dist/services/distillation/radial-distiller.js +394 -0
- package/engine/dist/services/distillation/radial-distiller.js.map +1 -0
- package/engine/dist/services/health-check-enhanced.d.ts +89 -0
- package/engine/dist/services/health-check-enhanced.d.ts.map +1 -0
- package/engine/dist/services/health-check-enhanced.js +417 -0
- package/engine/dist/services/health-check-enhanced.js.map +1 -0
- package/engine/dist/services/idle-manager.d.ts +56 -0
- package/engine/dist/services/idle-manager.d.ts.map +1 -0
- package/engine/dist/services/idle-manager.js +210 -0
- package/engine/dist/services/idle-manager.js.map +1 -0
- package/engine/dist/services/inference/inference-service.d.ts +27 -0
- package/engine/dist/services/inference/inference-service.d.ts.map +1 -0
- package/engine/dist/services/inference/inference-service.js +89 -0
- package/engine/dist/services/inference/inference-service.js.map +1 -0
- package/engine/dist/services/inference/inference.d.ts +59 -0
- package/engine/dist/services/inference/inference.d.ts.map +1 -0
- package/engine/dist/services/inference/inference.js +131 -0
- package/engine/dist/services/inference/inference.js.map +1 -0
- package/engine/dist/services/ingest/atomizer-service.d.ts +74 -0
- package/engine/dist/services/ingest/atomizer-service.d.ts.map +1 -0
- package/engine/dist/services/ingest/atomizer-service.js +982 -0
- package/engine/dist/services/ingest/atomizer-service.js.map +1 -0
- package/engine/dist/services/ingest/content-cleaner.d.ts +43 -0
- package/engine/dist/services/ingest/content-cleaner.d.ts.map +1 -0
- package/engine/dist/services/ingest/content-cleaner.js +166 -0
- package/engine/dist/services/ingest/content-cleaner.js.map +1 -0
- package/engine/dist/services/ingest/github-ingest-service.d.ts +103 -0
- package/engine/dist/services/ingest/github-ingest-service.d.ts.map +1 -0
- package/engine/dist/services/ingest/github-ingest-service.js +537 -0
- package/engine/dist/services/ingest/github-ingest-service.js.map +1 -0
- package/engine/dist/services/ingest/ingest-atomic.d.ts +16 -0
- package/engine/dist/services/ingest/ingest-atomic.d.ts.map +1 -0
- package/engine/dist/services/ingest/ingest-atomic.js +437 -0
- package/engine/dist/services/ingest/ingest-atomic.js.map +1 -0
- package/engine/dist/services/ingest/ingest.d.ts +50 -0
- package/engine/dist/services/ingest/ingest.d.ts.map +1 -0
- package/engine/dist/services/ingest/ingest.js +230 -0
- package/engine/dist/services/ingest/ingest.js.map +1 -0
- package/engine/dist/services/ingest/watchdog.d.ts +31 -0
- package/engine/dist/services/ingest/watchdog.d.ts.map +1 -0
- package/engine/dist/services/ingest/watchdog.js +400 -0
- package/engine/dist/services/ingest/watchdog.js.map +1 -0
- package/engine/dist/services/llm/context.d.ts +6 -0
- package/engine/dist/services/llm/context.d.ts.map +1 -0
- package/engine/dist/services/llm/context.js +80 -0
- package/engine/dist/services/llm/context.js.map +1 -0
- package/engine/dist/services/llm/provider.d.ts +23 -0
- package/engine/dist/services/llm/provider.d.ts.map +1 -0
- package/engine/dist/services/llm/provider.js +338 -0
- package/engine/dist/services/llm/provider.js.map +1 -0
- package/engine/dist/services/llm/reader.d.ts +12 -0
- package/engine/dist/services/llm/reader.d.ts.map +1 -0
- package/engine/dist/services/llm/reader.js +40 -0
- package/engine/dist/services/llm/reader.js.map +1 -0
- package/engine/dist/services/mirror/mirror.d.ts +28 -0
- package/engine/dist/services/mirror/mirror.d.ts.map +1 -0
- package/engine/dist/services/mirror/mirror.js +208 -0
- package/engine/dist/services/mirror/mirror.js.map +1 -0
- package/engine/dist/services/nlp/nlp-service.d.ts +70 -0
- package/engine/dist/services/nlp/nlp-service.d.ts.map +1 -0
- package/engine/dist/services/nlp/nlp-service.js +151 -0
- package/engine/dist/services/nlp/nlp-service.js.map +1 -0
- package/engine/dist/services/nlp/query-parser.d.ts +9 -0
- package/engine/dist/services/nlp/query-parser.d.ts.map +1 -0
- package/engine/dist/services/nlp/query-parser.js +29 -0
- package/engine/dist/services/nlp/query-parser.js.map +1 -0
- package/engine/dist/services/query-builder/DataFrame.d.ts +95 -0
- package/engine/dist/services/query-builder/DataFrame.d.ts.map +1 -0
- package/engine/dist/services/query-builder/DataFrame.js +263 -0
- package/engine/dist/services/query-builder/DataFrame.js.map +1 -0
- package/engine/dist/services/query-builder/QueryBuilder.d.ts +106 -0
- package/engine/dist/services/query-builder/QueryBuilder.d.ts.map +1 -0
- package/engine/dist/services/query-builder/QueryBuilder.js +235 -0
- package/engine/dist/services/query-builder/QueryBuilder.js.map +1 -0
- package/engine/dist/services/query-builder/utils/export.d.ts +11 -0
- package/engine/dist/services/query-builder/utils/export.d.ts.map +1 -0
- package/engine/dist/services/query-builder/utils/export.js +130 -0
- package/engine/dist/services/query-builder/utils/export.js.map +1 -0
- package/engine/dist/services/research/researcher.d.ts +15 -0
- package/engine/dist/services/research/researcher.d.ts.map +1 -0
- package/engine/dist/services/research/researcher.js +123 -0
- package/engine/dist/services/research/researcher.js.map +1 -0
- package/engine/dist/services/scribe/scribe.d.ts +43 -0
- package/engine/dist/services/scribe/scribe.d.ts.map +1 -0
- package/engine/dist/services/scribe/scribe.js +135 -0
- package/engine/dist/services/scribe/scribe.js.map +1 -0
- package/engine/dist/services/search/bright-nodes.d.ts +41 -0
- package/engine/dist/services/search/bright-nodes.d.ts.map +1 -0
- package/engine/dist/services/search/bright-nodes.js +117 -0
- package/engine/dist/services/search/bright-nodes.js.map +1 -0
- package/engine/dist/services/search/context-inflator.d.ts +63 -0
- package/engine/dist/services/search/context-inflator.d.ts.map +1 -0
- package/engine/dist/services/search/context-inflator.js +649 -0
- package/engine/dist/services/search/context-inflator.js.map +1 -0
- package/engine/dist/services/search/context-manager.d.ts +34 -0
- package/engine/dist/services/search/context-manager.d.ts.map +1 -0
- package/engine/dist/services/search/context-manager.js +124 -0
- package/engine/dist/services/search/context-manager.js.map +1 -0
- package/engine/dist/services/search/distributed-query.d.ts +38 -0
- package/engine/dist/services/search/distributed-query.d.ts.map +1 -0
- package/engine/dist/services/search/distributed-query.js +105 -0
- package/engine/dist/services/search/distributed-query.js.map +1 -0
- package/engine/dist/services/search/explore.d.ts +73 -0
- package/engine/dist/services/search/explore.d.ts.map +1 -0
- package/engine/dist/services/search/explore.js +388 -0
- package/engine/dist/services/search/explore.js.map +1 -0
- package/engine/dist/services/search/graph-context-serializer.d.ts +76 -0
- package/engine/dist/services/search/graph-context-serializer.d.ts.map +1 -0
- package/engine/dist/services/search/graph-context-serializer.js +435 -0
- package/engine/dist/services/search/graph-context-serializer.js.map +1 -0
- package/engine/dist/services/search/llm-context-formatter.d.ts +122 -0
- package/engine/dist/services/search/llm-context-formatter.d.ts.map +1 -0
- package/engine/dist/services/search/llm-context-formatter.js +394 -0
- package/engine/dist/services/search/llm-context-formatter.js.map +1 -0
- package/engine/dist/services/search/physics-tag-walker.d.ts +115 -0
- package/engine/dist/services/search/physics-tag-walker.d.ts.map +1 -0
- package/engine/dist/services/search/physics-tag-walker.js +611 -0
- package/engine/dist/services/search/physics-tag-walker.js.map +1 -0
- package/engine/dist/services/search/query-parser.d.ts +66 -0
- package/engine/dist/services/search/query-parser.d.ts.map +1 -0
- package/engine/dist/services/search/query-parser.js +346 -0
- package/engine/dist/services/search/query-parser.js.map +1 -0
- package/engine/dist/services/search/search-utils.d.ts +100 -0
- package/engine/dist/services/search/search-utils.d.ts.map +1 -0
- package/engine/dist/services/search/search-utils.js +473 -0
- package/engine/dist/services/search/search-utils.js.map +1 -0
- package/engine/dist/services/search/search.d.ts +116 -0
- package/engine/dist/services/search/search.d.ts.map +1 -0
- package/engine/dist/services/search/search.js +1286 -0
- package/engine/dist/services/search/search.js.map +1 -0
- package/engine/dist/services/search/sovereign-system-prompt.d.ts +48 -0
- package/engine/dist/services/search/sovereign-system-prompt.d.ts.map +1 -0
- package/engine/dist/services/search/sovereign-system-prompt.js +101 -0
- package/engine/dist/services/search/sovereign-system-prompt.js.map +1 -0
- package/engine/dist/services/search/streaming-search.d.ts +51 -0
- package/engine/dist/services/search/streaming-search.d.ts.map +1 -0
- package/engine/dist/services/search/streaming-search.js +94 -0
- package/engine/dist/services/search/streaming-search.js.map +1 -0
- package/engine/dist/services/semantic/semantic-ingestion-service.d.ts +53 -0
- package/engine/dist/services/semantic/semantic-ingestion-service.d.ts.map +1 -0
- package/engine/dist/services/semantic/semantic-ingestion-service.js +625 -0
- package/engine/dist/services/semantic/semantic-ingestion-service.js.map +1 -0
- package/engine/dist/services/semantic/semantic-molecule-processor.d.ts +68 -0
- package/engine/dist/services/semantic/semantic-molecule-processor.d.ts.map +1 -0
- package/engine/dist/services/semantic/semantic-molecule-processor.js +176 -0
- package/engine/dist/services/semantic/semantic-molecule-processor.js.map +1 -0
- package/engine/dist/services/semantic/semantic-search.d.ts +52 -0
- package/engine/dist/services/semantic/semantic-search.d.ts.map +1 -0
- package/engine/dist/services/semantic/semantic-search.js +649 -0
- package/engine/dist/services/semantic/semantic-search.js.map +1 -0
- package/engine/dist/services/semantic/semantic-tag-deriver.d.ts +64 -0
- package/engine/dist/services/semantic/semantic-tag-deriver.d.ts.map +1 -0
- package/engine/dist/services/semantic/semantic-tag-deriver.js +191 -0
- package/engine/dist/services/semantic/semantic-tag-deriver.js.map +1 -0
- package/engine/dist/services/semantic/types/semantic.d.ts +26 -0
- package/engine/dist/services/semantic/types/semantic.d.ts.map +1 -0
- package/engine/dist/services/semantic/types/semantic.js +7 -0
- package/engine/dist/services/semantic/types/semantic.js.map +1 -0
- package/engine/dist/services/synonyms/auto-synonym-generator.d.ts +79 -0
- package/engine/dist/services/synonyms/auto-synonym-generator.d.ts.map +1 -0
- package/engine/dist/services/synonyms/auto-synonym-generator.js +415 -0
- package/engine/dist/services/synonyms/auto-synonym-generator.js.map +1 -0
- package/engine/dist/services/system-status.d.ts +68 -0
- package/engine/dist/services/system-status.d.ts.map +1 -0
- package/engine/dist/services/system-status.js +107 -0
- package/engine/dist/services/system-status.js.map +1 -0
- package/engine/dist/services/tags/discovery.d.ts +16 -0
- package/engine/dist/services/tags/discovery.d.ts.map +1 -0
- package/engine/dist/services/tags/discovery.js +206 -0
- package/engine/dist/services/tags/discovery.js.map +1 -0
- package/engine/dist/services/tags/gliner.d.ts +18 -0
- package/engine/dist/services/tags/gliner.d.ts.map +1 -0
- package/engine/dist/services/tags/gliner.js +119 -0
- package/engine/dist/services/tags/gliner.js.map +1 -0
- package/engine/dist/services/tags/infector.d.ts +21 -0
- package/engine/dist/services/tags/infector.d.ts.map +1 -0
- package/engine/dist/services/tags/infector.js +168 -0
- package/engine/dist/services/tags/infector.js.map +1 -0
- package/engine/dist/services/tags/tag-auditor.d.ts +77 -0
- package/engine/dist/services/tags/tag-auditor.d.ts.map +1 -0
- package/engine/dist/services/tags/tag-auditor.js +283 -0
- package/engine/dist/services/tags/tag-auditor.js.map +1 -0
- package/engine/dist/services/taxonomy/taxonomy-manager.d.ts +50 -0
- package/engine/dist/services/taxonomy/taxonomy-manager.d.ts.map +1 -0
- package/engine/dist/services/taxonomy/taxonomy-manager.js +291 -0
- package/engine/dist/services/taxonomy/taxonomy-manager.js.map +1 -0
- package/engine/dist/services/vision/vision_service.d.ts +4 -0
- package/engine/dist/services/vision/vision_service.d.ts.map +1 -0
- package/engine/dist/services/vision/vision_service.js +197 -0
- package/engine/dist/services/vision/vision_service.js.map +1 -0
- package/engine/dist/test-framework/core.d.ts +133 -0
- package/engine/dist/test-framework/core.d.ts.map +1 -0
- package/engine/dist/test-framework/core.js +313 -0
- package/engine/dist/test-framework/core.js.map +1 -0
- package/engine/dist/test-framework/dataset-runner.d.ts +78 -0
- package/engine/dist/test-framework/dataset-runner.d.ts.map +1 -0
- package/engine/dist/test-framework/dataset-runner.js +223 -0
- package/engine/dist/test-framework/dataset-runner.js.map +1 -0
- package/engine/dist/test-framework/diagnostic-tests.d.ts +38 -0
- package/engine/dist/test-framework/diagnostic-tests.d.ts.map +1 -0
- package/engine/dist/test-framework/diagnostic-tests.js +283 -0
- package/engine/dist/test-framework/diagnostic-tests.js.map +1 -0
- package/engine/dist/test-framework/performance-regression-tests.d.ts +30 -0
- package/engine/dist/test-framework/performance-regression-tests.d.ts.map +1 -0
- package/engine/dist/test-framework/performance-regression-tests.js +331 -0
- package/engine/dist/test-framework/performance-regression-tests.js.map +1 -0
- package/engine/dist/types/api.d.ts +53 -0
- package/engine/dist/types/api.d.ts.map +1 -0
- package/engine/dist/types/api.js +2 -0
- package/engine/dist/types/api.js.map +1 -0
- package/engine/dist/types/atomic.d.ts +42 -0
- package/engine/dist/types/atomic.d.ts.map +1 -0
- package/engine/dist/types/atomic.js +10 -0
- package/engine/dist/types/atomic.js.map +1 -0
- package/engine/dist/types/context-protocol.d.ts +137 -0
- package/engine/dist/types/context-protocol.d.ts.map +1 -0
- package/engine/dist/types/context-protocol.js +28 -0
- package/engine/dist/types/context-protocol.js.map +1 -0
- package/engine/dist/types/context.d.ts +2 -0
- package/engine/dist/types/context.d.ts.map +1 -0
- package/engine/dist/types/context.js +2 -0
- package/engine/dist/types/context.js.map +1 -0
- package/engine/dist/types/index.d.ts +20 -0
- package/engine/dist/types/index.d.ts.map +1 -0
- package/engine/dist/types/index.js +18 -0
- package/engine/dist/types/index.js.map +1 -0
- package/engine/dist/types/search.d.ts +31 -0
- package/engine/dist/types/search.d.ts.map +1 -0
- package/engine/dist/types/search.js +2 -0
- package/engine/dist/types/search.js.map +1 -0
- package/engine/dist/types/taxonomy.d.ts +137 -0
- package/engine/dist/types/taxonomy.d.ts.map +1 -0
- package/engine/dist/types/taxonomy.js +138 -0
- package/engine/dist/types/taxonomy.js.map +1 -0
- package/engine/dist/types/taxonomy.simple.d.ts +131 -0
- package/engine/dist/types/taxonomy.simple.d.ts.map +1 -0
- package/engine/dist/types/taxonomy.simple.js +132 -0
- package/engine/dist/types/taxonomy.simple.js.map +1 -0
- package/engine/dist/types/tool-call.d.ts +16 -0
- package/engine/dist/types/tool-call.d.ts.map +1 -0
- package/engine/dist/types/tool-call.js +6 -0
- package/engine/dist/types/tool-call.js.map +1 -0
- package/engine/dist/types/trace.d.ts +25 -0
- package/engine/dist/types/trace.d.ts.map +1 -0
- package/engine/dist/types/trace.js +5 -0
- package/engine/dist/types/trace.js.map +1 -0
- package/engine/dist/utils/adaptive-concurrency.d.ts +81 -0
- package/engine/dist/utils/adaptive-concurrency.d.ts.map +1 -0
- package/engine/dist/utils/adaptive-concurrency.js +266 -0
- package/engine/dist/utils/adaptive-concurrency.js.map +1 -0
- package/engine/dist/utils/date_extractor.d.ts +2 -0
- package/engine/dist/utils/date_extractor.d.ts.map +1 -0
- package/engine/dist/utils/date_extractor.js +32 -0
- package/engine/dist/utils/date_extractor.js.map +1 -0
- package/engine/dist/utils/native-module-manager.d.ts +48 -0
- package/engine/dist/utils/native-module-manager.d.ts.map +1 -0
- package/engine/dist/utils/native-module-manager.js +265 -0
- package/engine/dist/utils/native-module-manager.js.map +1 -0
- package/engine/dist/utils/native-module-profiler.d.ts +66 -0
- package/engine/dist/utils/native-module-profiler.d.ts.map +1 -0
- package/engine/dist/utils/native-module-profiler.js +182 -0
- package/engine/dist/utils/native-module-profiler.js.map +1 -0
- package/engine/dist/utils/path-manager.d.ts +59 -0
- package/engine/dist/utils/path-manager.d.ts.map +1 -0
- package/engine/dist/utils/path-manager.js +154 -0
- package/engine/dist/utils/path-manager.js.map +1 -0
- package/engine/dist/utils/performance-monitor.d.ts +92 -0
- package/engine/dist/utils/performance-monitor.d.ts.map +1 -0
- package/engine/dist/utils/performance-monitor.js +221 -0
- package/engine/dist/utils/performance-monitor.js.map +1 -0
- package/engine/dist/utils/process-manager.d.ts +18 -0
- package/engine/dist/utils/process-manager.d.ts.map +1 -0
- package/engine/dist/utils/process-manager.js +100 -0
- package/engine/dist/utils/process-manager.js.map +1 -0
- package/engine/dist/utils/request-tracer.d.ts +131 -0
- package/engine/dist/utils/request-tracer.d.ts.map +1 -0
- package/engine/dist/utils/request-tracer.js +414 -0
- package/engine/dist/utils/request-tracer.js.map +1 -0
- package/engine/dist/utils/resource-manager.d.ts +108 -0
- package/engine/dist/utils/resource-manager.d.ts.map +1 -0
- package/engine/dist/utils/resource-manager.js +235 -0
- package/engine/dist/utils/resource-manager.js.map +1 -0
- package/engine/dist/utils/safe-dns.d.ts +14 -0
- package/engine/dist/utils/safe-dns.d.ts.map +1 -0
- package/engine/dist/utils/safe-dns.js +105 -0
- package/engine/dist/utils/safe-dns.js.map +1 -0
- package/engine/dist/utils/structured-logger.d.ts +124 -0
- package/engine/dist/utils/structured-logger.d.ts.map +1 -0
- package/engine/dist/utils/structured-logger.js +332 -0
- package/engine/dist/utils/structured-logger.js.map +1 -0
- package/engine/dist/utils/tag-cleanup.d.ts +11 -0
- package/engine/dist/utils/tag-cleanup.d.ts.map +1 -0
- package/engine/dist/utils/tag-cleanup.js +111 -0
- package/engine/dist/utils/tag-cleanup.js.map +1 -0
- package/engine/dist/utils/tag-filter.d.ts +19 -0
- package/engine/dist/utils/tag-filter.d.ts.map +1 -0
- package/engine/dist/utils/tag-filter.js +147 -0
- package/engine/dist/utils/tag-filter.js.map +1 -0
- package/engine/dist/utils/tag-modulation.d.ts +80 -0
- package/engine/dist/utils/tag-modulation.d.ts.map +1 -0
- package/engine/dist/utils/tag-modulation.js +284 -0
- package/engine/dist/utils/tag-modulation.js.map +1 -0
- package/engine/dist/utils/timer.d.ts +40 -0
- package/engine/dist/utils/timer.d.ts.map +1 -0
- package/engine/dist/utils/timer.js +76 -0
- package/engine/dist/utils/timer.js.map +1 -0
- package/engine/dist/utils/token-utils.d.ts +19 -0
- package/engine/dist/utils/token-utils.d.ts.map +1 -0
- package/engine/dist/utils/token-utils.js +71 -0
- package/engine/dist/utils/token-utils.js.map +1 -0
- package/engine/dist/utils/wasm-module-loader.d.ts +50 -0
- package/engine/dist/utils/wasm-module-loader.d.ts.map +1 -0
- package/engine/dist/utils/wasm-module-loader.js +136 -0
- package/engine/dist/utils/wasm-module-loader.js.map +1 -0
- package/engine/package.json +105 -0
- package/package.json +106 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mirror Protocol Service - "Tangible Knowledge Graph"
|
|
3
|
+
*
|
|
4
|
+
* Writes CLEANED content (compound_body) to mirrored_brain/, not raw copies.
|
|
5
|
+
* The sanitizer strips noise, timestamps, PII, and boilerplate before writing,
|
|
6
|
+
* so mirrored_brain/ is smaller and more meaningful than the original inbox/.
|
|
7
|
+
*
|
|
8
|
+
* Supports YAML rehydration: flattened YAML files (from read_all.js) are
|
|
9
|
+
* expanded back into their original file structure.
|
|
10
|
+
*/
|
|
11
|
+
import * as fs from 'fs';
|
|
12
|
+
import * as path from 'path';
|
|
13
|
+
import yaml from 'js-yaml';
|
|
14
|
+
import { db } from '../../core/db.js';
|
|
15
|
+
import { NOTEBOOK_DIR } from '../../config/paths.js';
|
|
16
|
+
import PATHS from '../../config/paths.js';
|
|
17
|
+
export const MIRRORED_BRAIN_PATH = PATHS.MIRRORED_BRAIN_DIR;
|
|
18
|
+
/**
|
|
19
|
+
* Mirror Protocol: Full rebuild of mirrored_brain/ from DB compounds.
|
|
20
|
+
* Writes cleaned compound_body for each source. Falls back to raw file
|
|
21
|
+
* copy only when compound_body is missing (migration / edge case).
|
|
22
|
+
*/
|
|
23
|
+
export async function createMirror() {
|
|
24
|
+
console.log('🪞 Mirror Protocol: Rebuilding from cleaned compound content...');
|
|
25
|
+
// Create mirror root
|
|
26
|
+
if (!fs.existsSync(MIRRORED_BRAIN_PATH)) {
|
|
27
|
+
fs.mkdirSync(MIRRORED_BRAIN_PATH, { recursive: true });
|
|
28
|
+
}
|
|
29
|
+
// Join sources with compounds to get cleaned content
|
|
30
|
+
const sourcesQuery = `
|
|
31
|
+
SELECT s.path, c.compound_body, c.provenance
|
|
32
|
+
FROM sources s
|
|
33
|
+
LEFT JOIN compounds c ON c.path = s.path
|
|
34
|
+
`;
|
|
35
|
+
const result = await db.run(sourcesQuery);
|
|
36
|
+
if (!result.rows || result.rows.length === 0) {
|
|
37
|
+
console.log('🪞 Mirror Protocol: No files to mirror.');
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
let fileCount = 0;
|
|
41
|
+
let fallbackCount = 0;
|
|
42
|
+
let rehydratedCount = 0;
|
|
43
|
+
for (const row of result.rows) {
|
|
44
|
+
const dbPath = Array.isArray(row) ? row[0] : row.path;
|
|
45
|
+
const compoundBody = Array.isArray(row) ? row[1] : row.compound_body;
|
|
46
|
+
const provenance = (Array.isArray(row) ? row[2] : row.provenance) || 'internal';
|
|
47
|
+
if (!dbPath)
|
|
48
|
+
continue;
|
|
49
|
+
// Determine mirror subdirectory
|
|
50
|
+
let provenanceDir = '@inbox';
|
|
51
|
+
if (dbPath.startsWith('external-inbox') || dbPath.includes('external-inbox')) {
|
|
52
|
+
provenanceDir = '@external-inbox';
|
|
53
|
+
}
|
|
54
|
+
else if (dbPath.startsWith('quarantine')) {
|
|
55
|
+
provenanceDir = '@quarantine';
|
|
56
|
+
}
|
|
57
|
+
// Use cleaned compound_body when available
|
|
58
|
+
if (compoundBody) {
|
|
59
|
+
const relativePath = getRelativePath(dbPath);
|
|
60
|
+
const mirrorPath = path.join(MIRRORED_BRAIN_PATH, provenanceDir, relativePath);
|
|
61
|
+
await writeFile(mirrorPath, compoundBody);
|
|
62
|
+
fileCount++;
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// Fallback: raw file copy for sources without compound_body (migration)
|
|
66
|
+
let sourcePath = dbPath;
|
|
67
|
+
if (!path.isAbsolute(sourcePath)) {
|
|
68
|
+
sourcePath = path.join(NOTEBOOK_DIR, sourcePath);
|
|
69
|
+
}
|
|
70
|
+
if (!fs.existsSync(sourcePath))
|
|
71
|
+
continue;
|
|
72
|
+
// Check if this is a rehydratable YAML file
|
|
73
|
+
if (sourcePath.endsWith('.yaml') || sourcePath.endsWith('.yml')) {
|
|
74
|
+
const rehydrated = await tryRehydrateYAML(sourcePath, provenanceDir);
|
|
75
|
+
if (rehydrated > 0) {
|
|
76
|
+
rehydratedCount += rehydrated;
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const relativePath = getRelativePath(sourcePath);
|
|
81
|
+
const mirrorPath = path.join(MIRRORED_BRAIN_PATH, provenanceDir, relativePath);
|
|
82
|
+
await copyFile(sourcePath, mirrorPath);
|
|
83
|
+
fallbackCount++;
|
|
84
|
+
}
|
|
85
|
+
console.log(`🪞 Mirror Protocol: Complete. ${fileCount} cleaned, ${fallbackCount} fallback copies, ${rehydratedCount} rehydrated.`);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Write a single file's cleaned content directly to mirrored_brain/.
|
|
89
|
+
* Called by watchdog after atomization — faster than a full createMirror() rebuild.
|
|
90
|
+
*/
|
|
91
|
+
export async function writeMirroredFile(relativePath, cleanedContent, provenance = 'internal') {
|
|
92
|
+
console.log(`[MirrorWrite] Starting write for: ${relativePath}`);
|
|
93
|
+
console.log(`[MirrorWrite] Content length: ${cleanedContent?.length || 0} chars`);
|
|
94
|
+
console.log(`[MirrorWrite] Provenance: ${provenance}`);
|
|
95
|
+
console.log(`[MirrorWrite] MIRRORED_BRAIN_PATH: ${MIRRORED_BRAIN_PATH}`);
|
|
96
|
+
if (!fs.existsSync(MIRRORED_BRAIN_PATH)) {
|
|
97
|
+
console.log(`[MirrorWrite] Creating mirrored_brain directory...`);
|
|
98
|
+
fs.mkdirSync(MIRRORED_BRAIN_PATH, { recursive: true });
|
|
99
|
+
console.log(`[MirrorWrite] ✓ Directory created`);
|
|
100
|
+
}
|
|
101
|
+
const mirrorPath = getMirrorPath(relativePath, provenance);
|
|
102
|
+
console.log(`[MirrorWrite] Target path: ${mirrorPath}`);
|
|
103
|
+
try {
|
|
104
|
+
await writeFile(mirrorPath, cleanedContent);
|
|
105
|
+
console.log(`[MirrorWrite] ✓ SUCCESS: Written ${cleanedContent?.length || 0} chars to ${mirrorPath}`);
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
console.error(`[MirrorWrite] ✗ FAILED: ${error.message}`);
|
|
109
|
+
throw error;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Try to rehydrate a YAML file (from read_all.js format)
|
|
114
|
+
* Returns number of files rehydrated, or 0 if not a rehydratable format
|
|
115
|
+
*/
|
|
116
|
+
async function tryRehydrateYAML(yamlPath, provenanceDir) {
|
|
117
|
+
try {
|
|
118
|
+
const content = fs.readFileSync(yamlPath, 'utf-8');
|
|
119
|
+
const data = yaml.load(content);
|
|
120
|
+
// Check if this matches read_all.js format
|
|
121
|
+
if (!data || !Array.isArray(data.files) || data.files.length === 0) {
|
|
122
|
+
return 0; // Not a rehydratable format
|
|
123
|
+
}
|
|
124
|
+
// Get project name from project_structure or filename
|
|
125
|
+
const projectName = data.project_structure
|
|
126
|
+
? path.basename(data.project_structure)
|
|
127
|
+
: path.basename(yamlPath, path.extname(yamlPath));
|
|
128
|
+
console.log(`🪞 Rehydrating YAML: ${yamlPath} → ${data.files.length} files (project: ${projectName})`);
|
|
129
|
+
let count = 0;
|
|
130
|
+
for (const file of data.files) {
|
|
131
|
+
if (!file.path || file.content === undefined)
|
|
132
|
+
continue;
|
|
133
|
+
const mirrorPath = path.join(MIRRORED_BRAIN_PATH, provenanceDir, projectName, file.path);
|
|
134
|
+
await writeFile(mirrorPath, file.content);
|
|
135
|
+
count++;
|
|
136
|
+
}
|
|
137
|
+
return count;
|
|
138
|
+
}
|
|
139
|
+
catch (e) {
|
|
140
|
+
// Not a valid YAML or parsing error - treat as normal file
|
|
141
|
+
return 0;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Get relative path from inbox roots
|
|
146
|
+
*/
|
|
147
|
+
function getRelativePath(absolutePath) {
|
|
148
|
+
if (!absolutePath)
|
|
149
|
+
return 'unknown_file';
|
|
150
|
+
const inboxDir = PATHS.INBOX_DIR;
|
|
151
|
+
const externalDir = path.join(path.dirname(PATHS.INBOX_DIR), 'external-inbox');
|
|
152
|
+
if (absolutePath.startsWith(inboxDir)) {
|
|
153
|
+
return path.relative(inboxDir, absolutePath);
|
|
154
|
+
}
|
|
155
|
+
if (absolutePath.startsWith(externalDir)) {
|
|
156
|
+
return path.relative(externalDir, absolutePath);
|
|
157
|
+
}
|
|
158
|
+
// Hande pre-relative paths (e.g. from DB)
|
|
159
|
+
if (absolutePath.startsWith('inbox/') || absolutePath.startsWith('inbox\\')) {
|
|
160
|
+
return absolutePath.substring(6); // remove 'inbox/'
|
|
161
|
+
}
|
|
162
|
+
if (absolutePath.startsWith('external-inbox/') || absolutePath.startsWith('external-inbox\\')) {
|
|
163
|
+
return absolutePath.substring(15); // remove 'external-inbox/'
|
|
164
|
+
}
|
|
165
|
+
// Fallback: use filename only
|
|
166
|
+
return path.basename(absolutePath);
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Copy a file to mirror location
|
|
170
|
+
*/
|
|
171
|
+
async function copyFile(source, dest) {
|
|
172
|
+
try {
|
|
173
|
+
const destDir = path.dirname(dest);
|
|
174
|
+
if (!fs.existsSync(destDir)) {
|
|
175
|
+
fs.mkdirSync(destDir, { recursive: true });
|
|
176
|
+
}
|
|
177
|
+
fs.copyFileSync(source, dest);
|
|
178
|
+
}
|
|
179
|
+
catch (e) {
|
|
180
|
+
console.warn(`🪞 Mirror: Failed to copy ${source}: ${e.message}`);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Write content to a file
|
|
185
|
+
*/
|
|
186
|
+
async function writeFile(filePath, content) {
|
|
187
|
+
try {
|
|
188
|
+
const dir = path.dirname(filePath);
|
|
189
|
+
if (!fs.existsSync(dir)) {
|
|
190
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
191
|
+
}
|
|
192
|
+
fs.writeFileSync(filePath, content, 'utf-8');
|
|
193
|
+
}
|
|
194
|
+
catch (e) {
|
|
195
|
+
console.warn(`🪞 Mirror: Failed to write ${filePath}: ${e.message}`);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Get the mirrored path for a source file
|
|
200
|
+
* Used by context inflator to read from mirror instead of DB
|
|
201
|
+
*/
|
|
202
|
+
export function getMirrorPath(sourcePath, provenance = 'internal') {
|
|
203
|
+
const provenanceDir = provenance === 'external' ? '@external-inbox' :
|
|
204
|
+
provenance === 'quarantine' ? '@quarantine' : '@inbox';
|
|
205
|
+
const relativePath = getRelativePath(sourcePath);
|
|
206
|
+
return path.join(MIRRORED_BRAIN_PATH, provenanceDir, relativePath);
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=mirror.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/services/mirror/mirror.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NLP Service for ECE Semantic Architecture
|
|
3
|
+
*
|
|
4
|
+
* Provides NLP capabilities using Wink NLP (entity extraction, classification).
|
|
5
|
+
* Dense vector embeddings (previously @xenova/transformers) are intentionally
|
|
6
|
+
* removed — the STAR algorithm uses sparse tag-based graph retrieval and does
|
|
7
|
+
* not require dense embeddings for its core operation.
|
|
8
|
+
*
|
|
9
|
+
* If dense vector augmentation is desired (hybrid retrieval), configure an
|
|
10
|
+
* external vector store (e.g., pgvector, Chroma, Weaviate) and plug it into
|
|
11
|
+
* the VectorService interface in core/vector.ts.
|
|
12
|
+
*/
|
|
13
|
+
export declare class NlpService {
|
|
14
|
+
/**
|
|
15
|
+
* Stub: dense embeddings are not loaded. Returns false always.
|
|
16
|
+
*/
|
|
17
|
+
static isModelLoadedStatus(): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* No-op: no model to unload.
|
|
20
|
+
*/
|
|
21
|
+
static unloadModel(): Promise<void>;
|
|
22
|
+
/** No-op cache stub */
|
|
23
|
+
static clearCache(): void;
|
|
24
|
+
/** Returns 0 — no cache */
|
|
25
|
+
static getCacheSize(): number;
|
|
26
|
+
/**
|
|
27
|
+
* Dense embedding stub. Returns an empty array.
|
|
28
|
+
*
|
|
29
|
+
* The STAR engine uses sparse tag-intersection scoring (Unified Field Equation)
|
|
30
|
+
* and does not require dense embeddings for retrieval. The vector search path
|
|
31
|
+
* in semantic-search.ts already handles empty results gracefully via try/catch.
|
|
32
|
+
*
|
|
33
|
+
* To add dense vector augmentation, implement a provider here and wire it to
|
|
34
|
+
* VectorService in core/vector.ts.
|
|
35
|
+
*/
|
|
36
|
+
getEmbedding(_text: string): Promise<number[]>;
|
|
37
|
+
/**
|
|
38
|
+
* Extract entities from text using Wink NLP
|
|
39
|
+
*/
|
|
40
|
+
extractEntities(text: string): string[];
|
|
41
|
+
/**
|
|
42
|
+
* Identify if an entity is a person
|
|
43
|
+
*/
|
|
44
|
+
isPersonEntity(entity: string): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Identify if an entity is a place
|
|
47
|
+
*/
|
|
48
|
+
isPlaceEntity(entity: string): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Identify if an entity is a technical term
|
|
51
|
+
*/
|
|
52
|
+
isTechnicalEntity(entity: string): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Identify if an entity is a date
|
|
55
|
+
*/
|
|
56
|
+
isDateEntity(entity: string): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Classify entity type
|
|
59
|
+
*/
|
|
60
|
+
classifyEntity(entity: string): 'person' | 'place' | 'technical' | 'date' | 'concept';
|
|
61
|
+
/**
|
|
62
|
+
* Check if a word is common (non-entity)
|
|
63
|
+
*/
|
|
64
|
+
private isCommonWord;
|
|
65
|
+
/**
|
|
66
|
+
* Check if text contains relationship indicators
|
|
67
|
+
*/
|
|
68
|
+
hasRelationshipIndicators(text: string): boolean;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=nlp-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nlp-service.d.ts","sourceRoot":"","sources":["../../../src/services/nlp/nlp-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,qBAAa,UAAU;IACrB;;OAEG;WACW,mBAAmB,IAAI,OAAO;IAE5C;;OAEG;WACiB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAEhD,uBAAuB;WACT,UAAU,IAAI,IAAI;IAEhC,2BAA2B;WACb,YAAY,IAAI,MAAM;IAEpC;;;;;;;;;OASG;IACU,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAI3D;;OAEG;IACI,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAa9C;;OAEG;IACI,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAc9C;;OAEG;IACI,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAY7C;;OAEG;IACI,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAWjD;;OAEG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAW5C;;OAEG;IACI,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS;IAQ5F;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;OAEG;IACI,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAexD"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NLP Service for ECE Semantic Architecture
|
|
3
|
+
*
|
|
4
|
+
* Provides NLP capabilities using Wink NLP (entity extraction, classification).
|
|
5
|
+
* Dense vector embeddings (previously @xenova/transformers) are intentionally
|
|
6
|
+
* removed — the STAR algorithm uses sparse tag-based graph retrieval and does
|
|
7
|
+
* not require dense embeddings for its core operation.
|
|
8
|
+
*
|
|
9
|
+
* If dense vector augmentation is desired (hybrid retrieval), configure an
|
|
10
|
+
* external vector store (e.g., pgvector, Chroma, Weaviate) and plug it into
|
|
11
|
+
* the VectorService interface in core/vector.ts.
|
|
12
|
+
*/
|
|
13
|
+
import wink from 'wink-nlp';
|
|
14
|
+
import model from 'wink-eng-lite-web-model';
|
|
15
|
+
const nlp = wink(model);
|
|
16
|
+
export class NlpService {
|
|
17
|
+
/**
|
|
18
|
+
* Stub: dense embeddings are not loaded. Returns false always.
|
|
19
|
+
*/
|
|
20
|
+
static isModelLoadedStatus() { return false; }
|
|
21
|
+
/**
|
|
22
|
+
* No-op: no model to unload.
|
|
23
|
+
*/
|
|
24
|
+
static async unloadModel() { }
|
|
25
|
+
/** No-op cache stub */
|
|
26
|
+
static clearCache() { }
|
|
27
|
+
/** Returns 0 — no cache */
|
|
28
|
+
static getCacheSize() { return 0; }
|
|
29
|
+
/**
|
|
30
|
+
* Dense embedding stub. Returns an empty array.
|
|
31
|
+
*
|
|
32
|
+
* The STAR engine uses sparse tag-intersection scoring (Unified Field Equation)
|
|
33
|
+
* and does not require dense embeddings for retrieval. The vector search path
|
|
34
|
+
* in semantic-search.ts already handles empty results gracefully via try/catch.
|
|
35
|
+
*
|
|
36
|
+
* To add dense vector augmentation, implement a provider here and wire it to
|
|
37
|
+
* VectorService in core/vector.ts.
|
|
38
|
+
*/
|
|
39
|
+
async getEmbedding(_text) {
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Extract entities from text using Wink NLP
|
|
44
|
+
*/
|
|
45
|
+
extractEntities(text) {
|
|
46
|
+
const doc = nlp.readDoc(text);
|
|
47
|
+
const entities = doc.entities();
|
|
48
|
+
// Extract named entities
|
|
49
|
+
const entityValues = [];
|
|
50
|
+
entities.each((entity) => {
|
|
51
|
+
entityValues.push(entity.out());
|
|
52
|
+
});
|
|
53
|
+
return entityValues;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Identify if an entity is a person
|
|
57
|
+
*/
|
|
58
|
+
isPersonEntity(entity) {
|
|
59
|
+
// Basic heuristic for person names
|
|
60
|
+
const personIndicators = ['mr.', 'mrs.', 'ms.', 'dr.', 'prof.', 'jr.', 'sr.'];
|
|
61
|
+
const lowerEntity = entity.toLowerCase();
|
|
62
|
+
// Check if it's a capitalized name pattern
|
|
63
|
+
if (/^[A-Z][a-z]+/.test(entity) && !this.isCommonWord(entity)) {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
// Check for person indicators
|
|
67
|
+
return personIndicators.some(indicator => lowerEntity.includes(indicator));
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Identify if an entity is a place
|
|
71
|
+
*/
|
|
72
|
+
isPlaceEntity(entity) {
|
|
73
|
+
const placeIndicators = [
|
|
74
|
+
'city', 'town', 'state', 'country', 'street', 'avenue', 'road', 'building',
|
|
75
|
+
'avenue', 'boulevard', 'lane', 'drive', 'court', 'place', 'plaza', 'square',
|
|
76
|
+
'mountain', 'river', 'lake', 'ocean', 'sea', 'valley', 'canyon', 'park',
|
|
77
|
+
'hotel', 'restaurant', 'store', 'mall', 'airport', 'station', 'port'
|
|
78
|
+
];
|
|
79
|
+
return placeIndicators.some(indicator => entity.toLowerCase().includes(indicator.toLowerCase()));
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Identify if an entity is a technical term
|
|
83
|
+
*/
|
|
84
|
+
isTechnicalEntity(entity) {
|
|
85
|
+
const techTerms = [
|
|
86
|
+
'node.js', 'typescript', 'javascript', 'api', 'database', 'function', 'class',
|
|
87
|
+
'method', 'variable', 'algorithm', 'cozodb', 'electron', 'react', 'vite',
|
|
88
|
+
'graphql', 'rest', 'json', 'xml', 'html', 'css', 'sql', 'nosql', 'mongodb',
|
|
89
|
+
'postgresql', 'mysql', 'redis', 'docker', 'kubernetes', 'aws', 'azure', 'gcp',
|
|
90
|
+
'glm', 'llama', 'model', 'tensor', 'vector', 'embedding', 'rag', 'ai', 'ml', 'dl'
|
|
91
|
+
];
|
|
92
|
+
return techTerms.includes(entity.toLowerCase());
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Identify if an entity is a date
|
|
96
|
+
*/
|
|
97
|
+
isDateEntity(entity) {
|
|
98
|
+
// Check for date patterns
|
|
99
|
+
const dateRegex = /^(19|20)\d{2}$|^(0?[1-9]|1[0-2])[\/\-](0?[1-9]|[12]\d|3[01])|^(0?[1-9]|[12]\d|3[01])[\/\-](0?[1-9]|1[0-2])/;
|
|
100
|
+
if (dateRegex.test(entity))
|
|
101
|
+
return true;
|
|
102
|
+
// Check if it's a month name
|
|
103
|
+
const months = ['january', 'february', 'march', 'april', 'may', 'june',
|
|
104
|
+
'july', 'august', 'september', 'october', 'november', 'december'];
|
|
105
|
+
return months.includes(entity.toLowerCase());
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Classify entity type
|
|
109
|
+
*/
|
|
110
|
+
classifyEntity(entity) {
|
|
111
|
+
if (this.isPersonEntity(entity))
|
|
112
|
+
return 'person';
|
|
113
|
+
if (this.isPlaceEntity(entity))
|
|
114
|
+
return 'place';
|
|
115
|
+
if (this.isTechnicalEntity(entity))
|
|
116
|
+
return 'technical';
|
|
117
|
+
if (this.isDateEntity(entity))
|
|
118
|
+
return 'date';
|
|
119
|
+
return 'concept';
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Check if a word is common (non-entity)
|
|
123
|
+
*/
|
|
124
|
+
isCommonWord(word) {
|
|
125
|
+
const commonWords = [
|
|
126
|
+
'the', 'a', 'an', 'and', 'or', 'but', 'in', 'on', 'at', 'to', 'for',
|
|
127
|
+
'of', 'with', 'by', 'is', 'are', 'was', 'were', 'be', 'been', 'being',
|
|
128
|
+
'have', 'has', 'had', 'do', 'does', 'did', 'will', 'would', 'could',
|
|
129
|
+
'should', 'may', 'might', 'must', 'can', 'shall', 'this', 'that', 'these', 'those',
|
|
130
|
+
'i', 'you', 'he', 'she', 'it', 'we', 'they', 'me', 'him', 'her', 'us', 'them'
|
|
131
|
+
];
|
|
132
|
+
return commonWords.includes(word.toLowerCase());
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Check if text contains relationship indicators
|
|
136
|
+
*/
|
|
137
|
+
hasRelationshipIndicators(text) {
|
|
138
|
+
const relationshipIndicators = [
|
|
139
|
+
'and', 'with', 'met', 'told', 'said', 'spoke', 'visited',
|
|
140
|
+
'called', 'texted', 'together', 'relationship', 'friend', 'partner',
|
|
141
|
+
'love', 'missed', 'cared', 'knows', 'introduced', 'about', 'to'
|
|
142
|
+
];
|
|
143
|
+
const lowerText = text.toLowerCase();
|
|
144
|
+
return relationshipIndicators.some(indicator => lowerText.includes(` ${indicator} `) ||
|
|
145
|
+
lowerText.startsWith(`${indicator} `) ||
|
|
146
|
+
lowerText.endsWith(` ${indicator}`) ||
|
|
147
|
+
lowerText.includes(`${indicator},`) ||
|
|
148
|
+
lowerText.includes(`${indicator}.`));
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=nlp-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nlp-service.js","sourceRoot":"","sources":["../../../src/services/nlp/nlp-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Query Parser Service for ECE (Natural Language Query Processing)
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for parsing and expanding natural language queries
|
|
5
|
+
* to improve search effectiveness.
|
|
6
|
+
*/
|
|
7
|
+
export declare function parseNaturalLanguage(query: string): string;
|
|
8
|
+
export declare function expandQuery(query: string): Promise<string[]>;
|
|
9
|
+
//# sourceMappingURL=query-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-parser.d.ts","sourceRoot":"","sources":["../../../src/services/nlp/query-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAe1D;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIlE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Query Parser Service for ECE (Natural Language Query Processing)
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities for parsing and expanding natural language queries
|
|
5
|
+
* to improve search effectiveness.
|
|
6
|
+
*/
|
|
7
|
+
const STOP_PHRASES = [
|
|
8
|
+
'show me', 'what is', 'what are', 'can you find', 'search for', 'look for', 'find', 'display', 'list',
|
|
9
|
+
'tell me about', 'give me', 'bring up', 'what do we know about', 'what can we see from', 'how about', 'describe', 'explain'
|
|
10
|
+
];
|
|
11
|
+
export function parseNaturalLanguage(query) {
|
|
12
|
+
let cleaned = query.trim();
|
|
13
|
+
// Case insensitive removal of start phrases
|
|
14
|
+
// We sort by length descending to match longest phrases first
|
|
15
|
+
const sortedPhrases = [...STOP_PHRASES].sort((a, b) => b.length - a.length);
|
|
16
|
+
for (const phrase of sortedPhrases) {
|
|
17
|
+
const regex = new RegExp(`^${phrase}\\s+`, 'i');
|
|
18
|
+
if (regex.test(cleaned)) {
|
|
19
|
+
cleaned = cleaned.replace(regex, '');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return cleaned.trim();
|
|
23
|
+
}
|
|
24
|
+
export async function expandQuery(query) {
|
|
25
|
+
// Basic query expansion - could be enhanced with semantic expansion
|
|
26
|
+
// For now, just return empty array indicating no expansions
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=query-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-parser.js","sourceRoot":"","sources":["../../../src/services/nlp/query-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IACrG,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS;CAC5H,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,IAAI,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE3B,4CAA4C;IAC5C,8DAA8D;IAC9D,MAAM,aAAa,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAE5E,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,MAAM,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAa;IAC7C,oEAAoE;IACpE,4DAA4D;IAC5D,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anchor DataFrame - In-Memory Data Manipulation
|
|
3
|
+
*
|
|
4
|
+
* Provides a pandas-like interface for in-memory data operations
|
|
5
|
+
* Designed to work with query results from the Anchor system
|
|
6
|
+
*/
|
|
7
|
+
export type DataFrameRow = Record<string, any>;
|
|
8
|
+
export interface GroupByResult {
|
|
9
|
+
[key: string]: DataFrameRow[];
|
|
10
|
+
}
|
|
11
|
+
export declare class DataFrame {
|
|
12
|
+
private data;
|
|
13
|
+
constructor(data?: DataFrameRow[]);
|
|
14
|
+
/**
|
|
15
|
+
* Create a DataFrame from query results
|
|
16
|
+
*/
|
|
17
|
+
static from(data: DataFrameRow[]): DataFrame;
|
|
18
|
+
/**
|
|
19
|
+
* Get the number of rows in the DataFrame
|
|
20
|
+
*/
|
|
21
|
+
get length(): number;
|
|
22
|
+
/**
|
|
23
|
+
* Get the column names in the DataFrame
|
|
24
|
+
*/
|
|
25
|
+
get columns(): string[];
|
|
26
|
+
/**
|
|
27
|
+
* Select specific columns from the DataFrame
|
|
28
|
+
*/
|
|
29
|
+
select(columnMap: Record<string, (row: DataFrameRow) => any>): DataFrame;
|
|
30
|
+
/**
|
|
31
|
+
* Filter rows based on a condition
|
|
32
|
+
*/
|
|
33
|
+
filter(condition: (row: DataFrameRow) => boolean): DataFrame;
|
|
34
|
+
/**
|
|
35
|
+
* Transform columns using mapping functions
|
|
36
|
+
*/
|
|
37
|
+
transform(transformations: Record<string, (row: DataFrameRow) => any>): DataFrame;
|
|
38
|
+
/**
|
|
39
|
+
* Sort the DataFrame by a specific column
|
|
40
|
+
*/
|
|
41
|
+
sort(column: string, direction?: 'asc' | 'desc'): DataFrame;
|
|
42
|
+
/**
|
|
43
|
+
* Limit the number of rows in the DataFrame
|
|
44
|
+
*/
|
|
45
|
+
head(n: number): DataFrame;
|
|
46
|
+
/**
|
|
47
|
+
* Skip the first n rows
|
|
48
|
+
*/
|
|
49
|
+
tail(n: number): DataFrame;
|
|
50
|
+
/**
|
|
51
|
+
* Skip the first n rows
|
|
52
|
+
*/
|
|
53
|
+
skip(n: number): DataFrame;
|
|
54
|
+
/**
|
|
55
|
+
* Group rows by a specific column
|
|
56
|
+
*/
|
|
57
|
+
groupBy(column: string): GroupByResult;
|
|
58
|
+
/**
|
|
59
|
+
* Aggregate data by applying functions to groups
|
|
60
|
+
*/
|
|
61
|
+
agg(aggregations: Record<string, (values: any[]) => any>): DataFrameRow[];
|
|
62
|
+
/**
|
|
63
|
+
* Get unique values for a specific column
|
|
64
|
+
*/
|
|
65
|
+
unique(column: string): any[];
|
|
66
|
+
/**
|
|
67
|
+
* Count occurrences of each unique value in a column
|
|
68
|
+
*/
|
|
69
|
+
valueCounts(column: string): Record<string, number>;
|
|
70
|
+
/**
|
|
71
|
+
* Apply a function to each row
|
|
72
|
+
*/
|
|
73
|
+
map<T>(fn: (row: DataFrameRow, index: number) => T): T[];
|
|
74
|
+
/**
|
|
75
|
+
* Convert DataFrame to an array of objects
|
|
76
|
+
*/
|
|
77
|
+
toArray(): DataFrameRow[];
|
|
78
|
+
/**
|
|
79
|
+
* Convert DataFrame to CSV format
|
|
80
|
+
*/
|
|
81
|
+
toCSV(): string;
|
|
82
|
+
/**
|
|
83
|
+
* Convert DataFrame to JSON format
|
|
84
|
+
*/
|
|
85
|
+
toJSON(): string;
|
|
86
|
+
/**
|
|
87
|
+
* Convert DataFrame to a formatted table string
|
|
88
|
+
*/
|
|
89
|
+
toTable(): string;
|
|
90
|
+
/**
|
|
91
|
+
* Export DataFrame to a file
|
|
92
|
+
*/
|
|
93
|
+
export(filename: string, format?: 'csv' | 'json' | 'yaml' | 'table'): Promise<void>;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=DataFrame.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataFrame.d.ts","sourceRoot":"","sources":["../../../src/services/query-builder/DataFrame.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;CAC/B;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAiB;gBAEjB,IAAI,GAAE,YAAY,EAAO;IAIrC;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,SAAS;IAI5C;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,EAAE,CAGtB;IAED;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,GAAG,CAAC,GAAG,SAAS;IAYxE;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,GAAG,SAAS;IAK5D;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,GAAG,CAAC,GAAG,SAAS;IAYjF;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,KAAK,GAAG,MAAc,GAAG,SAAS;IAmBlE;;OAEG;IACH,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS;IAK1B;;OAEG;IACH,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS;IAK1B;;OAEG;IACH,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS;IAK1B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IActC;;OAEG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG,YAAY,EAAE;IAazE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE;IAe7B;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAWnD;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE;IAIxD;;OAEG;IACH,OAAO,IAAI,YAAY,EAAE;IAIzB;;OAEG;IACH,KAAK,IAAI,MAAM;IA4Bf;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;OAEG;IACH,OAAO,IAAI,MAAM;IAsCjB;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAiClG"}
|