cognitive-core 0.2.5 → 0.3.1

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 (1279) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +88 -143
  3. package/dist/agents/mock-provider.d.ts.map +1 -1
  4. package/dist/agents/mock-provider.js.map +1 -1
  5. package/dist/agents/types.d.ts.map +1 -1
  6. package/dist/agents/types.js +5 -4
  7. package/dist/agents/types.js.map +1 -1
  8. package/dist/atlas.d.ts +309 -97
  9. package/dist/atlas.d.ts.map +1 -1
  10. package/dist/atlas.js +743 -277
  11. package/dist/atlas.js.map +1 -1
  12. package/dist/bin/cli-utils.d.ts +25 -2
  13. package/dist/bin/cli-utils.d.ts.map +1 -1
  14. package/dist/bin/cli-utils.js +79 -9
  15. package/dist/bin/cli-utils.js.map +1 -1
  16. package/dist/bin/cognitive-core.js +32 -0
  17. package/dist/bin/cognitive-core.js.map +1 -1
  18. package/dist/bin/commands/dream.d.ts +17 -0
  19. package/dist/bin/commands/dream.d.ts.map +1 -0
  20. package/dist/bin/commands/dream.js +168 -0
  21. package/dist/bin/commands/dream.js.map +1 -0
  22. package/dist/bin/commands/eval.d.ts +181 -0
  23. package/dist/bin/commands/eval.d.ts.map +1 -0
  24. package/dist/bin/commands/eval.js +1582 -0
  25. package/dist/bin/commands/eval.js.map +1 -0
  26. package/dist/bin/commands/kb.js +0 -8
  27. package/dist/bin/commands/kb.js.map +1 -1
  28. package/dist/bin/commands/learn.js +12 -4
  29. package/dist/bin/commands/learn.js.map +1 -1
  30. package/dist/bin/commands/legacy.d.ts.map +1 -1
  31. package/dist/bin/commands/legacy.js +1 -1
  32. package/dist/bin/commands/legacy.js.map +1 -1
  33. package/dist/bin/commands/run.d.ts.map +1 -1
  34. package/dist/bin/commands/run.js +10 -9
  35. package/dist/bin/commands/run.js.map +1 -1
  36. package/dist/bin/commands/sessions.d.ts.map +1 -1
  37. package/dist/bin/commands/sessions.js.map +1 -1
  38. package/dist/bin/commands/skills.d.ts.map +1 -1
  39. package/dist/bin/commands/skills.js +283 -1
  40. package/dist/bin/commands/skills.js.map +1 -1
  41. package/dist/embeddings/bm25.d.ts.map +1 -1
  42. package/dist/embeddings/bm25.js +1 -2
  43. package/dist/embeddings/bm25.js.map +1 -1
  44. package/dist/embeddings/index.d.ts +3 -3
  45. package/dist/embeddings/index.d.ts.map +1 -1
  46. package/dist/embeddings/index.js +3 -3
  47. package/dist/embeddings/index.js.map +1 -1
  48. package/dist/embeddings/inverted-index.js +62 -7
  49. package/dist/embeddings/inverted-index.js.map +1 -1
  50. package/dist/embeddings/manager.d.ts.map +1 -1
  51. package/dist/embeddings/manager.js +6 -5
  52. package/dist/embeddings/manager.js.map +1 -1
  53. package/dist/embeddings/provider.d.ts +96 -5
  54. package/dist/embeddings/provider.d.ts.map +1 -1
  55. package/dist/embeddings/provider.js +171 -48
  56. package/dist/embeddings/provider.js.map +1 -1
  57. package/dist/embeddings/vector-store.d.ts.map +1 -1
  58. package/dist/embeddings/vector-store.js +3 -1
  59. package/dist/embeddings/vector-store.js.map +1 -1
  60. package/dist/eval/ablation-validate.d.ts +12 -0
  61. package/dist/eval/ablation-validate.d.ts.map +1 -0
  62. package/dist/eval/ablation-validate.js +78 -0
  63. package/dist/eval/ablation-validate.js.map +1 -0
  64. package/dist/eval/ablation.d.ts +94 -0
  65. package/dist/eval/ablation.d.ts.map +1 -0
  66. package/dist/eval/ablation.js +161 -0
  67. package/dist/eval/ablation.js.map +1 -0
  68. package/dist/eval/ci-smoke.d.ts +11 -0
  69. package/dist/eval/ci-smoke.d.ts.map +1 -0
  70. package/dist/eval/ci-smoke.js +49 -0
  71. package/dist/eval/ci-smoke.js.map +1 -0
  72. package/dist/eval/diagnostics.d.ts +214 -0
  73. package/dist/eval/diagnostics.d.ts.map +1 -0
  74. package/dist/eval/diagnostics.js +107 -0
  75. package/dist/eval/diagnostics.js.map +1 -0
  76. package/dist/eval/index.d.ts +27 -0
  77. package/dist/eval/index.d.ts.map +1 -0
  78. package/dist/eval/index.js +27 -0
  79. package/dist/eval/index.js.map +1 -0
  80. package/dist/eval/live/alfworld.d.ts +248 -0
  81. package/dist/eval/live/alfworld.d.ts.map +1 -0
  82. package/dist/eval/live/alfworld.js +637 -0
  83. package/dist/eval/live/alfworld.js.map +1 -0
  84. package/dist/eval/live/alfworld_h1.d.ts +16 -0
  85. package/dist/eval/live/alfworld_h1.d.ts.map +1 -0
  86. package/dist/eval/live/alfworld_h1.js +75 -0
  87. package/dist/eval/live/alfworld_h1.js.map +1 -0
  88. package/dist/eval/live/alfworld_memory.d.ts +38 -0
  89. package/dist/eval/live/alfworld_memory.d.ts.map +1 -0
  90. package/dist/eval/live/alfworld_memory.js +184 -0
  91. package/dist/eval/live/alfworld_memory.js.map +1 -0
  92. package/dist/eval/live/alfworld_strategy.d.ts +65 -0
  93. package/dist/eval/live/alfworld_strategy.d.ts.map +1 -0
  94. package/dist/eval/live/alfworld_strategy.js +89 -0
  95. package/dist/eval/live/alfworld_strategy.js.map +1 -0
  96. package/dist/eval/live/azure-openai-llm-provider.d.ts +41 -0
  97. package/dist/eval/live/azure-openai-llm-provider.d.ts.map +1 -0
  98. package/dist/eval/live/azure-openai-llm-provider.js +92 -0
  99. package/dist/eval/live/azure-openai-llm-provider.js.map +1 -0
  100. package/dist/eval/live/bridges/skillflow_e2b_bridge.d.ts +3 -0
  101. package/dist/eval/live/bridges/skillflow_e2b_bridge.d.ts.map +1 -0
  102. package/dist/eval/live/bridges/skillflow_e2b_bridge.js +12 -0
  103. package/dist/eval/live/bridges/skillflow_e2b_bridge.js.map +1 -0
  104. package/dist/eval/live/claude-cli-llm-provider.d.ts +53 -0
  105. package/dist/eval/live/claude-cli-llm-provider.d.ts.map +1 -0
  106. package/dist/eval/live/claude-cli-llm-provider.js +71 -0
  107. package/dist/eval/live/claude-cli-llm-provider.js.map +1 -0
  108. package/dist/eval/live/claude-cli.d.ts +96 -0
  109. package/dist/eval/live/claude-cli.d.ts.map +1 -0
  110. package/dist/eval/live/claude-cli.js +314 -0
  111. package/dist/eval/live/claude-cli.js.map +1 -0
  112. package/dist/eval/live/claude-delegate.d.ts +41 -0
  113. package/dist/eval/live/claude-delegate.d.ts.map +1 -0
  114. package/dist/eval/live/claude-delegate.js +59 -0
  115. package/dist/eval/live/claude-delegate.js.map +1 -0
  116. package/dist/eval/live/claude-workspace-backend.d.ts +24 -0
  117. package/dist/eval/live/claude-workspace-backend.d.ts.map +1 -0
  118. package/dist/eval/live/claude-workspace-backend.js +76 -0
  119. package/dist/eval/live/claude-workspace-backend.js.map +1 -0
  120. package/dist/eval/live/clbench.d.ts +64 -0
  121. package/dist/eval/live/clbench.d.ts.map +1 -0
  122. package/dist/eval/live/clbench.js +291 -0
  123. package/dist/eval/live/clbench.js.map +1 -0
  124. package/dist/eval/live/cold-reuse.d.ts +21 -0
  125. package/dist/eval/live/cold-reuse.d.ts.map +1 -0
  126. package/dist/eval/live/cold-reuse.js +102 -0
  127. package/dist/eval/live/cold-reuse.js.map +1 -0
  128. package/dist/eval/live/difficulty-registry.d.ts +68 -0
  129. package/dist/eval/live/difficulty-registry.d.ts.map +1 -0
  130. package/dist/eval/live/difficulty-registry.js +169 -0
  131. package/dist/eval/live/difficulty-registry.js.map +1 -0
  132. package/dist/eval/live/docker.d.ts +52 -0
  133. package/dist/eval/live/docker.d.ts.map +1 -0
  134. package/dist/eval/live/docker.js +164 -0
  135. package/dist/eval/live/docker.js.map +1 -0
  136. package/dist/eval/live/env-bridge.d.ts +68 -0
  137. package/dist/eval/live/env-bridge.d.ts.map +1 -0
  138. package/dist/eval/live/env-bridge.js +188 -0
  139. package/dist/eval/live/env-bridge.js.map +1 -0
  140. package/dist/eval/live/gsm8k.d.ts +44 -0
  141. package/dist/eval/live/gsm8k.d.ts.map +1 -0
  142. package/dist/eval/live/gsm8k.js +142 -0
  143. package/dist/eval/live/gsm8k.js.map +1 -0
  144. package/dist/eval/live/index.d.ts +38 -0
  145. package/dist/eval/live/index.d.ts.map +1 -0
  146. package/dist/eval/live/index.js +38 -0
  147. package/dist/eval/live/index.js.map +1 -0
  148. package/dist/eval/live/lifelongagent.d.ts +64 -0
  149. package/dist/eval/live/lifelongagent.d.ts.map +1 -0
  150. package/dist/eval/live/lifelongagent.js +216 -0
  151. package/dist/eval/live/lifelongagent.js.map +1 -0
  152. package/dist/eval/live/lift-registry.d.ts +128 -0
  153. package/dist/eval/live/lift-registry.d.ts.map +1 -0
  154. package/dist/eval/live/lift-registry.js +147 -0
  155. package/dist/eval/live/lift-registry.js.map +1 -0
  156. package/dist/eval/live/live-benchmark.d.ts +84 -0
  157. package/dist/eval/live/live-benchmark.d.ts.map +1 -0
  158. package/dist/eval/live/live-benchmark.js +2 -0
  159. package/dist/eval/live/live-benchmark.js.map +1 -0
  160. package/dist/eval/live/live-runner.d.ts +609 -0
  161. package/dist/eval/live/live-runner.d.ts.map +1 -0
  162. package/dist/eval/live/live-runner.js +1409 -0
  163. package/dist/eval/live/live-runner.js.map +1 -0
  164. package/dist/eval/live/refine.d.ts +88 -0
  165. package/dist/eval/live/refine.d.ts.map +1 -0
  166. package/dist/eval/live/refine.js +135 -0
  167. package/dist/eval/live/refine.js.map +1 -0
  168. package/dist/eval/live/registry-store.d.ts +109 -0
  169. package/dist/eval/live/registry-store.d.ts.map +1 -0
  170. package/dist/eval/live/registry-store.js +272 -0
  171. package/dist/eval/live/registry-store.js.map +1 -0
  172. package/dist/eval/live/run-checkpoint.d.ts +55 -0
  173. package/dist/eval/live/run-checkpoint.d.ts.map +1 -0
  174. package/dist/eval/live/run-checkpoint.js +86 -0
  175. package/dist/eval/live/run-checkpoint.js.map +1 -0
  176. package/dist/eval/live/run-resume.d.ts +22 -0
  177. package/dist/eval/live/run-resume.d.ts.map +1 -0
  178. package/dist/eval/live/run-resume.js +70 -0
  179. package/dist/eval/live/run-resume.js.map +1 -0
  180. package/dist/eval/live/skill-injector.d.ts +36 -0
  181. package/dist/eval/live/skill-injector.d.ts.map +1 -0
  182. package/dist/eval/live/skill-injector.js +81 -0
  183. package/dist/eval/live/skill-injector.js.map +1 -0
  184. package/dist/eval/live/skillflow-embedded-workbook-bundle.d.ts +3 -0
  185. package/dist/eval/live/skillflow-embedded-workbook-bundle.d.ts.map +1 -0
  186. package/dist/eval/live/skillflow-embedded-workbook-bundle.js +391 -0
  187. package/dist/eval/live/skillflow-embedded-workbook-bundle.js.map +1 -0
  188. package/dist/eval/live/skillflow.d.ts +154 -0
  189. package/dist/eval/live/skillflow.d.ts.map +1 -0
  190. package/dist/eval/live/skillflow.js +612 -0
  191. package/dist/eval/live/skillflow.js.map +1 -0
  192. package/dist/eval/live/skilllearnbench.d.ts +43 -0
  193. package/dist/eval/live/skilllearnbench.d.ts.map +1 -0
  194. package/dist/eval/live/skilllearnbench.js +154 -0
  195. package/dist/eval/live/skilllearnbench.js.map +1 -0
  196. package/dist/eval/live/skillopt_v1.d.ts +96 -0
  197. package/dist/eval/live/skillopt_v1.d.ts.map +1 -0
  198. package/dist/eval/live/skillopt_v1.js +0 -0
  199. package/dist/eval/live/skillopt_v1.js.map +1 -0
  200. package/dist/eval/live/skillopt_v1_causal.d.ts +26 -0
  201. package/dist/eval/live/skillopt_v1_causal.d.ts.map +1 -0
  202. package/dist/eval/live/skillopt_v1_causal.js +106 -0
  203. package/dist/eval/live/skillopt_v1_causal.js.map +1 -0
  204. package/dist/eval/live/skillopt_v1_memory.d.ts +53 -0
  205. package/dist/eval/live/skillopt_v1_memory.d.ts.map +1 -0
  206. package/dist/eval/live/skillopt_v1_memory.js +147 -0
  207. package/dist/eval/live/skillopt_v1_memory.js.map +1 -0
  208. package/dist/eval/live/skillopt_v1_rules.d.ts +39 -0
  209. package/dist/eval/live/skillopt_v1_rules.d.ts.map +1 -0
  210. package/dist/eval/live/skillopt_v1_rules.js +91 -0
  211. package/dist/eval/live/skillopt_v1_rules.js.map +1 -0
  212. package/dist/eval/live/skillsbench.d.ts +138 -0
  213. package/dist/eval/live/skillsbench.d.ts.map +1 -0
  214. package/dist/eval/live/skillsbench.js +626 -0
  215. package/dist/eval/live/skillsbench.js.map +1 -0
  216. package/dist/eval/live/stopping.d.ts +69 -0
  217. package/dist/eval/live/stopping.d.ts.map +1 -0
  218. package/dist/eval/live/stopping.js +213 -0
  219. package/dist/eval/live/stopping.js.map +1 -0
  220. package/dist/eval/live/trace.d.ts +20 -0
  221. package/dist/eval/live/trace.d.ts.map +1 -0
  222. package/dist/eval/live/trace.js +41 -0
  223. package/dist/eval/live/trace.js.map +1 -0
  224. package/dist/eval/mechanism-trace-adapter.d.ts +8 -0
  225. package/dist/eval/mechanism-trace-adapter.d.ts.map +1 -0
  226. package/dist/eval/mechanism-trace-adapter.js +118 -0
  227. package/dist/eval/mechanism-trace-adapter.js.map +1 -0
  228. package/dist/eval/memory-ab.d.ts +61 -0
  229. package/dist/eval/memory-ab.d.ts.map +1 -0
  230. package/dist/eval/memory-ab.js +161 -0
  231. package/dist/eval/memory-ab.js.map +1 -0
  232. package/dist/eval/memory-mock.d.ts +54 -0
  233. package/dist/eval/memory-mock.d.ts.map +1 -0
  234. package/dist/eval/memory-mock.js +129 -0
  235. package/dist/eval/memory-mock.js.map +1 -0
  236. package/dist/eval/memory-qa/index.d.ts +13 -0
  237. package/dist/eval/memory-qa/index.d.ts.map +1 -0
  238. package/dist/eval/memory-qa/index.js +13 -0
  239. package/dist/eval/memory-qa/index.js.map +1 -0
  240. package/dist/eval/memory-qa/iterative.d.ts +80 -0
  241. package/dist/eval/memory-qa/iterative.d.ts.map +1 -0
  242. package/dist/eval/memory-qa/iterative.js +107 -0
  243. package/dist/eval/memory-qa/iterative.js.map +1 -0
  244. package/dist/eval/memory-qa/loaders.d.ts +11 -0
  245. package/dist/eval/memory-qa/loaders.d.ts.map +1 -0
  246. package/dist/eval/memory-qa/loaders.js +21 -0
  247. package/dist/eval/memory-qa/loaders.js.map +1 -0
  248. package/dist/eval/memory-qa/metrics.d.ts +3 -0
  249. package/dist/eval/memory-qa/metrics.d.ts.map +1 -0
  250. package/dist/eval/memory-qa/metrics.js +2 -0
  251. package/dist/eval/memory-qa/metrics.js.map +1 -0
  252. package/dist/eval/memory-qa/qa.d.ts +186 -0
  253. package/dist/eval/memory-qa/qa.d.ts.map +1 -0
  254. package/dist/eval/memory-qa/qa.js +424 -0
  255. package/dist/eval/memory-qa/qa.js.map +1 -0
  256. package/dist/eval/memory-qa/retrieval.d.ts +33 -0
  257. package/dist/eval/memory-qa/retrieval.d.ts.map +1 -0
  258. package/dist/eval/memory-qa/retrieval.js +44 -0
  259. package/dist/eval/memory-qa/retrieval.js.map +1 -0
  260. package/dist/eval/memory-qa/serving.d.ts +60 -0
  261. package/dist/eval/memory-qa/serving.d.ts.map +1 -0
  262. package/dist/eval/memory-qa/serving.js +267 -0
  263. package/dist/eval/memory-qa/serving.js.map +1 -0
  264. package/dist/eval/memory-qa/types.d.ts +2 -0
  265. package/dist/eval/memory-qa/types.d.ts.map +1 -0
  266. package/dist/eval/memory-qa/types.js +2 -0
  267. package/dist/eval/memory-qa/types.js.map +1 -0
  268. package/dist/eval/metrics.d.ts +120 -0
  269. package/dist/eval/metrics.d.ts.map +1 -0
  270. package/dist/eval/metrics.js +361 -0
  271. package/dist/eval/metrics.js.map +1 -0
  272. package/dist/eval/oracle-smoke.d.ts +75 -0
  273. package/dist/eval/oracle-smoke.d.ts.map +1 -0
  274. package/dist/eval/oracle-smoke.js +143 -0
  275. package/dist/eval/oracle-smoke.js.map +1 -0
  276. package/dist/eval/playbook-calibration-report.d.ts +40 -0
  277. package/dist/eval/playbook-calibration-report.d.ts.map +1 -0
  278. package/dist/eval/playbook-calibration-report.js +246 -0
  279. package/dist/eval/playbook-calibration-report.js.map +1 -0
  280. package/dist/eval/playbook-candidate-decisions-report.d.ts +36 -0
  281. package/dist/eval/playbook-candidate-decisions-report.d.ts.map +1 -0
  282. package/dist/eval/playbook-candidate-decisions-report.js +201 -0
  283. package/dist/eval/playbook-candidate-decisions-report.js.map +1 -0
  284. package/dist/eval/playbook-usage-report.d.ts +7 -0
  285. package/dist/eval/playbook-usage-report.d.ts.map +1 -0
  286. package/dist/eval/playbook-usage-report.js +222 -0
  287. package/dist/eval/playbook-usage-report.js.map +1 -0
  288. package/dist/eval/report.d.ts +28 -0
  289. package/dist/eval/report.d.ts.map +1 -0
  290. package/dist/eval/report.js +567 -0
  291. package/dist/eval/report.js.map +1 -0
  292. package/dist/eval/retrieval/corpus.d.ts +41 -0
  293. package/dist/eval/retrieval/corpus.d.ts.map +1 -0
  294. package/dist/eval/retrieval/corpus.js +158 -0
  295. package/dist/eval/retrieval/corpus.js.map +1 -0
  296. package/dist/eval/retrieval/index.d.ts +12 -0
  297. package/dist/eval/retrieval/index.d.ts.map +1 -0
  298. package/dist/eval/retrieval/index.js +14 -0
  299. package/dist/eval/retrieval/index.js.map +1 -0
  300. package/dist/eval/retrieval/knowledge-corpus.d.ts +91 -0
  301. package/dist/eval/retrieval/knowledge-corpus.d.ts.map +1 -0
  302. package/dist/eval/retrieval/knowledge-corpus.js +268 -0
  303. package/dist/eval/retrieval/knowledge-corpus.js.map +1 -0
  304. package/dist/eval/retrieval/knowledge-quality.d.ts +91 -0
  305. package/dist/eval/retrieval/knowledge-quality.d.ts.map +1 -0
  306. package/dist/eval/retrieval/knowledge-quality.js +247 -0
  307. package/dist/eval/retrieval/knowledge-quality.js.map +1 -0
  308. package/dist/eval/retrieval/ladder.d.ts +69 -0
  309. package/dist/eval/retrieval/ladder.d.ts.map +1 -0
  310. package/dist/eval/retrieval/ladder.js +80 -0
  311. package/dist/eval/retrieval/ladder.js.map +1 -0
  312. package/dist/eval/retrieval/quality.d.ts +39 -0
  313. package/dist/eval/retrieval/quality.d.ts.map +1 -0
  314. package/dist/eval/retrieval/quality.js +75 -0
  315. package/dist/eval/retrieval/quality.js.map +1 -0
  316. package/dist/eval/rng.d.ts +25 -0
  317. package/dist/eval/rng.d.ts.map +1 -0
  318. package/dist/eval/rng.js +43 -0
  319. package/dist/eval/rng.js.map +1 -0
  320. package/dist/eval/runner.d.ts +65 -0
  321. package/dist/eval/runner.d.ts.map +1 -0
  322. package/dist/eval/runner.js +216 -0
  323. package/dist/eval/runner.js.map +1 -0
  324. package/dist/eval/skill-bundle.d.ts +18 -0
  325. package/dist/eval/skill-bundle.d.ts.map +1 -0
  326. package/dist/eval/skill-bundle.js +38 -0
  327. package/dist/eval/skill-bundle.js.map +1 -0
  328. package/dist/eval/swarmkit-report.d.ts +21 -0
  329. package/dist/eval/swarmkit-report.d.ts.map +1 -0
  330. package/dist/eval/swarmkit-report.js +93 -0
  331. package/dist/eval/swarmkit-report.js.map +1 -0
  332. package/dist/eval/task-stream.d.ts +22 -0
  333. package/dist/eval/task-stream.d.ts.map +1 -0
  334. package/dist/eval/task-stream.js +99 -0
  335. package/dist/eval/task-stream.js.map +1 -0
  336. package/dist/eval/types.d.ts +173 -0
  337. package/dist/eval/types.d.ts.map +1 -0
  338. package/dist/eval/types.js +11 -0
  339. package/dist/eval/types.js.map +1 -0
  340. package/dist/experimental/causal-store.d.ts +97 -0
  341. package/dist/experimental/causal-store.d.ts.map +1 -0
  342. package/dist/experimental/causal-store.js +213 -0
  343. package/dist/experimental/causal-store.js.map +1 -0
  344. package/dist/experimental/graph-layers/base.d.ts +29 -0
  345. package/dist/experimental/graph-layers/base.d.ts.map +1 -0
  346. package/dist/experimental/graph-layers/base.js +143 -0
  347. package/dist/experimental/graph-layers/base.js.map +1 -0
  348. package/dist/experimental/graph-layers/causal.d.ts +14 -0
  349. package/dist/experimental/graph-layers/causal.d.ts.map +1 -0
  350. package/dist/experimental/graph-layers/causal.js +14 -0
  351. package/dist/experimental/graph-layers/causal.js.map +1 -0
  352. package/dist/experimental/graph-layers/entity.d.ts +14 -0
  353. package/dist/experimental/graph-layers/entity.d.ts.map +1 -0
  354. package/dist/experimental/graph-layers/entity.js +14 -0
  355. package/dist/experimental/graph-layers/entity.js.map +1 -0
  356. package/dist/experimental/graph-layers/index.d.ts +6 -0
  357. package/dist/experimental/graph-layers/index.d.ts.map +1 -0
  358. package/dist/experimental/graph-layers/index.js +6 -0
  359. package/dist/experimental/graph-layers/index.js.map +1 -0
  360. package/dist/experimental/graph-layers/semantic.d.ts +14 -0
  361. package/dist/experimental/graph-layers/semantic.d.ts.map +1 -0
  362. package/dist/experimental/graph-layers/semantic.js +14 -0
  363. package/dist/experimental/graph-layers/semantic.js.map +1 -0
  364. package/dist/experimental/graph-layers/temporal.d.ts +14 -0
  365. package/dist/experimental/graph-layers/temporal.d.ts.map +1 -0
  366. package/dist/experimental/graph-layers/temporal.js +14 -0
  367. package/dist/experimental/graph-layers/temporal.js.map +1 -0
  368. package/dist/experimental/healing-orchestrator.d.ts +182 -0
  369. package/dist/experimental/healing-orchestrator.d.ts.map +1 -0
  370. package/dist/experimental/healing-orchestrator.js +250 -0
  371. package/dist/experimental/healing-orchestrator.js.map +1 -0
  372. package/dist/experimental/knowledge-graph-types.d.ts +148 -0
  373. package/dist/experimental/knowledge-graph-types.d.ts.map +1 -0
  374. package/dist/experimental/knowledge-graph-types.js +40 -0
  375. package/dist/experimental/knowledge-graph-types.js.map +1 -0
  376. package/dist/experimental/knowledge-graph.d.ts +41 -0
  377. package/dist/experimental/knowledge-graph.d.ts.map +1 -0
  378. package/dist/experimental/knowledge-graph.js +270 -0
  379. package/dist/experimental/knowledge-graph.js.map +1 -0
  380. package/dist/experimental/meta-reflection.d.ts +47 -0
  381. package/dist/experimental/meta-reflection.d.ts.map +1 -0
  382. package/dist/experimental/meta-reflection.js +143 -0
  383. package/dist/experimental/meta-reflection.js.map +1 -0
  384. package/dist/experimental/moe-gate.d.ts +134 -0
  385. package/dist/experimental/moe-gate.d.ts.map +1 -0
  386. package/dist/experimental/moe-gate.js +240 -0
  387. package/dist/experimental/moe-gate.js.map +1 -0
  388. package/dist/experimental/reasoning-bank.d.ts +130 -0
  389. package/dist/experimental/reasoning-bank.d.ts.map +1 -0
  390. package/dist/experimental/reasoning-bank.js +427 -0
  391. package/dist/experimental/reasoning-bank.js.map +1 -0
  392. package/dist/experimental/team/team-config.d.ts +127 -0
  393. package/dist/experimental/team/team-config.d.ts.map +1 -0
  394. package/dist/experimental/team/team-config.js +48 -0
  395. package/dist/experimental/team/team-config.js.map +1 -0
  396. package/dist/experimental/team/team-experience.d.ts +300 -0
  397. package/dist/experimental/team/team-experience.d.ts.map +1 -0
  398. package/dist/experimental/team/team-experience.js +355 -0
  399. package/dist/experimental/team/team-experience.js.map +1 -0
  400. package/dist/experimental/team/team-ingester.d.ts +152 -0
  401. package/dist/experimental/team/team-ingester.d.ts.map +1 -0
  402. package/dist/experimental/team/team-ingester.js +330 -0
  403. package/dist/experimental/team/team-ingester.js.map +1 -0
  404. package/dist/experimental/team/team-meta-learner.d.ts +51 -0
  405. package/dist/experimental/team/team-meta-learner.d.ts.map +1 -0
  406. package/dist/experimental/team/team-meta-learner.js +404 -0
  407. package/dist/experimental/team/team-meta-learner.js.map +1 -0
  408. package/dist/experimental/team/team-meta.d.ts +160 -0
  409. package/dist/experimental/team/team-meta.d.ts.map +1 -0
  410. package/dist/experimental/team/team-meta.js +42 -0
  411. package/dist/experimental/team/team-meta.js.map +1 -0
  412. package/dist/experimental/team/team-pipeline.d.ts +77 -0
  413. package/dist/experimental/team/team-pipeline.d.ts.map +1 -0
  414. package/dist/experimental/team/team-pipeline.js +262 -0
  415. package/dist/experimental/team/team-pipeline.js.map +1 -0
  416. package/dist/experimental/team/team-playbook-extraction.d.ts +45 -0
  417. package/dist/experimental/team/team-playbook-extraction.d.ts.map +1 -0
  418. package/dist/experimental/team/team-playbook-extraction.js +526 -0
  419. package/dist/experimental/team/team-playbook-extraction.js.map +1 -0
  420. package/dist/experimental/team/team-playbook.d.ts +276 -0
  421. package/dist/experimental/team/team-playbook.d.ts.map +1 -0
  422. package/dist/experimental/team/team-playbook.js +85 -0
  423. package/dist/experimental/team/team-playbook.js.map +1 -0
  424. package/dist/experimental/team/team-router.d.ts +98 -0
  425. package/dist/experimental/team/team-router.d.ts.map +1 -0
  426. package/dist/experimental/team/team-router.js +312 -0
  427. package/dist/experimental/team/team-router.js.map +1 -0
  428. package/dist/experimental/team/team-skill-library.d.ts +180 -0
  429. package/dist/experimental/team/team-skill-library.d.ts.map +1 -0
  430. package/dist/experimental/team/team-skill-library.js +385 -0
  431. package/dist/experimental/team/team-skill-library.js.map +1 -0
  432. package/dist/experimental/team/team-trajectory-analysis.d.ts +19 -0
  433. package/dist/experimental/team/team-trajectory-analysis.d.ts.map +1 -0
  434. package/dist/experimental/team/team-trajectory-analysis.js +442 -0
  435. package/dist/experimental/team/team-trajectory-analysis.js.map +1 -0
  436. package/dist/experimental/team/team-trajectory.d.ts +305 -0
  437. package/dist/experimental/team/team-trajectory.d.ts.map +1 -0
  438. package/dist/experimental/team/team-trajectory.js +315 -0
  439. package/dist/experimental/team/team-trajectory.js.map +1 -0
  440. package/dist/factory.d.ts +2 -3
  441. package/dist/factory.d.ts.map +1 -1
  442. package/dist/factory.js +12 -11
  443. package/dist/factory.js.map +1 -1
  444. package/dist/index.d.ts +9 -11
  445. package/dist/index.d.ts.map +1 -1
  446. package/dist/index.js +26 -32
  447. package/dist/index.js.map +1 -1
  448. package/dist/learning/analyzer.d.ts +26 -36
  449. package/dist/learning/analyzer.d.ts.map +1 -1
  450. package/dist/learning/analyzer.js +50 -11
  451. package/dist/learning/analyzer.js.map +1 -1
  452. package/dist/learning/compound-bootstrap/external-acquisition.d.ts +63 -0
  453. package/dist/learning/compound-bootstrap/external-acquisition.d.ts.map +1 -0
  454. package/dist/learning/compound-bootstrap/external-acquisition.js +255 -0
  455. package/dist/learning/compound-bootstrap/external-acquisition.js.map +1 -0
  456. package/dist/learning/compound-bootstrap/index.d.ts +3 -0
  457. package/dist/learning/compound-bootstrap/index.d.ts.map +1 -0
  458. package/dist/learning/compound-bootstrap/index.js +3 -0
  459. package/dist/learning/compound-bootstrap/index.js.map +1 -0
  460. package/dist/learning/compound-bootstrap/workspace-analyzer.d.ts +33 -0
  461. package/dist/learning/compound-bootstrap/workspace-analyzer.d.ts.map +1 -0
  462. package/dist/learning/compound-bootstrap/workspace-analyzer.js +379 -0
  463. package/dist/learning/compound-bootstrap/workspace-analyzer.js.map +1 -0
  464. package/dist/learning/consolidation-coordinator.d.ts +49 -0
  465. package/dist/learning/consolidation-coordinator.d.ts.map +1 -0
  466. package/dist/learning/consolidation-coordinator.js +75 -0
  467. package/dist/learning/consolidation-coordinator.js.map +1 -0
  468. package/dist/learning/convention-distiller.d.ts +84 -0
  469. package/dist/learning/convention-distiller.d.ts.map +1 -0
  470. package/dist/learning/convention-distiller.js +268 -0
  471. package/dist/learning/convention-distiller.js.map +1 -0
  472. package/dist/learning/distiller.d.ts +82 -0
  473. package/dist/learning/distiller.d.ts.map +1 -0
  474. package/dist/learning/distiller.js +353 -0
  475. package/dist/learning/distiller.js.map +1 -0
  476. package/dist/learning/effectiveness.d.ts +12 -2
  477. package/dist/learning/effectiveness.d.ts.map +1 -1
  478. package/dist/learning/effectiveness.js +18 -14
  479. package/dist/learning/effectiveness.js.map +1 -1
  480. package/dist/learning/escalation.d.ts +89 -0
  481. package/dist/learning/escalation.d.ts.map +1 -0
  482. package/dist/learning/escalation.js +168 -0
  483. package/dist/learning/escalation.js.map +1 -0
  484. package/dist/learning/external-exposure.d.ts +57 -0
  485. package/dist/learning/external-exposure.d.ts.map +1 -0
  486. package/dist/learning/external-exposure.js +95 -0
  487. package/dist/learning/external-exposure.js.map +1 -0
  488. package/dist/learning/gepa-proposer.d.ts +116 -0
  489. package/dist/learning/gepa-proposer.d.ts.map +1 -0
  490. package/dist/learning/gepa-proposer.js +258 -0
  491. package/dist/learning/gepa-proposer.js.map +1 -0
  492. package/dist/learning/index.d.ts +21 -8
  493. package/dist/learning/index.d.ts.map +1 -1
  494. package/dist/learning/index.js +28 -10
  495. package/dist/learning/index.js.map +1 -1
  496. package/dist/learning/instant-loop.d.ts +46 -16
  497. package/dist/learning/instant-loop.d.ts.map +1 -1
  498. package/dist/learning/instant-loop.js +114 -111
  499. package/dist/learning/instant-loop.js.map +1 -1
  500. package/dist/learning/knowledge-extractor.d.ts.map +1 -1
  501. package/dist/learning/knowledge-extractor.js +1 -2
  502. package/dist/learning/knowledge-extractor.js.map +1 -1
  503. package/dist/learning/llm-extractor.d.ts +88 -0
  504. package/dist/learning/llm-extractor.d.ts.map +1 -0
  505. package/dist/learning/llm-extractor.js +372 -0
  506. package/dist/learning/llm-extractor.js.map +1 -0
  507. package/dist/learning/loop-coordinator.d.ts +61 -0
  508. package/dist/learning/loop-coordinator.d.ts.map +1 -0
  509. package/dist/learning/loop-coordinator.js +96 -0
  510. package/dist/learning/loop-coordinator.js.map +1 -0
  511. package/dist/learning/maintenance-scheduler.d.ts +15 -4
  512. package/dist/learning/maintenance-scheduler.d.ts.map +1 -1
  513. package/dist/learning/maintenance-scheduler.js +19 -16
  514. package/dist/learning/maintenance-scheduler.js.map +1 -1
  515. package/dist/learning/mechanism-trace.d.ts +196 -0
  516. package/dist/learning/mechanism-trace.d.ts.map +1 -0
  517. package/dist/learning/mechanism-trace.js +81 -0
  518. package/dist/learning/mechanism-trace.js.map +1 -0
  519. package/dist/learning/merge-proposer.d.ts +102 -0
  520. package/dist/learning/merge-proposer.d.ts.map +1 -0
  521. package/dist/learning/merge-proposer.js +253 -0
  522. package/dist/learning/merge-proposer.js.map +1 -0
  523. package/dist/learning/meta-learner.d.ts +9 -7
  524. package/dist/learning/meta-learner.d.ts.map +1 -1
  525. package/dist/learning/meta-learner.js +16 -45
  526. package/dist/learning/meta-learner.js.map +1 -1
  527. package/dist/learning/mutation-gate.d.ts +218 -0
  528. package/dist/learning/mutation-gate.d.ts.map +1 -0
  529. package/dist/learning/mutation-gate.js +390 -0
  530. package/dist/learning/mutation-gate.js.map +1 -0
  531. package/dist/learning/oracle-signal.d.ts +67 -0
  532. package/dist/learning/oracle-signal.d.ts.map +1 -0
  533. package/dist/learning/oracle-signal.js +94 -0
  534. package/dist/learning/oracle-signal.js.map +1 -0
  535. package/dist/learning/pipeline.d.ts +116 -0
  536. package/dist/learning/pipeline.d.ts.map +1 -0
  537. package/dist/learning/pipeline.js +288 -0
  538. package/dist/learning/pipeline.js.map +1 -0
  539. package/dist/learning/playbook-extractor.d.ts +8 -0
  540. package/dist/learning/playbook-extractor.d.ts.map +1 -1
  541. package/dist/learning/playbook-extractor.js +119 -34
  542. package/dist/learning/playbook-extractor.js.map +1 -1
  543. package/dist/learning/playbook-optimizer.d.ts +37 -0
  544. package/dist/learning/playbook-optimizer.d.ts.map +1 -0
  545. package/dist/learning/playbook-optimizer.js +125 -0
  546. package/dist/learning/playbook-optimizer.js.map +1 -0
  547. package/dist/learning/reflective-proposer.d.ts +173 -0
  548. package/dist/learning/reflective-proposer.d.ts.map +1 -0
  549. package/dist/learning/reflective-proposer.js +354 -0
  550. package/dist/learning/reflective-proposer.js.map +1 -0
  551. package/dist/learning/reflexion-generator.d.ts.map +1 -1
  552. package/dist/learning/reflexion-generator.js +4 -3
  553. package/dist/learning/reflexion-generator.js.map +1 -1
  554. package/dist/learning/replay-executor.d.ts +64 -0
  555. package/dist/learning/replay-executor.d.ts.map +1 -0
  556. package/dist/learning/replay-executor.js +92 -0
  557. package/dist/learning/replay-executor.js.map +1 -0
  558. package/dist/learning/replay-types.d.ts +150 -0
  559. package/dist/learning/replay-types.d.ts.map +1 -0
  560. package/dist/learning/replay-types.js +207 -0
  561. package/dist/learning/replay-types.js.map +1 -0
  562. package/dist/learning/replay.d.ts +166 -0
  563. package/dist/learning/replay.d.ts.map +1 -0
  564. package/dist/learning/replay.js +228 -0
  565. package/dist/learning/replay.js.map +1 -0
  566. package/dist/learning/seed-report.d.ts +88 -0
  567. package/dist/learning/seed-report.d.ts.map +1 -0
  568. package/dist/learning/seed-report.js +120 -0
  569. package/dist/learning/seed-report.js.map +1 -0
  570. package/dist/learning/trajectory-sources/dataclaw.d.ts.map +1 -1
  571. package/dist/learning/trajectory-sources/dataclaw.js +6 -18
  572. package/dist/learning/trajectory-sources/dataclaw.js.map +1 -1
  573. package/dist/learning/trajectory-sources/entire.d.ts.map +1 -1
  574. package/dist/learning/trajectory-sources/entire.js +30 -9
  575. package/dist/learning/trajectory-sources/entire.js.map +1 -1
  576. package/dist/learning/trajectory-sources/file.d.ts.map +1 -1
  577. package/dist/learning/trajectory-sources/file.js.map +1 -1
  578. package/dist/learning/trajectory-sources/huggingface.d.ts.map +1 -1
  579. package/dist/learning/trajectory-sources/huggingface.js +7 -7
  580. package/dist/learning/trajectory-sources/huggingface.js.map +1 -1
  581. package/dist/learning/trajectory-sources/in-memory.d.ts.map +1 -1
  582. package/dist/learning/trajectory-sources/in-memory.js.map +1 -1
  583. package/dist/learning/trajectory-sources/index.d.ts +3 -4
  584. package/dist/learning/trajectory-sources/index.d.ts.map +1 -1
  585. package/dist/learning/trajectory-sources/index.js +3 -4
  586. package/dist/learning/trajectory-sources/index.js.map +1 -1
  587. package/dist/learning/trajectory-sources/pipeline.d.ts +4 -3
  588. package/dist/learning/trajectory-sources/pipeline.d.ts.map +1 -1
  589. package/dist/learning/trajectory-sources/pipeline.js +4 -3
  590. package/dist/learning/trajectory-sources/pipeline.js.map +1 -1
  591. package/dist/learning/unified-pipeline.d.ts +486 -61
  592. package/dist/learning/unified-pipeline.d.ts.map +1 -1
  593. package/dist/learning/unified-pipeline.js +1501 -232
  594. package/dist/learning/unified-pipeline.js.map +1 -1
  595. package/dist/learning/usage-inference.d.ts.map +1 -1
  596. package/dist/learning/usage-inference.js +4 -9
  597. package/dist/learning/usage-inference.js.map +1 -1
  598. package/dist/learning/workspace-snapshot.d.ts +146 -0
  599. package/dist/learning/workspace-snapshot.d.ts.map +1 -0
  600. package/dist/learning/workspace-snapshot.js +269 -0
  601. package/dist/learning/workspace-snapshot.js.map +1 -0
  602. package/dist/mcp/playbook-server.d.ts +61 -2
  603. package/dist/mcp/playbook-server.d.ts.map +1 -1
  604. package/dist/mcp/playbook-server.js +179 -9
  605. package/dist/mcp/playbook-server.js.map +1 -1
  606. package/dist/memory/coherence.d.ts.map +1 -1
  607. package/dist/memory/coherence.js +5 -7
  608. package/dist/memory/coherence.js.map +1 -1
  609. package/dist/memory/curated-loader.d.ts +24 -0
  610. package/dist/memory/curated-loader.d.ts.map +1 -1
  611. package/dist/memory/curated-loader.js +22 -5
  612. package/dist/memory/curated-loader.js.map +1 -1
  613. package/dist/memory/evolution/llm-evolver.d.ts +36 -0
  614. package/dist/memory/evolution/llm-evolver.d.ts.map +1 -0
  615. package/dist/memory/evolution/llm-evolver.js +106 -0
  616. package/dist/memory/evolution/llm-evolver.js.map +1 -0
  617. package/dist/memory/experience.d.ts +34 -13
  618. package/dist/memory/experience.d.ts.map +1 -1
  619. package/dist/memory/experience.js +59 -48
  620. package/dist/memory/experience.js.map +1 -1
  621. package/dist/memory/extraction/conversation-extractor.d.ts +62 -0
  622. package/dist/memory/extraction/conversation-extractor.d.ts.map +1 -0
  623. package/dist/memory/extraction/conversation-extractor.js +169 -0
  624. package/dist/memory/extraction/conversation-extractor.js.map +1 -0
  625. package/dist/memory/filesystem-cascade.d.ts +116 -0
  626. package/dist/memory/filesystem-cascade.d.ts.map +1 -0
  627. package/dist/memory/filesystem-cascade.js +221 -0
  628. package/dist/memory/filesystem-cascade.js.map +1 -0
  629. package/dist/memory/index.d.ts +14 -10
  630. package/dist/memory/index.d.ts.map +1 -1
  631. package/dist/memory/index.js +15 -12
  632. package/dist/memory/index.js.map +1 -1
  633. package/dist/memory/knowledge-bank.d.ts +145 -29
  634. package/dist/memory/knowledge-bank.d.ts.map +1 -1
  635. package/dist/memory/knowledge-bank.js +511 -200
  636. package/dist/memory/knowledge-bank.js.map +1 -1
  637. package/dist/memory/knowledge-defrag.d.ts +32 -9
  638. package/dist/memory/knowledge-defrag.d.ts.map +1 -1
  639. package/dist/memory/knowledge-defrag.js +57 -49
  640. package/dist/memory/knowledge-defrag.js.map +1 -1
  641. package/dist/memory/meta-playbook-bank.d.ts +24 -0
  642. package/dist/memory/meta-playbook-bank.d.ts.map +1 -0
  643. package/dist/memory/meta-playbook-bank.js +135 -0
  644. package/dist/memory/meta-playbook-bank.js.map +1 -0
  645. package/dist/memory/meta.d.ts.map +1 -1
  646. package/dist/memory/meta.js +33 -14
  647. package/dist/memory/meta.js.map +1 -1
  648. package/dist/memory/playbook-applicability.d.ts +43 -0
  649. package/dist/memory/playbook-applicability.d.ts.map +1 -0
  650. package/dist/memory/playbook-applicability.js +155 -0
  651. package/dist/memory/playbook-applicability.js.map +1 -0
  652. package/dist/memory/playbook-incorporation.d.ts +24 -0
  653. package/dist/memory/playbook-incorporation.d.ts.map +1 -0
  654. package/dist/memory/playbook-incorporation.js +41 -0
  655. package/dist/memory/playbook-incorporation.js.map +1 -0
  656. package/dist/memory/playbook.d.ts +444 -7
  657. package/dist/memory/playbook.d.ts.map +1 -1
  658. package/dist/memory/playbook.js +1231 -50
  659. package/dist/memory/playbook.js.map +1 -1
  660. package/dist/memory/procedural-skill.d.ts +142 -0
  661. package/dist/memory/procedural-skill.d.ts.map +1 -0
  662. package/dist/memory/procedural-skill.js +846 -0
  663. package/dist/memory/procedural-skill.js.map +1 -0
  664. package/dist/memory/search-provider.d.ts +8 -3
  665. package/dist/memory/search-provider.d.ts.map +1 -1
  666. package/dist/memory/search-providers/embedding.d.ts +64 -0
  667. package/dist/memory/search-providers/embedding.d.ts.map +1 -0
  668. package/dist/memory/search-providers/embedding.js +96 -0
  669. package/dist/memory/search-providers/embedding.js.map +1 -0
  670. package/dist/memory/search-providers/hybrid.d.ts +74 -0
  671. package/dist/memory/search-providers/hybrid.d.ts.map +1 -0
  672. package/dist/memory/search-providers/hybrid.js +94 -0
  673. package/dist/memory/search-providers/hybrid.js.map +1 -0
  674. package/dist/memory/search-providers/index.d.ts +3 -0
  675. package/dist/memory/search-providers/index.d.ts.map +1 -1
  676. package/dist/memory/search-providers/index.js +3 -0
  677. package/dist/memory/search-providers/index.js.map +1 -1
  678. package/dist/memory/search-providers/keyword-expanding.d.ts +22 -0
  679. package/dist/memory/search-providers/keyword-expanding.d.ts.map +1 -0
  680. package/dist/memory/search-providers/keyword-expanding.js +35 -0
  681. package/dist/memory/search-providers/keyword-expanding.js.map +1 -0
  682. package/dist/memory/search-providers/minimem.d.ts +16 -4
  683. package/dist/memory/search-providers/minimem.d.ts.map +1 -1
  684. package/dist/memory/search-providers/minimem.js +14 -3
  685. package/dist/memory/search-providers/minimem.js.map +1 -1
  686. package/dist/memory/search-providers/text-similarity.d.ts +2 -4
  687. package/dist/memory/search-providers/text-similarity.d.ts.map +1 -1
  688. package/dist/memory/search-providers/text-similarity.js.map +1 -1
  689. package/dist/memory/seeds/meta-playbook-seeds.d.ts +27 -0
  690. package/dist/memory/seeds/meta-playbook-seeds.d.ts.map +1 -0
  691. package/dist/memory/seeds/meta-playbook-seeds.js +560 -0
  692. package/dist/memory/seeds/meta-playbook-seeds.js.map +1 -0
  693. package/dist/memory/seeds/meta-strategy-seeds.d.ts +23 -0
  694. package/dist/memory/seeds/meta-strategy-seeds.d.ts.map +1 -0
  695. package/dist/memory/seeds/meta-strategy-seeds.js +82 -0
  696. package/dist/memory/seeds/meta-strategy-seeds.js.map +1 -0
  697. package/dist/memory/seeds/seed-loader.d.ts +34 -0
  698. package/dist/memory/seeds/seed-loader.d.ts.map +1 -0
  699. package/dist/memory/seeds/seed-loader.js +60 -0
  700. package/dist/memory/seeds/seed-loader.js.map +1 -0
  701. package/dist/memory/skill-exporter.d.ts.map +1 -1
  702. package/dist/memory/skill-exporter.js +1 -2
  703. package/dist/memory/skill-exporter.js.map +1 -1
  704. package/dist/memory/source-resolver.d.ts.map +1 -1
  705. package/dist/memory/source-resolver.js +7 -8
  706. package/dist/memory/source-resolver.js.map +1 -1
  707. package/dist/memory/system.d.ts +119 -14
  708. package/dist/memory/system.d.ts.map +1 -1
  709. package/dist/memory/system.js +416 -60
  710. package/dist/memory/system.js.map +1 -1
  711. package/dist/memory/temporal-compressor.d.ts +1 -1
  712. package/dist/memory/temporal-compressor.d.ts.map +1 -1
  713. package/dist/memory/temporal-compressor.js +26 -16
  714. package/dist/memory/temporal-compressor.js.map +1 -1
  715. package/dist/persistence/index.d.ts +2 -2
  716. package/dist/persistence/index.d.ts.map +1 -1
  717. package/dist/persistence/index.js +1 -1
  718. package/dist/persistence/index.js.map +1 -1
  719. package/dist/persistence/migrator.d.ts +34 -1
  720. package/dist/persistence/migrator.d.ts.map +1 -1
  721. package/dist/persistence/migrator.js +163 -33
  722. package/dist/persistence/migrator.js.map +1 -1
  723. package/dist/persistence/sqlite-persistence.d.ts +412 -1
  724. package/dist/persistence/sqlite-persistence.d.ts.map +1 -1
  725. package/dist/persistence/sqlite-persistence.js +1038 -47
  726. package/dist/persistence/sqlite-persistence.js.map +1 -1
  727. package/dist/runtime/backends/acp-protocol.d.ts.map +1 -1
  728. package/dist/runtime/backends/acp-protocol.js +2 -1
  729. package/dist/runtime/backends/acp-protocol.js.map +1 -1
  730. package/dist/runtime/backends/acp.d.ts.map +1 -1
  731. package/dist/runtime/backends/acp.js +5 -4
  732. package/dist/runtime/backends/acp.js.map +1 -1
  733. package/dist/runtime/backends/index.d.ts +2 -2
  734. package/dist/runtime/backends/index.d.ts.map +1 -1
  735. package/dist/runtime/backends/index.js +2 -2
  736. package/dist/runtime/backends/index.js.map +1 -1
  737. package/dist/runtime/backends/macro-agent.d.ts +17 -1
  738. package/dist/runtime/backends/macro-agent.d.ts.map +1 -1
  739. package/dist/runtime/backends/macro-agent.js +1 -1
  740. package/dist/runtime/backends/macro-agent.js.map +1 -1
  741. package/dist/runtime/backends/mock.d.ts.map +1 -1
  742. package/dist/runtime/backends/mock.js.map +1 -1
  743. package/dist/runtime/backends/subprocess.d.ts.map +1 -1
  744. package/dist/runtime/backends/subprocess.js +5 -4
  745. package/dist/runtime/backends/subprocess.js.map +1 -1
  746. package/dist/runtime/compute-provider.d.ts +2 -18
  747. package/dist/runtime/compute-provider.d.ts.map +1 -1
  748. package/dist/runtime/compute-provider.js +8 -8
  749. package/dist/runtime/compute-provider.js.map +1 -1
  750. package/dist/runtime/flows/learning.d.ts +2 -1
  751. package/dist/runtime/flows/learning.d.ts.map +1 -1
  752. package/dist/runtime/flows/learning.js +4 -5
  753. package/dist/runtime/flows/learning.js.map +1 -1
  754. package/dist/runtime/flows/validation.d.ts.map +1 -1
  755. package/dist/runtime/flows/validation.js +2 -5
  756. package/dist/runtime/flows/validation.js.map +1 -1
  757. package/dist/runtime/index.d.ts +1 -1
  758. package/dist/runtime/index.d.ts.map +1 -1
  759. package/dist/runtime/index.js.map +1 -1
  760. package/dist/runtime/manager.d.ts +128 -0
  761. package/dist/runtime/manager.d.ts.map +1 -1
  762. package/dist/runtime/manager.js +375 -64
  763. package/dist/runtime/manager.js.map +1 -1
  764. package/dist/runtime/types.d.ts +92 -1
  765. package/dist/runtime/types.d.ts.map +1 -1
  766. package/dist/search/evaluator.d.ts +71 -0
  767. package/dist/search/evaluator.d.ts.map +1 -1
  768. package/dist/search/evaluator.js +40 -5
  769. package/dist/search/evaluator.js.map +1 -1
  770. package/dist/search/index.d.ts +3 -5
  771. package/dist/search/index.d.ts.map +1 -1
  772. package/dist/search/index.js +4 -7
  773. package/dist/search/index.js.map +1 -1
  774. package/dist/search/moe-gate.d.ts +48 -2
  775. package/dist/search/moe-gate.d.ts.map +1 -1
  776. package/dist/search/moe-gate.js +117 -4
  777. package/dist/search/moe-gate.js.map +1 -1
  778. package/dist/search/refinement-loop.d.ts +63 -3
  779. package/dist/search/refinement-loop.d.ts.map +1 -1
  780. package/dist/search/refinement-loop.js +278 -23
  781. package/dist/search/refinement-loop.js.map +1 -1
  782. package/dist/search/refinement-types.d.ts +4 -2
  783. package/dist/search/refinement-types.d.ts.map +1 -1
  784. package/dist/search/refinement-types.js +2 -11
  785. package/dist/search/refinement-types.js.map +1 -1
  786. package/dist/search/router.d.ts +41 -34
  787. package/dist/search/router.d.ts.map +1 -1
  788. package/dist/search/router.js +156 -90
  789. package/dist/search/router.js.map +1 -1
  790. package/dist/search/solver.js +1 -1
  791. package/dist/search/solver.js.map +1 -1
  792. package/dist/search/task-difficulty.d.ts +54 -0
  793. package/dist/search/task-difficulty.d.ts.map +1 -0
  794. package/dist/search/task-difficulty.js +116 -0
  795. package/dist/search/task-difficulty.js.map +1 -0
  796. package/dist/search/tau-bench-verifier.d.ts +74 -0
  797. package/dist/search/tau-bench-verifier.d.ts.map +1 -0
  798. package/dist/search/tau-bench-verifier.js +96 -0
  799. package/dist/search/tau-bench-verifier.js.map +1 -0
  800. package/dist/search/verification-runner.d.ts.map +1 -1
  801. package/dist/search/verification-runner.js +6 -5
  802. package/dist/search/verification-runner.js.map +1 -1
  803. package/dist/session-bank/git-reader.d.ts.map +1 -1
  804. package/dist/session-bank/git-reader.js +5 -19
  805. package/dist/session-bank/git-reader.js.map +1 -1
  806. package/dist/session-bank/parser.d.ts.map +1 -1
  807. package/dist/session-bank/parser.js +26 -0
  808. package/dist/session-bank/parser.js.map +1 -1
  809. package/dist/session-bank/session-bank.d.ts.map +1 -1
  810. package/dist/session-bank/session-bank.js +2 -5
  811. package/dist/session-bank/session-bank.js.map +1 -1
  812. package/dist/session-bank/types.d.ts +24 -0
  813. package/dist/session-bank/types.d.ts.map +1 -1
  814. package/dist/surfacing/index.d.ts +3 -3
  815. package/dist/surfacing/index.d.ts.map +1 -1
  816. package/dist/surfacing/index.js +2 -2
  817. package/dist/surfacing/index.js.map +1 -1
  818. package/dist/surfacing/shared-bank.d.ts +43 -0
  819. package/dist/surfacing/shared-bank.d.ts.map +1 -0
  820. package/dist/surfacing/shared-bank.js +104 -0
  821. package/dist/surfacing/shared-bank.js.map +1 -0
  822. package/dist/surfacing/skill-library.d.ts +98 -2
  823. package/dist/surfacing/skill-library.d.ts.map +1 -1
  824. package/dist/surfacing/skill-library.js +192 -17
  825. package/dist/surfacing/skill-library.js.map +1 -1
  826. package/dist/surfacing/skill-publisher.d.ts +6 -4
  827. package/dist/surfacing/skill-publisher.d.ts.map +1 -1
  828. package/dist/surfacing/skill-publisher.js +32 -30
  829. package/dist/surfacing/skill-publisher.js.map +1 -1
  830. package/dist/surfacing/sqlite-storage-adapter.d.ts.map +1 -1
  831. package/dist/surfacing/sqlite-storage-adapter.js +12 -8
  832. package/dist/surfacing/sqlite-storage-adapter.js.map +1 -1
  833. package/dist/types/analysis.d.ts +43 -0
  834. package/dist/types/analysis.d.ts.map +1 -0
  835. package/dist/types/analysis.js +10 -0
  836. package/dist/types/analysis.js.map +1 -0
  837. package/dist/types/config.d.ts +2178 -425
  838. package/dist/types/config.d.ts.map +1 -1
  839. package/dist/types/config.js +600 -88
  840. package/dist/types/config.js.map +1 -1
  841. package/dist/types/dataclaw.d.ts +3 -3
  842. package/dist/types/index.d.ts +4 -7
  843. package/dist/types/index.d.ts.map +1 -1
  844. package/dist/types/index.js +2 -10
  845. package/dist/types/index.js.map +1 -1
  846. package/dist/types/knowledge-graph.d.ts +1 -1
  847. package/dist/types/knowledge-graph.d.ts.map +1 -1
  848. package/dist/types/knowledge.d.ts +219 -11
  849. package/dist/types/knowledge.d.ts.map +1 -1
  850. package/dist/types/knowledge.js +90 -30
  851. package/dist/types/knowledge.js.map +1 -1
  852. package/dist/types/memory.d.ts +8 -0
  853. package/dist/types/memory.d.ts.map +1 -1
  854. package/dist/types/memory.js +12 -4
  855. package/dist/types/memory.js.map +1 -1
  856. package/dist/types/outcome.d.ts +11 -0
  857. package/dist/types/outcome.d.ts.map +1 -1
  858. package/dist/types/outcome.js +9 -0
  859. package/dist/types/outcome.js.map +1 -1
  860. package/dist/types/playbook.d.ts +63 -0
  861. package/dist/types/playbook.d.ts.map +1 -1
  862. package/dist/types/playbook.js +51 -0
  863. package/dist/types/playbook.js.map +1 -1
  864. package/dist/types/trajectory-source.d.ts +1 -1
  865. package/dist/types/trajectory-source.d.ts.map +1 -1
  866. package/dist/types/trajectory.d.ts +61 -0
  867. package/dist/types/trajectory.d.ts.map +1 -1
  868. package/dist/types/trajectory.js +25 -0
  869. package/dist/types/trajectory.js.map +1 -1
  870. package/dist/utils/clock.d.ts +36 -0
  871. package/dist/utils/clock.d.ts.map +1 -0
  872. package/dist/utils/clock.js +48 -0
  873. package/dist/utils/clock.js.map +1 -0
  874. package/dist/utils/frontmatter.d.ts.map +1 -1
  875. package/dist/utils/frontmatter.js +10 -2
  876. package/dist/utils/frontmatter.js.map +1 -1
  877. package/dist/utils/index.d.ts +4 -1
  878. package/dist/utils/index.d.ts.map +1 -1
  879. package/dist/utils/index.js +4 -1
  880. package/dist/utils/index.js.map +1 -1
  881. package/dist/utils/logger.d.ts +31 -0
  882. package/dist/utils/logger.d.ts.map +1 -0
  883. package/dist/utils/logger.js +50 -0
  884. package/dist/utils/logger.js.map +1 -0
  885. package/dist/utils/objectives.d.ts +45 -0
  886. package/dist/utils/objectives.d.ts.map +1 -0
  887. package/dist/utils/objectives.js +74 -0
  888. package/dist/utils/objectives.js.map +1 -0
  889. package/dist/utils/partitioned-store.d.ts.map +1 -1
  890. package/dist/utils/partitioned-store.js.map +1 -1
  891. package/dist/utils/playbook-hash.d.ts +19 -0
  892. package/dist/utils/playbook-hash.d.ts.map +1 -0
  893. package/dist/utils/playbook-hash.js +51 -0
  894. package/dist/utils/playbook-hash.js.map +1 -0
  895. package/dist/utils/similarity.d.ts.map +1 -1
  896. package/dist/utils/similarity.js.map +1 -1
  897. package/dist/utils/solver-canonicalizer.d.ts +22 -0
  898. package/dist/utils/solver-canonicalizer.d.ts.map +1 -0
  899. package/dist/utils/solver-canonicalizer.js +41 -0
  900. package/dist/utils/solver-canonicalizer.js.map +1 -0
  901. package/dist/utils/storage.d.ts.map +1 -1
  902. package/dist/utils/storage.js +1 -3
  903. package/dist/utils/storage.js.map +1 -1
  904. package/dist/utils/task-signature.d.ts +34 -0
  905. package/dist/utils/task-signature.d.ts.map +1 -0
  906. package/dist/utils/task-signature.js +112 -0
  907. package/dist/utils/task-signature.js.map +1 -0
  908. package/dist/utils/trajectory-helpers.d.ts.map +1 -1
  909. package/dist/utils/trajectory-helpers.js.map +1 -1
  910. package/dist/utils/validation.d.ts.map +1 -1
  911. package/dist/utils/validation.js.map +1 -1
  912. package/dist/workspace/efficacy-toolkit.d.ts.map +1 -1
  913. package/dist/workspace/efficacy-toolkit.js +18 -26
  914. package/dist/workspace/efficacy-toolkit.js.map +1 -1
  915. package/dist/workspace/index.d.ts +4 -3
  916. package/dist/workspace/index.d.ts.map +1 -1
  917. package/dist/workspace/index.js +5 -3
  918. package/dist/workspace/index.js.map +1 -1
  919. package/dist/workspace/runner.d.ts.map +1 -1
  920. package/dist/workspace/runner.js +95 -21
  921. package/dist/workspace/runner.js.map +1 -1
  922. package/dist/workspace/skill-converter.d.ts +66 -1
  923. package/dist/workspace/skill-converter.d.ts.map +1 -1
  924. package/dist/workspace/skill-converter.js +238 -19
  925. package/dist/workspace/skill-converter.js.map +1 -1
  926. package/dist/workspace/skill-import.d.ts +43 -0
  927. package/dist/workspace/skill-import.d.ts.map +1 -0
  928. package/dist/workspace/skill-import.js +40 -0
  929. package/dist/workspace/skill-import.js.map +1 -0
  930. package/dist/workspace/templates/index.d.ts +6 -8
  931. package/dist/workspace/templates/index.d.ts.map +1 -1
  932. package/dist/workspace/templates/index.js +7 -11
  933. package/dist/workspace/templates/index.js.map +1 -1
  934. package/dist/workspace/templates/knowledge-defrag.d.ts.map +1 -1
  935. package/dist/workspace/templates/knowledge-defrag.js +0 -2
  936. package/dist/workspace/templates/knowledge-defrag.js.map +1 -1
  937. package/dist/workspace/templates/knowledge-extraction.d.ts +11 -0
  938. package/dist/workspace/templates/knowledge-extraction.d.ts.map +1 -1
  939. package/dist/workspace/templates/knowledge-extraction.js +11 -6
  940. package/dist/workspace/templates/knowledge-extraction.js.map +1 -1
  941. package/dist/workspace/templates/playbook-conditioning.d.ts +38 -0
  942. package/dist/workspace/templates/playbook-conditioning.d.ts.map +1 -0
  943. package/dist/workspace/templates/playbook-conditioning.js +147 -0
  944. package/dist/workspace/templates/playbook-conditioning.js.map +1 -0
  945. package/dist/workspace/templates/playbook-decay-detection.d.ts.map +1 -1
  946. package/dist/workspace/templates/playbook-decay-detection.js +24 -18
  947. package/dist/workspace/templates/playbook-decay-detection.js.map +1 -1
  948. package/dist/workspace/templates/playbook-efficacy-audit.d.ts.map +1 -1
  949. package/dist/workspace/templates/playbook-efficacy-audit.js +26 -11
  950. package/dist/workspace/templates/playbook-efficacy-audit.js.map +1 -1
  951. package/dist/workspace/templates/playbook-extraction.d.ts.map +1 -1
  952. package/dist/workspace/templates/playbook-extraction.js +75 -15
  953. package/dist/workspace/templates/playbook-extraction.js.map +1 -1
  954. package/dist/workspace/templates/playbook-lifecycle-review.d.ts.map +1 -1
  955. package/dist/workspace/templates/playbook-lifecycle-review.js +12 -8
  956. package/dist/workspace/templates/playbook-lifecycle-review.js.map +1 -1
  957. package/dist/workspace/templates/refinement-analysis.d.ts.map +1 -1
  958. package/dist/workspace/templates/refinement-analysis.js +11 -5
  959. package/dist/workspace/templates/refinement-analysis.js.map +1 -1
  960. package/dist/workspace/templates/skill-enrichment.d.ts.map +1 -1
  961. package/dist/workspace/templates/skill-enrichment.js +7 -11
  962. package/dist/workspace/templates/skill-enrichment.js.map +1 -1
  963. package/dist/workspace/templates/solution-evaluation.d.ts.map +1 -1
  964. package/dist/workspace/templates/solution-evaluation.js +15 -8
  965. package/dist/workspace/templates/solution-evaluation.js.map +1 -1
  966. package/dist/workspace/templates/trajectory-analysis.d.ts.map +1 -1
  967. package/dist/workspace/templates/trajectory-analysis.js +1 -3
  968. package/dist/workspace/templates/trajectory-analysis.js.map +1 -1
  969. package/dist/workspace/templates/usage-inference.d.ts.map +1 -1
  970. package/dist/workspace/templates/usage-inference.js +9 -7
  971. package/dist/workspace/templates/usage-inference.js.map +1 -1
  972. package/dist/workspace/types.d.ts +32 -2
  973. package/dist/workspace/types.d.ts.map +1 -1
  974. package/dist/workspace/types.js +29 -0
  975. package/dist/workspace/types.js.map +1 -1
  976. package/package.json +43 -19
  977. package/playbooks/agent-ops/long-task-checkpointing.json +54 -0
  978. package/playbooks/agent-ops/progressive-context-gathering.json +56 -0
  979. package/playbooks/agent-ops/safe-destructive-operations.json +59 -0
  980. package/playbooks/agent-ops/scope-discipline.json +56 -0
  981. package/playbooks/agent-ops/stall-detection-strategy-switch.json +55 -0
  982. package/playbooks/agent-ops/verification-before-completion.json +54 -0
  983. package/playbooks/alfworld/clean-and-place.json +35 -0
  984. package/playbooks/alfworld/cool-and-place.json +35 -0
  985. package/playbooks/alfworld/examine-in-light.json +32 -0
  986. package/playbooks/alfworld/heat-and-place.json +35 -0
  987. package/playbooks/alfworld/pick-and-place.json +37 -0
  988. package/playbooks/alfworld/pick-two-and-place.json +35 -0
  989. package/.claude/settings.json +0 -197
  990. package/.entire/settings.json +0 -4
  991. package/.sessionlog/settings.json +0 -4
  992. package/CLAUDE.md +0 -233
  993. package/SKILL.md +0 -193
  994. package/docs/DESIGN-agentic-workspace.md +0 -2057
  995. package/docs/DESIGN-semantic-memory-knowledge-bank.md +0 -1789
  996. package/docs/DESIGN-session-bank.md +0 -1134
  997. package/docs/DESIGN-team-extraction-pipeline.md +0 -1369
  998. package/docs/PROPOSAL-team-aware-learning.md +0 -1080
  999. package/docs/RESEARCH-semantic-memory-knowledge-structures.md +0 -517
  1000. package/docs/RESEARCH-team-trajectory-learning.md +0 -553
  1001. package/gaps.md +0 -204
  1002. package/scripts/migrate-to-playbooks.ts +0 -307
  1003. package/src/agents/index.ts +0 -14
  1004. package/src/agents/mock-provider.ts +0 -93
  1005. package/src/agents/types.ts +0 -137
  1006. package/src/atlas.ts +0 -1198
  1007. package/src/bin/cli-utils.ts +0 -220
  1008. package/src/bin/cognitive-core.ts +0 -162
  1009. package/src/bin/commands/kb.ts +0 -266
  1010. package/src/bin/commands/learn.ts +0 -100
  1011. package/src/bin/commands/legacy.ts +0 -182
  1012. package/src/bin/commands/run.ts +0 -113
  1013. package/src/bin/commands/sessions.ts +0 -221
  1014. package/src/bin/commands/skills.ts +0 -146
  1015. package/src/embeddings/bm25.ts +0 -337
  1016. package/src/embeddings/index.ts +0 -42
  1017. package/src/embeddings/inverted-index.ts +0 -134
  1018. package/src/embeddings/manager.ts +0 -293
  1019. package/src/embeddings/provider.ts +0 -318
  1020. package/src/embeddings/vector-store.ts +0 -365
  1021. package/src/factory.ts +0 -280
  1022. package/src/index.ts +0 -495
  1023. package/src/learning/analyzer.ts +0 -319
  1024. package/src/learning/effectiveness.ts +0 -428
  1025. package/src/learning/energy-evaluator.ts +0 -282
  1026. package/src/learning/healing-orchestrator.ts +0 -383
  1027. package/src/learning/index.ts +0 -150
  1028. package/src/learning/instant-loop.ts +0 -357
  1029. package/src/learning/knowledge-extractor.ts +0 -470
  1030. package/src/learning/maintenance-scheduler.ts +0 -271
  1031. package/src/learning/meta-learner.ts +0 -552
  1032. package/src/learning/playbook-extractor.ts +0 -702
  1033. package/src/learning/reflexion-generator.ts +0 -273
  1034. package/src/learning/team-ingester.ts +0 -499
  1035. package/src/learning/team-meta-learner.ts +0 -558
  1036. package/src/learning/team-pipeline.ts +0 -364
  1037. package/src/learning/trajectory-sources/dataclaw.ts +0 -403
  1038. package/src/learning/trajectory-sources/entire.ts +0 -251
  1039. package/src/learning/trajectory-sources/file.ts +0 -136
  1040. package/src/learning/trajectory-sources/huggingface.ts +0 -248
  1041. package/src/learning/trajectory-sources/in-memory.ts +0 -61
  1042. package/src/learning/trajectory-sources/index.ts +0 -15
  1043. package/src/learning/trajectory-sources/pipeline.ts +0 -69
  1044. package/src/learning/unified-pipeline.ts +0 -1191
  1045. package/src/learning/usage-inference.ts +0 -372
  1046. package/src/mcp/index.ts +0 -12
  1047. package/src/mcp/playbook-server.ts +0 -565
  1048. package/src/memory/candidate-retrieval.ts +0 -72
  1049. package/src/memory/causal-store.ts +0 -273
  1050. package/src/memory/coherence.ts +0 -252
  1051. package/src/memory/curated-loader.ts +0 -213
  1052. package/src/memory/experience.ts +0 -682
  1053. package/src/memory/graph-layers/base.ts +0 -184
  1054. package/src/memory/graph-layers/causal.ts +0 -16
  1055. package/src/memory/graph-layers/entity.ts +0 -16
  1056. package/src/memory/graph-layers/index.ts +0 -5
  1057. package/src/memory/graph-layers/semantic.ts +0 -16
  1058. package/src/memory/graph-layers/temporal.ts +0 -16
  1059. package/src/memory/index.ts +0 -131
  1060. package/src/memory/knowledge-bank.ts +0 -1317
  1061. package/src/memory/knowledge-defrag.ts +0 -329
  1062. package/src/memory/knowledge-graph.ts +0 -361
  1063. package/src/memory/meta.ts +0 -488
  1064. package/src/memory/playbook.ts +0 -676
  1065. package/src/memory/reasoning-bank.ts +0 -458
  1066. package/src/memory/reflexion.ts +0 -122
  1067. package/src/memory/search-provider.ts +0 -35
  1068. package/src/memory/search-providers/index.ts +0 -3
  1069. package/src/memory/search-providers/minimem.ts +0 -84
  1070. package/src/memory/search-providers/text-similarity.ts +0 -35
  1071. package/src/memory/skill-exporter.ts +0 -357
  1072. package/src/memory/source-resolver.ts +0 -422
  1073. package/src/memory/system.ts +0 -620
  1074. package/src/memory/team-experience.ts +0 -604
  1075. package/src/memory/temporal-compressor.ts +0 -409
  1076. package/src/persistence/index.ts +0 -37
  1077. package/src/persistence/migrator.ts +0 -298
  1078. package/src/persistence/serializers.ts +0 -79
  1079. package/src/persistence/sqlite-persistence.ts +0 -925
  1080. package/src/runtime/backends/acp-protocol.ts +0 -231
  1081. package/src/runtime/backends/acp.ts +0 -239
  1082. package/src/runtime/backends/index.ts +0 -38
  1083. package/src/runtime/backends/macro-agent.ts +0 -177
  1084. package/src/runtime/backends/mock.ts +0 -218
  1085. package/src/runtime/backends/subprocess.ts +0 -356
  1086. package/src/runtime/compute-provider.ts +0 -206
  1087. package/src/runtime/flows/learning.ts +0 -166
  1088. package/src/runtime/flows/validation.ts +0 -381
  1089. package/src/runtime/index.ts +0 -75
  1090. package/src/runtime/manager.ts +0 -685
  1091. package/src/runtime/types.ts +0 -198
  1092. package/src/search/evaluator.ts +0 -499
  1093. package/src/search/index.ts +0 -78
  1094. package/src/search/moe-gate.ts +0 -304
  1095. package/src/search/refinement-loop.ts +0 -457
  1096. package/src/search/refinement-types.ts +0 -159
  1097. package/src/search/router.ts +0 -368
  1098. package/src/search/solver.ts +0 -303
  1099. package/src/search/team-router.ts +0 -459
  1100. package/src/search/verification-runner.ts +0 -570
  1101. package/src/session-bank/git-reader.ts +0 -200
  1102. package/src/session-bank/index.ts +0 -26
  1103. package/src/session-bank/parser.ts +0 -548
  1104. package/src/session-bank/session-bank.ts +0 -485
  1105. package/src/session-bank/types.ts +0 -176
  1106. package/src/surfacing/index.ts +0 -29
  1107. package/src/surfacing/publisher.ts +0 -23
  1108. package/src/surfacing/skill-library.ts +0 -625
  1109. package/src/surfacing/skill-publisher.ts +0 -258
  1110. package/src/surfacing/sqlite-storage-adapter.ts +0 -287
  1111. package/src/surfacing/team-skill-library.ts +0 -610
  1112. package/src/types/config.ts +0 -661
  1113. package/src/types/dataclaw.ts +0 -99
  1114. package/src/types/huggingface-transformers.d.ts +0 -12
  1115. package/src/types/index.ts +0 -293
  1116. package/src/types/knowledge-graph.ts +0 -246
  1117. package/src/types/knowledge.ts +0 -388
  1118. package/src/types/memory.ts +0 -300
  1119. package/src/types/meta.ts +0 -218
  1120. package/src/types/outcome.ts +0 -66
  1121. package/src/types/playbook.ts +0 -215
  1122. package/src/types/step.ts +0 -40
  1123. package/src/types/task.ts +0 -52
  1124. package/src/types/team-meta.ts +0 -212
  1125. package/src/types/team-playbook.ts +0 -384
  1126. package/src/types/team-trajectory.ts +0 -673
  1127. package/src/types/trajectory-source.ts +0 -47
  1128. package/src/types/trajectory.ts +0 -80
  1129. package/src/utils/error-classifier.ts +0 -113
  1130. package/src/utils/frontmatter.ts +0 -118
  1131. package/src/utils/index.ts +0 -63
  1132. package/src/utils/partitioned-store.ts +0 -299
  1133. package/src/utils/similarity.ts +0 -139
  1134. package/src/utils/storage.ts +0 -249
  1135. package/src/utils/trajectory-helpers.ts +0 -79
  1136. package/src/utils/validation.ts +0 -286
  1137. package/src/workspace/efficacy-toolkit.ts +0 -496
  1138. package/src/workspace/index.ts +0 -77
  1139. package/src/workspace/runner.ts +0 -281
  1140. package/src/workspace/skill-converter.ts +0 -288
  1141. package/src/workspace/templates/index.ts +0 -95
  1142. package/src/workspace/templates/knowledge-defrag.ts +0 -223
  1143. package/src/workspace/templates/knowledge-extraction.ts +0 -337
  1144. package/src/workspace/templates/meta-reflection.ts +0 -208
  1145. package/src/workspace/templates/playbook-decay-detection.ts +0 -272
  1146. package/src/workspace/templates/playbook-efficacy-audit.ts +0 -246
  1147. package/src/workspace/templates/playbook-extraction.ts +0 -240
  1148. package/src/workspace/templates/playbook-lifecycle-review.ts +0 -274
  1149. package/src/workspace/templates/refinement-analysis.ts +0 -162
  1150. package/src/workspace/templates/skill-enrichment.ts +0 -275
  1151. package/src/workspace/templates/solution-evaluation.ts +0 -199
  1152. package/src/workspace/templates/team-playbook-extraction.ts +0 -631
  1153. package/src/workspace/templates/team-trajectory-analysis.ts +0 -564
  1154. package/src/workspace/templates/trajectory-analysis.ts +0 -234
  1155. package/src/workspace/templates/usage-inference.ts +0 -163
  1156. package/src/workspace/types.ts +0 -185
  1157. package/tests/atlas-knowledge.test.ts +0 -165
  1158. package/tests/embeddings/bm25.test.ts +0 -130
  1159. package/tests/embeddings/inverted-index.test.ts +0 -138
  1160. package/tests/embeddings/manager.test.ts +0 -205
  1161. package/tests/feature-toggles.test.ts +0 -275
  1162. package/tests/fixtures/behavioral-trajectories.ts +0 -210
  1163. package/tests/gap-fixes.test.ts +0 -1116
  1164. package/tests/integration/atlas.test.ts +0 -266
  1165. package/tests/integration/cli-e2e.test.ts +0 -621
  1166. package/tests/integration/curated-sources-e2e.test.ts +0 -502
  1167. package/tests/integration/dataclaw-e2e.test.ts +0 -559
  1168. package/tests/integration/e2e.test.ts +0 -1337
  1169. package/tests/integration/entire-e2e.test.ts +0 -376
  1170. package/tests/integration/huggingface-e2e.test.ts +0 -627
  1171. package/tests/integration/persistence-e2e.test.ts +0 -741
  1172. package/tests/integration/phase-e2e.test.ts +0 -1143
  1173. package/tests/integration/pipeline-data-correctness.test.ts +0 -794
  1174. package/tests/integration/ranking-driven-loadout-e2e.test.ts +0 -185
  1175. package/tests/integration/session-bank.test.ts +0 -231
  1176. package/tests/integration/sessionlog-e2e.test.ts +0 -329
  1177. package/tests/integration/skill-publishing-filesystem-e2e.test.ts +0 -216
  1178. package/tests/integration/skill-tree-wiring.test.ts +0 -152
  1179. package/tests/integration/unified-pipeline-e2e.test.ts +0 -634
  1180. package/tests/learning/analyzer.test.ts +0 -426
  1181. package/tests/learning/dataclaw-trajectory-source.test.ts +0 -642
  1182. package/tests/learning/effectiveness.test.ts +0 -542
  1183. package/tests/learning/energy-evaluator.test.ts +0 -180
  1184. package/tests/learning/entire-trajectory-source.test.ts +0 -380
  1185. package/tests/learning/healing-orchestrator.test.ts +0 -269
  1186. package/tests/learning/huggingface-trajectory-source.test.ts +0 -817
  1187. package/tests/learning/instant-loop.test.ts +0 -243
  1188. package/tests/learning/knowledge-extractor.test.ts +0 -491
  1189. package/tests/learning/maintenance-scheduler.test.ts +0 -191
  1190. package/tests/learning/meta-learner.test.ts +0 -418
  1191. package/tests/learning/pipeline-memory-updates.test.ts +0 -721
  1192. package/tests/learning/playbook-extractor-provenance.test.ts +0 -114
  1193. package/tests/learning/reflexion-generator.test.ts +0 -411
  1194. package/tests/learning/team-ingester.test.ts +0 -349
  1195. package/tests/learning/team-meta-learner.test.ts +0 -618
  1196. package/tests/learning/team-pipeline.test.ts +0 -334
  1197. package/tests/learning/trajectory-sources.test.ts +0 -320
  1198. package/tests/learning/unified-pipeline-efficacy.test.ts +0 -232
  1199. package/tests/learning/unified-pipeline.test.ts +0 -322
  1200. package/tests/learning/usage-inference.test.ts +0 -254
  1201. package/tests/mcp/playbook-server.test.ts +0 -257
  1202. package/tests/memory/candidate-retrieval.test.ts +0 -167
  1203. package/tests/memory/causal-store.test.ts +0 -276
  1204. package/tests/memory/coherence.test.ts +0 -232
  1205. package/tests/memory/compound-engineering-seed.test.ts +0 -338
  1206. package/tests/memory/curated-loader-extended.test.ts +0 -225
  1207. package/tests/memory/experience.test.ts +0 -203
  1208. package/tests/memory/graph-layers/semantic.test.ts +0 -219
  1209. package/tests/memory/knowledge-bank-extraction.test.ts +0 -558
  1210. package/tests/memory/knowledge-bank.test.ts +0 -705
  1211. package/tests/memory/knowledge-defrag.test.ts +0 -366
  1212. package/tests/memory/knowledge-evolution.test.ts +0 -563
  1213. package/tests/memory/knowledge-graph.test.ts +0 -492
  1214. package/tests/memory/knowledge-inbox.test.ts +0 -258
  1215. package/tests/memory/knowledge-minimem.test.ts +0 -251
  1216. package/tests/memory/meta.test.ts +0 -399
  1217. package/tests/memory/playbook-quality-validation.test.ts +0 -430
  1218. package/tests/memory/playbook.test.ts +0 -644
  1219. package/tests/memory/provenance.test.ts +0 -648
  1220. package/tests/memory/reasoning-bank.test.ts +0 -239
  1221. package/tests/memory/reflexion.test.ts +0 -166
  1222. package/tests/memory/skill-exporter.test.ts +0 -475
  1223. package/tests/memory/source-resolver.test.ts +0 -700
  1224. package/tests/memory/system.test.ts +0 -330
  1225. package/tests/memory/team-experience.test.ts +0 -411
  1226. package/tests/memory/temporal-compressor.test.ts +0 -318
  1227. package/tests/persistence/migrator.test.ts +0 -1009
  1228. package/tests/persistence/sqlite-persistence.test.ts +0 -635
  1229. package/tests/runtime/agent-manager.test.ts +0 -517
  1230. package/tests/runtime/compute-provider.test.ts +0 -288
  1231. package/tests/runtime/delegate.test.ts +0 -354
  1232. package/tests/runtime/macro-agent-backend.test.ts +0 -266
  1233. package/tests/runtime/mock-backend.test.ts +0 -248
  1234. package/tests/search/evaluator.test.ts +0 -257
  1235. package/tests/search/moe-gate.test.ts +0 -250
  1236. package/tests/search/refinement-loop.test.ts +0 -477
  1237. package/tests/search/refinement.test.ts +0 -267
  1238. package/tests/search/router.test.ts +0 -506
  1239. package/tests/search/team-router.test.ts +0 -376
  1240. package/tests/search/verification-runner.test.ts +0 -357
  1241. package/tests/session-bank/fixtures/multi-tool-session/full.jsonl +0 -12
  1242. package/tests/session-bank/fixtures/multi-tool-session/metadata.json +0 -28
  1243. package/tests/session-bank/fixtures/root-metadata.json +0 -18
  1244. package/tests/session-bank/fixtures/sessionlog-root-metadata.json +0 -16
  1245. package/tests/session-bank/fixtures/sessionlog-session/full.jsonl +0 -6
  1246. package/tests/session-bank/fixtures/sessionlog-session/metadata.json +0 -55
  1247. package/tests/session-bank/fixtures/simple-session/full.jsonl +0 -6
  1248. package/tests/session-bank/fixtures/simple-session/metadata.json +0 -38
  1249. package/tests/session-bank/git-reader.test.ts +0 -232
  1250. package/tests/session-bank/parser.test.ts +0 -453
  1251. package/tests/session-bank/session-bank.test.ts +0 -546
  1252. package/tests/surfacing/skill-library.test.ts +0 -297
  1253. package/tests/surfacing/skill-publisher.test.ts +0 -432
  1254. package/tests/surfacing/sqlite-storage-adapter.test.ts +0 -197
  1255. package/tests/surfacing/team-skill-library.test.ts +0 -444
  1256. package/tests/types/outcome.test.ts +0 -147
  1257. package/tests/types/step.test.ts +0 -133
  1258. package/tests/types/task.test.ts +0 -158
  1259. package/tests/types/team-meta.test.ts +0 -147
  1260. package/tests/types/team-playbook.test.ts +0 -246
  1261. package/tests/types/team-trajectory.test.ts +0 -557
  1262. package/tests/types/trajectory.test.ts +0 -253
  1263. package/tests/utils/error-classifier.test.ts +0 -149
  1264. package/tests/utils/frontmatter.test.ts +0 -208
  1265. package/tests/utils/partitioned-store.test.ts +0 -230
  1266. package/tests/utils/similarity.test.ts +0 -188
  1267. package/tests/utils/trajectory-helpers.test.ts +0 -163
  1268. package/tests/utils/validation.test.ts +0 -252
  1269. package/tests/workspace/efficacy-toolkit.test.ts +0 -404
  1270. package/tests/workspace/full-flow.test.ts +0 -845
  1271. package/tests/workspace/manager.test.ts +0 -215
  1272. package/tests/workspace/runner.test.ts +0 -336
  1273. package/tests/workspace/skill-converter.test.ts +0 -205
  1274. package/tests/workspace/templates/knowledge-extraction.test.ts +0 -235
  1275. package/tests/workspace/templates/playbook-efficacy.test.ts +0 -377
  1276. package/tests/workspace/templates/team-playbook-extraction.test.ts +0 -341
  1277. package/tests/workspace/templates/team-trajectory-analysis.test.ts +0 -417
  1278. package/tsconfig.json +0 -25
  1279. package/vitest.config.ts +0 -22
