@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,397 @@
1
+ # ECE_Core Testing Framework Documentation
2
+
3
+ ## Overview
4
+
5
+ The ECE_Core testing framework provides a comprehensive suite of tests to ensure system reliability, performance, and correctness. This framework includes:
6
+
7
+ - Unit tests for individual components
8
+ - Integration tests for system workflows
9
+ - Performance regression tests
10
+ - Diagnostic tests for issue reproduction
11
+ - Dataset-specific configuration tests
12
+
13
+ ## Architecture
14
+
15
+ ### Core Components
16
+
17
+ 1. **Test Framework Core** (`test-framework/core.ts`)
18
+ - Provides the foundational test execution infrastructure
19
+ - Manages test lifecycle, execution, and reporting
20
+ - Supports parallel execution and dependency management
21
+
22
+ 2. **Dataset Test Runner** (`test-framework/dataset-runner.ts`)
23
+ - Manages configurable test setups for different data sizes and types
24
+ - Supports small, medium, large, and XL datasets
25
+ - Provides performance thresholds and validation
26
+
27
+ 3. **Diagnostic Test Suite** (`test-framework/diagnostic-tests.ts`)
28
+ - Implements quick diagnostic tests for rapid issue reproduction
29
+ - Covers health checks, ingestion, search, and native module validation
30
+ - Designed for continuous integration and deployment pipelines
31
+
32
+ 4. **Performance Regression Tests** (`test-framework/performance-regression-tests.ts`)
33
+ - Tests to detect performance degradation between releases
34
+ - Compares current performance against established baselines
35
+ - Includes ingestion rate, search latency, and memory usage tests
36
+
37
+ ## Running Tests
38
+
39
+ ### All Tests
40
+ ```bash
41
+ npm test
42
+ # or
43
+ pnpm test
44
+ ```
45
+
46
+ ### Specific Test Types
47
+
48
+ #### Diagnostic Tests (Quick Health Check)
49
+ ```bash
50
+ npm run test:diagnostic
51
+ # Runs quick diagnostic tests to verify system health
52
+ ```
53
+
54
+ #### Performance Regression Tests
55
+ ```bash
56
+ npm run test:performance
57
+ # Runs comprehensive performance tests comparing against baselines
58
+ ```
59
+
60
+ #### Dataset-Specific Tests
61
+ ```bash
62
+ npm run test:dataset -- --dataset=small
63
+ npm run test:dataset -- --dataset=large
64
+ # Runs tests with specific dataset configurations
65
+ ```
66
+
67
+ #### Unit Tests Only
68
+ ```bash
69
+ npm run test:unit
70
+ # Runs only unit tests (fastest option)
71
+ ```
72
+
73
+ ### Filter Tests by Tag
74
+ ```bash
75
+ npm run test -- --tag=search
76
+ npm run test -- --tag=ingestion
77
+ npm run test -- --tag=performance
78
+ # Runs only tests with specific tags
79
+ ```
80
+
81
+ ## Test Structure
82
+
83
+ ### Test Configuration
84
+ Each test follows this structure:
85
+
86
+ ```typescript
87
+ const testConfig: TestConfig = {
88
+ name: 'Descriptive Test Name',
89
+ description: 'What the test verifies',
90
+ testFn: async () => {
91
+ // Test implementation
92
+ // Use assertions to verify expected behavior
93
+ },
94
+ timeout: 30000, // Maximum time for test to complete
95
+ tags: ['search', 'integration'], // Categories for filtering
96
+ dependencies: ['database'], // Other tests that must pass first
97
+ skip: false, // Set to true to skip this test
98
+ only: false // Set to true to run only this test (for debugging)
99
+ };
100
+ ```
101
+
102
+ ### Test Categories
103
+
104
+ #### 1. Health Tests
105
+ - Verify system endpoints are accessible
106
+ - Check database connectivity
107
+ - Validate native module availability
108
+ - Confirm basic functionality
109
+
110
+ #### 2. Ingestion Tests
111
+ - Test content ingestion pipeline
112
+ - Verify atomization process
113
+ - Validate content sanitization
114
+ - Check database persistence
115
+
116
+ #### 3. Search Tests
117
+ - Test search functionality
118
+ - Verify result relevance
119
+ - Validate query expansion
120
+ - Check performance under load
121
+
122
+ #### 4. Performance Tests
123
+ - Measure ingestion rates
124
+ - Test search latency
125
+ - Monitor memory usage
126
+ - Validate throughput under load
127
+
128
+ #### 5. Integration Tests
129
+ - End-to-end workflow validation
130
+ - Cross-component functionality
131
+ - API contract verification
132
+ - Data flow validation
133
+
134
+ ## Creating New Tests
135
+
136
+ ### Adding a Simple Unit Test
137
+ ```typescript
138
+ import { testFramework } from './test-framework/core.js';
139
+
140
+ const myUnitTest: TestConfig = {
141
+ name: 'My Feature Functionality',
142
+ description: 'Verify that my feature works correctly',
143
+ testFn: async () => {
144
+ // Arrange
145
+ const input = 'test input';
146
+
147
+ // Act
148
+ const result = myFeatureFunction(input);
149
+
150
+ // Assert
151
+ if (result !== 'expected output') {
152
+ throw new Error(`Expected 'expected output', got '${result}'`);
153
+ }
154
+ },
155
+ timeout: 5000,
156
+ tags: ['unit', 'my-feature']
157
+ };
158
+
159
+ // Register the test
160
+ testFramework.addTest(myUnitTest);
161
+ ```
162
+
163
+ ### Adding an Integration Test
164
+ ```typescript
165
+ import axios from 'axios';
166
+
167
+ const myIntegrationTest: TestConfig = {
168
+ name: 'API Endpoint Integration',
169
+ description: 'Verify API endpoint works with database',
170
+ testFn: async () => {
171
+ // Setup
172
+ const testData = { content: 'integration test content', source: 'test' };
173
+
174
+ // Ingest data
175
+ const ingestResponse = await axios.post('/v1/ingest', testData);
176
+ if (ingestResponse.status !== 200) {
177
+ throw new Error(`Ingest failed: ${ingestResponse.status}`);
178
+ }
179
+
180
+ // Wait for processing
181
+ await new Promise(resolve => setTimeout(resolve, 2000));
182
+
183
+ // Verify retrieval
184
+ const searchResponse = await axios.post('/v1/memory/search', {
185
+ query: 'integration test content'
186
+ });
187
+
188
+ if (searchResponse.status !== 200) {
189
+ throw new Error(`Search failed: ${searchResponse.status}`);
190
+ }
191
+
192
+ if (!searchResponse.data.context?.includes('integration test content')) {
193
+ throw new Error('Search did not return expected content');
194
+ }
195
+ },
196
+ timeout: 30000,
197
+ tags: ['integration', 'api', 'search']
198
+ };
199
+ ```
200
+
201
+ ## Test Data Management
202
+
203
+ ### Dataset Configuration
204
+ Tests can be configured to run with different dataset sizes:
205
+
206
+ ```typescript
207
+ const datasetConfig: DatasetConfig = {
208
+ name: 'stress-test',
209
+ description: 'Large dataset for performance testing',
210
+ size: 'xl', // 'small', 'medium', 'large', or 'xl'
211
+ path: './test-data/stress',
212
+ tags: ['performance', 'stress'],
213
+ timeout: 120000, // Longer timeout for large datasets
214
+ setup: async () => {
215
+ // Setup function to prepare test environment
216
+ },
217
+ teardown: async () => {
218
+ // Teardown function to clean up after test
219
+ }
220
+ };
221
+ ```
222
+
223
+ ### Test Data Generation
224
+ For performance tests, use representative data:
225
+
226
+ ```typescript
227
+ function generateTestContent(count: number, size: 'small' | 'medium' | 'large'): string[] {
228
+ const content: string[] = [];
229
+
230
+ for (let i = 0; i < count; i++) {
231
+ switch (size) {
232
+ case 'small':
233
+ content.push(`Test content block ${i}`);
234
+ break;
235
+ case 'medium':
236
+ content.push(`Medium length content block ${i} with more text to process. This includes multiple sentences and some complexity to properly test the system under realistic conditions.`);
237
+ break;
238
+ case 'large':
239
+ content.push(`Large content block ${i} with substantial text to process. This includes multiple paragraphs, code snippets, and various content types to thoroughly test the system's capabilities. The content is designed to be representative of real-world usage patterns and to stress-test the ingestion and search capabilities. Additional text to increase size and complexity: ${'Lorem ipsum dolor sit amet. '.repeat(50)}`);
240
+ break;
241
+ }
242
+ }
243
+
244
+ return content;
245
+ }
246
+ ```
247
+
248
+ ## Performance Baselines
249
+
250
+ ### Current Performance Targets
251
+ - **Ingestion Rate**: ≥ 50 atoms/second
252
+ - **Search Latency**: ≤ 200ms average
253
+ - **Memory Usage**: ≤ 500MB during normal operation
254
+ - **Startup Time**: ≤ 10 seconds
255
+
256
+ ### Adding Performance Tests
257
+ ```typescript
258
+ const performanceTest: TestConfig = {
259
+ name: 'Feature Performance',
260
+ description: 'Verify feature meets performance requirements',
261
+ testFn: async () => {
262
+ const startTime = Date.now();
263
+
264
+ // Execute operation to measure
265
+ await myFeatureFunction(largeInput);
266
+
267
+ const duration = Date.now() - startTime;
268
+
269
+ // Verify performance requirements
270
+ if (duration > 1000) { // 1 second max
271
+ throw new Error(`Operation took ${duration}ms, exceeding 1000ms limit`);
272
+ }
273
+ },
274
+ timeout: 5000,
275
+ tags: ['performance', 'regression']
276
+ };
277
+ ```
278
+
279
+ ## Continuous Integration
280
+
281
+ ### GitHub Actions Configuration
282
+ The testing framework is designed to work with CI/CD pipelines:
283
+
284
+ ```yaml
285
+ name: Test Suite
286
+ on: [push, pull_request]
287
+
288
+ jobs:
289
+ test:
290
+ runs-on: ubuntu-latest
291
+ steps:
292
+ - uses: actions/checkout@v3
293
+ - uses: actions/setup-node@v3
294
+ with:
295
+ node-version: '18'
296
+ - run: npm ci
297
+ - run: npm run test:diagnostic # Quick health check
298
+ - run: npm run test:performance # Performance regression tests
299
+ ```
300
+
301
+ ### Test Reports
302
+ Tests generate reports in multiple formats:
303
+ - Console output for immediate feedback
304
+ - JSON reports for CI/CD integration
305
+ - JUnit XML for test aggregation tools
306
+
307
+ ## Troubleshooting
308
+
309
+ ### Common Issues
310
+
311
+ #### Test Timeout
312
+ - Increase the timeout value in the test configuration
313
+ - Check for infinite loops or blocking operations
314
+ - Verify database connectivity and performance
315
+
316
+ #### Memory Issues
317
+ - Large dataset tests may require more memory
318
+ - Check for memory leaks in the code being tested
319
+ - Use smaller datasets for initial validation
320
+
321
+ #### Native Module Issues
322
+ - Verify native modules are properly built
323
+ - Check platform compatibility
324
+ - Ensure fallback implementations work when native modules unavailable
325
+
326
+ ### Debugging Tips
327
+
328
+ #### Run Single Test
329
+ Add `only: true` to a test configuration to run only that test:
330
+ ```typescript
331
+ {
332
+ name: 'Debug Test',
333
+ testFn: async () => { /* ... */ },
334
+ only: true // Only run this test
335
+ }
336
+ ```
337
+
338
+ #### Enable Verbose Logging
339
+ Run tests with verbose output to see detailed execution information:
340
+ ```bash
341
+ npm run test -- --verbose
342
+ ```
343
+
344
+ #### Skip Specific Tests
345
+ Use `skip: true` to temporarily disable a test:
346
+ ```typescript
347
+ {
348
+ name: 'Flaky Test',
349
+ testFn: async () => { /* ... */ },
350
+ skip: true // Skip this test temporarily
351
+ }
352
+ ```
353
+
354
+ ## Best Practices
355
+
356
+ ### Writing Effective Tests
357
+ 1. **Be Specific**: Each test should verify one specific behavior
358
+ 2. **Use Descriptive Names**: Test names should clearly indicate what is being tested
359
+ 3. **Include Assertions**: Every test should have clear pass/fail criteria
360
+ 4. **Handle Cleanup**: Ensure tests clean up after themselves
361
+ 5. **Consider Performance**: Avoid unnecessary delays in tests
362
+
363
+ ### Performance Testing Guidelines
364
+ 1. **Establish Baselines**: Record performance metrics for reference
365
+ 2. **Test Under Load**: Verify performance with concurrent operations
366
+ 3. **Monitor Resources**: Track memory and CPU usage during tests
367
+ 4. **Compare Results**: Track performance changes over time
368
+ 5. **Use Representative Data**: Test with data similar to production
369
+
370
+ ### Diagnostic Testing Guidelines
371
+ 1. **Fast Execution**: Diagnostic tests should run quickly
372
+ 2. **Targeted Scope**: Focus on specific system components
373
+ 3. **Clear Failure Modes**: Provide clear error messages when tests fail
374
+ 4. **Issue Reproduction**: Create tests that reproduce known issues
375
+ 5. **Health Verification**: Verify system health after operations
376
+
377
+ ## Maintenance
378
+
379
+ ### Adding New Test Categories
380
+ 1. Create a new test configuration file
381
+ 2. Follow the established patterns for test structure
382
+ 3. Add appropriate tags for filtering
383
+ 4. Update documentation if needed
384
+ 5. Add to the main test runner
385
+
386
+ ### Updating Performance Baselines
387
+ 1. Run comprehensive performance tests on stable release
388
+ 2. Record new baseline metrics
389
+ 3. Update BASELINE_PERFORMANCE constants
390
+ 4. Update documentation with new values
391
+ 5. Verify all performance tests pass with new baselines
392
+
393
+ ### Test Data Management
394
+ 1. Keep test data representative of real usage
395
+ 2. Regularly update test datasets to reflect new features
396
+ 3. Maintain datasets of different sizes for different test types
397
+ 4. Ensure test data is properly licensed and doesn't contain sensitive information
@@ -0,0 +1,121 @@
1
+ # ECE_Core Testing Framework Implementation Summary
2
+
3
+ ## Overview
4
+ This document summarizes the implementation of the comprehensive testing framework for ECE_Core, which was completed as part of the standardization initiative to improve system reliability, performance monitoring, and issue reproduction capabilities.
5
+
6
+ ## Completed Components
7
+
8
+ ### 1. Centralized Test Framework (`test-framework/core.ts`)
9
+ - Implemented a flexible test framework with support for different test types
10
+ - Added support for parallel execution and dependency management
11
+ - Created interfaces for test cases, test suites, and reporters
12
+ - Implemented timeout handling and error management
13
+ - Added support for test tagging and filtering
14
+
15
+ ### 2. Configuration Management (`test-framework/config.ts`)
16
+ - Created a centralized configuration system for test environments
17
+ - Implemented dataset-specific configuration management
18
+ - Added support for different test data sizes (small, medium, large, XL)
19
+ - Created configuration validation and error handling
20
+ - Implemented environment-specific settings (development, staging, production)
21
+
22
+ ### 3. Diagnostic Test Suite (`test-framework/diagnostic-tests.ts`)
23
+ - Developed quick diagnostic tests for rapid issue reproduction
24
+ - Created health checks for core system components (database, native modules, API endpoints)
25
+ - Implemented tests for content ingestion, sanitization, and retrieval
26
+ - Added memory usage and performance validation tests
27
+ - Created targeted tests for specific failure modes
28
+
29
+ ### 4. Performance Regression Tests (`test-framework/performance-tests.ts`)
30
+ - Implemented comprehensive performance benchmarking
31
+ - Created tests for ingestion performance with different content sizes
32
+ - Added search performance validation with various query complexities
33
+ - Developed memory usage analysis and leak detection tests
34
+ - Created database performance tests for query and transaction efficiency
35
+ - Added native module performance validation
36
+ - Implemented concurrency and load testing capabilities
37
+
38
+ ### 5. Dataset-Specific Test Configurations (`test-framework/dataset-runner.ts`)
39
+ - Created framework for dataset-specific test configurations
40
+ - Implemented different test strategies for various data sizes
41
+ - Added support for content type-specific testing (code, prose, data)
42
+ - Created configuration templates for different testing scenarios
43
+ - Implemented dataset loading and validation
44
+
45
+ ### 6. Documentation (`docs/testing-framework.md`)
46
+ - Created comprehensive documentation for the testing framework
47
+ - Documented architecture, components, and usage patterns
48
+ - Provided examples for different test types
49
+ - Included configuration guidelines and best practices
50
+ - Added troubleshooting and maintenance guides
51
+
52
+ ## Key Features
53
+
54
+ ### Modular Architecture
55
+ - Pluggable test runners for different test types
56
+ - Extensible reporter system (console, JSON, JUnit, HTML)
57
+ - Flexible configuration system
58
+ - Support for custom test validators
59
+
60
+ ### Performance Monitoring
61
+ - Built-in performance metrics collection
62
+ - Baseline establishment and regression detection
63
+ - Resource usage tracking (memory, CPU)
64
+ - Response time monitoring
65
+
66
+ ### Diagnostic Capabilities
67
+ - Rapid issue reproduction tests
68
+ - Component-specific health checks
69
+ - Configuration validation
70
+ - Environment verification
71
+
72
+ ### Scalability
73
+ - Parallel test execution support
74
+ - Configurable worker pools
75
+ - Resource-efficient test execution
76
+ - Dataset-appropriate test strategies
77
+
78
+ ## Implementation Benefits
79
+
80
+ 1. **Improved Reliability**: Comprehensive test coverage reduces bugs in production
81
+ 2. **Performance Visibility**: Clear performance metrics help identify bottlenecks
82
+ 3. **Faster Issue Resolution**: Diagnostic tests enable rapid problem identification
83
+ 4. **Regression Prevention**: Performance tests catch performance degradation early
84
+ 5. **Maintainability**: Centralized framework makes test management easier
85
+ 6. **Flexibility**: Support for different test types and configurations
86
+
87
+ ## Usage Instructions
88
+
89
+ ### Running Tests
90
+ ```bash
91
+ # Run all tests
92
+ npm test
93
+
94
+ # Run specific test types
95
+ npm run test:diagnostic
96
+ npm run test:performance
97
+ npm run test:dataset -- --dataset=small
98
+
99
+ # Run with specific options
100
+ npm test -- --verbose --report
101
+ ```
102
+
103
+ ### Configuration
104
+ Tests can be configured using the `test-config.json` file which allows customization of:
105
+ - Environment settings (base URLs, timeouts)
106
+ - Dataset configurations
107
+ - Performance thresholds
108
+ - Reporting options
109
+
110
+ ## Future Enhancements
111
+
112
+ The framework is designed to be extensible for future enhancements:
113
+ - Additional test types (security, compliance)
114
+ - Integration with monitoring systems
115
+ - Advanced reporting and analytics
116
+ - Machine learning-based anomaly detection
117
+ - Automated test generation
118
+
119
+ ## Conclusion
120
+
121
+ The implementation of this comprehensive testing framework significantly improves the reliability and maintainability of the ECE_Core system. It provides the necessary tools to ensure consistent quality, detect performance regressions early, and enable rapid issue resolution. The modular architecture allows for continued evolution as testing requirements grow more sophisticated.