@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,563 @@
1
+ /**
2
+ * Database Module for Sovereign Context Engine
3
+ *
4
+ * This module manages the PGlite database connection and provides
5
+ * database operations for the context engine.
6
+ */
7
+ console.log("[DB] Loading Config...");
8
+ import { config } from "../config/index.js";
9
+ import fs from "fs";
10
+ import { fileURLToPath } from "url";
11
+ import { PGlite } from "@electric-sql/pglite";
12
+ const __filename = fileURLToPath(import.meta.url);
13
+ import { pathManager } from '../utils/path-manager.js';
14
+ export class Database {
15
+ dbInstance = null;
16
+ _isInitialized = false;
17
+ inTransaction = false;
18
+ preparedStatements = new Map();
19
+ constructor() {
20
+ // Database connection is now established in init()
21
+ }
22
+ get isInitialized() {
23
+ return this._isInitialized;
24
+ }
25
+ /**
26
+ * Begin a transaction
27
+ *
28
+ * NOTE: Nested transactions are not supported. If a transaction is already
29
+ * open, this call is a no-op. PGlite does not support SAVEPOINTs via this
30
+ * wrapper. For nested transactional logic, use raw SQL SAVEPOINTs:
31
+ * await db.run('SAVEPOINT my_save');
32
+ * ...on error... await db.run('ROLLBACK TO SAVEPOINT my_save');
33
+ */
34
+ async beginTransaction() {
35
+ if (!this.inTransaction) {
36
+ await this.run('BEGIN');
37
+ this.inTransaction = true;
38
+ }
39
+ }
40
+ /**
41
+ * Commit a transaction
42
+ */
43
+ async commit() {
44
+ if (this.inTransaction) {
45
+ await this.run('COMMIT');
46
+ this.inTransaction = false;
47
+ }
48
+ }
49
+ /**
50
+ * Rollback a transaction
51
+ */
52
+ async rollback() {
53
+ if (this.inTransaction) {
54
+ await this.run('ROLLBACK');
55
+ this.inTransaction = false;
56
+ }
57
+ }
58
+ /**
59
+ * Execute a function within a transaction
60
+ */
61
+ async transaction(fn) {
62
+ await this.beginTransaction();
63
+ try {
64
+ const result = await fn();
65
+ await this.commit();
66
+ return result;
67
+ }
68
+ catch (error) {
69
+ await this.rollback();
70
+ throw error;
71
+ }
72
+ }
73
+ /**
74
+ * Initialize the database with required schemas
75
+ * Wipes existing database on startup to prevent corruption
76
+ */
77
+ async init() {
78
+ // 0. Initialize the database connection
79
+ if (this.dbInstance === null) {
80
+ // Use pathManager for consistent absolute path (Standard 051)
81
+ const dbPath = process.env.PGLITE_DB_PATH || pathManager.getDatabasePath();
82
+ // Wipe and recreate the database directory on every startup (Standard 051 - Ephemeral Index)
83
+ // Controlled by user_settings.json: database.wipe_on_startup (default: true)
84
+ const shouldWipe = config.DATABASE?.WIPE_ON_STARTUP !== false;
85
+ try {
86
+ console.log(`[DB] Using database directory: ${dbPath}`);
87
+ if (shouldWipe) {
88
+ // Remove existing database directory to prevent corruption from unclean shutdowns
89
+ if (fs.existsSync(dbPath)) {
90
+ console.log(`[DB] Removing existing database directory (preventing corruption): ${dbPath}`);
91
+ try {
92
+ fs.rmSync(dbPath, { recursive: true, force: true });
93
+ console.log(`[DB] Old database directory removed successfully`);
94
+ }
95
+ catch (rmError) {
96
+ console.warn(`[DB] Warning: Could not remove old database directory: ${rmError.message}`);
97
+ console.warn(`[DB] Will attempt to overwrite on init`);
98
+ }
99
+ }
100
+ }
101
+ else {
102
+ console.log(`[DB] Retaining existing database (wipe_on_startup=false). Index may be stale.`);
103
+ }
104
+ console.log(`[DB] Database directory ready: ${dbPath}`);
105
+ }
106
+ catch (cleanupError) {
107
+ console.error(`[DB] Error during database directory preparation:`, cleanupError);
108
+ // Don't crash if wipe fails, just try to continue
109
+ }
110
+ try {
111
+ console.log(`[DB] Initializing PGlite at: ${dbPath}`);
112
+ // Initialize PGlite with optimized memory settings (Standard 127)
113
+ // Memory reduction tactics for embedded deployment (phones + laptops)
114
+ this.dbInstance = await new PGlite(dbPath, {
115
+ // Don't set maxMemory limit - let Node.js GC manage heap (6GB from --max-old-space-size)
116
+ // OOM prevention is handled by:
117
+ // 1. Search serialization (one search at a time)
118
+ // 2. Memory pressure detection (downgrade max-recall if heap >3.2GB)
119
+ // 3. Forced GC after ingestion and search completion
120
+ relaxedDurability: true, // Skip fsync during ingestion (Standard 059)
121
+ settings: {
122
+ // Reduce PGlite WASM buffer cache from default 1GB
123
+ 'shared_buffers': '256MB',
124
+ // Bound planner's estimate to prevent unbounded CTE memory
125
+ 'effective_cache_size': '512MB',
126
+ // Per-operation memory for sorts/hashes (physics walker CTEs)
127
+ 'work_mem': '16MB',
128
+ // Memory for VACUUM, CREATE INDEX, etc.
129
+ 'maintenance_work_mem': '64MB',
130
+ // WAL buffer size
131
+ 'wal_buffers': '4MB',
132
+ // Spread checkpoint writes over 90% of checkpoint interval
133
+ 'checkpoint_completion_target': 0.9,
134
+ // Random page access cost estimate (helps planner choose seq scans)
135
+ 'random_page_cost': 1.1,
136
+ // Sequential scan cost estimate
137
+ 'seq_page_cost': 1.0,
138
+ }
139
+ });
140
+ console.log(`[DB] PGlite initialized successfully: ${dbPath}`);
141
+ console.log(`[DB] Memory settings: shared_buffers=256MB, effective_cache_size=512MB, work_mem=16MB`);
142
+ // Additional runtime memory bounds (applied after init)
143
+ // These complement the constructor settings above
144
+ await this.dbInstance.exec("SET effective_cache_size = '512MB'");
145
+ await this.dbInstance.exec("SET work_mem = '16MB'");
146
+ await this.dbInstance.exec("SET maintenance_work_mem = '64MB'");
147
+ }
148
+ catch (e) {
149
+ console.error(`[DB] Failed to initialize PGlite: ${e.message}`);
150
+ throw e;
151
+ }
152
+ }
153
+ // Create Synonyms table for automatic query expansion
154
+ try {
155
+ await this.run(`
156
+ CREATE TABLE IF NOT EXISTS synonyms (
157
+ term TEXT PRIMARY KEY,
158
+ synonyms TEXT,
159
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
160
+ );
161
+ `);
162
+ console.log("[DB] 'synonyms' table initialized.");
163
+ }
164
+ catch (e) {
165
+ console.error("[DB] Error creating synonyms table:", e);
166
+ throw e;
167
+ }
168
+ // Create atoms table schema - simplified for PGlite compatibility
169
+ try {
170
+ // Create sequence for vector_ids
171
+ await this.run('CREATE SEQUENCE IF NOT EXISTS vector_id_seq START 1;');
172
+ await this.run(`
173
+ CREATE TABLE IF NOT EXISTS atoms (
174
+ id TEXT PRIMARY KEY,
175
+ content TEXT,
176
+ source_path TEXT,
177
+ timestamp REAL,
178
+ simhash TEXT,
179
+ embedding TEXT,
180
+ vector_id BIGINT,
181
+ provenance TEXT,
182
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
183
+ );
184
+ `);
185
+ console.log("[DB] 'atoms' table initialized.");
186
+ // Add missing columns if they don't exist (for existing databases)
187
+ const columnsToAdd = [
188
+ { name: 'vector_id', type: 'BIGINT' },
189
+ { name: 'buckets', type: 'TEXT[]' },
190
+ { name: 'tags', type: 'TEXT[]' },
191
+ { name: 'epochs', type: 'TEXT[]' },
192
+ { name: 'sequence', type: 'INTEGER' },
193
+ { name: 'type', type: 'TEXT' },
194
+ { name: 'hash', type: 'TEXT' },
195
+ { name: 'molecular_signature', type: 'TEXT' },
196
+ { name: 'compound_id', type: 'TEXT' },
197
+ { name: 'start_byte', type: 'INTEGER' },
198
+ { name: 'end_byte', type: 'INTEGER' },
199
+ { name: 'numeric_value', type: 'REAL' },
200
+ { name: 'numeric_unit', type: 'TEXT' },
201
+ { name: 'source_id', type: 'TEXT' },
202
+ { name: 'tags', type: 'JSONB' },
203
+ { name: 'entities', type: 'JSONB' },
204
+ { name: 'payload', type: 'JSONB' } // Crystal Atom Structure (Hybrid Architecture)
205
+ ];
206
+ for (const col of columnsToAdd) {
207
+ try {
208
+ await this.run(`ALTER TABLE atoms ADD COLUMN IF NOT EXISTS ${col.name} ${col.type};`);
209
+ }
210
+ catch (alterErr) {
211
+ // Column might already exist, which is fine
212
+ console.debug(`[DB] Column ${col.name} addition:`, alterErr.message);
213
+ }
214
+ }
215
+ // Add index for compound_id (CRITICAL for Physics Walker)
216
+ try {
217
+ await this.run('CREATE INDEX IF NOT EXISTS idx_atoms_compound_id ON atoms(compound_id);');
218
+ }
219
+ catch (idxErr) {
220
+ console.warn("[DB] Could not create compound_id index:", idxErr.message);
221
+ }
222
+ }
223
+ catch (e) {
224
+ console.error("[DB] Error initializing atoms table:", e);
225
+ throw e;
226
+ }
227
+ // Create the tags table (The "Nervous System")
228
+ try {
229
+ await this.run(`
230
+ CREATE TABLE IF NOT EXISTS tags (
231
+ atom_id TEXT,
232
+ tag TEXT,
233
+ bucket TEXT,
234
+ PRIMARY KEY (atom_id, tag, bucket)
235
+ );
236
+ `);
237
+ // Create indexes - optimized for PhysicsWalker queries
238
+ try {
239
+ await this.run('CREATE INDEX IF NOT EXISTS idx_tags_tag ON tags(tag);');
240
+ }
241
+ catch (indexErr) {
242
+ console.warn("[DB] Could not create tag index:", indexErr.message);
243
+ }
244
+ try {
245
+ await this.run('CREATE INDEX IF NOT EXISTS idx_tags_bucket ON tags(bucket);');
246
+ }
247
+ catch (indexErr) {
248
+ console.warn("[DB] Could not create bucket index:", indexErr.message);
249
+ }
250
+ // NEW INDEX (2026-02-23): For fast atom_id lookups in PhysicsWalker
251
+ try {
252
+ await this.run('CREATE INDEX IF NOT EXISTS idx_tags_atom_id ON tags(atom_id);');
253
+ }
254
+ catch (indexErr) {
255
+ console.warn("[DB] Could not create atom_id index:", indexErr.message);
256
+ }
257
+ console.log("[DB] 'tags' table initialized.");
258
+ }
259
+ catch (e) {
260
+ console.error("[DB] Error creating tags table:", e);
261
+ throw e;
262
+ }
263
+ // Create Edges table (The Graph Connections)
264
+ try {
265
+ await this.run(`
266
+ CREATE TABLE IF NOT EXISTS edges (
267
+ source_id TEXT,
268
+ target_id TEXT,
269
+ relation TEXT,
270
+ weight REAL,
271
+ PRIMARY KEY (source_id, target_id, relation)
272
+ );
273
+ `);
274
+ console.log("[DB] 'edges' table initialized.");
275
+ }
276
+ catch (e) {
277
+ console.error("[DB] Error creating edges table:", e);
278
+ throw e;
279
+ }
280
+ // Create Source Table (Container)
281
+ try {
282
+ await this.run(`
283
+ CREATE TABLE IF NOT EXISTS sources (
284
+ path TEXT PRIMARY KEY,
285
+ hash TEXT,
286
+ total_atoms INTEGER,
287
+ last_ingest REAL
288
+ );
289
+ `);
290
+ console.log("[DB] 'sources' table initialized.");
291
+ }
292
+ catch (e) {
293
+ console.error("[DB] Error creating sources table:", e);
294
+ throw e;
295
+ }
296
+ // Create molecules table (The Document Sentences)
297
+ try {
298
+ await this.run(`
299
+ CREATE TABLE IF NOT EXISTS molecules (
300
+ id TEXT PRIMARY KEY,
301
+ content TEXT,
302
+ compound_id TEXT,
303
+ sequence INTEGER,
304
+ start_byte INTEGER,
305
+ end_byte INTEGER,
306
+ type TEXT,
307
+ numeric_value REAL,
308
+ numeric_unit TEXT,
309
+ molecular_signature TEXT,
310
+ embedding TEXT,
311
+ timestamp REAL,
312
+ tags JSONB,
313
+ entities JSONB
314
+ );
315
+ `);
316
+ // Add indices for molecules
317
+ try {
318
+ await this.run('CREATE INDEX IF NOT EXISTS idx_molecules_compound ON molecules(compound_id);');
319
+ }
320
+ catch (idxErr) {
321
+ console.warn("[DB] Could not create molecule compound index:", idxErr.message);
322
+ }
323
+ // Ensure new columns exist for existing databases
324
+ const molColumnsToAdd = [
325
+ { name: 'tags', type: 'JSONB' },
326
+ { name: 'entities', type: 'JSONB' }
327
+ ];
328
+ for (const col of molColumnsToAdd) {
329
+ try {
330
+ await this.run(`ALTER TABLE molecules ADD COLUMN IF NOT EXISTS ${col.name} ${col.type};`);
331
+ }
332
+ catch (alterErr) {
333
+ // Column might already exist
334
+ }
335
+ }
336
+ console.log("[DB] 'molecules' table initialized.");
337
+ }
338
+ catch (e) {
339
+ console.error("[DB] Error creating molecules table:", e);
340
+ throw e;
341
+ }
342
+ // Create Compounds table (Atomic Architecture)
343
+ try {
344
+ await this.run(`
345
+ CREATE TABLE IF NOT EXISTS compounds (
346
+ id TEXT PRIMARY KEY,
347
+ compound_body TEXT,
348
+ path TEXT,
349
+ timestamp REAL,
350
+ provenance TEXT,
351
+ molecular_signature TEXT,
352
+ atoms TEXT,
353
+ molecules TEXT,
354
+ embedding TEXT
355
+ );
356
+ `);
357
+ console.log("[DB] 'compounds' table initialized.");
358
+ }
359
+ catch (e) {
360
+ console.error("[DB] Error creating compounds table:", e);
361
+ throw e;
362
+ }
363
+ // Create Engrams table (Lexical Sidecar)
364
+ try {
365
+ await this.run(`
366
+ CREATE TABLE IF NOT EXISTS engrams (
367
+ key TEXT PRIMARY KEY,
368
+ value TEXT
369
+ );
370
+ `);
371
+ console.log("[DB] 'engrams' table initialized.");
372
+ }
373
+ catch (e) {
374
+ console.error("[DB] Error creating engrams table:", e);
375
+ throw e;
376
+ }
377
+ // Create Atom Positions table (Lazy Molecule Inflation)
378
+ // Tracks where atoms (keywords) appear in compounds for radial inflation
379
+ try {
380
+ await this.run(`
381
+ CREATE TABLE IF NOT EXISTS atom_positions (
382
+ compound_id TEXT NOT NULL,
383
+ atom_label TEXT NOT NULL,
384
+ byte_offset INTEGER NOT NULL,
385
+ PRIMARY KEY (compound_id, atom_label, byte_offset)
386
+ );
387
+ `);
388
+ await this.run(`
389
+ CREATE INDEX IF NOT EXISTS idx_atom_positions_label
390
+ ON atom_positions(atom_label);
391
+ `);
392
+ console.log("[DB] 'atom_positions' table initialized.");
393
+ }
394
+ catch (e) {
395
+ console.error("[DB] Error creating atom_positions table:", e);
396
+ throw e;
397
+ }
398
+ // Create Summary Nodes Table (Dreamer Abstractions)
399
+ try {
400
+ await this.run(`
401
+ CREATE TABLE IF NOT EXISTS summary_nodes (
402
+ id TEXT PRIMARY KEY,
403
+ type TEXT,
404
+ content TEXT,
405
+ span_start REAL,
406
+ span_end REAL,
407
+ embedding TEXT
408
+ );
409
+ `);
410
+ console.log("[DB] 'summary_nodes' table initialized.");
411
+ }
412
+ catch (e) {
413
+ console.error("[DB] Error creating summary_nodes table:", e);
414
+ throw e;
415
+ }
416
+ // Create GitHub Repos Table (Standard 115: GitHub Repository Ingestion)
417
+ try {
418
+ await this.run(`
419
+ CREATE TABLE IF NOT EXISTS github_repos (
420
+ id TEXT PRIMARY KEY,
421
+ owner TEXT NOT NULL,
422
+ repo TEXT NOT NULL,
423
+ branch TEXT DEFAULT 'main',
424
+ bucket TEXT NOT NULL,
425
+ github_url TEXT NOT NULL,
426
+ last_synced_at TIMESTAMP,
427
+ last_sync_status TEXT,
428
+ last_error TEXT,
429
+ total_files INTEGER DEFAULT 0,
430
+ total_atoms INTEGER DEFAULT 0,
431
+ total_size_bytes INTEGER DEFAULT 0,
432
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
433
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
434
+ );
435
+ `);
436
+ console.log("[DB] 'github_repos' table initialized.");
437
+ // Create index for owner/repo lookup
438
+ await this.run(`
439
+ CREATE INDEX IF NOT EXISTS idx_github_repos_owner_repo
440
+ ON github_repos(owner, repo);
441
+ `);
442
+ }
443
+ catch (e) {
444
+ console.error("[DB] Error creating github_repos table:", e);
445
+ throw e;
446
+ }
447
+ // Create FTS index for content search
448
+ try {
449
+ await this.run(`
450
+ CREATE INDEX IF NOT EXISTS idx_atoms_content_gin
451
+ ON atoms
452
+ USING GIN(to_tsvector('simple', content));
453
+ `);
454
+ console.log("[DB] FTS index created for content search.");
455
+ }
456
+ catch (e) {
457
+ console.warn("[DB] Could not create FTS index:", e.message);
458
+ // Try creating a simpler index if GIN fails
459
+ try {
460
+ await this.run(`
461
+ CREATE INDEX IF NOT EXISTS idx_atoms_content_text
462
+ ON atoms (content);
463
+ `);
464
+ console.log("[DB] Text index created as fallback.");
465
+ }
466
+ catch (fallbackErr) {
467
+ console.warn("[DB] Could not create fallback text index:", fallbackErr.message);
468
+ }
469
+ }
470
+ // Create FTS index for molecules content search (Tag-Walker anchor stage)
471
+ try {
472
+ await this.run(`
473
+ CREATE INDEX IF NOT EXISTS idx_molecules_content_gin
474
+ ON molecules
475
+ USING GIN(to_tsvector('simple', content));
476
+ `);
477
+ console.log("[DB] FTS index created for molecules content search.");
478
+ }
479
+ catch (e) {
480
+ console.warn("[DB] Could not create molecules FTS index:", e.message);
481
+ // Try creating a simpler index if GIN fails
482
+ try {
483
+ await this.run(`
484
+ CREATE INDEX IF NOT EXISTS idx_molecules_content_text
485
+ ON molecules (content);
486
+ `);
487
+ console.log("[DB] Molecules text index created as fallback.");
488
+ }
489
+ catch (fallbackErr) {
490
+ console.warn("[DB] Could not create molecules fallback text index:", fallbackErr.message);
491
+ }
492
+ }
493
+ // Create JSONB GIN Index (Crystal Atom Optimization)
494
+ try {
495
+ await this.run(`
496
+ CREATE INDEX IF NOT EXISTS idx_atoms_payload_gin
497
+ ON atoms
498
+ USING GIN (payload);
499
+ `);
500
+ console.log("[DB] GIN index created for payload (Crystal Atom).");
501
+ }
502
+ catch (e) {
503
+ console.warn("[DB] Could not create payload GIN index:", e.message);
504
+ }
505
+ // Mark as initialized after all setup is complete
506
+ this._isInitialized = true;
507
+ console.log("Database initialized successfully");
508
+ }
509
+ /**
510
+ * Close the database connection
511
+ */
512
+ async close() {
513
+ // Close the database connection
514
+ if (this.dbInstance) {
515
+ await this.dbInstance.close();
516
+ }
517
+ }
518
+ /**
519
+ * Run a query against the database
520
+ */
521
+ async run(query, params) {
522
+ const { config } = await import("../config/index.js");
523
+ if (config.LOG_LEVEL === "DEBUG") {
524
+ console.log(`[DB] Executing Query: ${query.substring(0, 80)}...`);
525
+ if (params && params.length > 0)
526
+ console.log(`[DB] Params:`, params);
527
+ }
528
+ try {
529
+ if (this.dbInstance === null) {
530
+ throw new Error("Database not initialized");
531
+ }
532
+ // PGlite returns objects by default which works with our named fields
533
+ const result = await this.dbInstance.query(query, params || []);
534
+ return result;
535
+ }
536
+ catch (e) {
537
+ // Don't log transaction control statements as errors
538
+ if (!query.trim().match(/^(BEGIN|COMMIT|ROLLBACK)/i)) {
539
+ console.error(`[DB] Query Failed: ${e.message}`);
540
+ console.error(`[DB] Query: ${query}`);
541
+ }
542
+ throw e;
543
+ }
544
+ }
545
+ /**
546
+ * Run a FTS search query
547
+ */
548
+ async search(query) {
549
+ if (this.dbInstance === null) {
550
+ throw new Error("Database not initialized");
551
+ }
552
+ // For now, use a simple LIKE query since full-text search may not be available
553
+ const result = await this.dbInstance.query(`SELECT * FROM atoms WHERE content LIKE ?`, [`%${query}%`]);
554
+ return result;
555
+ }
556
+ // Helper methods for file system operations
557
+ existsSync = fs.existsSync;
558
+ rmdirSync = fs.rmSync;
559
+ mkdirSync = fs.mkdirSync;
560
+ }
561
+ // Export a singleton instance
562
+ export const db = new Database();
563
+ //# sourceMappingURL=db.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ChatWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatWorker.d.ts","sourceRoot":"","sources":["../../../src/core/inference/ChatWorker.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * ChatWorker — Local inference stub.
3
+ *
4
+ * node-llama-cpp has been removed from this project (user intent: pare to working core).
5
+ * Local LLM inference is NOT available. Configure LLM_PROVIDER=remote in user_settings.json
6
+ * to use a remote OpenAI-compatible endpoint instead.
7
+ *
8
+ * To restore local inference:
9
+ * 1. Re-add node-llama-cpp to engine/package.json
10
+ * 2. Restore the original ChatWorker implementation from git history
11
+ */
12
+ import { parentPort } from 'worker_threads';
13
+ // Worker stub — signals ready immediately, returns errors for all requests
14
+ async function init() {
15
+ console.warn('[ChatWorker] Local inference is disabled. node-llama-cpp has been removed.');
16
+ parentPort?.postMessage({ type: 'ready' });
17
+ }
18
+ parentPort?.on('message', (message) => {
19
+ const err = 'Local inference not available. node-llama-cpp removed. Use LLM_PROVIDER=remote.';
20
+ if (message.type === 'dispose') {
21
+ parentPort?.postMessage({ type: 'disposed' });
22
+ }
23
+ else {
24
+ parentPort?.postMessage({ type: 'error', error: err });
25
+ }
26
+ });
27
+ init();
28
+ //# sourceMappingURL=ChatWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatWorker.js","sourceRoot":"","sources":["../../../src/core/inference/ChatWorker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,2EAA2E;AAC3E,KAAK,UAAU,IAAI;IACf,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;IAC3F,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,UAAU,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;IAClC,MAAM,GAAG,GAAG,iFAAiF,CAAC;IAC9F,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACJ,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3D,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,EAAE,CAAC"}
@@ -0,0 +1,49 @@
1
+ import type { UserContext } from '../../types/context-protocol.js';
2
+ export interface ContextAtom {
3
+ id: string;
4
+ content: string;
5
+ source: string;
6
+ timestamp: number;
7
+ score: number;
8
+ tags?: string[];
9
+ type?: string;
10
+ provenance?: string;
11
+ connections?: string[];
12
+ }
13
+ export interface ContextResult {
14
+ prompt: string;
15
+ stats: {
16
+ tokenCount: number;
17
+ charCount: number;
18
+ filledPercent: number;
19
+ atomCount: number;
20
+ };
21
+ }
22
+ /**
23
+ * Rolling Context Slicer (Feature 8) - Neuro-Symbolic Bridge Edition
24
+ *
25
+ * Implements "Middle-Out" Context Budgeting with Structured Graph Output.
26
+ * Prioritizes atoms based on a mix of Relevance (Vector Similarity) and Recency.
27
+ *
28
+ * Strategy:
29
+ * 1. Rank Candidates: Score = (Relevance * 0.7) + (RecencyNorm * 0.3).
30
+ * 2. Select: Fill budget with highest ranked atoms.
31
+ * 3. Smart Slice: If an atom fits partially, slice around the keyword match (windowing).
32
+ * 4. Order: Sort selected atoms Chronologically (or by Sequence) for linear readability.
33
+ */
34
+ export declare function composeRollingContext(query: string, results: ContextAtom[], tokenBudget?: number): ContextResult;
35
+ /**
36
+ * Compose context using the Graph-Context Protocol.
37
+ *
38
+ * This produces the sovereign prompt format:
39
+ * System: "You are the interface for Anchor OS..."
40
+ * User: [CONTEXT_GRAPH_START]...[CONTEXT_GRAPH_END] + query
41
+ *
42
+ * Use this instead of composeRollingContext when you have physics metadata.
43
+ */
44
+ export declare function composeGraphContext(query: string, anchors: ContextAtom[], walkerResults: ContextAtom[], user: UserContext, tokenBudget?: number): {
45
+ system: string;
46
+ user: string;
47
+ stats: ContextResult['stats'];
48
+ };
49
+ //# sourceMappingURL=context_manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context_manager.d.ts","sourceRoot":"","sources":["../../../src/core/inference/context_manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAA2B,MAAM,iCAAiC,CAAC;AAY5G,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE;QACH,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;CACL;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,WAAW,EAAE,EACtB,WAAW,GAAE,MAAa,GAC3B,aAAa,CAoIf;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,WAAW,EAAE,EACtB,aAAa,EAAE,WAAW,EAAE,EAC5B,IAAI,EAAE,WAAW,EACjB,WAAW,GAAE,MAAa,GAC3B;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;CAAE,CA+DjE"}