@@ -1,1337 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
- import {
3
- Atlas,
4
- createAtlas,
5
- createAtlasWithAgents,
6
- } from '../../src/atlas.js';
7
- import { createTask } from '../../src/types/task.js';
8
- import { createTrajectory } from '../../src/types/trajectory.js';
9
- import { createStep } from '../../src/types/step.js';
10
- import { successOutcome, failureOutcome } from '../../src/types/outcome.js';
11
- import { buildTeamTrajectory } from '../../src/types/team-trajectory.js';
12
- import type { InteractionTag, TeamTrajectoryInput } from '../../src/types/team-trajectory.js';
13
- import { MockBackend, createMockBackend } from '../../src/runtime/backends/mock.js';
14
- import { mkdtemp, rm } from 'node:fs/promises';
15
- import { join } from 'node:path';
16
- import { tmpdir } from 'node:os';
17
-
18
- describe('Integration: End-to-End Solve Flow', () => {
19
- let tempDir: string;
20
- let atlas: Atlas;
21
- let mockBackend: MockBackend;
22
-
23
- beforeEach(async () => {
24
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-e2e-test-'));
25
- mockBackend = createMockBackend({
26
- success: true,
27
- result: 'Task completed successfully',
28
- durationMs: 50,
29
- toolCalls: [
30
- { name: 'read_file', input: { path: 'src/main.ts' }, output: 'code content' },
31
- { name: 'write_file', input: { path: 'src/main.ts', content: 'updated' }, output: 'written' },
32
- ],
33
- });
34
-
35
- atlas = createAtlasWithAgents([mockBackend], {
36
- storage: { baseDir: tempDir },
37
- learning: {
38
- minTrajectories: 2,
39
- deduplicationThreshold: 0.8,
40
- },
41
- execution: {
42
- defaultAgentType: 'mock',
43
- maxExecutionTime: 60,
44
- captureToolCalls: true,
45
- },
46
- });
47
-
48
- await atlas.init();
49
- });
50
-
51
- afterEach(async () => {
52
- await atlas.close();
53
- await rm(tempDir, { recursive: true, force: true });
54
- });
55
-
56
- describe('solve() with AgentManager', () => {
57
- it('should solve a task and return trajectory', async () => {
58
- const task = createTask({
59
- domain: 'code',
60
- description: 'Fix the bug in authentication module',
61
- });
62
-
63
- const result = await atlas.solve(task);
64
-
65
- expect(result.trajectory).toBeDefined();
66
- expect(result.trajectory.outcome.success).toBe(true);
67
- expect(result.usedAgentManager).toBe(true);
68
- expect(result.routing).toBeDefined();
69
- expect(result.routing?.strategy).toBeDefined();
70
- });
71
-
72
- it('should inject playbooks when available', async () => {
73
- // Add a playbook that should be injected
74
- const memory = atlas.getMemory();
75
- await memory.playbooks.add({
76
- id: 'auth-playbook',
77
- name: 'Authentication Bug Fix',
78
- applicability: {
79
- situations: ['Fix authentication bug', 'Auth module issue'],
80
- triggers: ['authentication', 'auth', 'login'],
81
- antiPatterns: [],
82
- domains: ['code', 'auth'],
83
- },
84
- guidance: {
85
- strategy: 'Check token validation and session management',
86
- tactics: ['Verify token expiry', 'Check session storage'],
87
- steps: ['Read auth code', 'Find issue', 'Apply fix', 'Test'],
88
- },
89
- verification: {
90
- successIndicators: ['Tests pass', 'No auth errors'],
91
- failureIndicators: ['Auth still fails'],
92
- },
93
- evolution: {
94
- version: '1.0.0',
95
- createdFrom: [],
96
- failures: [],
97
- refinements: [],
98
- successCount: 5,
99
- failureCount: 0,
100
- },
101
- confidence: 0.85,
102
- complexity: 'moderate',
103
- estimatedEffort: 2,
104
- createdAt: new Date(),
105
- updatedAt: new Date(),
106
- });
107
-
108
- // Refresh skill library tiers
109
- const skillLibrary = atlas.getSkillLibrary();
110
- await skillLibrary?.refreshTiers();
111
-
112
- const task = createTask({
113
- domain: 'code',
114
- description: 'Fix the authentication bug in login flow',
115
- });
116
-
117
- const result = await atlas.solve(task);
118
-
119
- expect(result.trajectory).toBeDefined();
120
- // Playbooks should be tracked (may or may not be injected depending on scoring)
121
- expect(result.injectedPlaybooks).toBeDefined();
122
- });
123
-
124
- it('should track memory context from router', async () => {
125
- const task = createTask({
126
- domain: 'code',
127
- description: 'Implement new feature',
128
- });
129
-
130
- const result = await atlas.solve(task);
131
-
132
- expect(result.routing).toBeDefined();
133
- expect(result.routing?.memoryContext).toBeDefined();
134
- expect(result.routing?.confidence).toBeDefined();
135
- expect(result.routing?.estimatedBudget).toBeDefined();
136
- });
137
-
138
- it('should process trajectory for learning after solve', async () => {
139
- const task = createTask({
140
- domain: 'code',
141
- description: 'Test learning integration',
142
- });
143
-
144
- await atlas.solve(task);
145
-
146
- const stats = await atlas.getStats();
147
- expect(stats.learning.trajectoriesProcessed).toBe(1);
148
- });
149
-
150
- it('should handle failed agent execution', async () => {
151
- mockBackend.setDefaultBehavior({
152
- success: false,
153
- error: 'Agent execution failed',
154
- result: 'Partial result before failure', // Provide result for experience creation
155
- durationMs: 50,
156
- });
157
-
158
- const task = createTask({
159
- domain: 'code',
160
- description: 'Failing task',
161
- });
162
-
163
- const result = await atlas.solve(task);
164
-
165
- expect(result.trajectory.outcome.success).toBe(false);
166
- expect(result.usedAgentManager).toBe(true);
167
- });
168
- });
169
-
170
- describe('solve() with multiple tasks', () => {
171
- it('should solve batch of tasks', async () => {
172
- const tasks = [
173
- createTask({ domain: 'code', description: 'Task 1' }),
174
- createTask({ domain: 'code', description: 'Task 2' }),
175
- createTask({ domain: 'code', description: 'Task 3' }),
176
- ];
177
-
178
- const results = await atlas.solveBatch(tasks);
179
-
180
- expect(results.length).toBe(3);
181
- results.forEach(result => {
182
- expect(result.trajectory).toBeDefined();
183
- expect(result.usedAgentManager).toBe(true);
184
- });
185
-
186
- const stats = await atlas.getStats();
187
- expect(stats.learning.trajectoriesProcessed).toBe(3);
188
- });
189
-
190
- it('should accumulate learning across tasks', async () => {
191
- // Solve multiple similar tasks
192
- for (let i = 0; i < 3; i++) {
193
- await atlas.solve(createTask({
194
- domain: 'code',
195
- description: `Fix TypeScript error ${i}`,
196
- }));
197
- }
198
-
199
- const stats = await atlas.getStats();
200
- expect(stats.learning.trajectoriesProcessed).toBe(3);
201
- });
202
- });
203
- });
204
-
205
- describe('Integration: Learning Pipeline Batch Extraction', () => {
206
- let tempDir: string;
207
- let atlas: Atlas;
208
- let mockBackend: MockBackend;
209
-
210
- beforeEach(async () => {
211
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-learning-test-'));
212
- mockBackend = createMockBackend({
213
- success: true,
214
- result: 'Completed',
215
- durationMs: 30,
216
- });
217
-
218
- atlas = createAtlasWithAgents([mockBackend], {
219
- storage: { baseDir: tempDir },
220
- learning: {
221
- minTrajectories: 3, // Low threshold for testing
222
- deduplicationThreshold: 0.7,
223
- },
224
- });
225
-
226
- await atlas.init();
227
- });
228
-
229
- afterEach(async () => {
230
- await atlas.close();
231
- await rm(tempDir, { recursive: true, force: true });
232
- });
233
-
234
- it('should accumulate trajectories until batch threshold', async () => {
235
- // Process trajectories below threshold
236
- for (let i = 0; i < 2; i++) {
237
- const trajectory = createTrajectory({
238
- id: `traj-${i}`,
239
- task: createTask({ domain: 'code', description: `Task ${i}` }),
240
- steps: [
241
- createStep({ action: 'read', observation: 'content' }),
242
- createStep({ action: 'write', observation: 'done' }),
243
- ],
244
- outcome: successOutcome('Done'),
245
- agentId: 'test-agent',
246
- });
247
-
248
- await atlas.processTrajectory(trajectory);
249
- }
250
-
251
- const stats = await atlas.getStats();
252
- expect(stats.learning.trajectoriesProcessed).toBe(2);
253
- expect(stats.learning.pendingTrajectories).toBe(2);
254
- });
255
-
256
- it('should trigger batch learning when threshold reached', async () => {
257
- // Process trajectories to trigger batch
258
- for (let i = 0; i < 4; i++) {
259
- const trajectory = createTrajectory({
260
- id: `batch-traj-${i}`,
261
- task: createTask({
262
- domain: 'code',
263
- description: `Fix TypeScript error in module ${i}`,
264
- }),
265
- steps: [
266
- createStep({
267
- thought: 'Need to fix the type error',
268
- action: 'Read the file with error',
269
- observation: 'Found type mismatch',
270
- }),
271
- createStep({
272
- thought: 'Applying the fix',
273
- action: 'Update type annotation',
274
- observation: 'Type error resolved',
275
- }),
276
- ],
277
- outcome: successOutcome('Fixed type error'),
278
- agentId: 'test-agent',
279
- });
280
-
281
- await atlas.processTrajectory(trajectory);
282
- }
283
-
284
- // After threshold, batch learning should have been triggered
285
- const stats = await atlas.getStats();
286
- expect(stats.learning.trajectoriesProcessed).toBe(4);
287
- });
288
-
289
- it('should extract playbooks from similar trajectories', async () => {
290
- // Create similar successful trajectories
291
- const similarTasks = [
292
- 'Fix authentication token validation',
293
- 'Fix authentication session expiry',
294
- 'Fix authentication login flow',
295
- ];
296
-
297
- let lastResult: any;
298
- for (let i = 0; i < similarTasks.length; i++) {
299
- const trajectory = createTrajectory({
300
- id: `auth-traj-${i}`,
301
- task: createTask({
302
- domain: 'auth',
303
- description: similarTasks[i],
304
- }),
305
- steps: [
306
- createStep({
307
- thought: 'Check authentication code',
308
- action: 'Read auth module',
309
- observation: 'Found the issue',
310
- }),
311
- createStep({
312
- thought: 'Apply fix',
313
- action: 'Update auth logic',
314
- observation: 'Fixed',
315
- }),
316
- createStep({
317
- thought: 'Verify fix',
318
- action: 'Run auth tests',
319
- observation: 'All tests pass',
320
- }),
321
- ],
322
- outcome: successOutcome('Auth issue fixed'),
323
- agentId: 'test-agent',
324
- });
325
-
326
- lastResult = await atlas.processTrajectory(trajectory);
327
- }
328
-
329
- // With unified pipeline, batch is auto-triggered when count threshold (3) is reached
330
- expect(lastResult.batchTriggered).toBe(true);
331
- expect(lastResult.batchResult.trajectoriesProcessed).toBe(3);
332
- });
333
-
334
- it('should run batch learning explicitly', async () => {
335
- // Add a trajectory
336
- const trajectory = createTrajectory({
337
- task: createTask({ domain: 'test', description: 'Explicit batch test' }),
338
- steps: [createStep({ action: 'test', observation: 'result' })],
339
- outcome: successOutcome('Done'),
340
- agentId: 'test',
341
- });
342
-
343
- await atlas.processTrajectory(trajectory);
344
-
345
- // Explicitly run batch learning
346
- const result = await atlas.runBatchLearning();
347
-
348
- expect(result).toBeDefined();
349
- expect(result.trajectoriesProcessed).toBeGreaterThanOrEqual(0);
350
- });
351
- });
352
-
353
- describe('Integration: Skill Tier Promotion/Demotion', () => {
354
- let tempDir: string;
355
- let atlas: Atlas;
356
- let mockBackend: MockBackend;
357
-
358
- beforeEach(async () => {
359
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-tier-test-'));
360
- mockBackend = createMockBackend({ success: true, durationMs: 30 });
361
-
362
- atlas = createAtlasWithAgents([mockBackend], {
363
- storage: { baseDir: tempDir },
364
- skillLibrary: {
365
- promotion: {
366
- minConfidence: 0.8,
367
- minSuccessCount: 3,
368
- minSuccessRate: 0.7,
369
- },
370
- demotion: {
371
- failureThreshold: 2,
372
- minConfidenceToRetain: 0.5,
373
- },
374
- limits: {
375
- maxCoreSkills: 5,
376
- maxDomainSkills: 3,
377
- maxContextualPlaybooks: 2,
378
- },
379
- },
380
- });
381
-
382
- await atlas.init();
383
- });
384
-
385
- afterEach(async () => {
386
- await atlas.close();
387
- await rm(tempDir, { recursive: true, force: true });
388
- });
389
-
390
- it('should promote high-performing playbooks to core skills', async () => {
391
- const memory = atlas.getMemory();
392
- const skillLibrary = atlas.getSkillLibrary();
393
-
394
- // Add a high-confidence, high-success playbook
395
- await memory.playbooks.add({
396
- id: 'promote-playbook',
397
- name: 'High Performance Playbook',
398
- applicability: {
399
- situations: ['Common coding task'],
400
- triggers: ['code', 'fix'],
401
- antiPatterns: [],
402
- domains: ['code'],
403
- },
404
- guidance: {
405
- strategy: 'Proven approach',
406
- tactics: ['Step 1', 'Step 2'],
407
- },
408
- verification: {
409
- successIndicators: ['Works'],
410
- failureIndicators: ['Fails'],
411
- },
412
- evolution: {
413
- version: '1.0.0',
414
- createdFrom: [],
415
- failures: [],
416
- refinements: [],
417
- successCount: 10,
418
- failureCount: 1,
419
- },
420
- confidence: 0.9,
421
- complexity: 'simple',
422
- estimatedEffort: 1,
423
- createdAt: new Date(),
424
- updatedAt: new Date(),
425
- });
426
-
427
- // Refresh tiers
428
- const tierResult = await skillLibrary?.refreshTiers();
429
-
430
- expect(tierResult?.promoted).toBeDefined();
431
- expect(tierResult?.coreCount).toBeGreaterThanOrEqual(0);
432
- });
433
-
434
- it('should demote failing playbooks', async () => {
435
- const memory = atlas.getMemory();
436
- const skillLibrary = atlas.getSkillLibrary();
437
-
438
- // Add a playbook that will be demoted
439
- await memory.playbooks.add({
440
- id: 'demote-playbook',
441
- name: 'Failing Playbook',
442
- applicability: {
443
- situations: ['Edge case'],
444
- triggers: ['rare'],
445
- antiPatterns: [],
446
- domains: ['test'],
447
- },
448
- guidance: {
449
- strategy: 'Risky approach',
450
- tactics: [],
451
- },
452
- verification: {
453
- successIndicators: [],
454
- failureIndicators: [],
455
- },
456
- evolution: {
457
- version: '1.0.0',
458
- createdFrom: [],
459
- failures: [],
460
- refinements: [],
461
- successCount: 1,
462
- failureCount: 5,
463
- },
464
- confidence: 0.3,
465
- complexity: 'complex',
466
- estimatedEffort: 5,
467
- createdAt: new Date(),
468
- updatedAt: new Date(),
469
- });
470
-
471
- await skillLibrary?.refreshTiers();
472
-
473
- // Playbook with low success should not be in core
474
- const coreSkills = skillLibrary?.getCoreSkills();
475
- const isInCore = coreSkills?.some(s => s.id === 'demote-playbook');
476
- expect(isInCore).toBe(false);
477
- });
478
-
479
- it('should track consecutive failures for demotion', async () => {
480
- const memory = atlas.getMemory();
481
- const skillLibrary = atlas.getSkillLibrary();
482
-
483
- // Add playbook and record failures
484
- await memory.playbooks.add({
485
- id: 'failure-track-playbook',
486
- name: 'Track Failures',
487
- applicability: {
488
- situations: ['Test'],
489
- triggers: ['test'],
490
- antiPatterns: [],
491
- domains: ['test'],
492
- },
493
- guidance: {
494
- strategy: 'Test strategy',
495
- tactics: [],
496
- },
497
- verification: {
498
- successIndicators: [],
499
- failureIndicators: [],
500
- },
501
- evolution: {
502
- version: '1.0.0',
503
- createdFrom: [],
504
- failures: [],
505
- refinements: [],
506
- successCount: 5,
507
- failureCount: 0,
508
- },
509
- confidence: 0.85,
510
- complexity: 'simple',
511
- estimatedEffort: 1,
512
- createdAt: new Date(),
513
- updatedAt: new Date(),
514
- });
515
-
516
- await skillLibrary?.refreshTiers();
517
-
518
- // Record consecutive failures
519
- await skillLibrary?.recordOutcome('failure-track-playbook', 'traj-1', false, 'First failure');
520
- await skillLibrary?.recordOutcome('failure-track-playbook', 'traj-2', false, 'Second failure');
521
-
522
- const failures = skillLibrary?.getConsecutiveFailures('failure-track-playbook');
523
- expect(failures).toBe(2);
524
-
525
- // Check at-risk playbooks
526
- const atRisk = skillLibrary?.getAtRiskPlaybooks();
527
- expect(atRisk).toBeDefined();
528
- });
529
-
530
- it('should reset failure count on success', async () => {
531
- const memory = atlas.getMemory();
532
- const skillLibrary = atlas.getSkillLibrary();
533
-
534
- await memory.playbooks.add({
535
- id: 'reset-playbook',
536
- name: 'Reset Test',
537
- applicability: {
538
- situations: ['Test'],
539
- triggers: ['test'],
540
- antiPatterns: [],
541
- domains: ['test'],
542
- },
543
- guidance: {
544
- strategy: 'Test',
545
- tactics: [],
546
- },
547
- verification: {
548
- successIndicators: [],
549
- failureIndicators: [],
550
- },
551
- evolution: {
552
- version: '1.0.0',
553
- createdFrom: [],
554
- failures: [],
555
- refinements: [],
556
- successCount: 5,
557
- failureCount: 0,
558
- },
559
- confidence: 0.85,
560
- complexity: 'simple',
561
- estimatedEffort: 1,
562
- createdAt: new Date(),
563
- updatedAt: new Date(),
564
- });
565
-
566
- await skillLibrary?.refreshTiers();
567
-
568
- // Record failures then success
569
- await skillLibrary?.recordOutcome('reset-playbook', 'traj-1', false);
570
- await skillLibrary?.recordOutcome('reset-playbook', 'traj-2', false);
571
-
572
- let failures = skillLibrary?.getConsecutiveFailures('reset-playbook');
573
- expect(failures).toBe(2);
574
-
575
- // Success should reset
576
- await skillLibrary?.recordOutcome('reset-playbook', 'traj-3', true);
577
-
578
- failures = skillLibrary?.getConsecutiveFailures('reset-playbook');
579
- expect(failures).toBe(0);
580
- });
581
-
582
- it('should organize skills by domain', async () => {
583
- const memory = atlas.getMemory();
584
- const skillLibrary = atlas.getSkillLibrary();
585
-
586
- // Add playbooks in different domains
587
- const domains = ['frontend', 'backend', 'database'];
588
- for (const domain of domains) {
589
- await memory.playbooks.add({
590
- id: `${domain}-playbook`,
591
- name: `${domain} Playbook`,
592
- applicability: {
593
- situations: [`${domain} task`],
594
- triggers: [domain],
595
- antiPatterns: [],
596
- domains: [domain],
597
- },
598
- guidance: {
599
- strategy: `${domain} strategy`,
600
- tactics: [],
601
- },
602
- verification: {
603
- successIndicators: [],
604
- failureIndicators: [],
605
- },
606
- evolution: {
607
- version: '1.0.0',
608
- createdFrom: [],
609
- failures: [],
610
- refinements: [],
611
- successCount: 3,
612
- failureCount: 1,
613
- },
614
- confidence: 0.7,
615
- complexity: 'moderate',
616
- estimatedEffort: 2,
617
- createdAt: new Date(),
618
- updatedAt: new Date(),
619
- });
620
- }
621
-
622
- await skillLibrary?.refreshTiers();
623
-
624
- const allDomains = skillLibrary?.getDomains();
625
- expect(allDomains?.length).toBeGreaterThanOrEqual(0);
626
- });
627
- });
628
-
629
- describe('Integration: Memory Persistence', () => {
630
- let tempDir: string;
631
-
632
- beforeEach(async () => {
633
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-persist-test-'));
634
- });
635
-
636
- afterEach(async () => {
637
- await rm(tempDir, { recursive: true, force: true });
638
- });
639
-
640
- it('should persist and restore memory across sessions', async () => {
641
- // First session - add data
642
- const atlas1 = createAtlasWithAgents([createMockBackend()], {
643
- storage: { baseDir: tempDir },
644
- });
645
- await atlas1.init();
646
-
647
- const memory1 = atlas1.getMemory();
648
- await memory1.experiences.add({
649
- id: 'persist-exp-1',
650
- taskInput: 'Persistent experience',
651
- solutionOutput: 'Solution persisted',
652
- feedback: 'Good',
653
- success: true,
654
- domain: 'test',
655
- trajectoryId: 'persist-traj-1',
656
- usageCount: 0,
657
- createdAt: new Date(),
658
- metadata: {},
659
- });
660
-
661
- await memory1.playbooks.add({
662
- id: 'persist-playbook-1',
663
- name: 'Persistent Playbook',
664
- applicability: {
665
- situations: ['Test persistence'],
666
- triggers: ['persist'],
667
- antiPatterns: [],
668
- domains: ['test'],
669
- },
670
- guidance: {
671
- strategy: 'Persist this',
672
- tactics: [],
673
- },
674
- verification: {
675
- successIndicators: [],
676
- failureIndicators: [],
677
- },
678
- evolution: {
679
- version: '1.0.0',
680
- createdFrom: [],
681
- failures: [],
682
- refinements: [],
683
- successCount: 0,
684
- failureCount: 0,
685
- },
686
- confidence: 0.7,
687
- complexity: 'simple',
688
- estimatedEffort: 1,
689
- createdAt: new Date(),
690
- updatedAt: new Date(),
691
- });
692
-
693
- await atlas1.close();
694
-
695
- // Second session - verify data persisted
696
- const atlas2 = createAtlasWithAgents([createMockBackend()], {
697
- storage: { baseDir: tempDir },
698
- });
699
- await atlas2.init();
700
-
701
- const stats = await atlas2.getStats();
702
- expect(stats.memory.experienceCount).toBe(1);
703
- expect(stats.memory.playbookCount).toBe(1);
704
-
705
- const memory2 = atlas2.getMemory();
706
- const exp = await memory2.experiences.get('persist-exp-1');
707
- expect(exp?.taskInput).toBe('Persistent experience');
708
-
709
- const playbook = await memory2.playbooks.get('persist-playbook-1');
710
- expect(playbook?.name).toBe('Persistent Playbook');
711
-
712
- await atlas2.close();
713
- });
714
-
715
- it('should persist skill library state', async () => {
716
- // First session
717
- const atlas1 = createAtlasWithAgents([createMockBackend()], {
718
- storage: { baseDir: tempDir },
719
- });
720
- await atlas1.init();
721
-
722
- const memory1 = atlas1.getMemory();
723
- const skillLibrary1 = atlas1.getSkillLibrary();
724
-
725
- // Add playbook and record outcomes
726
- await memory1.playbooks.add({
727
- id: 'skill-persist',
728
- name: 'Skill Persist Test',
729
- applicability: {
730
- situations: ['Test'],
731
- triggers: ['test'],
732
- antiPatterns: [],
733
- domains: ['test'],
734
- },
735
- guidance: {
736
- strategy: 'Test',
737
- tactics: [],
738
- },
739
- verification: {
740
- successIndicators: [],
741
- failureIndicators: [],
742
- },
743
- evolution: {
744
- version: '1.0.0',
745
- createdFrom: [],
746
- failures: [],
747
- refinements: [],
748
- successCount: 5,
749
- failureCount: 0,
750
- },
751
- confidence: 0.85,
752
- complexity: 'simple',
753
- estimatedEffort: 1,
754
- createdAt: new Date(),
755
- updatedAt: new Date(),
756
- });
757
-
758
- await skillLibrary1?.refreshTiers();
759
-
760
- // Record failures
761
- await skillLibrary1?.recordOutcome('skill-persist', 'traj-1', false);
762
- await skillLibrary1?.recordOutcome('skill-persist', 'traj-2', false);
763
-
764
- // Export failure state for verification
765
- const failureState = skillLibrary1?.exportFailureState();
766
- expect(failureState?.['skill-persist']).toBe(2);
767
-
768
- await atlas1.close();
769
-
770
- // Note: Failure state is in-memory only, but playbook state persists
771
- const atlas2 = createAtlasWithAgents([createMockBackend()], {
772
- storage: { baseDir: tempDir },
773
- });
774
- await atlas2.init();
775
-
776
- const memory2 = atlas2.getMemory();
777
- const playbook = await memory2.playbooks.get('skill-persist');
778
- expect(playbook).toBeDefined();
779
-
780
- await atlas2.close();
781
- });
782
- });
783
-
784
- describe('Integration: Playbook Usage Inference', () => {
785
- let tempDir: string;
786
- let atlas: Atlas;
787
- let mockBackend: MockBackend;
788
-
789
- beforeEach(async () => {
790
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-usage-test-'));
791
- mockBackend = createMockBackend({
792
- success: true,
793
- result: 'Done',
794
- durationMs: 30,
795
- messages: [
796
- { role: 'assistant', content: 'Following the authentication fix playbook...' },
797
- { role: 'assistant', content: 'Checking token validation as suggested...' },
798
- ],
799
- });
800
-
801
- atlas = createAtlasWithAgents([mockBackend], {
802
- storage: { baseDir: tempDir },
803
- execution: {
804
- defaultAgentType: 'mock',
805
- },
806
- });
807
- await atlas.init();
808
- });
809
-
810
- afterEach(async () => {
811
- await atlas.close();
812
- await rm(tempDir, { recursive: true, force: true });
813
- });
814
-
815
- it('should infer playbook usage from trajectory', async () => {
816
- const memory = atlas.getMemory();
817
-
818
- // Add playbook
819
- await memory.playbooks.add({
820
- id: 'auth-fix-playbook',
821
- name: 'Authentication Fix',
822
- applicability: {
823
- situations: ['Fix auth issue'],
824
- triggers: ['authentication', 'token', 'auth'],
825
- antiPatterns: [],
826
- domains: ['auth'],
827
- },
828
- guidance: {
829
- strategy: 'Check token validation and fix',
830
- tactics: ['Validate tokens', 'Check expiry'],
831
- },
832
- verification: {
833
- successIndicators: ['Auth works'],
834
- failureIndicators: ['Auth fails'],
835
- },
836
- evolution: {
837
- version: '1.0.0',
838
- createdFrom: [],
839
- failures: [],
840
- refinements: [],
841
- successCount: 5,
842
- failureCount: 0,
843
- },
844
- confidence: 0.8,
845
- complexity: 'moderate',
846
- estimatedEffort: 2,
847
- createdAt: new Date(),
848
- updatedAt: new Date(),
849
- });
850
-
851
- await atlas.getSkillLibrary()?.refreshTiers();
852
-
853
- const task = createTask({
854
- domain: 'auth',
855
- description: 'Fix authentication token validation issue',
856
- });
857
-
858
- const result = await atlas.solve(task);
859
-
860
- // Usage inference should have run
861
- expect(result.injectedPlaybooks).toBeDefined();
862
- });
863
-
864
- it('should track all injected playbooks', async () => {
865
- const memory = atlas.getMemory();
866
-
867
- // Add multiple playbooks
868
- await memory.playbooks.add({
869
- id: 'playbook-a',
870
- name: 'Playbook A',
871
- applicability: {
872
- situations: ['Test situation A'],
873
- triggers: ['test-a'],
874
- antiPatterns: [],
875
- domains: ['test'],
876
- },
877
- guidance: { strategy: 'Strategy A', tactics: [] },
878
- verification: { successIndicators: [], failureIndicators: [] },
879
- evolution: {
880
- version: '1.0.0',
881
- createdFrom: [],
882
- failures: [],
883
- refinements: [],
884
- successCount: 3,
885
- failureCount: 0,
886
- },
887
- confidence: 0.75,
888
- complexity: 'simple',
889
- estimatedEffort: 1,
890
- createdAt: new Date(),
891
- updatedAt: new Date(),
892
- });
893
-
894
- await memory.playbooks.add({
895
- id: 'playbook-b',
896
- name: 'Playbook B',
897
- applicability: {
898
- situations: ['Test situation B'],
899
- triggers: ['test-b'],
900
- antiPatterns: [],
901
- domains: ['test'],
902
- },
903
- guidance: { strategy: 'Strategy B', tactics: [] },
904
- verification: { successIndicators: [], failureIndicators: [] },
905
- evolution: {
906
- version: '1.0.0',
907
- createdFrom: [],
908
- failures: [],
909
- refinements: [],
910
- successCount: 3,
911
- failureCount: 0,
912
- },
913
- confidence: 0.75,
914
- complexity: 'simple',
915
- estimatedEffort: 1,
916
- createdAt: new Date(),
917
- updatedAt: new Date(),
918
- });
919
-
920
- await atlas.getSkillLibrary()?.refreshTiers();
921
-
922
- const task = createTask({
923
- domain: 'test',
924
- description: 'Test task for tracking',
925
- });
926
-
927
- const result = await atlas.solve(task);
928
-
929
- // Should have tracked injected playbooks (may include playbooks from router context)
930
- expect(result.injectedPlaybooks).toBeDefined();
931
- });
932
- });
933
-
934
- // ============================================================
935
- // E2E: Graph-based Team Trajectory Learning
936
- // ============================================================
937
-
938
- describe('Integration: Graph-based Team Trajectory Learning', () => {
939
- let tempDir: string;
940
- let atlas: Atlas;
941
- let mockBackend: MockBackend;
942
-
943
- beforeEach(async () => {
944
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-team-graph-e2e-'));
945
- mockBackend = createMockBackend({
946
- success: true,
947
- result: 'Done',
948
- durationMs: 30,
949
- });
950
-
951
- atlas = createAtlasWithAgents([mockBackend], {
952
- storage: { baseDir: tempDir },
953
- teamLearning: {
954
- enabled: true,
955
- minTeamTrajectories: 2, // Low threshold for testing
956
- },
957
- });
958
-
959
- await atlas.init();
960
- });
961
-
962
- afterEach(async () => {
963
- await atlas.close();
964
- await rm(tempDir, { recursive: true, force: true });
965
- });
966
-
967
- /**
968
- * Build a graph-based TeamTrajectory from per-agent trajectories
969
- * with InteractionTag metadata on steps.
970
- */
971
- function makeGraphTeamTrajectory(params: {
972
- objective: string;
973
- domain: string;
974
- success: boolean;
975
- topologyType?: string;
976
- }): ReturnType<typeof buildTeamTrajectory> {
977
- const plannerSteps = [
978
- createStep({
979
- thought: 'Analyzing the task and planning delegation',
980
- action: 'delegate subtask to executor',
981
- observation: 'Delegated successfully',
982
- metadata: {
983
- interactionTag: {
984
- interactionId: `int-${params.objective}`,
985
- interactionType: 'delegation',
986
- counterpartAgentId: 'executor-1',
987
- stepRole: 'source',
988
- } satisfies InteractionTag,
989
- },
990
- }),
991
- createStep({
992
- action: 'read executor result',
993
- observation: params.success
994
- ? 'success: executor completed all subtasks'
995
- : 'error: executor encountered failures',
996
- }),
997
- ];
998
-
999
- const executorSteps = [
1000
- createStep({
1001
- action: 'receive delegation from planner',
1002
- observation: 'Received task assignment',
1003
- metadata: {
1004
- interactionTag: {
1005
- interactionId: `int-${params.objective}`,
1006
- interactionType: 'delegation',
1007
- counterpartAgentId: 'planner-1',
1008
- stepRole: 'target',
1009
- } satisfies InteractionTag,
1010
- },
1011
- }),
1012
- createStep({
1013
- thought: 'Deciding implementation approach',
1014
- action: 'decided to implement feature',
1015
- observation: 'Implementation started',
1016
- }),
1017
- createStep({
1018
- action: 'complete implementation',
1019
- observation: params.success ? 'completed successfully' : 'failed with error',
1020
- }),
1021
- ];
1022
-
1023
- const input: TeamTrajectoryInput = {
1024
- objective: params.objective,
1025
- domain: params.domain,
1026
- complexity: 'moderate',
1027
- teamName: 'test-team',
1028
- templateName: params.topologyType ?? 'hierarchical',
1029
- topologyType: params.topologyType ?? 'hierarchical',
1030
- enforcement: 'permissive',
1031
- memberTrajectories: [
1032
- {
1033
- agentId: 'planner-1',
1034
- role: 'planner',
1035
- trajectory: createTrajectory({
1036
- task: createTask({ domain: params.domain, description: `Plan: ${params.objective}` }),
1037
- steps: plannerSteps,
1038
- outcome: params.success ? successOutcome('planned') : failureOutcome('planning failed', 0.3),
1039
- agentId: 'planner-1',
1040
- totalTokens: 5000,
1041
- llmCalls: 3,
1042
- }),
1043
- },
1044
- {
1045
- agentId: 'executor-1',
1046
- role: 'executor',
1047
- trajectory: createTrajectory({
1048
- task: createTask({ domain: params.domain, description: `Execute: ${params.objective}` }),
1049
- steps: executorSteps,
1050
- outcome: params.success ? successOutcome('done') : failureOutcome('execution failed', 0.2),
1051
- agentId: 'executor-1',
1052
- totalTokens: 15000,
1053
- llmCalls: 8,
1054
- }),
1055
- },
1056
- ],
1057
- outcome: {
1058
- success: params.success,
1059
- partialScore: params.success ? 1.0 : 0.3,
1060
- quality: params.success ? 'good' : 'poor',
1061
- totalLlmCalls: 11,
1062
- totalTokens: 20000,
1063
- totalWallTimeSeconds: 60,
1064
- },
1065
- expectedPatterns: [{
1066
- name: 'planner-delegates',
1067
- fromRole: 'planner',
1068
- toRole: 'executor',
1069
- type: 'delegation',
1070
- frequency: 'once',
1071
- }],
1072
- };
1073
-
1074
- return buildTeamTrajectory(input);
1075
- }
1076
-
1077
- it('should process a graph-based team trajectory end-to-end', async () => {
1078
- const trajectory = makeGraphTeamTrajectory({
1079
- objective: 'Build authentication module',
1080
- domain: 'web',
1081
- success: true,
1082
- });
1083
-
1084
- // Verify graph data is present before processing
1085
- expect(trajectory.members).toHaveLength(2);
1086
- expect(trajectory.interactions).toBeDefined();
1087
- expect(trajectory.interactions!.length).toBeGreaterThan(0);
1088
- expect(trajectory.graphMetrics).toBeDefined();
1089
-
1090
- // Process through Atlas
1091
- const result = await atlas.processTeamTrajectory(trajectory);
1092
-
1093
- expect(result.teamTrajectoryId).toBe(trajectory.id);
1094
- expect(result.stored).toBe(true);
1095
- expect(result.analyzed).toBe(true);
1096
- expect(result.analysis).toBeDefined();
1097
-
1098
- // Verify analysis used graph data
1099
- expect(result.analysis!.agentCredits).toHaveLength(2);
1100
- expect(result.analysis!.interactionCredits.length).toBeGreaterThan(0);
1101
-
1102
- // Planner should have graph-enriched credit assessment
1103
- const plannerCredit = result.analysis!.agentCredits.find(c => c.role === 'planner');
1104
- expect(plannerCredit).toBeDefined();
1105
- expect(plannerCredit!.contributionScore).toBe(1.0); // Success
1106
- expect(plannerCredit!.assessment).toContain('steps'); // Graph-based: "completed N steps"
1107
-
1108
- // Verify team stats updated
1109
- const stats = await atlas.getStats();
1110
- expect(stats.learning.teamTrajectoriesProcessed).toBe(1);
1111
- expect(stats.teamMemory).toBeDefined();
1112
- expect(stats.teamMemory!.teamExperienceCount).toBe(1);
1113
- expect(stats.teamMemory!.teamMetaObservationCount).toBeGreaterThanOrEqual(1);
1114
- });
1115
-
1116
- it('should accumulate graph trajectories and run batch learning', async () => {
1117
- // Process enough trajectories to trigger batch (minTeamTrajectories: 2)
1118
- // The batch auto-triggers during processTeamTrajectory when threshold is reached
1119
- const trajectories = [
1120
- makeGraphTeamTrajectory({
1121
- objective: 'Build user registration',
1122
- domain: 'web',
1123
- success: true,
1124
- }),
1125
- makeGraphTeamTrajectory({
1126
- objective: 'Build password reset',
1127
- domain: 'web',
1128
- success: true,
1129
- }),
1130
- ];
1131
-
1132
- for (const t of trajectories) {
1133
- await atlas.processTeamTrajectory(t);
1134
- }
1135
-
1136
- // Verify all processed
1137
- const stats = await atlas.getStats();
1138
- expect(stats.learning.teamTrajectoriesProcessed).toBe(2);
1139
- expect(stats.teamMemory!.teamExperienceCount).toBe(2);
1140
-
1141
- // Batch was auto-triggered at threshold. Check team memory for results.
1142
- const teamMemory = atlas.getMemory().teamExperiences;
1143
- const teamPlaybooks = await teamMemory.getTeamPlaybooks();
1144
- const rolePlaybooks = await teamMemory.getRolePlaybooks();
1145
-
1146
- // With 2 successful hierarchical/web trajectories, should extract patterns
1147
- expect(teamPlaybooks.length + rolePlaybooks.length).toBeGreaterThanOrEqual(0);
1148
- });
1149
-
1150
- it('should handle mixed success/failure graph trajectories', async () => {
1151
- const success = makeGraphTeamTrajectory({
1152
- objective: 'Implement feature A',
1153
- domain: 'backend',
1154
- success: true,
1155
- });
1156
- const failure = makeGraphTeamTrajectory({
1157
- objective: 'Implement feature B',
1158
- domain: 'backend',
1159
- success: false,
1160
- });
1161
-
1162
- const successResult = await atlas.processTeamTrajectory(success);
1163
- const failureResult = await atlas.processTeamTrajectory(failure);
1164
-
1165
- // Both should be processed
1166
- expect(successResult.analyzed).toBe(true);
1167
- expect(failureResult.analyzed).toBe(true);
1168
-
1169
- // Failure analysis should reflect the failure
1170
- const failedCredits = failureResult.analysis!.agentCredits;
1171
- expect(failedCredits.some(c => c.contributionScore < 1.0)).toBe(true);
1172
-
1173
- // Team memory should have both
1174
- const stats = await atlas.getStats();
1175
- expect(stats.teamMemory!.teamExperienceCount).toBe(2);
1176
- });
1177
-
1178
- it('should use graph interactions for richer analysis', async () => {
1179
- const trajectory = makeGraphTeamTrajectory({
1180
- objective: 'Build API endpoint',
1181
- domain: 'backend',
1182
- success: true,
1183
- });
1184
-
1185
- const result = await atlas.processTeamTrajectory(trajectory);
1186
-
1187
- // Interaction credits should reference the step-level delegation
1188
- const interactionCredits = result.analysis!.interactionCredits;
1189
- expect(interactionCredits.length).toBeGreaterThan(0);
1190
-
1191
- // With graph data, interaction credits should have type info
1192
- const delegationCredit = interactionCredits.find(
1193
- ic => ic.reasoning.includes('delegation')
1194
- );
1195
- expect(delegationCredit).toBeDefined();
1196
- expect(delegationCredit!.fromRole).toBe('planner');
1197
- expect(delegationCredit!.toRole).toBe('executor');
1198
- });
1199
-
1200
- it('should generate meta-observations with graph metrics', async () => {
1201
- const trajectory = makeGraphTeamTrajectory({
1202
- objective: 'Build dashboard',
1203
- domain: 'frontend',
1204
- success: true,
1205
- });
1206
-
1207
- await atlas.processTeamTrajectory(trajectory);
1208
-
1209
- // Check meta-observations were recorded
1210
- const teamMemory = atlas.getMemory().teamExperiences;
1211
- const metaObs = await teamMemory.getMetaObservations();
1212
- expect(metaObs.length).toBeGreaterThanOrEqual(1);
1213
-
1214
- // The pipeline-generated meta-observation should exist
1215
- const obs = metaObs[0];
1216
- expect(obs.formation.wasEffective).toBe(true);
1217
- expect(obs.formation.topologyUsed).toBe('hierarchical');
1218
- expect(obs.formation.domain).toBe('frontend');
1219
- });
1220
-
1221
- it('should recommend teams after accumulating graph experience', async () => {
1222
- // Process trajectories to build team memory
1223
- const trajectories = [
1224
- makeGraphTeamTrajectory({
1225
- objective: 'Build auth module',
1226
- domain: 'web',
1227
- success: true,
1228
- topologyType: 'hierarchical',
1229
- }),
1230
- makeGraphTeamTrajectory({
1231
- objective: 'Build user profile',
1232
- domain: 'web',
1233
- success: true,
1234
- topologyType: 'hierarchical',
1235
- }),
1236
- ];
1237
-
1238
- for (const t of trajectories) {
1239
- await atlas.processTeamTrajectory(t);
1240
- }
1241
-
1242
- // Force batch learning to extract playbooks
1243
- await atlas.runTeamBatchLearning();
1244
-
1245
- // Now try to recommend a team
1246
- const recommendation = await atlas.recommendTeam({
1247
- description: 'Build payment integration',
1248
- domain: 'web',
1249
- complexity: 'moderate',
1250
- });
1251
-
1252
- expect(recommendation).toBeDefined();
1253
- expect(recommendation.confidence).toBeGreaterThanOrEqual(0);
1254
- expect(recommendation.composition).toBeDefined();
1255
- expect(recommendation.composition.topology).toBeDefined();
1256
- expect(recommendation.composition.roles.length).toBeGreaterThanOrEqual(0);
1257
- });
1258
-
1259
- it('should process graph trajectory through full pipeline to team playbook extraction', async () => {
1260
- // Close existing atlas and create new one with higher batch threshold
1261
- await atlas.close();
1262
- await rm(tempDir, { recursive: true, force: true });
1263
-
1264
- tempDir = await mkdtemp(join(tmpdir(), 'atlas-team-graph-e2e-'));
1265
- atlas = createAtlasWithAgents([mockBackend], {
1266
- storage: { baseDir: tempDir },
1267
- teamLearning: {
1268
- enabled: true,
1269
- minTeamTrajectories: 10, // High threshold so batch doesn't auto-trigger
1270
- },
1271
- });
1272
- await atlas.init();
1273
-
1274
- // Need enough similar trajectories for playbook extraction
1275
- const objectives = [
1276
- 'Implement login page',
1277
- 'Implement signup page',
1278
- 'Implement password reset page',
1279
- ];
1280
-
1281
- for (const objective of objectives) {
1282
- const t = makeGraphTeamTrajectory({
1283
- objective,
1284
- domain: 'web',
1285
- success: true,
1286
- topologyType: 'hierarchical',
1287
- });
1288
- await atlas.processTeamTrajectory(t);
1289
- }
1290
-
1291
- // Verify all processed
1292
- const stats = await atlas.getStats();
1293
- expect(stats.learning.teamTrajectoriesProcessed).toBe(3);
1294
-
1295
- // Run batch extraction explicitly (threshold not reached, but we force it)
1296
- const batchResult = await atlas.runTeamBatchLearning();
1297
- expect(batchResult).toBeDefined();
1298
- expect(batchResult!.ready).toBe(true);
1299
- expect(batchResult!.trajectoriesProcessed).toBe(3);
1300
-
1301
- // Check team memory for results
1302
- const teamMemory = atlas.getMemory().teamExperiences;
1303
- const teamPlaybooks = await teamMemory.getTeamPlaybooks();
1304
- const rolePlaybooks = await teamMemory.getRolePlaybooks();
1305
-
1306
- // With 3 successful hierarchical/web trajectories with the same topology,
1307
- // the heuristic should extract at least 1 team playbook
1308
- expect(teamPlaybooks.length).toBeGreaterThanOrEqual(1);
1309
-
1310
- // Verify team playbook has graph-enriched interaction patterns
1311
- if (teamPlaybooks.length > 0) {
1312
- const tp = teamPlaybooks[0];
1313
- expect(tp.composition.topology).toBe('hierarchical');
1314
- expect(tp.applicability.domains).toContain('web');
1315
- expect(tp.composition.roles.length).toBeGreaterThanOrEqual(1);
1316
-
1317
- // Should have interaction patterns extracted from graph data
1318
- expect(tp.coordination.interactionPatterns.length).toBeGreaterThanOrEqual(0);
1319
- }
1320
-
1321
- // With 3 trajectories both roles appear consistently
1322
- // Role playbooks should be extracted for at least one role
1323
- if (rolePlaybooks.length > 0) {
1324
- const roles = rolePlaybooks.map(rp => rp.role);
1325
- // Either 'planner' or 'executor' should be present
1326
- expect(roles.some(r => ['planner', 'executor'].includes(r))).toBe(true);
1327
- }
1328
-
1329
- // Query team memory to verify searchability
1330
- const queryResult = await atlas.queryTeamMemory('authentication', {
1331
- domain: 'web',
1332
- includeExperiences: true,
1333
- includePlaybooks: true,
1334
- });
1335
- expect(queryResult.experiences.length + queryResult.playbooks.length).toBeGreaterThanOrEqual(0);
1336
- });
1337
- });