@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.
Files changed (539) hide show
  1. package/LICENSE +609 -0
  2. package/README.md +317 -0
  3. package/anchor.bat +5 -0
  4. package/docs/API.md +314 -0
  5. package/docs/DEPLOYMENT.md +448 -0
  6. package/docs/INDEX.md +226 -0
  7. package/docs/STAR_Whitepaper_Executive.md +216 -0
  8. package/docs/TROUBLESHOOTING.md +535 -0
  9. package/docs/archive/GIT_BACKUP_VERIFICATION.md +297 -0
  10. package/docs/archive/adoption-guide.md +264 -0
  11. package/docs/archive/adoption-preparation.md +179 -0
  12. package/docs/archive/agent-harness-integration.md +227 -0
  13. package/docs/archive/api-reference.md +106 -0
  14. package/docs/archive/api_flows_diagram.md +118 -0
  15. package/docs/archive/architecture.md +410 -0
  16. package/docs/archive/architecture_diagram.md +174 -0
  17. package/docs/archive/broader-adoption-preparation.md +175 -0
  18. package/docs/archive/browser-paradigm-architecture.md +163 -0
  19. package/docs/archive/chat-integration.md +124 -0
  20. package/docs/archive/community-adoption-materials.md +103 -0
  21. package/docs/archive/community-adoption.md +147 -0
  22. package/docs/archive/comparison-with-siloed-solutions.md +192 -0
  23. package/docs/archive/comprehensive-docs.md +156 -0
  24. package/docs/archive/data_flow_diagram.md +251 -0
  25. package/docs/archive/enhancement-implementation-summary.md +146 -0
  26. package/docs/archive/evolution-summary.md +141 -0
  27. package/docs/archive/ingestion_pipeline_diagram.md +198 -0
  28. package/docs/archive/native-module-profiling-results.md +135 -0
  29. package/docs/archive/positioning-document.md +158 -0
  30. package/docs/archive/positioning.md +175 -0
  31. package/docs/archive/query-builder-documentation.md +218 -0
  32. package/docs/archive/quick-reference.md +40 -0
  33. package/docs/archive/quickstart.md +63 -0
  34. package/docs/archive/relationship-narrative-discovery.md +141 -0
  35. package/docs/archive/search-logic-improvement-plan.md +336 -0
  36. package/docs/archive/search_architecture_diagram.md +212 -0
  37. package/docs/archive/semantic-architecture-guide.md +97 -0
  38. package/docs/archive/sequence-diagrams.md +128 -0
  39. package/docs/archive/system_components_diagram.md +296 -0
  40. package/docs/archive/test-framework-integration.md +109 -0
  41. package/docs/archive/testing-framework-documentation.md +397 -0
  42. package/docs/archive/testing-framework-summary.md +121 -0
  43. package/docs/archive/testing-framework.md +377 -0
  44. package/docs/archive/ui-architecture.md +75 -0
  45. package/docs/arxiv/BIBLIOGRAPHY.bib +145 -0
  46. package/docs/arxiv/RELATED_WORK.tex +39 -0
  47. package/docs/arxiv/compile.bat +48 -0
  48. package/docs/arxiv/joss_response.md +33 -0
  49. package/docs/arxiv/prepare-submission.bat +46 -0
  50. package/docs/arxiv/review.md +128 -0
  51. package/docs/arxiv/star-whitepaper.tex +657 -0
  52. package/docs/code-patterns.md +289 -0
  53. package/docs/whitepaper.md +445 -0
  54. package/engine/dist/agent/runtime.d.ts +41 -0
  55. package/engine/dist/agent/runtime.d.ts.map +1 -0
  56. package/engine/dist/agent/runtime.js +73 -0
  57. package/engine/dist/agent/runtime.js.map +1 -0
  58. package/engine/dist/commands/audit-tags.d.ts +14 -0
  59. package/engine/dist/commands/audit-tags.d.ts.map +1 -0
  60. package/engine/dist/commands/audit-tags.js +180 -0
  61. package/engine/dist/commands/audit-tags.js.map +1 -0
  62. package/engine/dist/commands/distill.d.ts +19 -0
  63. package/engine/dist/commands/distill.d.ts.map +1 -0
  64. package/engine/dist/commands/distill.js +114 -0
  65. package/engine/dist/commands/distill.js.map +1 -0
  66. package/engine/dist/commands/generate-synonyms.d.ts +14 -0
  67. package/engine/dist/commands/generate-synonyms.d.ts.map +1 -0
  68. package/engine/dist/commands/generate-synonyms.js +91 -0
  69. package/engine/dist/commands/generate-synonyms.js.map +1 -0
  70. package/engine/dist/config/index.d.ts +115 -0
  71. package/engine/dist/config/index.d.ts.map +1 -0
  72. package/engine/dist/config/index.js +326 -0
  73. package/engine/dist/config/index.js.map +1 -0
  74. package/engine/dist/config/max-recall-config.d.ts +102 -0
  75. package/engine/dist/config/max-recall-config.d.ts.map +1 -0
  76. package/engine/dist/config/max-recall-config.js +102 -0
  77. package/engine/dist/config/max-recall-config.js.map +1 -0
  78. package/engine/dist/config/paths.d.ts +40 -0
  79. package/engine/dist/config/paths.d.ts.map +1 -0
  80. package/engine/dist/config/paths.js +49 -0
  81. package/engine/dist/config/paths.js.map +1 -0
  82. package/engine/dist/core/batch.d.ts +19 -0
  83. package/engine/dist/core/batch.d.ts.map +1 -0
  84. package/engine/dist/core/batch.js +37 -0
  85. package/engine/dist/core/batch.js.map +1 -0
  86. package/engine/dist/core/db.d.ts +58 -0
  87. package/engine/dist/core/db.d.ts.map +1 -0
  88. package/engine/dist/core/db.js +563 -0
  89. package/engine/dist/core/db.js.map +1 -0
  90. package/engine/dist/core/inference/ChatWorker.d.ts +2 -0
  91. package/engine/dist/core/inference/ChatWorker.d.ts.map +1 -0
  92. package/engine/dist/core/inference/ChatWorker.js +28 -0
  93. package/engine/dist/core/inference/ChatWorker.js.map +1 -0
  94. package/engine/dist/core/inference/context_manager.d.ts +49 -0
  95. package/engine/dist/core/inference/context_manager.d.ts.map +1 -0
  96. package/engine/dist/core/inference/context_manager.js +199 -0
  97. package/engine/dist/core/inference/context_manager.js.map +1 -0
  98. package/engine/dist/core/inference/llamaLoaderWorker.d.ts +2 -0
  99. package/engine/dist/core/inference/llamaLoaderWorker.d.ts.map +1 -0
  100. package/engine/dist/core/inference/llamaLoaderWorker.js +23 -0
  101. package/engine/dist/core/inference/llamaLoaderWorker.js.map +1 -0
  102. package/engine/dist/core/vector.d.ts +40 -0
  103. package/engine/dist/core/vector.d.ts.map +1 -0
  104. package/engine/dist/core/vector.js +167 -0
  105. package/engine/dist/core/vector.js.map +1 -0
  106. package/engine/dist/index.d.ts +4 -0
  107. package/engine/dist/index.d.ts.map +1 -0
  108. package/engine/dist/index.js +400 -0
  109. package/engine/dist/index.js.map +1 -0
  110. package/engine/dist/middleware/auth.d.ts +14 -0
  111. package/engine/dist/middleware/auth.d.ts.map +1 -0
  112. package/engine/dist/middleware/auth.js +44 -0
  113. package/engine/dist/middleware/auth.js.map +1 -0
  114. package/engine/dist/middleware/request-tracing.d.ts +29 -0
  115. package/engine/dist/middleware/request-tracing.d.ts.map +1 -0
  116. package/engine/dist/middleware/request-tracing.js +115 -0
  117. package/engine/dist/middleware/request-tracing.js.map +1 -0
  118. package/engine/dist/middleware/validate.d.ts +30 -0
  119. package/engine/dist/middleware/validate.d.ts.map +1 -0
  120. package/engine/dist/middleware/validate.js +117 -0
  121. package/engine/dist/middleware/validate.js.map +1 -0
  122. package/engine/dist/native/index.d.ts +106 -0
  123. package/engine/dist/native/index.d.ts.map +1 -0
  124. package/engine/dist/native/index.js +230 -0
  125. package/engine/dist/native/index.js.map +1 -0
  126. package/engine/dist/native/types.d.ts +45 -0
  127. package/engine/dist/native/types.d.ts.map +1 -0
  128. package/engine/dist/native/types.js +6 -0
  129. package/engine/dist/native/types.js.map +1 -0
  130. package/engine/dist/profiling/atomization-profiling.d.ts +8 -0
  131. package/engine/dist/profiling/atomization-profiling.d.ts.map +1 -0
  132. package/engine/dist/profiling/atomization-profiling.js +108 -0
  133. package/engine/dist/profiling/atomization-profiling.js.map +1 -0
  134. package/engine/dist/profiling/bottleneck-identification.d.ts +8 -0
  135. package/engine/dist/profiling/bottleneck-identification.d.ts.map +1 -0
  136. package/engine/dist/profiling/bottleneck-identification.js +249 -0
  137. package/engine/dist/profiling/bottleneck-identification.js.map +1 -0
  138. package/engine/dist/profiling/content-sanitization-profiling.d.ts +12 -0
  139. package/engine/dist/profiling/content-sanitization-profiling.d.ts.map +1 -0
  140. package/engine/dist/profiling/content-sanitization-profiling.js +266 -0
  141. package/engine/dist/profiling/content-sanitization-profiling.js.map +1 -0
  142. package/engine/dist/profiling/simhash-profiling.d.ts +11 -0
  143. package/engine/dist/profiling/simhash-profiling.d.ts.map +1 -0
  144. package/engine/dist/profiling/simhash-profiling.js +168 -0
  145. package/engine/dist/profiling/simhash-profiling.js.map +1 -0
  146. package/engine/dist/routes/api.d.ts +9 -0
  147. package/engine/dist/routes/api.d.ts.map +1 -0
  148. package/engine/dist/routes/api.js +37 -0
  149. package/engine/dist/routes/api.js.map +1 -0
  150. package/engine/dist/routes/enhanced-api.d.ts +9 -0
  151. package/engine/dist/routes/enhanced-api.d.ts.map +1 -0
  152. package/engine/dist/routes/enhanced-api.js +139 -0
  153. package/engine/dist/routes/enhanced-api.js.map +1 -0
  154. package/engine/dist/routes/health.d.ts +8 -0
  155. package/engine/dist/routes/health.d.ts.map +1 -0
  156. package/engine/dist/routes/health.js +89 -0
  157. package/engine/dist/routes/health.js.map +1 -0
  158. package/engine/dist/routes/monitoring.d.ts +8 -0
  159. package/engine/dist/routes/monitoring.d.ts.map +1 -0
  160. package/engine/dist/routes/monitoring.js +509 -0
  161. package/engine/dist/routes/monitoring.js.map +1 -0
  162. package/engine/dist/routes/v1/admin.d.ts +3 -0
  163. package/engine/dist/routes/v1/admin.d.ts.map +1 -0
  164. package/engine/dist/routes/v1/admin.js +261 -0
  165. package/engine/dist/routes/v1/admin.js.map +1 -0
  166. package/engine/dist/routes/v1/atoms.d.ts +3 -0
  167. package/engine/dist/routes/v1/atoms.d.ts.map +1 -0
  168. package/engine/dist/routes/v1/atoms.js +172 -0
  169. package/engine/dist/routes/v1/atoms.js.map +1 -0
  170. package/engine/dist/routes/v1/backup.d.ts +3 -0
  171. package/engine/dist/routes/v1/backup.d.ts.map +1 -0
  172. package/engine/dist/routes/v1/backup.js +100 -0
  173. package/engine/dist/routes/v1/backup.js.map +1 -0
  174. package/engine/dist/routes/v1/git.d.ts +3 -0
  175. package/engine/dist/routes/v1/git.d.ts.map +1 -0
  176. package/engine/dist/routes/v1/git.js +316 -0
  177. package/engine/dist/routes/v1/git.js.map +1 -0
  178. package/engine/dist/routes/v1/ingest.d.ts +3 -0
  179. package/engine/dist/routes/v1/ingest.d.ts.map +1 -0
  180. package/engine/dist/routes/v1/ingest.js +66 -0
  181. package/engine/dist/routes/v1/ingest.js.map +1 -0
  182. package/engine/dist/routes/v1/memory.d.ts +14 -0
  183. package/engine/dist/routes/v1/memory.d.ts.map +1 -0
  184. package/engine/dist/routes/v1/memory.js +87 -0
  185. package/engine/dist/routes/v1/memory.js.map +1 -0
  186. package/engine/dist/routes/v1/research.d.ts +3 -0
  187. package/engine/dist/routes/v1/research.d.ts.map +1 -0
  188. package/engine/dist/routes/v1/research.js +109 -0
  189. package/engine/dist/routes/v1/research.js.map +1 -0
  190. package/engine/dist/routes/v1/search.d.ts +3 -0
  191. package/engine/dist/routes/v1/search.d.ts.map +1 -0
  192. package/engine/dist/routes/v1/search.js +180 -0
  193. package/engine/dist/routes/v1/search.js.map +1 -0
  194. package/engine/dist/routes/v1/settings.d.ts +8 -0
  195. package/engine/dist/routes/v1/settings.d.ts.map +1 -0
  196. package/engine/dist/routes/v1/settings.js +211 -0
  197. package/engine/dist/routes/v1/settings.js.map +1 -0
  198. package/engine/dist/routes/v1/system.d.ts +3 -0
  199. package/engine/dist/routes/v1/system.d.ts.map +1 -0
  200. package/engine/dist/routes/v1/system.js +326 -0
  201. package/engine/dist/routes/v1/system.js.map +1 -0
  202. package/engine/dist/routes/v1/tags.d.ts +3 -0
  203. package/engine/dist/routes/v1/tags.d.ts.map +1 -0
  204. package/engine/dist/routes/v1/tags.js +102 -0
  205. package/engine/dist/routes/v1/tags.js.map +1 -0
  206. package/engine/dist/server-8080.d.ts +2 -0
  207. package/engine/dist/server-8080.d.ts.map +1 -0
  208. package/engine/dist/server-8080.js +74 -0
  209. package/engine/dist/server-8080.js.map +1 -0
  210. package/engine/dist/services/backup/backup-restore.d.ts +37 -0
  211. package/engine/dist/services/backup/backup-restore.d.ts.map +1 -0
  212. package/engine/dist/services/backup/backup-restore.js +385 -0
  213. package/engine/dist/services/backup/backup-restore.js.map +1 -0
  214. package/engine/dist/services/backup/backup.d.ts +14 -0
  215. package/engine/dist/services/backup/backup.d.ts.map +1 -0
  216. package/engine/dist/services/backup/backup.js +442 -0
  217. package/engine/dist/services/backup/backup.js.map +1 -0
  218. package/engine/dist/services/distillation/radial-distiller-v2.d.ts +127 -0
  219. package/engine/dist/services/distillation/radial-distiller-v2.d.ts.map +1 -0
  220. package/engine/dist/services/distillation/radial-distiller-v2.js +503 -0
  221. package/engine/dist/services/distillation/radial-distiller-v2.js.map +1 -0
  222. package/engine/dist/services/distillation/radial-distiller.d.ts +63 -0
  223. package/engine/dist/services/distillation/radial-distiller.d.ts.map +1 -0
  224. package/engine/dist/services/distillation/radial-distiller.js +394 -0
  225. package/engine/dist/services/distillation/radial-distiller.js.map +1 -0
  226. package/engine/dist/services/health-check-enhanced.d.ts +89 -0
  227. package/engine/dist/services/health-check-enhanced.d.ts.map +1 -0
  228. package/engine/dist/services/health-check-enhanced.js +417 -0
  229. package/engine/dist/services/health-check-enhanced.js.map +1 -0
  230. package/engine/dist/services/idle-manager.d.ts +56 -0
  231. package/engine/dist/services/idle-manager.d.ts.map +1 -0
  232. package/engine/dist/services/idle-manager.js +210 -0
  233. package/engine/dist/services/idle-manager.js.map +1 -0
  234. package/engine/dist/services/inference/inference-service.d.ts +27 -0
  235. package/engine/dist/services/inference/inference-service.d.ts.map +1 -0
  236. package/engine/dist/services/inference/inference-service.js +89 -0
  237. package/engine/dist/services/inference/inference-service.js.map +1 -0
  238. package/engine/dist/services/inference/inference.d.ts +59 -0
  239. package/engine/dist/services/inference/inference.d.ts.map +1 -0
  240. package/engine/dist/services/inference/inference.js +131 -0
  241. package/engine/dist/services/inference/inference.js.map +1 -0
  242. package/engine/dist/services/ingest/atomizer-service.d.ts +74 -0
  243. package/engine/dist/services/ingest/atomizer-service.d.ts.map +1 -0
  244. package/engine/dist/services/ingest/atomizer-service.js +982 -0
  245. package/engine/dist/services/ingest/atomizer-service.js.map +1 -0
  246. package/engine/dist/services/ingest/content-cleaner.d.ts +43 -0
  247. package/engine/dist/services/ingest/content-cleaner.d.ts.map +1 -0
  248. package/engine/dist/services/ingest/content-cleaner.js +166 -0
  249. package/engine/dist/services/ingest/content-cleaner.js.map +1 -0
  250. package/engine/dist/services/ingest/github-ingest-service.d.ts +103 -0
  251. package/engine/dist/services/ingest/github-ingest-service.d.ts.map +1 -0
  252. package/engine/dist/services/ingest/github-ingest-service.js +537 -0
  253. package/engine/dist/services/ingest/github-ingest-service.js.map +1 -0
  254. package/engine/dist/services/ingest/ingest-atomic.d.ts +16 -0
  255. package/engine/dist/services/ingest/ingest-atomic.d.ts.map +1 -0
  256. package/engine/dist/services/ingest/ingest-atomic.js +437 -0
  257. package/engine/dist/services/ingest/ingest-atomic.js.map +1 -0
  258. package/engine/dist/services/ingest/ingest.d.ts +50 -0
  259. package/engine/dist/services/ingest/ingest.d.ts.map +1 -0
  260. package/engine/dist/services/ingest/ingest.js +230 -0
  261. package/engine/dist/services/ingest/ingest.js.map +1 -0
  262. package/engine/dist/services/ingest/watchdog.d.ts +31 -0
  263. package/engine/dist/services/ingest/watchdog.d.ts.map +1 -0
  264. package/engine/dist/services/ingest/watchdog.js +400 -0
  265. package/engine/dist/services/ingest/watchdog.js.map +1 -0
  266. package/engine/dist/services/llm/context.d.ts +6 -0
  267. package/engine/dist/services/llm/context.d.ts.map +1 -0
  268. package/engine/dist/services/llm/context.js +80 -0
  269. package/engine/dist/services/llm/context.js.map +1 -0
  270. package/engine/dist/services/llm/provider.d.ts +23 -0
  271. package/engine/dist/services/llm/provider.d.ts.map +1 -0
  272. package/engine/dist/services/llm/provider.js +338 -0
  273. package/engine/dist/services/llm/provider.js.map +1 -0
  274. package/engine/dist/services/llm/reader.d.ts +12 -0
  275. package/engine/dist/services/llm/reader.d.ts.map +1 -0
  276. package/engine/dist/services/llm/reader.js +40 -0
  277. package/engine/dist/services/llm/reader.js.map +1 -0
  278. package/engine/dist/services/mirror/mirror.d.ts +28 -0
  279. package/engine/dist/services/mirror/mirror.d.ts.map +1 -0
  280. package/engine/dist/services/mirror/mirror.js +208 -0
  281. package/engine/dist/services/mirror/mirror.js.map +1 -0
  282. package/engine/dist/services/nlp/nlp-service.d.ts +70 -0
  283. package/engine/dist/services/nlp/nlp-service.d.ts.map +1 -0
  284. package/engine/dist/services/nlp/nlp-service.js +151 -0
  285. package/engine/dist/services/nlp/nlp-service.js.map +1 -0
  286. package/engine/dist/services/nlp/query-parser.d.ts +9 -0
  287. package/engine/dist/services/nlp/query-parser.d.ts.map +1 -0
  288. package/engine/dist/services/nlp/query-parser.js +29 -0
  289. package/engine/dist/services/nlp/query-parser.js.map +1 -0
  290. package/engine/dist/services/query-builder/DataFrame.d.ts +95 -0
  291. package/engine/dist/services/query-builder/DataFrame.d.ts.map +1 -0
  292. package/engine/dist/services/query-builder/DataFrame.js +263 -0
  293. package/engine/dist/services/query-builder/DataFrame.js.map +1 -0
  294. package/engine/dist/services/query-builder/QueryBuilder.d.ts +106 -0
  295. package/engine/dist/services/query-builder/QueryBuilder.d.ts.map +1 -0
  296. package/engine/dist/services/query-builder/QueryBuilder.js +235 -0
  297. package/engine/dist/services/query-builder/QueryBuilder.js.map +1 -0
  298. package/engine/dist/services/query-builder/utils/export.d.ts +11 -0
  299. package/engine/dist/services/query-builder/utils/export.d.ts.map +1 -0
  300. package/engine/dist/services/query-builder/utils/export.js +130 -0
  301. package/engine/dist/services/query-builder/utils/export.js.map +1 -0
  302. package/engine/dist/services/research/researcher.d.ts +15 -0
  303. package/engine/dist/services/research/researcher.d.ts.map +1 -0
  304. package/engine/dist/services/research/researcher.js +123 -0
  305. package/engine/dist/services/research/researcher.js.map +1 -0
  306. package/engine/dist/services/scribe/scribe.d.ts +43 -0
  307. package/engine/dist/services/scribe/scribe.d.ts.map +1 -0
  308. package/engine/dist/services/scribe/scribe.js +135 -0
  309. package/engine/dist/services/scribe/scribe.js.map +1 -0
  310. package/engine/dist/services/search/bright-nodes.d.ts +41 -0
  311. package/engine/dist/services/search/bright-nodes.d.ts.map +1 -0
  312. package/engine/dist/services/search/bright-nodes.js +117 -0
  313. package/engine/dist/services/search/bright-nodes.js.map +1 -0
  314. package/engine/dist/services/search/context-inflator.d.ts +63 -0
  315. package/engine/dist/services/search/context-inflator.d.ts.map +1 -0
  316. package/engine/dist/services/search/context-inflator.js +649 -0
  317. package/engine/dist/services/search/context-inflator.js.map +1 -0
  318. package/engine/dist/services/search/context-manager.d.ts +34 -0
  319. package/engine/dist/services/search/context-manager.d.ts.map +1 -0
  320. package/engine/dist/services/search/context-manager.js +124 -0
  321. package/engine/dist/services/search/context-manager.js.map +1 -0
  322. package/engine/dist/services/search/distributed-query.d.ts +38 -0
  323. package/engine/dist/services/search/distributed-query.d.ts.map +1 -0
  324. package/engine/dist/services/search/distributed-query.js +105 -0
  325. package/engine/dist/services/search/distributed-query.js.map +1 -0
  326. package/engine/dist/services/search/explore.d.ts +73 -0
  327. package/engine/dist/services/search/explore.d.ts.map +1 -0
  328. package/engine/dist/services/search/explore.js +388 -0
  329. package/engine/dist/services/search/explore.js.map +1 -0
  330. package/engine/dist/services/search/graph-context-serializer.d.ts +76 -0
  331. package/engine/dist/services/search/graph-context-serializer.d.ts.map +1 -0
  332. package/engine/dist/services/search/graph-context-serializer.js +435 -0
  333. package/engine/dist/services/search/graph-context-serializer.js.map +1 -0
  334. package/engine/dist/services/search/llm-context-formatter.d.ts +122 -0
  335. package/engine/dist/services/search/llm-context-formatter.d.ts.map +1 -0
  336. package/engine/dist/services/search/llm-context-formatter.js +394 -0
  337. package/engine/dist/services/search/llm-context-formatter.js.map +1 -0
  338. package/engine/dist/services/search/physics-tag-walker.d.ts +115 -0
  339. package/engine/dist/services/search/physics-tag-walker.d.ts.map +1 -0
  340. package/engine/dist/services/search/physics-tag-walker.js +611 -0
  341. package/engine/dist/services/search/physics-tag-walker.js.map +1 -0
  342. package/engine/dist/services/search/query-parser.d.ts +66 -0
  343. package/engine/dist/services/search/query-parser.d.ts.map +1 -0
  344. package/engine/dist/services/search/query-parser.js +346 -0
  345. package/engine/dist/services/search/query-parser.js.map +1 -0
  346. package/engine/dist/services/search/search-utils.d.ts +100 -0
  347. package/engine/dist/services/search/search-utils.d.ts.map +1 -0
  348. package/engine/dist/services/search/search-utils.js +473 -0
  349. package/engine/dist/services/search/search-utils.js.map +1 -0
  350. package/engine/dist/services/search/search.d.ts +116 -0
  351. package/engine/dist/services/search/search.d.ts.map +1 -0
  352. package/engine/dist/services/search/search.js +1286 -0
  353. package/engine/dist/services/search/search.js.map +1 -0
  354. package/engine/dist/services/search/sovereign-system-prompt.d.ts +48 -0
  355. package/engine/dist/services/search/sovereign-system-prompt.d.ts.map +1 -0
  356. package/engine/dist/services/search/sovereign-system-prompt.js +101 -0
  357. package/engine/dist/services/search/sovereign-system-prompt.js.map +1 -0
  358. package/engine/dist/services/search/streaming-search.d.ts +51 -0
  359. package/engine/dist/services/search/streaming-search.d.ts.map +1 -0
  360. package/engine/dist/services/search/streaming-search.js +94 -0
  361. package/engine/dist/services/search/streaming-search.js.map +1 -0
  362. package/engine/dist/services/semantic/semantic-ingestion-service.d.ts +53 -0
  363. package/engine/dist/services/semantic/semantic-ingestion-service.d.ts.map +1 -0
  364. package/engine/dist/services/semantic/semantic-ingestion-service.js +625 -0
  365. package/engine/dist/services/semantic/semantic-ingestion-service.js.map +1 -0
  366. package/engine/dist/services/semantic/semantic-molecule-processor.d.ts +68 -0
  367. package/engine/dist/services/semantic/semantic-molecule-processor.d.ts.map +1 -0
  368. package/engine/dist/services/semantic/semantic-molecule-processor.js +176 -0
  369. package/engine/dist/services/semantic/semantic-molecule-processor.js.map +1 -0
  370. package/engine/dist/services/semantic/semantic-search.d.ts +52 -0
  371. package/engine/dist/services/semantic/semantic-search.d.ts.map +1 -0
  372. package/engine/dist/services/semantic/semantic-search.js +649 -0
  373. package/engine/dist/services/semantic/semantic-search.js.map +1 -0
  374. package/engine/dist/services/semantic/semantic-tag-deriver.d.ts +64 -0
  375. package/engine/dist/services/semantic/semantic-tag-deriver.d.ts.map +1 -0
  376. package/engine/dist/services/semantic/semantic-tag-deriver.js +191 -0
  377. package/engine/dist/services/semantic/semantic-tag-deriver.js.map +1 -0
  378. package/engine/dist/services/semantic/types/semantic.d.ts +26 -0
  379. package/engine/dist/services/semantic/types/semantic.d.ts.map +1 -0
  380. package/engine/dist/services/semantic/types/semantic.js +7 -0
  381. package/engine/dist/services/semantic/types/semantic.js.map +1 -0
  382. package/engine/dist/services/synonyms/auto-synonym-generator.d.ts +79 -0
  383. package/engine/dist/services/synonyms/auto-synonym-generator.d.ts.map +1 -0
  384. package/engine/dist/services/synonyms/auto-synonym-generator.js +415 -0
  385. package/engine/dist/services/synonyms/auto-synonym-generator.js.map +1 -0
  386. package/engine/dist/services/system-status.d.ts +68 -0
  387. package/engine/dist/services/system-status.d.ts.map +1 -0
  388. package/engine/dist/services/system-status.js +107 -0
  389. package/engine/dist/services/system-status.js.map +1 -0
  390. package/engine/dist/services/tags/discovery.d.ts +16 -0
  391. package/engine/dist/services/tags/discovery.d.ts.map +1 -0
  392. package/engine/dist/services/tags/discovery.js +206 -0
  393. package/engine/dist/services/tags/discovery.js.map +1 -0
  394. package/engine/dist/services/tags/gliner.d.ts +18 -0
  395. package/engine/dist/services/tags/gliner.d.ts.map +1 -0
  396. package/engine/dist/services/tags/gliner.js +119 -0
  397. package/engine/dist/services/tags/gliner.js.map +1 -0
  398. package/engine/dist/services/tags/infector.d.ts +21 -0
  399. package/engine/dist/services/tags/infector.d.ts.map +1 -0
  400. package/engine/dist/services/tags/infector.js +168 -0
  401. package/engine/dist/services/tags/infector.js.map +1 -0
  402. package/engine/dist/services/tags/tag-auditor.d.ts +77 -0
  403. package/engine/dist/services/tags/tag-auditor.d.ts.map +1 -0
  404. package/engine/dist/services/tags/tag-auditor.js +283 -0
  405. package/engine/dist/services/tags/tag-auditor.js.map +1 -0
  406. package/engine/dist/services/taxonomy/taxonomy-manager.d.ts +50 -0
  407. package/engine/dist/services/taxonomy/taxonomy-manager.d.ts.map +1 -0
  408. package/engine/dist/services/taxonomy/taxonomy-manager.js +291 -0
  409. package/engine/dist/services/taxonomy/taxonomy-manager.js.map +1 -0
  410. package/engine/dist/services/vision/vision_service.d.ts +4 -0
  411. package/engine/dist/services/vision/vision_service.d.ts.map +1 -0
  412. package/engine/dist/services/vision/vision_service.js +197 -0
  413. package/engine/dist/services/vision/vision_service.js.map +1 -0
  414. package/engine/dist/test-framework/core.d.ts +133 -0
  415. package/engine/dist/test-framework/core.d.ts.map +1 -0
  416. package/engine/dist/test-framework/core.js +313 -0
  417. package/engine/dist/test-framework/core.js.map +1 -0
  418. package/engine/dist/test-framework/dataset-runner.d.ts +78 -0
  419. package/engine/dist/test-framework/dataset-runner.d.ts.map +1 -0
  420. package/engine/dist/test-framework/dataset-runner.js +223 -0
  421. package/engine/dist/test-framework/dataset-runner.js.map +1 -0
  422. package/engine/dist/test-framework/diagnostic-tests.d.ts +38 -0
  423. package/engine/dist/test-framework/diagnostic-tests.d.ts.map +1 -0
  424. package/engine/dist/test-framework/diagnostic-tests.js +283 -0
  425. package/engine/dist/test-framework/diagnostic-tests.js.map +1 -0
  426. package/engine/dist/test-framework/performance-regression-tests.d.ts +30 -0
  427. package/engine/dist/test-framework/performance-regression-tests.d.ts.map +1 -0
  428. package/engine/dist/test-framework/performance-regression-tests.js +331 -0
  429. package/engine/dist/test-framework/performance-regression-tests.js.map +1 -0
  430. package/engine/dist/types/api.d.ts +53 -0
  431. package/engine/dist/types/api.d.ts.map +1 -0
  432. package/engine/dist/types/api.js +2 -0
  433. package/engine/dist/types/api.js.map +1 -0
  434. package/engine/dist/types/atomic.d.ts +42 -0
  435. package/engine/dist/types/atomic.d.ts.map +1 -0
  436. package/engine/dist/types/atomic.js +10 -0
  437. package/engine/dist/types/atomic.js.map +1 -0
  438. package/engine/dist/types/context-protocol.d.ts +137 -0
  439. package/engine/dist/types/context-protocol.d.ts.map +1 -0
  440. package/engine/dist/types/context-protocol.js +28 -0
  441. package/engine/dist/types/context-protocol.js.map +1 -0
  442. package/engine/dist/types/context.d.ts +2 -0
  443. package/engine/dist/types/context.d.ts.map +1 -0
  444. package/engine/dist/types/context.js +2 -0
  445. package/engine/dist/types/context.js.map +1 -0
  446. package/engine/dist/types/index.d.ts +20 -0
  447. package/engine/dist/types/index.d.ts.map +1 -0
  448. package/engine/dist/types/index.js +18 -0
  449. package/engine/dist/types/index.js.map +1 -0
  450. package/engine/dist/types/search.d.ts +31 -0
  451. package/engine/dist/types/search.d.ts.map +1 -0
  452. package/engine/dist/types/search.js +2 -0
  453. package/engine/dist/types/search.js.map +1 -0
  454. package/engine/dist/types/taxonomy.d.ts +137 -0
  455. package/engine/dist/types/taxonomy.d.ts.map +1 -0
  456. package/engine/dist/types/taxonomy.js +138 -0
  457. package/engine/dist/types/taxonomy.js.map +1 -0
  458. package/engine/dist/types/taxonomy.simple.d.ts +131 -0
  459. package/engine/dist/types/taxonomy.simple.d.ts.map +1 -0
  460. package/engine/dist/types/taxonomy.simple.js +132 -0
  461. package/engine/dist/types/taxonomy.simple.js.map +1 -0
  462. package/engine/dist/types/tool-call.d.ts +16 -0
  463. package/engine/dist/types/tool-call.d.ts.map +1 -0
  464. package/engine/dist/types/tool-call.js +6 -0
  465. package/engine/dist/types/tool-call.js.map +1 -0
  466. package/engine/dist/types/trace.d.ts +25 -0
  467. package/engine/dist/types/trace.d.ts.map +1 -0
  468. package/engine/dist/types/trace.js +5 -0
  469. package/engine/dist/types/trace.js.map +1 -0
  470. package/engine/dist/utils/adaptive-concurrency.d.ts +81 -0
  471. package/engine/dist/utils/adaptive-concurrency.d.ts.map +1 -0
  472. package/engine/dist/utils/adaptive-concurrency.js +266 -0
  473. package/engine/dist/utils/adaptive-concurrency.js.map +1 -0
  474. package/engine/dist/utils/date_extractor.d.ts +2 -0
  475. package/engine/dist/utils/date_extractor.d.ts.map +1 -0
  476. package/engine/dist/utils/date_extractor.js +32 -0
  477. package/engine/dist/utils/date_extractor.js.map +1 -0
  478. package/engine/dist/utils/native-module-manager.d.ts +48 -0
  479. package/engine/dist/utils/native-module-manager.d.ts.map +1 -0
  480. package/engine/dist/utils/native-module-manager.js +265 -0
  481. package/engine/dist/utils/native-module-manager.js.map +1 -0
  482. package/engine/dist/utils/native-module-profiler.d.ts +66 -0
  483. package/engine/dist/utils/native-module-profiler.d.ts.map +1 -0
  484. package/engine/dist/utils/native-module-profiler.js +182 -0
  485. package/engine/dist/utils/native-module-profiler.js.map +1 -0
  486. package/engine/dist/utils/path-manager.d.ts +59 -0
  487. package/engine/dist/utils/path-manager.d.ts.map +1 -0
  488. package/engine/dist/utils/path-manager.js +154 -0
  489. package/engine/dist/utils/path-manager.js.map +1 -0
  490. package/engine/dist/utils/performance-monitor.d.ts +92 -0
  491. package/engine/dist/utils/performance-monitor.d.ts.map +1 -0
  492. package/engine/dist/utils/performance-monitor.js +221 -0
  493. package/engine/dist/utils/performance-monitor.js.map +1 -0
  494. package/engine/dist/utils/process-manager.d.ts +18 -0
  495. package/engine/dist/utils/process-manager.d.ts.map +1 -0
  496. package/engine/dist/utils/process-manager.js +100 -0
  497. package/engine/dist/utils/process-manager.js.map +1 -0
  498. package/engine/dist/utils/request-tracer.d.ts +131 -0
  499. package/engine/dist/utils/request-tracer.d.ts.map +1 -0
  500. package/engine/dist/utils/request-tracer.js +414 -0
  501. package/engine/dist/utils/request-tracer.js.map +1 -0
  502. package/engine/dist/utils/resource-manager.d.ts +108 -0
  503. package/engine/dist/utils/resource-manager.d.ts.map +1 -0
  504. package/engine/dist/utils/resource-manager.js +235 -0
  505. package/engine/dist/utils/resource-manager.js.map +1 -0
  506. package/engine/dist/utils/safe-dns.d.ts +14 -0
  507. package/engine/dist/utils/safe-dns.d.ts.map +1 -0
  508. package/engine/dist/utils/safe-dns.js +105 -0
  509. package/engine/dist/utils/safe-dns.js.map +1 -0
  510. package/engine/dist/utils/structured-logger.d.ts +124 -0
  511. package/engine/dist/utils/structured-logger.d.ts.map +1 -0
  512. package/engine/dist/utils/structured-logger.js +332 -0
  513. package/engine/dist/utils/structured-logger.js.map +1 -0
  514. package/engine/dist/utils/tag-cleanup.d.ts +11 -0
  515. package/engine/dist/utils/tag-cleanup.d.ts.map +1 -0
  516. package/engine/dist/utils/tag-cleanup.js +111 -0
  517. package/engine/dist/utils/tag-cleanup.js.map +1 -0
  518. package/engine/dist/utils/tag-filter.d.ts +19 -0
  519. package/engine/dist/utils/tag-filter.d.ts.map +1 -0
  520. package/engine/dist/utils/tag-filter.js +147 -0
  521. package/engine/dist/utils/tag-filter.js.map +1 -0
  522. package/engine/dist/utils/tag-modulation.d.ts +80 -0
  523. package/engine/dist/utils/tag-modulation.d.ts.map +1 -0
  524. package/engine/dist/utils/tag-modulation.js +284 -0
  525. package/engine/dist/utils/tag-modulation.js.map +1 -0
  526. package/engine/dist/utils/timer.d.ts +40 -0
  527. package/engine/dist/utils/timer.d.ts.map +1 -0
  528. package/engine/dist/utils/timer.js +76 -0
  529. package/engine/dist/utils/timer.js.map +1 -0
  530. package/engine/dist/utils/token-utils.d.ts +19 -0
  531. package/engine/dist/utils/token-utils.d.ts.map +1 -0
  532. package/engine/dist/utils/token-utils.js +71 -0
  533. package/engine/dist/utils/token-utils.js.map +1 -0
  534. package/engine/dist/utils/wasm-module-loader.d.ts +50 -0
  535. package/engine/dist/utils/wasm-module-loader.d.ts.map +1 -0
  536. package/engine/dist/utils/wasm-module-loader.js +136 -0
  537. package/engine/dist/utils/wasm-module-loader.js.map +1 -0
  538. package/engine/package.json +105 -0
  539. package/package.json +106 -0
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Tag Modulation System
3
+ *
4
+ * Controls tag generation strictness and filtering based on user settings.
5
+ * Modulation levels:
6
+ * 0% = Only strict entities (PERSON, ORG, PRODUCT, etc.)
7
+ * 50% = Entities + meaningful common words
8
+ * 100% = All tags (no filtering)
9
+ *
10
+ * Settings controlled via user_settings.json:
11
+ * - tagging.modulation_level: 0-100
12
+ * - tagging.blacklist_strictness: 0-100
13
+ * - tagging.atom_as_tag: whether atoms become tags
14
+ * - tagging.strict_atom_selection: tighter atom extraction
15
+ * - tagging.min_tag_length: minimum character length
16
+ * - tagging.max_tags_per_molecule: cap on tags per molecule
17
+ */
18
+ export interface TagModulationSettings {
19
+ modulation_level: number;
20
+ blacklist_strictness: number;
21
+ atom_as_tag: boolean;
22
+ strict_atom_selection: boolean;
23
+ min_tag_length: number;
24
+ max_tags_per_molecule: number;
25
+ common_words_filter: boolean;
26
+ entity_extraction: {
27
+ enabled: boolean;
28
+ min_confidence: number;
29
+ categories: string[];
30
+ };
31
+ }
32
+ /**
33
+ * Get current tag modulation settings from config
34
+ */
35
+ export declare function getTagModulationSettings(): TagModulationSettings;
36
+ /**
37
+ * Check if a tag passes the blacklist filter based on strictness level
38
+ */
39
+ export declare function passesBlacklist(tag: string, strictness?: number): boolean;
40
+ /**
41
+ * Check if a word is a common word that should be filtered
42
+ */
43
+ export declare function isCommonWord(word: string): boolean;
44
+ /**
45
+ * Check if a tag looks like an entity (high-value tag)
46
+ */
47
+ export declare function isEntityTag(tag: string): boolean;
48
+ /**
49
+ * Filter tags based on modulation level
50
+ *
51
+ * @param tags - Array of tags to filter
52
+ * @param modulationLevel - 0-100 (0=strict, 100=lenient)
53
+ * @param strictness - 0-100 blacklist strictness
54
+ */
55
+ export declare function modulateTags(tags: string[], modulationLevel?: number, strictness?: number): string[];
56
+ /**
57
+ * Filter atom labels to become tags (if enabled)
58
+ */
59
+ export declare function filterAtomLabelsAsTags(labels: string[]): string[];
60
+ /**
61
+ * Check if atom selection should be strict
62
+ */
63
+ export declare function shouldUseStrictAtomSelection(): boolean;
64
+ /**
65
+ * Get minimum confidence for entity extraction
66
+ */
67
+ export declare function getEntityMinConfidence(): number;
68
+ /**
69
+ * Check if entity extraction is enabled for a category
70
+ */
71
+ export declare function isEntityCategoryEnabled(category: string): boolean;
72
+ /**
73
+ * Validate and normalize a tag
74
+ */
75
+ export declare function normalizeTag(tag: string): string | null;
76
+ /**
77
+ * Batch process and modulate tags for a molecule
78
+ */
79
+ export declare function processMoleculeTags(rawTags: string[], atomLabels?: string[]): string[];
80
+ //# sourceMappingURL=tag-modulation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-modulation.d.ts","sourceRoot":"","sources":["../../src/utils/tag-modulation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAmFH,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,qBAAqB,CAiBhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,MAAW,GAAG,OAAO,CAoC7E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAgBhD;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,GAAE,MAAW,EAC5B,UAAU,GAAE,MAAW,GACtB,MAAM,EAAE,CAsCV;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAYjE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAG/C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIjE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsBvD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,MAAM,EAAE,CAmBV"}
@@ -0,0 +1,284 @@
1
+ /**
2
+ * Tag Modulation System
3
+ *
4
+ * Controls tag generation strictness and filtering based on user settings.
5
+ * Modulation levels:
6
+ * 0% = Only strict entities (PERSON, ORG, PRODUCT, etc.)
7
+ * 50% = Entities + meaningful common words
8
+ * 100% = All tags (no filtering)
9
+ *
10
+ * Settings controlled via user_settings.json:
11
+ * - tagging.modulation_level: 0-100
12
+ * - tagging.blacklist_strictness: 0-100
13
+ * - tagging.atom_as_tag: whether atoms become tags
14
+ * - tagging.strict_atom_selection: tighter atom extraction
15
+ * - tagging.min_tag_length: minimum character length
16
+ * - tagging.max_tags_per_molecule: cap on tags per molecule
17
+ */
18
+ import { config } from '../config/index.js';
19
+ // Common words that should be filtered at lower modulation levels
20
+ const COMMON_WORDS = new Set([
21
+ // Basic verbs
22
+ 'is', 'are', 'was', 'were', 'be', 'been', 'being', 'have', 'has', 'had', 'do', 'does', 'did',
23
+ // Articles and determiners
24
+ 'the', 'a', 'an', 'this', 'that', 'these', 'those', 'some', 'any', 'all', 'most', 'other',
25
+ // Prepositions
26
+ 'in', 'on', 'at', 'to', 'for', 'with', 'by', 'from', 'up', 'about', 'into', 'over', 'after',
27
+ // Conjunctions
28
+ 'and', 'but', 'or', 'nor', 'so', 'yet', 'both', 'either', 'neither', 'not', 'only', 'own', 'same',
29
+ // Pronouns
30
+ 'i', 'you', 'he', 'she', 'it', 'we', 'they', 'what', 'which', 'who', 'whom', 'whose',
31
+ // Generic nouns
32
+ 'thing', 'things', 'way', 'ways', 'day', 'days', 'time', 'times', 'year', 'years', 'people',
33
+ // Generic adjectives
34
+ 'good', 'bad', 'new', 'old', 'first', 'last', 'long', 'great', 'little', 'own', 'other',
35
+ // Tech generic terms
36
+ 'code', 'file', 'files', 'data', 'info', 'info', 'system', 'systems', 'user', 'users',
37
+ // Conversation fillers
38
+ 'okay', 'ok', 'yeah', 'yes', 'no', 'maybe', 'well', 'so', 'like', 'just', 'really',
39
+ // Time references (too generic)
40
+ 'today', 'tomorrow', 'yesterday', 'now', 'then', 'soon', 'later',
41
+ // Misc generic
42
+ 'get', 'got', 'make', 'made', 'can', 'will', 'would', 'could', 'should', 'may', 'might', 'must'
43
+ ]);
44
+ // Entity-type patterns (high-value tags always kept)
45
+ const ENTITY_PATTERNS = [
46
+ /^#[A-Z][a-z]+[A-Z]/, // CamelCase (ProjectName, PersonName)
47
+ /^#[A-Z]{2,}/, // Acronyms (AI, API, RAG, FTS)
48
+ /^#@[a-zA-Z0-9_]+/, // @mentions
49
+ /^#\d{4}/, // Years (specific temporal context)
50
+ ];
51
+ // Strict blacklist (always filtered regardless of modulation)
52
+ const STRICT_BLACKLIST = [
53
+ /^#[0-9a-fA-F]{3,8}$/, // Color codes
54
+ /^#_\w*$/, /^#__[\w\d_]+$/, // Internal artifacts
55
+ /^#btn\b/, /^#class\b/, /^#div\b/, /^#id\b/, /^#span\b/, // HTML
56
+ /^#fn\b/, /^#elif\b/, /^#else\b/, /^#endif\b/, // Code
57
+ /^#cite_note/, /^#cite_ref/, // Scraping artifacts
58
+ /^#incorrect_/, /^#error_/, // Errors
59
+ /^#null\b/, /^#undefined\b/, /^#nan\b/, // Null values
60
+ /^#untagged$/, /^#manual\b/, /^#manually_/, // System tags
61
+ // System-generated tags (prevent self-contamination from Anchor output)
62
+ /^#virtual_/, // Virtual molecule markers
63
+ /^#mem_[a-f0-9_]+/, // System memory IDs
64
+ /^#score_/, // Score-based tags
65
+ /^#inbox_/, // Source path tags
66
+ /^#provenance_/, // Provenance tags
67
+ /^#bucket_/, // Bucket tags
68
+ /^#epoch_/, // Epoch tags
69
+ /^#compound_/, // Compound ID tags
70
+ /^#molecule_/, // Molecule ID tags
71
+ /^#atom_/, // Atom ID tags
72
+ /^#simhash_/, // Simhash tags
73
+ /^#ts_rank/, // Search ranking tags
74
+ /^#fts_/, // Full-text search tags
75
+ /^#anchor_/, // Anchor system tags
76
+ /^#mcp_/, // MCP protocol tags
77
+ ];
78
+ // Medium blacklist (filtered at low modulation)
79
+ const MEDIUM_BLACKLIST = [
80
+ /^#monday\b/, /^#tuesday\b/, /^#wednesday\b/, // Days
81
+ /^#january\b/, /^#february\b/, // Months
82
+ /^#slow_pickup$/, /^#late_night$/, // Too generic
83
+ /^#test_/, /^#tmp\b/, /^#temp\b/, // Temporary
84
+ /^#agentgpt$/, /^#babyagi$/, /^#autogen$/, // Deprecated
85
+ ];
86
+ // Light blacklist (only filtered at very low modulation)
87
+ const LIGHT_BLACKLIST = [
88
+ /^#code\b/, /^#data\b/, /^#file\b/, /^#files\b/, // Generic tech
89
+ /^#info\b/, /^#system\b/, /^#user\b/, // Generic
90
+ /^#good\b/, /^#bad\b/, /^#new\b/, /^#old\b/, // Generic adjectives
91
+ ];
92
+ /**
93
+ * Get current tag modulation settings from config
94
+ */
95
+ export function getTagModulationSettings() {
96
+ const tagging = config.tagging || {};
97
+ return {
98
+ modulation_level: Math.max(0, Math.min(100, tagging.modulation_level ?? 50)),
99
+ blacklist_strictness: Math.max(0, Math.min(100, tagging.blacklist_strictness ?? 75)),
100
+ atom_as_tag: tagging.atom_as_tag ?? false,
101
+ strict_atom_selection: tagging.strict_atom_selection ?? true,
102
+ min_tag_length: tagging.min_tag_length ?? 3,
103
+ max_tags_per_molecule: tagging.max_tags_per_molecule ?? 20,
104
+ common_words_filter: tagging.common_words_filter ?? true,
105
+ entity_extraction: {
106
+ enabled: tagging.entity_extraction?.enabled ?? true,
107
+ min_confidence: tagging.entity_extraction?.min_confidence ?? 0.6,
108
+ categories: tagging.entity_extraction?.categories ?? ['PERSON', 'ORG', 'PRODUCT', 'EVENT', 'LOCATION']
109
+ }
110
+ };
111
+ }
112
+ /**
113
+ * Check if a tag passes the blacklist filter based on strictness level
114
+ */
115
+ export function passesBlacklist(tag, strictness = 75) {
116
+ const normalizedTag = tag.replace(/^#/, '').trim().toLowerCase();
117
+ // Always check strict blacklist
118
+ for (const pattern of STRICT_BLACKLIST) {
119
+ if (pattern.test(tag)) {
120
+ return false;
121
+ }
122
+ }
123
+ // Check if it's an entity pattern (always keep)
124
+ for (const pattern of ENTITY_PATTERNS) {
125
+ if (pattern.test(tag)) {
126
+ return true;
127
+ }
128
+ }
129
+ // Apply medium blacklist based on strictness
130
+ if (strictness >= 50) {
131
+ for (const pattern of MEDIUM_BLACKLIST) {
132
+ if (pattern.test(tag)) {
133
+ return false;
134
+ }
135
+ }
136
+ }
137
+ // Apply light blacklist only at high strictness
138
+ if (strictness >= 75) {
139
+ for (const pattern of LIGHT_BLACKLIST) {
140
+ if (pattern.test(tag)) {
141
+ return false;
142
+ }
143
+ }
144
+ }
145
+ return true;
146
+ }
147
+ /**
148
+ * Check if a word is a common word that should be filtered
149
+ */
150
+ export function isCommonWord(word) {
151
+ return COMMON_WORDS.has(word.toLowerCase());
152
+ }
153
+ /**
154
+ * Check if a tag looks like an entity (high-value tag)
155
+ */
156
+ export function isEntityTag(tag) {
157
+ const cleanTag = tag.replace(/^#/, '');
158
+ // Check entity patterns
159
+ for (const pattern of ENTITY_PATTERNS) {
160
+ if (pattern.test(tag)) {
161
+ return true;
162
+ }
163
+ }
164
+ // Check if it's a proper noun (capitalized, not all caps)
165
+ if (/^[A-Z][a-z]+[A-Z]/.test(cleanTag) || /^[A-Z][a-z]+$/.test(cleanTag)) {
166
+ return true;
167
+ }
168
+ return false;
169
+ }
170
+ /**
171
+ * Filter tags based on modulation level
172
+ *
173
+ * @param tags - Array of tags to filter
174
+ * @param modulationLevel - 0-100 (0=strict, 100=lenient)
175
+ * @param strictness - 0-100 blacklist strictness
176
+ */
177
+ export function modulateTags(tags, modulationLevel = 50, strictness = 75) {
178
+ if (!tags || !Array.isArray(tags))
179
+ return [];
180
+ const settings = getTagModulationSettings();
181
+ const level = modulationLevel ?? settings.modulation_level;
182
+ const strict = strictness ?? settings.blacklist_strictness;
183
+ return tags
184
+ .filter(tag => {
185
+ if (!tag || typeof tag !== 'string')
186
+ return false;
187
+ const cleanTag = tag.replace(/^#/, '').trim();
188
+ // Minimum length check
189
+ if (cleanTag.length < (settings.min_tag_length || 3)) {
190
+ return false;
191
+ }
192
+ // Blacklist check
193
+ if (!passesBlacklist(tag, strict)) {
194
+ return false;
195
+ }
196
+ // Common words filter (based on modulation level)
197
+ if (settings.common_words_filter && level < 100) {
198
+ if (isCommonWord(cleanTag) && !isEntityTag(tag)) {
199
+ // At 50% modulation, allow 50% of common words through
200
+ const threshold = level / 100;
201
+ if (Math.random() > threshold) {
202
+ return false;
203
+ }
204
+ }
205
+ }
206
+ return true;
207
+ })
208
+ .map(tag => tag.trim())
209
+ .slice(0, settings.max_tags_per_molecule);
210
+ }
211
+ /**
212
+ * Filter atom labels to become tags (if enabled)
213
+ */
214
+ export function filterAtomLabelsAsTags(labels) {
215
+ const settings = getTagModulationSettings();
216
+ if (!settings.atom_as_tag) {
217
+ return [];
218
+ }
219
+ return modulateTags(labels.map(label => label.startsWith('#') ? label : `#${label}`), settings.modulation_level, settings.blacklist_strictness);
220
+ }
221
+ /**
222
+ * Check if atom selection should be strict
223
+ */
224
+ export function shouldUseStrictAtomSelection() {
225
+ const settings = getTagModulationSettings();
226
+ return settings.strict_atom_selection;
227
+ }
228
+ /**
229
+ * Get minimum confidence for entity extraction
230
+ */
231
+ export function getEntityMinConfidence() {
232
+ const settings = getTagModulationSettings();
233
+ return settings.entity_extraction.min_confidence;
234
+ }
235
+ /**
236
+ * Check if entity extraction is enabled for a category
237
+ */
238
+ export function isEntityCategoryEnabled(category) {
239
+ const settings = getTagModulationSettings();
240
+ return settings.entity_extraction.enabled &&
241
+ settings.entity_extraction.categories.includes(category.toUpperCase());
242
+ }
243
+ /**
244
+ * Validate and normalize a tag
245
+ */
246
+ export function normalizeTag(tag) {
247
+ if (!tag || typeof tag !== 'string')
248
+ return null;
249
+ let normalized = tag.trim();
250
+ // Ensure starts with #
251
+ if (!normalized.startsWith('#')) {
252
+ normalized = `#${normalized}`;
253
+ }
254
+ // Convert to proper case (first letter uppercase for single words)
255
+ const cleanPart = normalized.slice(1);
256
+ if (cleanPart.length <= 20 && /^[a-z]+$/.test(cleanPart)) {
257
+ normalized = `#${cleanPart.charAt(0).toUpperCase() + cleanPart.slice(1)}`;
258
+ }
259
+ // Validate
260
+ if (normalized.length < 2 || normalized.length > 50) {
261
+ return null;
262
+ }
263
+ return normalized;
264
+ }
265
+ /**
266
+ * Batch process and modulate tags for a molecule
267
+ */
268
+ export function processMoleculeTags(rawTags, atomLabels) {
269
+ const settings = getTagModulationSettings();
270
+ // Start with raw tags
271
+ let processedTags = [...rawTags];
272
+ // Add atom labels as tags if enabled
273
+ if (atomLabels && settings.atom_as_tag) {
274
+ processedTags = [
275
+ ...processedTags,
276
+ ...atomLabels.map(label => label.startsWith('#') ? label : `#${label}`)
277
+ ];
278
+ }
279
+ // Deduplicate
280
+ processedTags = Array.from(new Set(processedTags));
281
+ // Apply modulation
282
+ return modulateTags(processedTags);
283
+ }
284
+ //# sourceMappingURL=tag-modulation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-modulation.js","sourceRoot":"","sources":["../../src/utils/tag-modulation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Timer Utility for Performance Measurement
3
+ *
4
+ * Provides timing functionality to measure how long processes take
5
+ */
6
+ export declare class Timer {
7
+ private startTime;
8
+ private lapTime;
9
+ private label;
10
+ constructor(label?: string);
11
+ /**
12
+ * Get the elapsed time since the timer started
13
+ */
14
+ elapsed(): number;
15
+ /**
16
+ * Get the time elapsed since the last lap
17
+ */
18
+ lap(): number;
19
+ /**
20
+ * Format time in milliseconds to human-readable format
21
+ */
22
+ static formatTime(ms: number): string;
23
+ /**
24
+ * Log the elapsed time with a message
25
+ */
26
+ log(message: string): void;
27
+ /**
28
+ * Log a lap time with a message
29
+ */
30
+ logLap(message: string): void;
31
+ /**
32
+ * Log the total elapsed time and reset the timer
33
+ */
34
+ logTotalAndReset(message: string): void;
35
+ /**
36
+ * Reset the timer
37
+ */
38
+ reset(): void;
39
+ }
40
+ //# sourceMappingURL=timer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../src/utils/timer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;gBAEV,KAAK,GAAE,MAAgB;IAMnC;;OAEG;IACI,OAAO,IAAI,MAAM;IAIxB;;OAEG;IACI,GAAG,IAAI,MAAM;IAOpB;;OAEG;WACW,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAY5C;;OAEG;IACI,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKpC;;OAEG;IACI,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM9C;;OAEG;IACI,KAAK,IAAI,IAAI;CAIrB"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Timer Utility for Performance Measurement
3
+ *
4
+ * Provides timing functionality to measure how long processes take
5
+ */
6
+ export class Timer {
7
+ startTime;
8
+ lapTime;
9
+ label;
10
+ constructor(label = 'Timer') {
11
+ this.label = label;
12
+ this.startTime = Date.now();
13
+ this.lapTime = this.startTime;
14
+ }
15
+ /**
16
+ * Get the elapsed time since the timer started
17
+ */
18
+ elapsed() {
19
+ return Date.now() - this.startTime;
20
+ }
21
+ /**
22
+ * Get the time elapsed since the last lap
23
+ */
24
+ lap() {
25
+ const currentTime = Date.now();
26
+ const lapDuration = currentTime - this.lapTime;
27
+ this.lapTime = currentTime;
28
+ return lapDuration;
29
+ }
30
+ /**
31
+ * Format time in milliseconds to human-readable format
32
+ */
33
+ static formatTime(ms) {
34
+ if (ms < 1000) {
35
+ return `${ms}ms`;
36
+ }
37
+ else if (ms < 60000) {
38
+ const seconds = (ms / 1000).toFixed(2);
39
+ return `${seconds}s`;
40
+ }
41
+ else {
42
+ const minutes = (ms / 60000).toFixed(2);
43
+ return `${minutes}m`;
44
+ }
45
+ }
46
+ /**
47
+ * Log the elapsed time with a message
48
+ */
49
+ log(message) {
50
+ const elapsed = this.elapsed();
51
+ console.log(`[${this.label}] ${message} (${Timer.formatTime(elapsed)})`);
52
+ }
53
+ /**
54
+ * Log a lap time with a message
55
+ */
56
+ logLap(message) {
57
+ const lap = this.lap();
58
+ console.log(`[${this.label}] ${message} (+${Timer.formatTime(lap)})`);
59
+ }
60
+ /**
61
+ * Log the total elapsed time and reset the timer
62
+ */
63
+ logTotalAndReset(message) {
64
+ const elapsed = this.elapsed();
65
+ console.log(`[${this.label}] ${message} (Total: ${Timer.formatTime(elapsed)})`);
66
+ this.reset();
67
+ }
68
+ /**
69
+ * Reset the timer
70
+ */
71
+ reset() {
72
+ this.startTime = Date.now();
73
+ this.lapTime = this.startTime;
74
+ }
75
+ }
76
+ //# sourceMappingURL=timer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer.js","sourceRoot":"","sources":["../../src/utils/timer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,KAAK;IACR,SAAS,CAAS;IAClB,OAAO,CAAS;IAChB,KAAK,CAAS;IAEtB,YAAY,QAAgB,OAAO;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,OAAO;QACZ,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,GAAG;QACR,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC;QAC3B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,UAAU,CAAC,EAAU;QACjC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;YACd,OAAO,GAAG,EAAE,IAAI,CAAC;QACnB,CAAC;aAAM,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,GAAG,OAAO,GAAG,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACxC,OAAO,GAAG,OAAO,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACI,GAAG,CAAC,OAAe;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAe;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,OAAe;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,YAAY,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;IAChC,CAAC;CACF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Token Utilities
3
+ *
4
+ * Provides functions for token counting and truncation
5
+ */
6
+ /**
7
+ * Estimates token count in text (simple word-based estimation)
8
+ * In a real implementation, you'd use a proper tokenizer like GPT-3's cl100k_base
9
+ */
10
+ export declare function estimateTokenCount(text: string): number;
11
+ /**
12
+ * Truncates text to approximately the specified token limit
13
+ */
14
+ export declare function truncateTokens(text: string, maxTokens: number): string;
15
+ /**
16
+ * More sophisticated token estimation using common tokenization patterns
17
+ */
18
+ export declare function estimateTokenCountAdvanced(text: string): number;
19
+ //# sourceMappingURL=token-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-utils.d.ts","sourceRoot":"","sources":["../../src/utils/token-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOvD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAiBtE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA6B/D"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Token Utilities
3
+ *
4
+ * Provides functions for token counting and truncation
5
+ */
6
+ /**
7
+ * Estimates token count in text (simple word-based estimation)
8
+ * In a real implementation, you'd use a proper tokenizer like GPT-3's cl100k_base
9
+ */
10
+ export function estimateTokenCount(text) {
11
+ if (!text)
12
+ return 0;
13
+ // Simple estimation: split on whitespace and punctuation
14
+ // This is a rough approximation - real tokenizers are more sophisticated
15
+ const tokens = text.trim().split(/\s+/).filter(token => token.length > 0);
16
+ return tokens.length;
17
+ }
18
+ /**
19
+ * Truncates text to approximately the specified token limit
20
+ */
21
+ export function truncateTokens(text, maxTokens) {
22
+ if (!text || maxTokens <= 0)
23
+ return '';
24
+ // For this simple implementation, we'll use word splitting
25
+ const words = text.split(/\s+/);
26
+ let result = '';
27
+ let tokenCount = 0;
28
+ for (const word of words) {
29
+ if (tokenCount >= maxTokens)
30
+ break;
31
+ if (result)
32
+ result += ' ';
33
+ result += word;
34
+ tokenCount++;
35
+ }
36
+ return result;
37
+ }
38
+ /**
39
+ * More sophisticated token estimation using common tokenization patterns
40
+ */
41
+ export function estimateTokenCountAdvanced(text) {
42
+ if (!text)
43
+ return 0;
44
+ // This is still a simplified approach
45
+ // A real implementation would use a proper BPE tokenizer
46
+ let count = 0;
47
+ let currentToken = '';
48
+ for (let i = 0; i < text.length; i++) {
49
+ const char = text[i];
50
+ // Common token boundaries
51
+ if (/\s/.test(char)) {
52
+ if (currentToken) {
53
+ count++;
54
+ currentToken = '';
55
+ }
56
+ }
57
+ else if (/[\.,!?;:]/.test(char)) {
58
+ if (currentToken)
59
+ count++;
60
+ count++; // Punctuation often forms its own token
61
+ currentToken = '';
62
+ }
63
+ else {
64
+ currentToken += char;
65
+ }
66
+ }
67
+ if (currentToken)
68
+ count++;
69
+ return count;
70
+ }
71
+ //# sourceMappingURL=token-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-utils.js","sourceRoot":"","sources":["../../src/utils/token-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC3C,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IAEpB,yDAAyD;IACzD,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,SAAiB;IAC1D,IAAI,CAAC,IAAI,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEvC,2DAA2D;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,UAAU,IAAI,SAAS;YAAE,MAAM;QAEnC,IAAI,MAAM;YAAE,MAAM,IAAI,GAAG,CAAC;QAC1B,MAAM,IAAI,IAAI,CAAC;QACf,UAAU,EAAE,CAAC;IACjB,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACnD,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IAEpB,sCAAsC;IACtC,yDAAyD;IACzD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,YAAY,GAAG,EAAE,CAAC;IAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAErB,0BAA0B;QAC1B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,IAAI,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,CAAC;gBACR,YAAY,GAAG,EAAE,CAAC;YACtB,CAAC;QACL,CAAC;aAAM,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,IAAI,YAAY;gBAAE,KAAK,EAAE,CAAC;YAC1B,KAAK,EAAE,CAAC,CAAC,wCAAwC;YACjD,YAAY,GAAG,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACJ,YAAY,IAAI,IAAI,CAAC;QACzB,CAAC;IACL,CAAC;IAED,IAAI,YAAY;QAAE,KAAK,EAAE,CAAC;IAE1B,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * WASM Module Loader
3
+ *
4
+ * Loads Rust-compiled WASM modules for cross-platform compatibility.
5
+ * Replaces C++ native modules with zero-compilation WASM alternatives.
6
+ *
7
+ * Standard 074: Native Module Acceleration (WASM Edition)
8
+ */
9
+ export interface WasmModuleStatus {
10
+ loaded: boolean;
11
+ moduleName: string;
12
+ version: string;
13
+ }
14
+ export declare class WasmModuleLoader {
15
+ private static instance;
16
+ private modules;
17
+ private status;
18
+ private constructor();
19
+ static getInstance(): WasmModuleLoader;
20
+ /**
21
+ * Initialize all WASM modules
22
+ */
23
+ private initializeModules;
24
+ /**
25
+ * Get a loaded WASM module
26
+ */
27
+ getModule(moduleName: string): any;
28
+ /**
29
+ * Get module status
30
+ */
31
+ getStatus(moduleName: string): WasmModuleStatus | undefined;
32
+ /**
33
+ * Get all module statuses
34
+ */
35
+ getAllStatus(): Map<string, WasmModuleStatus>;
36
+ /**
37
+ * Check if a module is loaded
38
+ */
39
+ isLoaded(moduleName: string): boolean;
40
+ /**
41
+ * Convenience methods for common operations
42
+ */
43
+ fingerprint(text: string): bigint;
44
+ distance(a: bigint, b: bigint): number;
45
+ sanitizeText(text: string): string;
46
+ atomizeText(text: string, strategy?: string): string[];
47
+ extractKeyphrases(text: string): string[];
48
+ }
49
+ export declare const wasmModuleLoader: WasmModuleLoader;
50
+ //# sourceMappingURL=wasm-module-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-module-loader.d.ts","sourceRoot":"","sources":["../../src/utils/wasm-module-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgCH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmB;IAC1C,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,MAAM,CAA4C;IAE1D,OAAO;WAIO,WAAW,IAAI,gBAAgB;IAO7C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoCzB;;OAEG;IACI,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG;IAOzC;;OAEG;IACI,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIlE;;OAEG;IACI,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAIpD;;OAEG;IACI,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI5C;;OAEG;IAGI,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIjC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAKtC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIlC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAgB,GAAG,MAAM,EAAE;IAK/D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAQjD;AAGD,eAAO,MAAM,gBAAgB,kBAAiC,CAAC"}