cognitive-core 0.2.4 → 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 (1278) 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 +31 -4
  536. package/dist/learning/pipeline.d.ts.map +1 -1
  537. package/dist/learning/pipeline.js +64 -12
  538. package/dist/learning/pipeline.js.map +1 -1
  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 +3 -1
  827. package/dist/surfacing/skill-publisher.d.ts.map +1 -1
  828. package/dist/surfacing/skill-publisher.js +28 -28
  829. package/dist/surfacing/skill-publisher.js.map +1 -1
  830. package/dist/surfacing/sqlite-storage-adapter.d.ts +2 -2
  831. package/dist/surfacing/sqlite-storage-adapter.d.ts.map +1 -1
  832. package/dist/surfacing/sqlite-storage-adapter.js +27 -18
  833. package/dist/surfacing/sqlite-storage-adapter.js.map +1 -1
  834. package/dist/types/analysis.d.ts +43 -0
  835. package/dist/types/analysis.d.ts.map +1 -0
  836. package/dist/types/analysis.js +10 -0
  837. package/dist/types/analysis.js.map +1 -0
  838. package/dist/types/config.d.ts +2178 -425
  839. package/dist/types/config.d.ts.map +1 -1
  840. package/dist/types/config.js +600 -88
  841. package/dist/types/config.js.map +1 -1
  842. package/dist/types/dataclaw.d.ts +3 -3
  843. package/dist/types/index.d.ts +4 -7
  844. package/dist/types/index.d.ts.map +1 -1
  845. package/dist/types/index.js +2 -10
  846. package/dist/types/index.js.map +1 -1
  847. package/dist/types/knowledge-graph.d.ts +1 -1
  848. package/dist/types/knowledge-graph.d.ts.map +1 -1
  849. package/dist/types/knowledge.d.ts +219 -11
  850. package/dist/types/knowledge.d.ts.map +1 -1
  851. package/dist/types/knowledge.js +90 -30
  852. package/dist/types/knowledge.js.map +1 -1
  853. package/dist/types/memory.d.ts +8 -0
  854. package/dist/types/memory.d.ts.map +1 -1
  855. package/dist/types/memory.js +12 -4
  856. package/dist/types/memory.js.map +1 -1
  857. package/dist/types/outcome.d.ts +11 -0
  858. package/dist/types/outcome.d.ts.map +1 -1
  859. package/dist/types/outcome.js +9 -0
  860. package/dist/types/outcome.js.map +1 -1
  861. package/dist/types/playbook.d.ts +63 -0
  862. package/dist/types/playbook.d.ts.map +1 -1
  863. package/dist/types/playbook.js +51 -0
  864. package/dist/types/playbook.js.map +1 -1
  865. package/dist/types/trajectory-source.d.ts +1 -1
  866. package/dist/types/trajectory-source.d.ts.map +1 -1
  867. package/dist/types/trajectory.d.ts +61 -0
  868. package/dist/types/trajectory.d.ts.map +1 -1
  869. package/dist/types/trajectory.js +25 -0
  870. package/dist/types/trajectory.js.map +1 -1
  871. package/dist/utils/clock.d.ts +36 -0
  872. package/dist/utils/clock.d.ts.map +1 -0
  873. package/dist/utils/clock.js +48 -0
  874. package/dist/utils/clock.js.map +1 -0
  875. package/dist/utils/frontmatter.d.ts.map +1 -1
  876. package/dist/utils/frontmatter.js +10 -2
  877. package/dist/utils/frontmatter.js.map +1 -1
  878. package/dist/utils/index.d.ts +4 -1
  879. package/dist/utils/index.d.ts.map +1 -1
  880. package/dist/utils/index.js +4 -1
  881. package/dist/utils/index.js.map +1 -1
  882. package/dist/utils/logger.d.ts +31 -0
  883. package/dist/utils/logger.d.ts.map +1 -0
  884. package/dist/utils/logger.js +50 -0
  885. package/dist/utils/logger.js.map +1 -0
  886. package/dist/utils/objectives.d.ts +45 -0
  887. package/dist/utils/objectives.d.ts.map +1 -0
  888. package/dist/utils/objectives.js +74 -0
  889. package/dist/utils/objectives.js.map +1 -0
  890. package/dist/utils/partitioned-store.d.ts.map +1 -1
  891. package/dist/utils/partitioned-store.js.map +1 -1
  892. package/dist/utils/playbook-hash.d.ts +19 -0
  893. package/dist/utils/playbook-hash.d.ts.map +1 -0
  894. package/dist/utils/playbook-hash.js +51 -0
  895. package/dist/utils/playbook-hash.js.map +1 -0
  896. package/dist/utils/similarity.d.ts.map +1 -1
  897. package/dist/utils/similarity.js.map +1 -1
  898. package/dist/utils/solver-canonicalizer.d.ts +22 -0
  899. package/dist/utils/solver-canonicalizer.d.ts.map +1 -0
  900. package/dist/utils/solver-canonicalizer.js +41 -0
  901. package/dist/utils/solver-canonicalizer.js.map +1 -0
  902. package/dist/utils/storage.d.ts.map +1 -1
  903. package/dist/utils/storage.js +1 -3
  904. package/dist/utils/storage.js.map +1 -1
  905. package/dist/utils/task-signature.d.ts +34 -0
  906. package/dist/utils/task-signature.d.ts.map +1 -0
  907. package/dist/utils/task-signature.js +112 -0
  908. package/dist/utils/task-signature.js.map +1 -0
  909. package/dist/utils/trajectory-helpers.d.ts.map +1 -1
  910. package/dist/utils/trajectory-helpers.js.map +1 -1
  911. package/dist/utils/validation.d.ts.map +1 -1
  912. package/dist/utils/validation.js.map +1 -1
  913. package/dist/workspace/efficacy-toolkit.d.ts.map +1 -1
  914. package/dist/workspace/efficacy-toolkit.js +18 -26
  915. package/dist/workspace/efficacy-toolkit.js.map +1 -1
  916. package/dist/workspace/index.d.ts +4 -3
  917. package/dist/workspace/index.d.ts.map +1 -1
  918. package/dist/workspace/index.js +5 -3
  919. package/dist/workspace/index.js.map +1 -1
  920. package/dist/workspace/runner.d.ts.map +1 -1
  921. package/dist/workspace/runner.js +95 -21
  922. package/dist/workspace/runner.js.map +1 -1
  923. package/dist/workspace/skill-converter.d.ts +66 -1
  924. package/dist/workspace/skill-converter.d.ts.map +1 -1
  925. package/dist/workspace/skill-converter.js +238 -19
  926. package/dist/workspace/skill-converter.js.map +1 -1
  927. package/dist/workspace/skill-import.d.ts +43 -0
  928. package/dist/workspace/skill-import.d.ts.map +1 -0
  929. package/dist/workspace/skill-import.js +40 -0
  930. package/dist/workspace/skill-import.js.map +1 -0
  931. package/dist/workspace/templates/index.d.ts +6 -8
  932. package/dist/workspace/templates/index.d.ts.map +1 -1
  933. package/dist/workspace/templates/index.js +7 -11
  934. package/dist/workspace/templates/index.js.map +1 -1
  935. package/dist/workspace/templates/knowledge-defrag.d.ts.map +1 -1
  936. package/dist/workspace/templates/knowledge-defrag.js +0 -2
  937. package/dist/workspace/templates/knowledge-defrag.js.map +1 -1
  938. package/dist/workspace/templates/knowledge-extraction.d.ts +11 -0
  939. package/dist/workspace/templates/knowledge-extraction.d.ts.map +1 -1
  940. package/dist/workspace/templates/knowledge-extraction.js +11 -6
  941. package/dist/workspace/templates/knowledge-extraction.js.map +1 -1
  942. package/dist/workspace/templates/playbook-conditioning.d.ts +38 -0
  943. package/dist/workspace/templates/playbook-conditioning.d.ts.map +1 -0
  944. package/dist/workspace/templates/playbook-conditioning.js +147 -0
  945. package/dist/workspace/templates/playbook-conditioning.js.map +1 -0
  946. package/dist/workspace/templates/playbook-decay-detection.d.ts.map +1 -1
  947. package/dist/workspace/templates/playbook-decay-detection.js +24 -18
  948. package/dist/workspace/templates/playbook-decay-detection.js.map +1 -1
  949. package/dist/workspace/templates/playbook-efficacy-audit.d.ts.map +1 -1
  950. package/dist/workspace/templates/playbook-efficacy-audit.js +26 -11
  951. package/dist/workspace/templates/playbook-efficacy-audit.js.map +1 -1
  952. package/dist/workspace/templates/playbook-extraction.d.ts.map +1 -1
  953. package/dist/workspace/templates/playbook-extraction.js +75 -15
  954. package/dist/workspace/templates/playbook-extraction.js.map +1 -1
  955. package/dist/workspace/templates/playbook-lifecycle-review.d.ts.map +1 -1
  956. package/dist/workspace/templates/playbook-lifecycle-review.js +12 -8
  957. package/dist/workspace/templates/playbook-lifecycle-review.js.map +1 -1
  958. package/dist/workspace/templates/refinement-analysis.d.ts.map +1 -1
  959. package/dist/workspace/templates/refinement-analysis.js +11 -5
  960. package/dist/workspace/templates/refinement-analysis.js.map +1 -1
  961. package/dist/workspace/templates/skill-enrichment.d.ts.map +1 -1
  962. package/dist/workspace/templates/skill-enrichment.js +7 -11
  963. package/dist/workspace/templates/skill-enrichment.js.map +1 -1
  964. package/dist/workspace/templates/solution-evaluation.d.ts.map +1 -1
  965. package/dist/workspace/templates/solution-evaluation.js +15 -8
  966. package/dist/workspace/templates/solution-evaluation.js.map +1 -1
  967. package/dist/workspace/templates/trajectory-analysis.d.ts.map +1 -1
  968. package/dist/workspace/templates/trajectory-analysis.js +1 -3
  969. package/dist/workspace/templates/trajectory-analysis.js.map +1 -1
  970. package/dist/workspace/templates/usage-inference.d.ts.map +1 -1
  971. package/dist/workspace/templates/usage-inference.js +9 -7
  972. package/dist/workspace/templates/usage-inference.js.map +1 -1
  973. package/dist/workspace/types.d.ts +32 -2
  974. package/dist/workspace/types.d.ts.map +1 -1
  975. package/dist/workspace/types.js +29 -0
  976. package/dist/workspace/types.js.map +1 -1
  977. package/package.json +43 -19
  978. package/playbooks/agent-ops/long-task-checkpointing.json +54 -0
  979. package/playbooks/agent-ops/progressive-context-gathering.json +56 -0
  980. package/playbooks/agent-ops/safe-destructive-operations.json +59 -0
  981. package/playbooks/agent-ops/scope-discipline.json +56 -0
  982. package/playbooks/agent-ops/stall-detection-strategy-switch.json +55 -0
  983. package/playbooks/agent-ops/verification-before-completion.json +54 -0
  984. package/playbooks/alfworld/clean-and-place.json +35 -0
  985. package/playbooks/alfworld/cool-and-place.json +35 -0
  986. package/playbooks/alfworld/examine-in-light.json +32 -0
  987. package/playbooks/alfworld/heat-and-place.json +35 -0
  988. package/playbooks/alfworld/pick-and-place.json +37 -0
  989. package/playbooks/alfworld/pick-two-and-place.json +35 -0
  990. package/.claude/settings.json +0 -197
  991. package/.entire/settings.json +0 -4
  992. package/.sessionlog/settings.json +0 -4
  993. package/CLAUDE.md +0 -233
  994. package/SKILL.md +0 -193
  995. package/docs/DESIGN-agentic-workspace.md +0 -2057
  996. package/docs/DESIGN-semantic-memory-knowledge-bank.md +0 -1789
  997. package/docs/DESIGN-session-bank.md +0 -1134
  998. package/docs/DESIGN-team-extraction-pipeline.md +0 -1369
  999. package/docs/PROPOSAL-team-aware-learning.md +0 -1080
  1000. package/docs/RESEARCH-semantic-memory-knowledge-structures.md +0 -517
  1001. package/docs/RESEARCH-team-trajectory-learning.md +0 -553
  1002. package/gaps.md +0 -204
  1003. package/scripts/migrate-to-playbooks.ts +0 -307
  1004. package/src/agents/index.ts +0 -14
  1005. package/src/agents/mock-provider.ts +0 -93
  1006. package/src/agents/types.ts +0 -137
  1007. package/src/atlas.ts +0 -1198
  1008. package/src/bin/cli-utils.ts +0 -220
  1009. package/src/bin/cognitive-core.ts +0 -162
  1010. package/src/bin/commands/kb.ts +0 -266
  1011. package/src/bin/commands/learn.ts +0 -100
  1012. package/src/bin/commands/legacy.ts +0 -182
  1013. package/src/bin/commands/run.ts +0 -113
  1014. package/src/bin/commands/sessions.ts +0 -221
  1015. package/src/bin/commands/skills.ts +0 -146
  1016. package/src/embeddings/bm25.ts +0 -337
  1017. package/src/embeddings/index.ts +0 -42
  1018. package/src/embeddings/inverted-index.ts +0 -134
  1019. package/src/embeddings/manager.ts +0 -293
  1020. package/src/embeddings/provider.ts +0 -318
  1021. package/src/embeddings/vector-store.ts +0 -365
  1022. package/src/factory.ts +0 -280
  1023. package/src/index.ts +0 -495
  1024. package/src/learning/analyzer.ts +0 -319
  1025. package/src/learning/effectiveness.ts +0 -428
  1026. package/src/learning/energy-evaluator.ts +0 -282
  1027. package/src/learning/healing-orchestrator.ts +0 -383
  1028. package/src/learning/index.ts +0 -150
  1029. package/src/learning/instant-loop.ts +0 -357
  1030. package/src/learning/knowledge-extractor.ts +0 -470
  1031. package/src/learning/maintenance-scheduler.ts +0 -271
  1032. package/src/learning/meta-learner.ts +0 -552
  1033. package/src/learning/playbook-extractor.ts +0 -702
  1034. package/src/learning/reflexion-generator.ts +0 -273
  1035. package/src/learning/team-ingester.ts +0 -499
  1036. package/src/learning/team-meta-learner.ts +0 -558
  1037. package/src/learning/team-pipeline.ts +0 -364
  1038. package/src/learning/trajectory-sources/dataclaw.ts +0 -403
  1039. package/src/learning/trajectory-sources/entire.ts +0 -251
  1040. package/src/learning/trajectory-sources/file.ts +0 -136
  1041. package/src/learning/trajectory-sources/huggingface.ts +0 -248
  1042. package/src/learning/trajectory-sources/in-memory.ts +0 -61
  1043. package/src/learning/trajectory-sources/index.ts +0 -15
  1044. package/src/learning/trajectory-sources/pipeline.ts +0 -69
  1045. package/src/learning/unified-pipeline.ts +0 -1191
  1046. package/src/learning/usage-inference.ts +0 -372
  1047. package/src/mcp/index.ts +0 -12
  1048. package/src/mcp/playbook-server.ts +0 -565
  1049. package/src/memory/candidate-retrieval.ts +0 -72
  1050. package/src/memory/causal-store.ts +0 -273
  1051. package/src/memory/coherence.ts +0 -252
  1052. package/src/memory/curated-loader.ts +0 -213
  1053. package/src/memory/experience.ts +0 -682
  1054. package/src/memory/graph-layers/base.ts +0 -184
  1055. package/src/memory/graph-layers/causal.ts +0 -16
  1056. package/src/memory/graph-layers/entity.ts +0 -16
  1057. package/src/memory/graph-layers/index.ts +0 -5
  1058. package/src/memory/graph-layers/semantic.ts +0 -16
  1059. package/src/memory/graph-layers/temporal.ts +0 -16
  1060. package/src/memory/index.ts +0 -131
  1061. package/src/memory/knowledge-bank.ts +0 -1317
  1062. package/src/memory/knowledge-defrag.ts +0 -329
  1063. package/src/memory/knowledge-graph.ts +0 -361
  1064. package/src/memory/meta.ts +0 -488
  1065. package/src/memory/playbook.ts +0 -676
  1066. package/src/memory/reasoning-bank.ts +0 -458
  1067. package/src/memory/reflexion.ts +0 -122
  1068. package/src/memory/search-provider.ts +0 -35
  1069. package/src/memory/search-providers/index.ts +0 -3
  1070. package/src/memory/search-providers/minimem.ts +0 -84
  1071. package/src/memory/search-providers/text-similarity.ts +0 -35
  1072. package/src/memory/skill-exporter.ts +0 -357
  1073. package/src/memory/source-resolver.ts +0 -422
  1074. package/src/memory/system.ts +0 -620
  1075. package/src/memory/team-experience.ts +0 -604
  1076. package/src/memory/temporal-compressor.ts +0 -409
  1077. package/src/persistence/index.ts +0 -37
  1078. package/src/persistence/migrator.ts +0 -298
  1079. package/src/persistence/serializers.ts +0 -79
  1080. package/src/persistence/sqlite-persistence.ts +0 -925
  1081. package/src/runtime/backends/acp-protocol.ts +0 -231
  1082. package/src/runtime/backends/acp.ts +0 -239
  1083. package/src/runtime/backends/index.ts +0 -38
  1084. package/src/runtime/backends/macro-agent.ts +0 -177
  1085. package/src/runtime/backends/mock.ts +0 -218
  1086. package/src/runtime/backends/subprocess.ts +0 -356
  1087. package/src/runtime/compute-provider.ts +0 -206
  1088. package/src/runtime/flows/learning.ts +0 -166
  1089. package/src/runtime/flows/validation.ts +0 -381
  1090. package/src/runtime/index.ts +0 -75
  1091. package/src/runtime/manager.ts +0 -685
  1092. package/src/runtime/types.ts +0 -198
  1093. package/src/search/evaluator.ts +0 -499
  1094. package/src/search/index.ts +0 -78
  1095. package/src/search/moe-gate.ts +0 -304
  1096. package/src/search/refinement-loop.ts +0 -457
  1097. package/src/search/refinement-types.ts +0 -159
  1098. package/src/search/router.ts +0 -368
  1099. package/src/search/solver.ts +0 -303
  1100. package/src/search/team-router.ts +0 -459
  1101. package/src/search/verification-runner.ts +0 -570
  1102. package/src/session-bank/git-reader.ts +0 -200
  1103. package/src/session-bank/index.ts +0 -26
  1104. package/src/session-bank/parser.ts +0 -548
  1105. package/src/session-bank/session-bank.ts +0 -485
  1106. package/src/session-bank/types.ts +0 -176
  1107. package/src/surfacing/index.ts +0 -29
  1108. package/src/surfacing/publisher.ts +0 -23
  1109. package/src/surfacing/skill-library.ts +0 -625
  1110. package/src/surfacing/skill-publisher.ts +0 -257
  1111. package/src/surfacing/sqlite-storage-adapter.ts +0 -285
  1112. package/src/surfacing/team-skill-library.ts +0 -610
  1113. package/src/types/config.ts +0 -661
  1114. package/src/types/dataclaw.ts +0 -99
  1115. package/src/types/huggingface-transformers.d.ts +0 -12
  1116. package/src/types/index.ts +0 -293
  1117. package/src/types/knowledge-graph.ts +0 -246
  1118. package/src/types/knowledge.ts +0 -388
  1119. package/src/types/memory.ts +0 -300
  1120. package/src/types/meta.ts +0 -218
  1121. package/src/types/outcome.ts +0 -66
  1122. package/src/types/playbook.ts +0 -215
  1123. package/src/types/step.ts +0 -40
  1124. package/src/types/task.ts +0 -52
  1125. package/src/types/team-meta.ts +0 -212
  1126. package/src/types/team-playbook.ts +0 -384
  1127. package/src/types/team-trajectory.ts +0 -673
  1128. package/src/types/trajectory-source.ts +0 -47
  1129. package/src/types/trajectory.ts +0 -80
  1130. package/src/utils/error-classifier.ts +0 -113
  1131. package/src/utils/frontmatter.ts +0 -118
  1132. package/src/utils/index.ts +0 -63
  1133. package/src/utils/partitioned-store.ts +0 -299
  1134. package/src/utils/similarity.ts +0 -139
  1135. package/src/utils/storage.ts +0 -249
  1136. package/src/utils/trajectory-helpers.ts +0 -79
  1137. package/src/utils/validation.ts +0 -286
  1138. package/src/workspace/efficacy-toolkit.ts +0 -496
  1139. package/src/workspace/index.ts +0 -77
  1140. package/src/workspace/runner.ts +0 -281
  1141. package/src/workspace/skill-converter.ts +0 -288
  1142. package/src/workspace/templates/index.ts +0 -95
  1143. package/src/workspace/templates/knowledge-defrag.ts +0 -223
  1144. package/src/workspace/templates/knowledge-extraction.ts +0 -337
  1145. package/src/workspace/templates/meta-reflection.ts +0 -208
  1146. package/src/workspace/templates/playbook-decay-detection.ts +0 -272
  1147. package/src/workspace/templates/playbook-efficacy-audit.ts +0 -246
  1148. package/src/workspace/templates/playbook-extraction.ts +0 -240
  1149. package/src/workspace/templates/playbook-lifecycle-review.ts +0 -274
  1150. package/src/workspace/templates/refinement-analysis.ts +0 -162
  1151. package/src/workspace/templates/skill-enrichment.ts +0 -275
  1152. package/src/workspace/templates/solution-evaluation.ts +0 -199
  1153. package/src/workspace/templates/team-playbook-extraction.ts +0 -631
  1154. package/src/workspace/templates/team-trajectory-analysis.ts +0 -564
  1155. package/src/workspace/templates/trajectory-analysis.ts +0 -234
  1156. package/src/workspace/templates/usage-inference.ts +0 -163
  1157. package/src/workspace/types.ts +0 -185
  1158. package/tests/atlas-knowledge.test.ts +0 -165
  1159. package/tests/embeddings/bm25.test.ts +0 -130
  1160. package/tests/embeddings/inverted-index.test.ts +0 -138
  1161. package/tests/embeddings/manager.test.ts +0 -205
  1162. package/tests/feature-toggles.test.ts +0 -275
  1163. package/tests/fixtures/behavioral-trajectories.ts +0 -210
  1164. package/tests/gap-fixes.test.ts +0 -1116
  1165. package/tests/integration/atlas.test.ts +0 -266
  1166. package/tests/integration/cli-e2e.test.ts +0 -621
  1167. package/tests/integration/curated-sources-e2e.test.ts +0 -502
  1168. package/tests/integration/dataclaw-e2e.test.ts +0 -559
  1169. package/tests/integration/e2e.test.ts +0 -1337
  1170. package/tests/integration/entire-e2e.test.ts +0 -376
  1171. package/tests/integration/huggingface-e2e.test.ts +0 -627
  1172. package/tests/integration/persistence-e2e.test.ts +0 -741
  1173. package/tests/integration/phase-e2e.test.ts +0 -1143
  1174. package/tests/integration/pipeline-data-correctness.test.ts +0 -794
  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-tree-wiring.test.ts +0 -152
  1178. package/tests/integration/unified-pipeline-e2e.test.ts +0 -634
  1179. package/tests/learning/analyzer.test.ts +0 -426
  1180. package/tests/learning/dataclaw-trajectory-source.test.ts +0 -642
  1181. package/tests/learning/effectiveness.test.ts +0 -542
  1182. package/tests/learning/energy-evaluator.test.ts +0 -180
  1183. package/tests/learning/entire-trajectory-source.test.ts +0 -380
  1184. package/tests/learning/healing-orchestrator.test.ts +0 -269
  1185. package/tests/learning/huggingface-trajectory-source.test.ts +0 -817
  1186. package/tests/learning/instant-loop.test.ts +0 -243
  1187. package/tests/learning/knowledge-extractor.test.ts +0 -491
  1188. package/tests/learning/maintenance-scheduler.test.ts +0 -191
  1189. package/tests/learning/meta-learner.test.ts +0 -418
  1190. package/tests/learning/pipeline-memory-updates.test.ts +0 -721
  1191. package/tests/learning/playbook-extractor-provenance.test.ts +0 -114
  1192. package/tests/learning/reflexion-generator.test.ts +0 -411
  1193. package/tests/learning/team-ingester.test.ts +0 -349
  1194. package/tests/learning/team-meta-learner.test.ts +0 -618
  1195. package/tests/learning/team-pipeline.test.ts +0 -334
  1196. package/tests/learning/trajectory-sources.test.ts +0 -320
  1197. package/tests/learning/unified-pipeline-efficacy.test.ts +0 -232
  1198. package/tests/learning/unified-pipeline.test.ts +0 -322
  1199. package/tests/learning/usage-inference.test.ts +0 -254
  1200. package/tests/mcp/playbook-server.test.ts +0 -257
  1201. package/tests/memory/candidate-retrieval.test.ts +0 -167
  1202. package/tests/memory/causal-store.test.ts +0 -276
  1203. package/tests/memory/coherence.test.ts +0 -232
  1204. package/tests/memory/compound-engineering-seed.test.ts +0 -338
  1205. package/tests/memory/curated-loader-extended.test.ts +0 -225
  1206. package/tests/memory/experience.test.ts +0 -203
  1207. package/tests/memory/graph-layers/semantic.test.ts +0 -219
  1208. package/tests/memory/knowledge-bank-extraction.test.ts +0 -558
  1209. package/tests/memory/knowledge-bank.test.ts +0 -705
  1210. package/tests/memory/knowledge-defrag.test.ts +0 -366
  1211. package/tests/memory/knowledge-evolution.test.ts +0 -563
  1212. package/tests/memory/knowledge-graph.test.ts +0 -492
  1213. package/tests/memory/knowledge-inbox.test.ts +0 -258
  1214. package/tests/memory/knowledge-minimem.test.ts +0 -251
  1215. package/tests/memory/meta.test.ts +0 -399
  1216. package/tests/memory/playbook-quality-validation.test.ts +0 -430
  1217. package/tests/memory/playbook.test.ts +0 -644
  1218. package/tests/memory/provenance.test.ts +0 -648
  1219. package/tests/memory/reasoning-bank.test.ts +0 -239
  1220. package/tests/memory/reflexion.test.ts +0 -166
  1221. package/tests/memory/skill-exporter.test.ts +0 -475
  1222. package/tests/memory/source-resolver.test.ts +0 -700
  1223. package/tests/memory/system.test.ts +0 -330
  1224. package/tests/memory/team-experience.test.ts +0 -411
  1225. package/tests/memory/temporal-compressor.test.ts +0 -318
  1226. package/tests/persistence/migrator.test.ts +0 -1009
  1227. package/tests/persistence/sqlite-persistence.test.ts +0 -635
  1228. package/tests/runtime/agent-manager.test.ts +0 -517
  1229. package/tests/runtime/compute-provider.test.ts +0 -288
  1230. package/tests/runtime/delegate.test.ts +0 -354
  1231. package/tests/runtime/macro-agent-backend.test.ts +0 -266
  1232. package/tests/runtime/mock-backend.test.ts +0 -248
  1233. package/tests/search/evaluator.test.ts +0 -257
  1234. package/tests/search/moe-gate.test.ts +0 -250
  1235. package/tests/search/refinement-loop.test.ts +0 -477
  1236. package/tests/search/refinement.test.ts +0 -267
  1237. package/tests/search/router.test.ts +0 -506
  1238. package/tests/search/team-router.test.ts +0 -376
  1239. package/tests/search/verification-runner.test.ts +0 -357
  1240. package/tests/session-bank/fixtures/multi-tool-session/full.jsonl +0 -12
  1241. package/tests/session-bank/fixtures/multi-tool-session/metadata.json +0 -28
  1242. package/tests/session-bank/fixtures/root-metadata.json +0 -18
  1243. package/tests/session-bank/fixtures/sessionlog-root-metadata.json +0 -16
  1244. package/tests/session-bank/fixtures/sessionlog-session/full.jsonl +0 -6
  1245. package/tests/session-bank/fixtures/sessionlog-session/metadata.json +0 -55
  1246. package/tests/session-bank/fixtures/simple-session/full.jsonl +0 -6
  1247. package/tests/session-bank/fixtures/simple-session/metadata.json +0 -38
  1248. package/tests/session-bank/git-reader.test.ts +0 -232
  1249. package/tests/session-bank/parser.test.ts +0 -453
  1250. package/tests/session-bank/session-bank.test.ts +0 -546
  1251. package/tests/surfacing/skill-library.test.ts +0 -297
  1252. package/tests/surfacing/skill-publisher.test.ts +0 -437
  1253. package/tests/surfacing/sqlite-storage-adapter.test.ts +0 -206
  1254. package/tests/surfacing/team-skill-library.test.ts +0 -444
  1255. package/tests/types/outcome.test.ts +0 -147
  1256. package/tests/types/step.test.ts +0 -133
  1257. package/tests/types/task.test.ts +0 -158
  1258. package/tests/types/team-meta.test.ts +0 -147
  1259. package/tests/types/team-playbook.test.ts +0 -246
  1260. package/tests/types/team-trajectory.test.ts +0 -557
  1261. package/tests/types/trajectory.test.ts +0 -253
  1262. package/tests/utils/error-classifier.test.ts +0 -149
  1263. package/tests/utils/frontmatter.test.ts +0 -208
  1264. package/tests/utils/partitioned-store.test.ts +0 -230
  1265. package/tests/utils/similarity.test.ts +0 -188
  1266. package/tests/utils/trajectory-helpers.test.ts +0 -163
  1267. package/tests/utils/validation.test.ts +0 -252
  1268. package/tests/workspace/efficacy-toolkit.test.ts +0 -404
  1269. package/tests/workspace/full-flow.test.ts +0 -845
  1270. package/tests/workspace/manager.test.ts +0 -215
  1271. package/tests/workspace/runner.test.ts +0 -336
  1272. package/tests/workspace/skill-converter.test.ts +0 -205
  1273. package/tests/workspace/templates/knowledge-extraction.test.ts +0 -235
  1274. package/tests/workspace/templates/playbook-efficacy.test.ts +0 -377
  1275. package/tests/workspace/templates/team-playbook-extraction.test.ts +0 -341
  1276. package/tests/workspace/templates/team-trajectory-analysis.test.ts +0 -417
  1277. package/tsconfig.json +0 -25
  1278. package/vitest.config.ts +0 -22
@@ -17,6 +17,19 @@ export declare const LearningConfigSchema: z.ZodObject<{
17
17
  creditStrategy: z.ZodDefault<z.ZodEnum<["simple", "llm", "counterfactual"]>>;
18
18
  /** How to extract patterns */
19
19
  patternExtractor: z.ZodDefault<z.ZodEnum<["llm", "text", "both"]>>;
20
+ /**
21
+ * G2: When `patternExtractor` (or `creditStrategy`) requests an LLM-backed
22
+ * path but no agent backend is wired (no `taskRunner`; e.g. `createAtlas`
23
+ * with no backend or CLI ingest), extraction/analysis degrades to the
24
+ * heuristic implementation. That degradation is always made LOUD (a
25
+ * once-per-run warning). When `strictExtraction` is ON, the degradation
26
+ * instead THROWS so misconfiguration is caught up front.
27
+ *
28
+ * Default OFF (warn, don't throw) so headless ingest still functions —
29
+ * autonomous LLM extraction genuinely requires a backend, so headless
30
+ * runs must be allowed to fall back to the heuristic extractor.
31
+ */
32
+ strictExtraction: z.ZodDefault<z.ZodBoolean>;
20
33
  /** Minimum trajectories before batch learning */
21
34
  minTrajectories: z.ZodDefault<z.ZodNumber>;
22
35
  /** Minimum hours since last batch learning */
@@ -27,22 +40,40 @@ export declare const LearningConfigSchema: z.ZodObject<{
27
40
  deduplicationThreshold: z.ZodDefault<z.ZodNumber>;
28
41
  /** Maximum experiences to keep during pruning (default: 1000) */
29
42
  maxExperiences: z.ZodDefault<z.ZodNumber>;
43
+ /**
44
+ * Additive-consolidation similarity threshold (0..1). Only consulted when
45
+ * `features.additiveConsolidation` is ON. A freshly distilled playbook is
46
+ * MERGED into an existing one instead of minting a new `distilled-<uuid>`
47
+ * when their embeddings-optional similarity (cosine when both embeddings
48
+ * exist, else lexical textSimilarity over strategy + situations) meets this
49
+ * threshold AND they share a domain. Default 0.55 — deliberately below the
50
+ * 0.9 write-time dedup threshold (which almost never fires for distinct
51
+ * distilled titles) so genuine same-family repeats actually compound, while
52
+ * the domain-overlap hard gate + this floor guard against cross-family
53
+ * over-merge. Lower → more aggressive merging (evidence compounds faster but
54
+ * risk of conflating distinct lessons); higher → closer to proliferation.
55
+ */
56
+ additiveMergeThreshold: z.ZodDefault<z.ZodNumber>;
30
57
  }, "strip", z.ZodTypeAny, {
31
58
  creditStrategy: "llm" | "simple" | "counterfactual";
32
- patternExtractor: "llm" | "both" | "text";
59
+ patternExtractor: "llm" | "text" | "both";
60
+ strictExtraction: boolean;
33
61
  minTrajectories: number;
34
62
  deduplicationThreshold: number;
35
63
  maxExperiences: number;
64
+ additiveMergeThreshold: number;
36
65
  minHoursSinceLast?: number | undefined;
37
66
  minSuccessRate?: number | undefined;
38
67
  }, {
39
68
  creditStrategy?: "llm" | "simple" | "counterfactual" | undefined;
40
- patternExtractor?: "llm" | "both" | "text" | undefined;
69
+ patternExtractor?: "llm" | "text" | "both" | undefined;
70
+ strictExtraction?: boolean | undefined;
41
71
  minTrajectories?: number | undefined;
42
72
  minHoursSinceLast?: number | undefined;
43
73
  minSuccessRate?: number | undefined;
44
74
  deduplicationThreshold?: number | undefined;
45
75
  maxExperiences?: number | undefined;
76
+ additiveMergeThreshold?: number | undefined;
46
77
  }>;
47
78
  export type LearningConfig = z.infer<typeof LearningConfigSchema>;
48
79
  /**
@@ -55,14 +86,32 @@ export declare const RouterConfigSchema: z.ZodObject<{
55
86
  useDomainRouting: z.ZodDefault<z.ZodBoolean>;
56
87
  /** Default search strategy */
57
88
  defaultStrategy: z.ZodDefault<z.ZodString>;
89
+ /**
90
+ * Difficulty-aware routing (G6). When ON, the router computes a general,
91
+ * domain-agnostic task-difficulty signal (`computeTaskDifficulty`) and:
92
+ * - routes HARD tasks to the expensive refinement/exemplar strategy with a
93
+ * deliberately LOWER `routing.confidence` (below `refinement
94
+ * .confidenceThreshold`, default 0.85) so they auto-enter the G1
95
+ * refinement loop;
96
+ * - routes EASY tasks to the cheap/direct path with higher confidence so
97
+ * they stay above the threshold and skip refinement;
98
+ * - sets the multi-objective `prefer` axis from difficulty (hard → quality,
99
+ * trivial → cheap) so the Pareto frontier query is actually exercised.
100
+ *
101
+ * Default ON (maintainer's call): degrades gracefully (no throw) when the
102
+ * frontier is cold or memory is empty.
103
+ */
104
+ difficultyAwareRouting: z.ZodDefault<z.ZodBoolean>;
58
105
  }, "strip", z.ZodTypeAny, {
59
106
  similarityThreshold: number;
60
107
  useDomainRouting: boolean;
61
108
  defaultStrategy: string;
109
+ difficultyAwareRouting: boolean;
62
110
  }, {
63
111
  similarityThreshold?: number | undefined;
64
112
  useDomainRouting?: boolean | undefined;
65
113
  defaultStrategy?: string | undefined;
114
+ difficultyAwareRouting?: boolean | undefined;
66
115
  }>;
67
116
  export type RouterConfig = z.infer<typeof RouterConfigSchema>;
68
117
  /**
@@ -104,6 +153,167 @@ export type MemoryCapacityConfig = z.infer<typeof MemoryCapacityConfigSchema>;
104
153
  /**
105
154
  * Memory retrieval configuration
106
155
  */
156
+ export declare const PlaybookRetrievalConfigSchema: z.ZodObject<{
157
+ /**
158
+ * Playbook retrieval implementation.
159
+ * - legacy: cognitive-core's existing PlaybookLibrary matcher.
160
+ * - skill-tree-hybrid: convert playbooks to skill-tree Skills and score with
161
+ * skill-tree's body-indexed hybrid scorer.
162
+ */
163
+ mode: z.ZodDefault<z.ZodEnum<["legacy", "skill-tree-hybrid"]>>;
164
+ /**
165
+ * Minimum retrieval score required before a playbook is injected, for LEXICAL
166
+ * (text-similarity) scoring. Lexical scores are sparse (~0.1 even for relevant
167
+ * matches), so this floor cannot separate signal from noise — embedding mode
168
+ * (`minScoreSemantic`) is what makes a meaningful floor possible. Serving
169
+ * relevance floor, separate from playbook confidence.
170
+ */
171
+ minScore: z.ZodDefault<z.ZodNumber>;
172
+ /**
173
+ * Relevance floor when SEMANTIC (embedding-cosine) scoring is active (an
174
+ * EmbeddingProvider attached via `setEmbeddingProvider`). Cosine scores are
175
+ * denser than lexical, so a real floor (default 0.35 — below the ~0.5 "high
176
+ * similarity" bar so relevant matches survive) rejects noise WITHOUT omitting
177
+ * relevant playbooks, unlike a raised lexical floor.
178
+ */
179
+ minScoreSemantic: z.ZodDefault<z.ZodNumber>;
180
+ /**
181
+ * Multiplier applied to the active floor on the GLOBAL (cross-domain) fallback
182
+ * retrieval — when a task's own domain has no playbooks and retrieval reaches
183
+ * across all domains, require a higher score (default 1.5×) so out-of-family
184
+ * playbooks need a strong match. Prevents cross-family negative transfer (see
185
+ * docs/runs/skillflow-playbook-ablation-3families-bedrock-haiku.md).
186
+ */
187
+ crossDomainFloorMultiplier: z.ZodDefault<z.ZodNumber>;
188
+ /**
189
+ * Fusion strategy for skill-tree-hybrid mode. RRF only changes ordering when
190
+ * a dense embedder is attached; BM25-only scoring remains available.
191
+ */
192
+ fusion: z.ZodDefault<z.ZodEnum<["weighted", "rrf"]>>;
193
+ /**
194
+ * How an injected playbook is rendered into the prompt (roadmap §4.3 / Exp 4):
195
+ * - `full`: the whole playbook (strategy + all tactics/steps). Default.
196
+ * - `sectioned`: strategy + only the tactics/steps whose text shares cues with
197
+ * the task. Lower token cost and less context interference for broad
198
+ * playbooks where only a subskill applies. Deterministic (no LLM); a no-op
199
+ * for already-atomic playbooks whose every tactic matches.
200
+ * (`refined`, an LLM task-specific rewrite, is a separate serve-time path and
201
+ * not selectable here yet.)
202
+ */
203
+ incorporation: z.ZodDefault<z.ZodEnum<["full", "sectioned"]>>;
204
+ }, "strip", z.ZodTypeAny, {
205
+ mode: "legacy" | "skill-tree-hybrid";
206
+ minScore: number;
207
+ minScoreSemantic: number;
208
+ crossDomainFloorMultiplier: number;
209
+ fusion: "weighted" | "rrf";
210
+ incorporation: "full" | "sectioned";
211
+ }, {
212
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
213
+ minScore?: number | undefined;
214
+ minScoreSemantic?: number | undefined;
215
+ crossDomainFloorMultiplier?: number | undefined;
216
+ fusion?: "weighted" | "rrf" | undefined;
217
+ incorporation?: "full" | "sectioned" | undefined;
218
+ }>;
219
+ export type PlaybookRetrievalConfig = z.infer<typeof PlaybookRetrievalConfigSchema>;
220
+ export declare const PlaybookApplicabilityConfigSchema: z.ZodObject<{
221
+ /**
222
+ * Opt-in serving gate that decides whether a retrieved playbook is specific
223
+ * enough to inject.
224
+ */
225
+ enabled: z.ZodDefault<z.ZodBoolean>;
226
+ /** Floor for matches that lack trigger/situation cues. */
227
+ minSpecificityScore: z.ZodDefault<z.ZodNumber>;
228
+ /** Stronger floor for cross-domain matches without trigger/situation cues. */
229
+ crossDomainMinScore: z.ZodDefault<z.ZodNumber>;
230
+ }, "strip", z.ZodTypeAny, {
231
+ enabled: boolean;
232
+ minSpecificityScore: number;
233
+ crossDomainMinScore: number;
234
+ }, {
235
+ enabled?: boolean | undefined;
236
+ minSpecificityScore?: number | undefined;
237
+ crossDomainMinScore?: number | undefined;
238
+ }>;
239
+ export type PlaybookApplicabilityConfig = z.infer<typeof PlaybookApplicabilityConfigSchema>;
240
+ export declare const ProceduralMemoryConfigSchema: z.ZodObject<{
241
+ /**
242
+ * Stable procedural-memory authority. `filesystem` (the default) makes
243
+ * `.atlas/playbooks/<slug>/SKILL.md` canonical for stable playbook content;
244
+ * SQLite remains the runtime cache and operational ledger (operational state
245
+ * mirrored to `.ccore/state.json` so the DB rebuilds from files). `sqlite`
246
+ * preserves the legacy behavior where SQLite rows are the source of truth —
247
+ * used by migration tooling and the SQLite-only-drift / migration tests,
248
+ * which opt back in via `source: "sqlite"` explicitly.
249
+ */
250
+ source: z.ZodDefault<z.ZodEnum<["sqlite", "filesystem"]>>;
251
+ /** Canonical procedural-memory directory, relative to storage.baseDir. */
252
+ dir: z.ZodDefault<z.ZodString>;
253
+ /** Fail startup on file-first warnings instead of continuing best-effort. */
254
+ strictStartup: z.ZodDefault<z.ZodBoolean>;
255
+ /** Future destructive cleanup switch; defaults off for hard migration safety. */
256
+ pruneSqliteOnly: z.ZodDefault<z.ZodBoolean>;
257
+ /**
258
+ * Reindex-on-edit cascade (§6.2). When on, a debounced file watcher over the
259
+ * canonical `playbooks/` tree picks up external `SKILL.md` edits (hand edits,
260
+ * `git pull`) live via a durable queue — no reboot needed. Off by default:
261
+ * short-lived eval/CLI runs don't need it (startup reindex covers them), and
262
+ * only long-lived servers benefit. Requires `source: "filesystem"`.
263
+ */
264
+ watch: z.ZodDefault<z.ZodBoolean>;
265
+ /** Coalescing window (ms) for a burst of file events before the cascade drains. */
266
+ watchDebounceMs: z.ZodDefault<z.ZodNumber>;
267
+ /**
268
+ * Poll for changes instead of native OS events. Needed on filesystems where
269
+ * native watching doesn't fire (NFS, Docker bind mounts, some CI). Off by
270
+ * default (native fsevents/inotify are cheaper).
271
+ */
272
+ watchUsePolling: z.ZodDefault<z.ZodBoolean>;
273
+ /** Poll interval (ms) when `watchUsePolling` is on. */
274
+ watchPollIntervalMs: z.ZodDefault<z.ZodNumber>;
275
+ /**
276
+ * Legacy Phase 3 bridge. Prefer `source: "filesystem"` for hard-authority
277
+ * migration; this remains for callers that only want mirroring.
278
+ */
279
+ structuralDualWrite: z.ZodDefault<z.ZodObject<{
280
+ enabled: z.ZodDefault<z.ZodBoolean>;
281
+ dir: z.ZodDefault<z.ZodString>;
282
+ }, "strip", z.ZodTypeAny, {
283
+ enabled: boolean;
284
+ dir: string;
285
+ }, {
286
+ enabled?: boolean | undefined;
287
+ dir?: string | undefined;
288
+ }>>;
289
+ }, "strip", z.ZodTypeAny, {
290
+ source: "sqlite" | "filesystem";
291
+ dir: string;
292
+ strictStartup: boolean;
293
+ pruneSqliteOnly: boolean;
294
+ watch: boolean;
295
+ watchDebounceMs: number;
296
+ watchUsePolling: boolean;
297
+ watchPollIntervalMs: number;
298
+ structuralDualWrite: {
299
+ enabled: boolean;
300
+ dir: string;
301
+ };
302
+ }, {
303
+ source?: "sqlite" | "filesystem" | undefined;
304
+ dir?: string | undefined;
305
+ strictStartup?: boolean | undefined;
306
+ pruneSqliteOnly?: boolean | undefined;
307
+ watch?: boolean | undefined;
308
+ watchDebounceMs?: number | undefined;
309
+ watchUsePolling?: boolean | undefined;
310
+ watchPollIntervalMs?: number | undefined;
311
+ structuralDualWrite?: {
312
+ enabled?: boolean | undefined;
313
+ dir?: string | undefined;
314
+ } | undefined;
315
+ }>;
316
+ export type ProceduralMemoryConfig = z.infer<typeof ProceduralMemoryConfigSchema>;
107
317
  export declare const MemoryConfigSchema: z.ZodObject<{
108
318
  /** Maximum experiences to retrieve */
109
319
  maxExperiences: z.ZodDefault<z.ZodNumber>;
@@ -148,6 +358,206 @@ export declare const MemoryConfigSchema: z.ZodObject<{
148
358
  autoPrune?: boolean | undefined;
149
359
  preserveDomainCoverage?: boolean | undefined;
150
360
  }>>;
361
+ /**
362
+ * Use the Pareto frontier to select playbooks when a signature has
363
+ * recorded outcomes, falling back to text-similarity matching otherwise.
364
+ *
365
+ * Default ON (G6, maintainer's call): the frontier path is headless-safe —
366
+ * a cold store (signature with no recorded outcomes / empty frontier) falls
367
+ * back to text-similarity matching inside `findMatchingFrontierAware`
368
+ * (`playbook.ts`), so enabling it never deadlocks or throws.
369
+ */
370
+ frontierRouting: z.ZodDefault<z.ZodBoolean>;
371
+ /**
372
+ * Whether failed trajectories may be injected as in-context EXEMPLARS
373
+ * (the experience-retrieval channel surfaced to the agent at solve time).
374
+ *
375
+ * This does NOT control whether failures are stored or learned from:
376
+ * failures always still feed reflexion episodes, playbook anti-patterns,
377
+ * causal edges, and error-pattern analysis. It only governs the imitation
378
+ * channel. Injecting raw failed trajectories as exemplars can anchor an
379
+ * agent to bad approaches — especially on imitation-heavy / procedural tasks
380
+ * (embodied, web nav) where the agent copies action sequences. Set to
381
+ * `false` for success-biased exemplar injection (the agent only sees
382
+ * trajectories that worked). Default `true` preserves prior behavior.
383
+ */
384
+ injectFailedExperiences: z.ZodDefault<z.ZodBoolean>;
385
+ /**
386
+ * On init, seed the (file-backed) MetaPlaybookBank from the committed
387
+ * `META_PLAYBOOK_SEEDS` — meta-level guidance that steers the
388
+ * analysis/extraction/maintenance agents. Idempotent: only seeds an empty
389
+ * bank, so learned refinements are never overwritten. Default `true`
390
+ * (cold-start default; set `false` for seed-free ablations).
391
+ */
392
+ seedMetaPlaybooks: z.ZodDefault<z.ZodBoolean>;
393
+ /**
394
+ * On init, seed MetaMemory with the committed `META_STRATEGY_SEEDS` routing
395
+ * priors so the router's meta-adjustment path is not inert on a cold store.
396
+ * Idempotent: only seeds when no strategies exist, so learned strategies and
397
+ * their evidence (EMA success rate) are never overwritten. Default `true`.
398
+ */
399
+ seedMetaStrategies: z.ZodDefault<z.ZodBoolean>;
400
+ /** Playbook serving/retrieval configuration. */
401
+ playbookRetrieval: z.ZodDefault<z.ZodObject<{
402
+ /**
403
+ * Playbook retrieval implementation.
404
+ * - legacy: cognitive-core's existing PlaybookLibrary matcher.
405
+ * - skill-tree-hybrid: convert playbooks to skill-tree Skills and score with
406
+ * skill-tree's body-indexed hybrid scorer.
407
+ */
408
+ mode: z.ZodDefault<z.ZodEnum<["legacy", "skill-tree-hybrid"]>>;
409
+ /**
410
+ * Minimum retrieval score required before a playbook is injected, for LEXICAL
411
+ * (text-similarity) scoring. Lexical scores are sparse (~0.1 even for relevant
412
+ * matches), so this floor cannot separate signal from noise — embedding mode
413
+ * (`minScoreSemantic`) is what makes a meaningful floor possible. Serving
414
+ * relevance floor, separate from playbook confidence.
415
+ */
416
+ minScore: z.ZodDefault<z.ZodNumber>;
417
+ /**
418
+ * Relevance floor when SEMANTIC (embedding-cosine) scoring is active (an
419
+ * EmbeddingProvider attached via `setEmbeddingProvider`). Cosine scores are
420
+ * denser than lexical, so a real floor (default 0.35 — below the ~0.5 "high
421
+ * similarity" bar so relevant matches survive) rejects noise WITHOUT omitting
422
+ * relevant playbooks, unlike a raised lexical floor.
423
+ */
424
+ minScoreSemantic: z.ZodDefault<z.ZodNumber>;
425
+ /**
426
+ * Multiplier applied to the active floor on the GLOBAL (cross-domain) fallback
427
+ * retrieval — when a task's own domain has no playbooks and retrieval reaches
428
+ * across all domains, require a higher score (default 1.5×) so out-of-family
429
+ * playbooks need a strong match. Prevents cross-family negative transfer (see
430
+ * docs/runs/skillflow-playbook-ablation-3families-bedrock-haiku.md).
431
+ */
432
+ crossDomainFloorMultiplier: z.ZodDefault<z.ZodNumber>;
433
+ /**
434
+ * Fusion strategy for skill-tree-hybrid mode. RRF only changes ordering when
435
+ * a dense embedder is attached; BM25-only scoring remains available.
436
+ */
437
+ fusion: z.ZodDefault<z.ZodEnum<["weighted", "rrf"]>>;
438
+ /**
439
+ * How an injected playbook is rendered into the prompt (roadmap §4.3 / Exp 4):
440
+ * - `full`: the whole playbook (strategy + all tactics/steps). Default.
441
+ * - `sectioned`: strategy + only the tactics/steps whose text shares cues with
442
+ * the task. Lower token cost and less context interference for broad
443
+ * playbooks where only a subskill applies. Deterministic (no LLM); a no-op
444
+ * for already-atomic playbooks whose every tactic matches.
445
+ * (`refined`, an LLM task-specific rewrite, is a separate serve-time path and
446
+ * not selectable here yet.)
447
+ */
448
+ incorporation: z.ZodDefault<z.ZodEnum<["full", "sectioned"]>>;
449
+ }, "strip", z.ZodTypeAny, {
450
+ mode: "legacy" | "skill-tree-hybrid";
451
+ minScore: number;
452
+ minScoreSemantic: number;
453
+ crossDomainFloorMultiplier: number;
454
+ fusion: "weighted" | "rrf";
455
+ incorporation: "full" | "sectioned";
456
+ }, {
457
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
458
+ minScore?: number | undefined;
459
+ minScoreSemantic?: number | undefined;
460
+ crossDomainFloorMultiplier?: number | undefined;
461
+ fusion?: "weighted" | "rrf" | undefined;
462
+ incorporation?: "full" | "sectioned" | undefined;
463
+ }>>;
464
+ /** Optional post-retrieval playbook applicability gate. */
465
+ playbookApplicability: z.ZodDefault<z.ZodObject<{
466
+ /**
467
+ * Opt-in serving gate that decides whether a retrieved playbook is specific
468
+ * enough to inject.
469
+ */
470
+ enabled: z.ZodDefault<z.ZodBoolean>;
471
+ /** Floor for matches that lack trigger/situation cues. */
472
+ minSpecificityScore: z.ZodDefault<z.ZodNumber>;
473
+ /** Stronger floor for cross-domain matches without trigger/situation cues. */
474
+ crossDomainMinScore: z.ZodDefault<z.ZodNumber>;
475
+ }, "strip", z.ZodTypeAny, {
476
+ enabled: boolean;
477
+ minSpecificityScore: number;
478
+ crossDomainMinScore: number;
479
+ }, {
480
+ enabled?: boolean | undefined;
481
+ minSpecificityScore?: number | undefined;
482
+ crossDomainMinScore?: number | undefined;
483
+ }>>;
484
+ /** Procedural-memory filesystem migration settings. */
485
+ proceduralMemory: z.ZodDefault<z.ZodObject<{
486
+ /**
487
+ * Stable procedural-memory authority. `filesystem` (the default) makes
488
+ * `.atlas/playbooks/<slug>/SKILL.md` canonical for stable playbook content;
489
+ * SQLite remains the runtime cache and operational ledger (operational state
490
+ * mirrored to `.ccore/state.json` so the DB rebuilds from files). `sqlite`
491
+ * preserves the legacy behavior where SQLite rows are the source of truth —
492
+ * used by migration tooling and the SQLite-only-drift / migration tests,
493
+ * which opt back in via `source: "sqlite"` explicitly.
494
+ */
495
+ source: z.ZodDefault<z.ZodEnum<["sqlite", "filesystem"]>>;
496
+ /** Canonical procedural-memory directory, relative to storage.baseDir. */
497
+ dir: z.ZodDefault<z.ZodString>;
498
+ /** Fail startup on file-first warnings instead of continuing best-effort. */
499
+ strictStartup: z.ZodDefault<z.ZodBoolean>;
500
+ /** Future destructive cleanup switch; defaults off for hard migration safety. */
501
+ pruneSqliteOnly: z.ZodDefault<z.ZodBoolean>;
502
+ /**
503
+ * Reindex-on-edit cascade (§6.2). When on, a debounced file watcher over the
504
+ * canonical `playbooks/` tree picks up external `SKILL.md` edits (hand edits,
505
+ * `git pull`) live via a durable queue — no reboot needed. Off by default:
506
+ * short-lived eval/CLI runs don't need it (startup reindex covers them), and
507
+ * only long-lived servers benefit. Requires `source: "filesystem"`.
508
+ */
509
+ watch: z.ZodDefault<z.ZodBoolean>;
510
+ /** Coalescing window (ms) for a burst of file events before the cascade drains. */
511
+ watchDebounceMs: z.ZodDefault<z.ZodNumber>;
512
+ /**
513
+ * Poll for changes instead of native OS events. Needed on filesystems where
514
+ * native watching doesn't fire (NFS, Docker bind mounts, some CI). Off by
515
+ * default (native fsevents/inotify are cheaper).
516
+ */
517
+ watchUsePolling: z.ZodDefault<z.ZodBoolean>;
518
+ /** Poll interval (ms) when `watchUsePolling` is on. */
519
+ watchPollIntervalMs: z.ZodDefault<z.ZodNumber>;
520
+ /**
521
+ * Legacy Phase 3 bridge. Prefer `source: "filesystem"` for hard-authority
522
+ * migration; this remains for callers that only want mirroring.
523
+ */
524
+ structuralDualWrite: z.ZodDefault<z.ZodObject<{
525
+ enabled: z.ZodDefault<z.ZodBoolean>;
526
+ dir: z.ZodDefault<z.ZodString>;
527
+ }, "strip", z.ZodTypeAny, {
528
+ enabled: boolean;
529
+ dir: string;
530
+ }, {
531
+ enabled?: boolean | undefined;
532
+ dir?: string | undefined;
533
+ }>>;
534
+ }, "strip", z.ZodTypeAny, {
535
+ source: "sqlite" | "filesystem";
536
+ dir: string;
537
+ strictStartup: boolean;
538
+ pruneSqliteOnly: boolean;
539
+ watch: boolean;
540
+ watchDebounceMs: number;
541
+ watchUsePolling: boolean;
542
+ watchPollIntervalMs: number;
543
+ structuralDualWrite: {
544
+ enabled: boolean;
545
+ dir: string;
546
+ };
547
+ }, {
548
+ source?: "sqlite" | "filesystem" | undefined;
549
+ dir?: string | undefined;
550
+ strictStartup?: boolean | undefined;
551
+ pruneSqliteOnly?: boolean | undefined;
552
+ watch?: boolean | undefined;
553
+ watchDebounceMs?: number | undefined;
554
+ watchUsePolling?: boolean | undefined;
555
+ watchPollIntervalMs?: number | undefined;
556
+ structuralDualWrite?: {
557
+ enabled?: boolean | undefined;
558
+ dir?: string | undefined;
559
+ } | undefined;
560
+ }>>;
151
561
  }, "strip", z.ZodTypeAny, {
152
562
  maxExperiences: number;
153
563
  maxStrategies: number;
@@ -163,6 +573,37 @@ export declare const MemoryConfigSchema: z.ZodObject<{
163
573
  autoPrune: boolean;
164
574
  preserveDomainCoverage: boolean;
165
575
  };
576
+ frontierRouting: boolean;
577
+ injectFailedExperiences: boolean;
578
+ seedMetaPlaybooks: boolean;
579
+ seedMetaStrategies: boolean;
580
+ playbookRetrieval: {
581
+ mode: "legacy" | "skill-tree-hybrid";
582
+ minScore: number;
583
+ minScoreSemantic: number;
584
+ crossDomainFloorMultiplier: number;
585
+ fusion: "weighted" | "rrf";
586
+ incorporation: "full" | "sectioned";
587
+ };
588
+ playbookApplicability: {
589
+ enabled: boolean;
590
+ minSpecificityScore: number;
591
+ crossDomainMinScore: number;
592
+ };
593
+ proceduralMemory: {
594
+ source: "sqlite" | "filesystem";
595
+ dir: string;
596
+ strictStartup: boolean;
597
+ pruneSqliteOnly: boolean;
598
+ watch: boolean;
599
+ watchDebounceMs: number;
600
+ watchUsePolling: boolean;
601
+ watchPollIntervalMs: number;
602
+ structuralDualWrite: {
603
+ enabled: boolean;
604
+ dir: string;
605
+ };
606
+ };
166
607
  }, {
167
608
  maxExperiences?: number | undefined;
168
609
  maxStrategies?: number | undefined;
@@ -178,6 +619,37 @@ export declare const MemoryConfigSchema: z.ZodObject<{
178
619
  autoPrune?: boolean | undefined;
179
620
  preserveDomainCoverage?: boolean | undefined;
180
621
  } | undefined;
622
+ frontierRouting?: boolean | undefined;
623
+ injectFailedExperiences?: boolean | undefined;
624
+ seedMetaPlaybooks?: boolean | undefined;
625
+ seedMetaStrategies?: boolean | undefined;
626
+ playbookRetrieval?: {
627
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
628
+ minScore?: number | undefined;
629
+ minScoreSemantic?: number | undefined;
630
+ crossDomainFloorMultiplier?: number | undefined;
631
+ fusion?: "weighted" | "rrf" | undefined;
632
+ incorporation?: "full" | "sectioned" | undefined;
633
+ } | undefined;
634
+ playbookApplicability?: {
635
+ enabled?: boolean | undefined;
636
+ minSpecificityScore?: number | undefined;
637
+ crossDomainMinScore?: number | undefined;
638
+ } | undefined;
639
+ proceduralMemory?: {
640
+ source?: "sqlite" | "filesystem" | undefined;
641
+ dir?: string | undefined;
642
+ strictStartup?: boolean | undefined;
643
+ pruneSqliteOnly?: boolean | undefined;
644
+ watch?: boolean | undefined;
645
+ watchDebounceMs?: number | undefined;
646
+ watchUsePolling?: boolean | undefined;
647
+ watchPollIntervalMs?: number | undefined;
648
+ structuralDualWrite?: {
649
+ enabled?: boolean | undefined;
650
+ dir?: string | undefined;
651
+ } | undefined;
652
+ } | undefined;
181
653
  }>;
182
654
  export type MemoryConfig = z.infer<typeof MemoryConfigSchema>;
183
655
  /**
@@ -306,9 +778,18 @@ export declare const RefinementConfigSchema: z.ZodObject<{
306
778
  useAgentEvaluation: z.ZodDefault<z.ZodBoolean>;
307
779
  /** Agent type to use for evaluation */
308
780
  evaluatorAgentType: z.ZodDefault<z.ZodString>;
309
- /** Confidence threshold below which to trigger refinement */
781
+ /**
782
+ * Confidence threshold below which to trigger refinement.
783
+ * Raised from 0.6 so refinement is reachable on normal routes — most
784
+ * routing decisions land below 0.85 confidence and should remain eligible
785
+ * for verifier-driven refinement.
786
+ */
310
787
  confidenceThreshold: z.ZodDefault<z.ZodNumber>;
311
- /** Routing strategies that should trigger refinement */
788
+ /**
789
+ * Routing strategies that should trigger refinement.
790
+ * Broadened to all four strategies (G1): a task can mis-execute on any
791
+ * route, including `direct`/`adapt`, so none are excluded by default.
792
+ */
312
793
  triggerOnStrategies: z.ZodDefault<z.ZodArray<z.ZodEnum<["explore", "fallback", "direct", "adapt"]>, "many">>;
313
794
  }, "strip", z.ZodTypeAny, {
314
795
  maxIterations: number;
@@ -336,14 +817,29 @@ export declare const SkillPromotionConfigSchema: z.ZodObject<{
336
817
  minSuccessCount: z.ZodDefault<z.ZodNumber>;
337
818
  /** Minimum success rate to promote */
338
819
  minSuccessRate: z.ZodDefault<z.ZodNumber>;
820
+ /**
821
+ * Eval-gate tier promotion (G5). When ON, a playbook must pass an
822
+ * eval gate IN ADDITION to the threshold criteria before it is
823
+ * promoted to a served tier.
824
+ *
825
+ * Default ON (maintainer's call): the default gate is Pareto-frontier
826
+ * dominance, which is headless-safe — it reuses already-built, no-LLM
827
+ * machinery and treats a playbook with no frontier history (first-ever
828
+ * / freshly-extracted) as non-dominated, so default-on gating never
829
+ * deadlocks. When a `PromotionJudge` (or `ReplayJudge`) is registered
830
+ * on the `SkillLibrary`, the stronger judge-based gate is used instead.
831
+ */
832
+ evalGate: z.ZodDefault<z.ZodBoolean>;
339
833
  }, "strip", z.ZodTypeAny, {
340
834
  minSuccessRate: number;
341
835
  minConfidence: number;
342
836
  minSuccessCount: number;
837
+ evalGate: boolean;
343
838
  }, {
344
839
  minSuccessRate?: number | undefined;
345
840
  minConfidence?: number | undefined;
346
841
  minSuccessCount?: number | undefined;
842
+ evalGate?: boolean | undefined;
347
843
  }>;
348
844
  export type SkillPromotionConfig = z.infer<typeof SkillPromotionConfigSchema>;
349
845
  /**
@@ -376,17 +872,25 @@ export declare const SkillContextConfigSchema: z.ZodObject<{
376
872
  includeRefinements: z.ZodDefault<z.ZodBoolean>;
377
873
  /** Include code examples in skill context */
378
874
  includeExamples: z.ZodDefault<z.ZodBoolean>;
875
+ /**
876
+ * G4: include a worked-trajectory exemplar (few-shot demonstration) in skill
877
+ * context when a playbook carries one. Default ON — a surfaced skill should
878
+ * carry the demonstration, not just rules ("demonstration > rules").
879
+ */
880
+ includeExemplar: z.ZodDefault<z.ZodBoolean>;
379
881
  /** Cache refresh interval in milliseconds (default: 5 minutes) */
380
882
  cacheRefreshInterval: z.ZodDefault<z.ZodNumber>;
381
883
  }, "strip", z.ZodTypeAny, {
382
884
  maxTokensForSkills: number;
383
885
  includeRefinements: boolean;
384
886
  includeExamples: boolean;
887
+ includeExemplar: boolean;
385
888
  cacheRefreshInterval: number;
386
889
  }, {
387
890
  maxTokensForSkills?: number | undefined;
388
891
  includeRefinements?: boolean | undefined;
389
892
  includeExamples?: boolean | undefined;
893
+ includeExemplar?: boolean | undefined;
390
894
  cacheRefreshInterval?: number | undefined;
391
895
  }>;
392
896
  export type SkillContextConfig = z.infer<typeof SkillContextConfigSchema>;
@@ -418,14 +922,29 @@ export declare const SkillLibraryConfigSchema: z.ZodObject<{
418
922
  minSuccessCount: z.ZodDefault<z.ZodNumber>;
419
923
  /** Minimum success rate to promote */
420
924
  minSuccessRate: z.ZodDefault<z.ZodNumber>;
925
+ /**
926
+ * Eval-gate tier promotion (G5). When ON, a playbook must pass an
927
+ * eval gate IN ADDITION to the threshold criteria before it is
928
+ * promoted to a served tier.
929
+ *
930
+ * Default ON (maintainer's call): the default gate is Pareto-frontier
931
+ * dominance, which is headless-safe — it reuses already-built, no-LLM
932
+ * machinery and treats a playbook with no frontier history (first-ever
933
+ * / freshly-extracted) as non-dominated, so default-on gating never
934
+ * deadlocks. When a `PromotionJudge` (or `ReplayJudge`) is registered
935
+ * on the `SkillLibrary`, the stronger judge-based gate is used instead.
936
+ */
937
+ evalGate: z.ZodDefault<z.ZodBoolean>;
421
938
  }, "strip", z.ZodTypeAny, {
422
939
  minSuccessRate: number;
423
940
  minConfidence: number;
424
941
  minSuccessCount: number;
942
+ evalGate: boolean;
425
943
  }, {
426
944
  minSuccessRate?: number | undefined;
427
945
  minConfidence?: number | undefined;
428
946
  minSuccessCount?: number | undefined;
947
+ evalGate?: boolean | undefined;
429
948
  }>>;
430
949
  /** Capacity limits */
431
950
  limits: z.ZodDefault<z.ZodObject<{
@@ -452,17 +971,25 @@ export declare const SkillLibraryConfigSchema: z.ZodObject<{
452
971
  includeRefinements: z.ZodDefault<z.ZodBoolean>;
453
972
  /** Include code examples in skill context */
454
973
  includeExamples: z.ZodDefault<z.ZodBoolean>;
974
+ /**
975
+ * G4: include a worked-trajectory exemplar (few-shot demonstration) in skill
976
+ * context when a playbook carries one. Default ON — a surfaced skill should
977
+ * carry the demonstration, not just rules ("demonstration > rules").
978
+ */
979
+ includeExemplar: z.ZodDefault<z.ZodBoolean>;
455
980
  /** Cache refresh interval in milliseconds (default: 5 minutes) */
456
981
  cacheRefreshInterval: z.ZodDefault<z.ZodNumber>;
457
982
  }, "strip", z.ZodTypeAny, {
458
983
  maxTokensForSkills: number;
459
984
  includeRefinements: boolean;
460
985
  includeExamples: boolean;
986
+ includeExemplar: boolean;
461
987
  cacheRefreshInterval: number;
462
988
  }, {
463
989
  maxTokensForSkills?: number | undefined;
464
990
  includeRefinements?: boolean | undefined;
465
991
  includeExamples?: boolean | undefined;
992
+ includeExemplar?: boolean | undefined;
466
993
  cacheRefreshInterval?: number | undefined;
467
994
  }>>;
468
995
  /** Demotion criteria */
@@ -478,17 +1005,83 @@ export declare const SkillLibraryConfigSchema: z.ZodObject<{
478
1005
  failureThreshold?: number | undefined;
479
1006
  minConfidenceToRetain?: number | undefined;
480
1007
  }>>;
1008
+ /** Contextual playbook retrieval for tiered skill surfacing. */
1009
+ retrieval: z.ZodDefault<z.ZodObject<{
1010
+ /**
1011
+ * Playbook retrieval implementation.
1012
+ * - legacy: cognitive-core's existing PlaybookLibrary matcher.
1013
+ * - skill-tree-hybrid: convert playbooks to skill-tree Skills and score with
1014
+ * skill-tree's body-indexed hybrid scorer.
1015
+ */
1016
+ mode: z.ZodDefault<z.ZodEnum<["legacy", "skill-tree-hybrid"]>>;
1017
+ /**
1018
+ * Minimum retrieval score required before a playbook is injected, for LEXICAL
1019
+ * (text-similarity) scoring. Lexical scores are sparse (~0.1 even for relevant
1020
+ * matches), so this floor cannot separate signal from noise — embedding mode
1021
+ * (`minScoreSemantic`) is what makes a meaningful floor possible. Serving
1022
+ * relevance floor, separate from playbook confidence.
1023
+ */
1024
+ minScore: z.ZodDefault<z.ZodNumber>;
1025
+ /**
1026
+ * Relevance floor when SEMANTIC (embedding-cosine) scoring is active (an
1027
+ * EmbeddingProvider attached via `setEmbeddingProvider`). Cosine scores are
1028
+ * denser than lexical, so a real floor (default 0.35 — below the ~0.5 "high
1029
+ * similarity" bar so relevant matches survive) rejects noise WITHOUT omitting
1030
+ * relevant playbooks, unlike a raised lexical floor.
1031
+ */
1032
+ minScoreSemantic: z.ZodDefault<z.ZodNumber>;
1033
+ /**
1034
+ * Multiplier applied to the active floor on the GLOBAL (cross-domain) fallback
1035
+ * retrieval — when a task's own domain has no playbooks and retrieval reaches
1036
+ * across all domains, require a higher score (default 1.5×) so out-of-family
1037
+ * playbooks need a strong match. Prevents cross-family negative transfer (see
1038
+ * docs/runs/skillflow-playbook-ablation-3families-bedrock-haiku.md).
1039
+ */
1040
+ crossDomainFloorMultiplier: z.ZodDefault<z.ZodNumber>;
1041
+ /**
1042
+ * Fusion strategy for skill-tree-hybrid mode. RRF only changes ordering when
1043
+ * a dense embedder is attached; BM25-only scoring remains available.
1044
+ */
1045
+ fusion: z.ZodDefault<z.ZodEnum<["weighted", "rrf"]>>;
1046
+ /**
1047
+ * How an injected playbook is rendered into the prompt (roadmap §4.3 / Exp 4):
1048
+ * - `full`: the whole playbook (strategy + all tactics/steps). Default.
1049
+ * - `sectioned`: strategy + only the tactics/steps whose text shares cues with
1050
+ * the task. Lower token cost and less context interference for broad
1051
+ * playbooks where only a subskill applies. Deterministic (no LLM); a no-op
1052
+ * for already-atomic playbooks whose every tactic matches.
1053
+ * (`refined`, an LLM task-specific rewrite, is a separate serve-time path and
1054
+ * not selectable here yet.)
1055
+ */
1056
+ incorporation: z.ZodDefault<z.ZodEnum<["full", "sectioned"]>>;
1057
+ }, "strip", z.ZodTypeAny, {
1058
+ mode: "legacy" | "skill-tree-hybrid";
1059
+ minScore: number;
1060
+ minScoreSemantic: number;
1061
+ crossDomainFloorMultiplier: number;
1062
+ fusion: "weighted" | "rrf";
1063
+ incorporation: "full" | "sectioned";
1064
+ }, {
1065
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
1066
+ minScore?: number | undefined;
1067
+ minScoreSemantic?: number | undefined;
1068
+ crossDomainFloorMultiplier?: number | undefined;
1069
+ fusion?: "weighted" | "rrf" | undefined;
1070
+ incorporation?: "full" | "sectioned" | undefined;
1071
+ }>>;
481
1072
  }, "strip", z.ZodTypeAny, {
482
1073
  context: {
483
1074
  maxTokensForSkills: number;
484
1075
  includeRefinements: boolean;
485
1076
  includeExamples: boolean;
1077
+ includeExemplar: boolean;
486
1078
  cacheRefreshInterval: number;
487
1079
  };
488
1080
  promotion: {
489
1081
  minSuccessRate: number;
490
1082
  minConfidence: number;
491
1083
  minSuccessCount: number;
1084
+ evalGate: boolean;
492
1085
  };
493
1086
  limits: {
494
1087
  maxCoreSkills: number;
@@ -499,17 +1092,27 @@ export declare const SkillLibraryConfigSchema: z.ZodObject<{
499
1092
  failureThreshold: number;
500
1093
  minConfidenceToRetain: number;
501
1094
  };
1095
+ retrieval: {
1096
+ mode: "legacy" | "skill-tree-hybrid";
1097
+ minScore: number;
1098
+ minScoreSemantic: number;
1099
+ crossDomainFloorMultiplier: number;
1100
+ fusion: "weighted" | "rrf";
1101
+ incorporation: "full" | "sectioned";
1102
+ };
502
1103
  }, {
503
1104
  context?: {
504
1105
  maxTokensForSkills?: number | undefined;
505
1106
  includeRefinements?: boolean | undefined;
506
1107
  includeExamples?: boolean | undefined;
1108
+ includeExemplar?: boolean | undefined;
507
1109
  cacheRefreshInterval?: number | undefined;
508
1110
  } | undefined;
509
1111
  promotion?: {
510
1112
  minSuccessRate?: number | undefined;
511
1113
  minConfidence?: number | undefined;
512
1114
  minSuccessCount?: number | undefined;
1115
+ evalGate?: boolean | undefined;
513
1116
  } | undefined;
514
1117
  limits?: {
515
1118
  maxCoreSkills?: number | undefined;
@@ -520,6 +1123,14 @@ export declare const SkillLibraryConfigSchema: z.ZodObject<{
520
1123
  failureThreshold?: number | undefined;
521
1124
  minConfidenceToRetain?: number | undefined;
522
1125
  } | undefined;
1126
+ retrieval?: {
1127
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
1128
+ minScore?: number | undefined;
1129
+ minScoreSemantic?: number | undefined;
1130
+ crossDomainFloorMultiplier?: number | undefined;
1131
+ fusion?: "weighted" | "rrf" | undefined;
1132
+ incorporation?: "full" | "sectioned" | undefined;
1133
+ } | undefined;
523
1134
  }>;
524
1135
  export type SkillLibraryConfig = z.infer<typeof SkillLibraryConfigSchema>;
525
1136
  /**
@@ -536,11 +1147,14 @@ export declare const AgenticTaskRunnerConfigSchema: z.ZodObject<{
536
1147
  staleWorkspaceMaxAgeMs: z.ZodDefault<z.ZodNumber>;
537
1148
  /** Base directory for workspaces (defaults to os.tmpdir()) */
538
1149
  workspaceBaseDir: z.ZodOptional<z.ZodString>;
1150
+ /** Always run the workspace agent for playbook extraction when a runner exists. */
1151
+ forceAgenticPlaybookExtraction: z.ZodDefault<z.ZodBoolean>;
539
1152
  }, "strip", z.ZodTypeAny, {
540
1153
  cleanupWorkspaces: boolean;
541
1154
  keepFailedWorkspaces: boolean;
542
1155
  maxConcurrentAgents: number;
543
1156
  staleWorkspaceMaxAgeMs: number;
1157
+ forceAgenticPlaybookExtraction: boolean;
544
1158
  workspaceBaseDir?: string | undefined;
545
1159
  }, {
546
1160
  cleanupWorkspaces?: boolean | undefined;
@@ -548,6 +1162,7 @@ export declare const AgenticTaskRunnerConfigSchema: z.ZodObject<{
548
1162
  maxConcurrentAgents?: number | undefined;
549
1163
  staleWorkspaceMaxAgeMs?: number | undefined;
550
1164
  workspaceBaseDir?: string | undefined;
1165
+ forceAgenticPlaybookExtraction?: boolean | undefined;
551
1166
  }>;
552
1167
  export type AgenticTaskRunnerConfig = z.infer<typeof AgenticTaskRunnerConfigSchema>;
553
1168
  /**
@@ -590,127 +1205,6 @@ export declare const MCPServerConfigSchema: z.ZodObject<{
590
1205
  enableDomainFiltering?: boolean | undefined;
591
1206
  }>;
592
1207
  export type MCPServerConfig = z.infer<typeof MCPServerConfigSchema>;
593
- /**
594
- * Compression configuration for team trajectory ingestion
595
- */
596
- export declare const CompressionConfigSchema: z.ZodObject<{
597
- /** Maximum tokens per agent after compression */
598
- maxTokensPerAgent: z.ZodDefault<z.ZodNumber>;
599
- /** Preserve interaction boundary steps at full fidelity */
600
- preserveInteractionBoundaries: z.ZodDefault<z.ZodBoolean>;
601
- /** Minimum consecutive non-key steps before folding */
602
- foldThreshold: z.ZodDefault<z.ZodNumber>;
603
- /** Maximum ratio of steps to mark as critical */
604
- maxCriticalRatio: z.ZodDefault<z.ZodNumber>;
605
- /** Score threshold for critical steps */
606
- criticalStepThreshold: z.ZodDefault<z.ZodNumber>;
607
- /** Score threshold for critical interactions */
608
- criticalInteractionThreshold: z.ZodDefault<z.ZodNumber>;
609
- }, "strip", z.ZodTypeAny, {
610
- maxTokensPerAgent: number;
611
- preserveInteractionBoundaries: boolean;
612
- foldThreshold: number;
613
- maxCriticalRatio: number;
614
- criticalStepThreshold: number;
615
- criticalInteractionThreshold: number;
616
- }, {
617
- maxTokensPerAgent?: number | undefined;
618
- preserveInteractionBoundaries?: boolean | undefined;
619
- foldThreshold?: number | undefined;
620
- maxCriticalRatio?: number | undefined;
621
- criticalStepThreshold?: number | undefined;
622
- criticalInteractionThreshold?: number | undefined;
623
- }>;
624
- export type CompressionConfig = z.infer<typeof CompressionConfigSchema>;
625
- /**
626
- * Team-aware learning configuration
627
- */
628
- export declare const TeamLearningConfigSchema: z.ZodObject<{
629
- /** Enable team-aware learning */
630
- enabled: z.ZodDefault<z.ZodBoolean>;
631
- /** Minimum team trajectories before batch learning */
632
- minTeamTrajectories: z.ZodDefault<z.ZodNumber>;
633
- /** Similarity threshold for team playbook deduplication */
634
- deduplicationThreshold: z.ZodDefault<z.ZodNumber>;
635
- /** Weight of structural metrics in analysis (0 = ignore, 1 = metrics only) */
636
- metricsWeight: z.ZodDefault<z.ZodNumber>;
637
- /** Maximum team experiences to store */
638
- maxTeamExperiences: z.ZodDefault<z.ZodNumber>;
639
- /** Maximum team playbooks to store */
640
- maxTeamPlaybooks: z.ZodDefault<z.ZodNumber>;
641
- /** Maximum role playbooks to store */
642
- maxRolePlaybooks: z.ZodDefault<z.ZodNumber>;
643
- /** Analysis agent timeout in milliseconds */
644
- analysisTimeout: z.ZodDefault<z.ZodNumber>;
645
- /** Extraction agent timeout in milliseconds */
646
- extractionTimeout: z.ZodDefault<z.ZodNumber>;
647
- /** Compression settings for trajectory ingestion */
648
- compression: z.ZodDefault<z.ZodObject<{
649
- /** Maximum tokens per agent after compression */
650
- maxTokensPerAgent: z.ZodDefault<z.ZodNumber>;
651
- /** Preserve interaction boundary steps at full fidelity */
652
- preserveInteractionBoundaries: z.ZodDefault<z.ZodBoolean>;
653
- /** Minimum consecutive non-key steps before folding */
654
- foldThreshold: z.ZodDefault<z.ZodNumber>;
655
- /** Maximum ratio of steps to mark as critical */
656
- maxCriticalRatio: z.ZodDefault<z.ZodNumber>;
657
- /** Score threshold for critical steps */
658
- criticalStepThreshold: z.ZodDefault<z.ZodNumber>;
659
- /** Score threshold for critical interactions */
660
- criticalInteractionThreshold: z.ZodDefault<z.ZodNumber>;
661
- }, "strip", z.ZodTypeAny, {
662
- maxTokensPerAgent: number;
663
- preserveInteractionBoundaries: boolean;
664
- foldThreshold: number;
665
- maxCriticalRatio: number;
666
- criticalStepThreshold: number;
667
- criticalInteractionThreshold: number;
668
- }, {
669
- maxTokensPerAgent?: number | undefined;
670
- preserveInteractionBoundaries?: boolean | undefined;
671
- foldThreshold?: number | undefined;
672
- maxCriticalRatio?: number | undefined;
673
- criticalStepThreshold?: number | undefined;
674
- criticalInteractionThreshold?: number | undefined;
675
- }>>;
676
- }, "strip", z.ZodTypeAny, {
677
- enabled: boolean;
678
- deduplicationThreshold: number;
679
- minTeamTrajectories: number;
680
- metricsWeight: number;
681
- maxTeamExperiences: number;
682
- maxTeamPlaybooks: number;
683
- maxRolePlaybooks: number;
684
- analysisTimeout: number;
685
- extractionTimeout: number;
686
- compression: {
687
- maxTokensPerAgent: number;
688
- preserveInteractionBoundaries: boolean;
689
- foldThreshold: number;
690
- maxCriticalRatio: number;
691
- criticalStepThreshold: number;
692
- criticalInteractionThreshold: number;
693
- };
694
- }, {
695
- enabled?: boolean | undefined;
696
- deduplicationThreshold?: number | undefined;
697
- minTeamTrajectories?: number | undefined;
698
- metricsWeight?: number | undefined;
699
- maxTeamExperiences?: number | undefined;
700
- maxTeamPlaybooks?: number | undefined;
701
- maxRolePlaybooks?: number | undefined;
702
- analysisTimeout?: number | undefined;
703
- extractionTimeout?: number | undefined;
704
- compression?: {
705
- maxTokensPerAgent?: number | undefined;
706
- preserveInteractionBoundaries?: boolean | undefined;
707
- foldThreshold?: number | undefined;
708
- maxCriticalRatio?: number | undefined;
709
- criticalStepThreshold?: number | undefined;
710
- criticalInteractionThreshold?: number | undefined;
711
- } | undefined;
712
- }>;
713
- export type TeamLearningConfig = z.infer<typeof TeamLearningConfigSchema>;
714
1208
  /**
715
1209
  * Knowledge Bank confidence model configuration
716
1210
  */
@@ -747,38 +1241,6 @@ export declare const ConfidenceConfigSchema: z.ZodObject<{
747
1241
  decayGracePeriodDays?: number | undefined;
748
1242
  }>;
749
1243
  export type ConfidenceConfig = z.infer<typeof ConfidenceConfigSchema>;
750
- /**
751
- * Knowledge Bank graph overlay configuration
752
- */
753
- export declare const GraphConfigSchema: z.ZodObject<{
754
- /** Which graph layers to enable */
755
- enabledLayers: z.ZodDefault<z.ZodArray<z.ZodEnum<["semantic", "temporal", "causal", "entity"]>, "many">>;
756
- /** Whether to auto-infer temporal edges from timestamps */
757
- inferTemporalEdges: z.ZodDefault<z.ZodBoolean>;
758
- /** Whether to auto-infer causal edges from failure-recovery patterns */
759
- inferCausalEdges: z.ZodDefault<z.ZodBoolean>;
760
- /** Whether to auto-infer entity edges from shared entity tags */
761
- inferEntityEdges: z.ZodDefault<z.ZodBoolean>;
762
- /** Split layer files by domain when node count exceeds this */
763
- domainSplitThreshold: z.ZodDefault<z.ZodNumber>;
764
- /** Promote to SQLite when total edge count exceeds this */
765
- sqlitePromotionThreshold: z.ZodDefault<z.ZodNumber>;
766
- }, "strip", z.ZodTypeAny, {
767
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
768
- inferTemporalEdges: boolean;
769
- inferCausalEdges: boolean;
770
- inferEntityEdges: boolean;
771
- domainSplitThreshold: number;
772
- sqlitePromotionThreshold: number;
773
- }, {
774
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
775
- inferTemporalEdges?: boolean | undefined;
776
- inferCausalEdges?: boolean | undefined;
777
- inferEntityEdges?: boolean | undefined;
778
- domainSplitThreshold?: number | undefined;
779
- sqlitePromotionThreshold?: number | undefined;
780
- }>;
781
- export type GraphConfigType = z.infer<typeof GraphConfigSchema>;
782
1244
  /**
783
1245
  * Knowledge Bank defragmentation configuration
784
1246
  */
@@ -787,6 +1249,20 @@ export declare const DefragConfigSchema: z.ZodObject<{
787
1249
  minInboxItems: z.ZodDefault<z.ZodNumber>;
788
1250
  /** Whether to auto-consolidate observations into entities */
789
1251
  autoConsolidate: z.ZodDefault<z.ZodBoolean>;
1252
+ /**
1253
+ * How consolidation builds entity notes:
1254
+ * - `off`: skip consolidation entirely (atomic facts only).
1255
+ * - `index`: entity notes are lightweight records — canonical name + links to
1256
+ * the atomic fact notes mentioning the entity, NO duplicated fact bodies.
1257
+ * Used as a retrieval boost anchor (see getRelevantKnowledge). Default.
1258
+ * - `content`: legacy behavior — concatenate truncated fact bodies into the
1259
+ * entity note (retained for back-compat).
1260
+ *
1261
+ * `autoConsolidate: false` forces `off` regardless of this value.
1262
+ * Optional at the type level for back-compat with hand-built configs; the
1263
+ * KnowledgeDefragmenter treats `undefined` as `index`.
1264
+ */
1265
+ consolidationMode: z.ZodOptional<z.ZodEnum<["off", "index", "content"]>>;
790
1266
  /** Minimum observations about an entity before consolidation */
791
1267
  consolidationThreshold: z.ZodDefault<z.ZodNumber>;
792
1268
  /** Whether to auto-regenerate domain summaries */
@@ -795,6 +1271,20 @@ export declare const DefragConfigSchema: z.ZodObject<{
795
1271
  llmSummaryGeneration: z.ZodDefault<z.ZodBoolean>;
796
1272
  /** Whether to auto-resolve simple contradictions */
797
1273
  autoResolveContradictions: z.ZodDefault<z.ZodBoolean>;
1274
+ /**
1275
+ * Run the pairwise contradiction-detection sweep during defrag. This is O(n²)
1276
+ * within a domain, so for large single-domain stores (e.g. a long conversation
1277
+ * where every fact shares one domain) it is expensive and low-value. Optional;
1278
+ * the KnowledgeDefragmenter treats `undefined` as enabled (back-compat). Set
1279
+ * false to skip. See DESIGN-memory-extraction-add-only.md (WS1c).
1280
+ */
1281
+ contradictionScan: z.ZodOptional<z.ZodBoolean>;
1282
+ /**
1283
+ * Hard cap on observations-per-domain considered by the contradiction sweep;
1284
+ * beyond this the sweep is skipped for that domain to bound cost. `undefined`
1285
+ * → default cap (see KnowledgeDefragmenter).
1286
+ */
1287
+ contradictionScanMaxNotes: z.ZodOptional<z.ZodNumber>;
798
1288
  }, "strip", z.ZodTypeAny, {
799
1289
  minInboxItems: number;
800
1290
  autoConsolidate: boolean;
@@ -802,13 +1292,19 @@ export declare const DefragConfigSchema: z.ZodObject<{
802
1292
  autoRegenerateSummaries: boolean;
803
1293
  llmSummaryGeneration: boolean;
804
1294
  autoResolveContradictions: boolean;
1295
+ consolidationMode?: "content" | "off" | "index" | undefined;
1296
+ contradictionScan?: boolean | undefined;
1297
+ contradictionScanMaxNotes?: number | undefined;
805
1298
  }, {
806
1299
  minInboxItems?: number | undefined;
807
1300
  autoConsolidate?: boolean | undefined;
1301
+ consolidationMode?: "content" | "off" | "index" | undefined;
808
1302
  consolidationThreshold?: number | undefined;
809
1303
  autoRegenerateSummaries?: boolean | undefined;
810
1304
  llmSummaryGeneration?: boolean | undefined;
811
1305
  autoResolveContradictions?: boolean | undefined;
1306
+ contradictionScan?: boolean | undefined;
1307
+ contradictionScanMaxNotes?: number | undefined;
812
1308
  }>;
813
1309
  export type DefragConfig = z.infer<typeof DefragConfigSchema>;
814
1310
  /**
@@ -847,6 +1343,13 @@ export declare const KnowledgeSurfacingConfigSchema: z.ZodObject<{
847
1343
  includeEvidence: z.ZodDefault<z.ZodBoolean>;
848
1344
  /** Include graph links in surfaced notes */
849
1345
  includeLinks: z.ZodDefault<z.ZodBoolean>;
1346
+ /**
1347
+ * Additive score boost applied to atomic fact notes that are linked from an
1348
+ * entity record matching the query (index-mode consolidation). Entity records
1349
+ * themselves are NOT injected as content — they act purely as ranking anchors.
1350
+ * Optional; getRelevantKnowledge treats `undefined` as 0.15.
1351
+ */
1352
+ entityBoostWeight: z.ZodOptional<z.ZodNumber>;
850
1353
  }, "strip", z.ZodTypeAny, {
851
1354
  includeDomainSummaries: boolean;
852
1355
  includeEntityNotes: boolean;
@@ -854,6 +1357,7 @@ export declare const KnowledgeSurfacingConfigSchema: z.ZodObject<{
854
1357
  maxTokensForKnowledge: number;
855
1358
  includeEvidence: boolean;
856
1359
  includeLinks: boolean;
1360
+ entityBoostWeight?: number | undefined;
857
1361
  }, {
858
1362
  includeDomainSummaries?: boolean | undefined;
859
1363
  includeEntityNotes?: boolean | undefined;
@@ -861,6 +1365,7 @@ export declare const KnowledgeSurfacingConfigSchema: z.ZodObject<{
861
1365
  maxTokensForKnowledge?: number | undefined;
862
1366
  includeEvidence?: boolean | undefined;
863
1367
  includeLinks?: boolean | undefined;
1368
+ entityBoostWeight?: number | undefined;
864
1369
  }>;
865
1370
  export type KnowledgeSurfacingConfig = z.infer<typeof KnowledgeSurfacingConfigSchema>;
866
1371
  /**
@@ -894,6 +1399,20 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
894
1399
  minInboxItems: z.ZodDefault<z.ZodNumber>;
895
1400
  /** Whether to auto-consolidate observations into entities */
896
1401
  autoConsolidate: z.ZodDefault<z.ZodBoolean>;
1402
+ /**
1403
+ * How consolidation builds entity notes:
1404
+ * - `off`: skip consolidation entirely (atomic facts only).
1405
+ * - `index`: entity notes are lightweight records — canonical name + links to
1406
+ * the atomic fact notes mentioning the entity, NO duplicated fact bodies.
1407
+ * Used as a retrieval boost anchor (see getRelevantKnowledge). Default.
1408
+ * - `content`: legacy behavior — concatenate truncated fact bodies into the
1409
+ * entity note (retained for back-compat).
1410
+ *
1411
+ * `autoConsolidate: false` forces `off` regardless of this value.
1412
+ * Optional at the type level for back-compat with hand-built configs; the
1413
+ * KnowledgeDefragmenter treats `undefined` as `index`.
1414
+ */
1415
+ consolidationMode: z.ZodOptional<z.ZodEnum<["off", "index", "content"]>>;
897
1416
  /** Minimum observations about an entity before consolidation */
898
1417
  consolidationThreshold: z.ZodDefault<z.ZodNumber>;
899
1418
  /** Whether to auto-regenerate domain summaries */
@@ -902,6 +1421,20 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
902
1421
  llmSummaryGeneration: z.ZodDefault<z.ZodBoolean>;
903
1422
  /** Whether to auto-resolve simple contradictions */
904
1423
  autoResolveContradictions: z.ZodDefault<z.ZodBoolean>;
1424
+ /**
1425
+ * Run the pairwise contradiction-detection sweep during defrag. This is O(n²)
1426
+ * within a domain, so for large single-domain stores (e.g. a long conversation
1427
+ * where every fact shares one domain) it is expensive and low-value. Optional;
1428
+ * the KnowledgeDefragmenter treats `undefined` as enabled (back-compat). Set
1429
+ * false to skip. See DESIGN-memory-extraction-add-only.md (WS1c).
1430
+ */
1431
+ contradictionScan: z.ZodOptional<z.ZodBoolean>;
1432
+ /**
1433
+ * Hard cap on observations-per-domain considered by the contradiction sweep;
1434
+ * beyond this the sweep is skipped for that domain to bound cost. `undefined`
1435
+ * → default cap (see KnowledgeDefragmenter).
1436
+ */
1437
+ contradictionScanMaxNotes: z.ZodOptional<z.ZodNumber>;
905
1438
  }, "strip", z.ZodTypeAny, {
906
1439
  minInboxItems: number;
907
1440
  autoConsolidate: boolean;
@@ -909,13 +1442,19 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
909
1442
  autoRegenerateSummaries: boolean;
910
1443
  llmSummaryGeneration: boolean;
911
1444
  autoResolveContradictions: boolean;
1445
+ consolidationMode?: "content" | "off" | "index" | undefined;
1446
+ contradictionScan?: boolean | undefined;
1447
+ contradictionScanMaxNotes?: number | undefined;
912
1448
  }, {
913
1449
  minInboxItems?: number | undefined;
914
1450
  autoConsolidate?: boolean | undefined;
1451
+ consolidationMode?: "content" | "off" | "index" | undefined;
915
1452
  consolidationThreshold?: number | undefined;
916
1453
  autoRegenerateSummaries?: boolean | undefined;
917
1454
  llmSummaryGeneration?: boolean | undefined;
918
1455
  autoResolveContradictions?: boolean | undefined;
1456
+ contradictionScan?: boolean | undefined;
1457
+ contradictionScanMaxNotes?: number | undefined;
919
1458
  }>>;
920
1459
  /** Confidence model config */
921
1460
  confidence: z.ZodDefault<z.ZodObject<{
@@ -950,35 +1489,6 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
950
1489
  staleThreshold?: number | undefined;
951
1490
  decayGracePeriodDays?: number | undefined;
952
1491
  }>>;
953
- /** Graph overlay config */
954
- graph: z.ZodDefault<z.ZodObject<{
955
- /** Which graph layers to enable */
956
- enabledLayers: z.ZodDefault<z.ZodArray<z.ZodEnum<["semantic", "temporal", "causal", "entity"]>, "many">>;
957
- /** Whether to auto-infer temporal edges from timestamps */
958
- inferTemporalEdges: z.ZodDefault<z.ZodBoolean>;
959
- /** Whether to auto-infer causal edges from failure-recovery patterns */
960
- inferCausalEdges: z.ZodDefault<z.ZodBoolean>;
961
- /** Whether to auto-infer entity edges from shared entity tags */
962
- inferEntityEdges: z.ZodDefault<z.ZodBoolean>;
963
- /** Split layer files by domain when node count exceeds this */
964
- domainSplitThreshold: z.ZodDefault<z.ZodNumber>;
965
- /** Promote to SQLite when total edge count exceeds this */
966
- sqlitePromotionThreshold: z.ZodDefault<z.ZodNumber>;
967
- }, "strip", z.ZodTypeAny, {
968
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
969
- inferTemporalEdges: boolean;
970
- inferCausalEdges: boolean;
971
- inferEntityEdges: boolean;
972
- domainSplitThreshold: number;
973
- sqlitePromotionThreshold: number;
974
- }, {
975
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
976
- inferTemporalEdges?: boolean | undefined;
977
- inferCausalEdges?: boolean | undefined;
978
- inferEntityEdges?: boolean | undefined;
979
- domainSplitThreshold?: number | undefined;
980
- sqlitePromotionThreshold?: number | undefined;
981
- }>>;
982
1492
  /** Surfacing config (independent from SkillLibrary) */
983
1493
  surfacing: z.ZodDefault<z.ZodObject<{
984
1494
  /** Include domain summaries in task context */
@@ -993,6 +1503,13 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
993
1503
  includeEvidence: z.ZodDefault<z.ZodBoolean>;
994
1504
  /** Include graph links in surfaced notes */
995
1505
  includeLinks: z.ZodDefault<z.ZodBoolean>;
1506
+ /**
1507
+ * Additive score boost applied to atomic fact notes that are linked from an
1508
+ * entity record matching the query (index-mode consolidation). Entity records
1509
+ * themselves are NOT injected as content — they act purely as ranking anchors.
1510
+ * Optional; getRelevantKnowledge treats `undefined` as 0.15.
1511
+ */
1512
+ entityBoostWeight: z.ZodOptional<z.ZodNumber>;
996
1513
  }, "strip", z.ZodTypeAny, {
997
1514
  includeDomainSummaries: boolean;
998
1515
  includeEntityNotes: boolean;
@@ -1000,6 +1517,7 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1000
1517
  maxTokensForKnowledge: number;
1001
1518
  includeEvidence: boolean;
1002
1519
  includeLinks: boolean;
1520
+ entityBoostWeight?: number | undefined;
1003
1521
  }, {
1004
1522
  includeDomainSummaries?: boolean | undefined;
1005
1523
  includeEntityNotes?: boolean | undefined;
@@ -1007,6 +1525,7 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1007
1525
  maxTokensForKnowledge?: number | undefined;
1008
1526
  includeEvidence?: boolean | undefined;
1009
1527
  includeLinks?: boolean | undefined;
1528
+ entityBoostWeight?: number | undefined;
1010
1529
  }>>;
1011
1530
  /** Whether to manage minimem-specific features (sync, versioning) */
1012
1531
  minimemAware: z.ZodDefault<z.ZodBoolean>;
@@ -1023,14 +1542,6 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1023
1542
  decayGracePeriodDays: number;
1024
1543
  };
1025
1544
  enabled: boolean;
1026
- graph: {
1027
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
1028
- inferTemporalEdges: boolean;
1029
- inferCausalEdges: boolean;
1030
- inferEntityEdges: boolean;
1031
- domainSplitThreshold: number;
1032
- sqlitePromotionThreshold: number;
1033
- };
1034
1545
  memoryDir: string;
1035
1546
  extraction: {
1036
1547
  enabled: boolean;
@@ -1044,6 +1555,9 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1044
1555
  autoRegenerateSummaries: boolean;
1045
1556
  llmSummaryGeneration: boolean;
1046
1557
  autoResolveContradictions: boolean;
1558
+ consolidationMode?: "content" | "off" | "index" | undefined;
1559
+ contradictionScan?: boolean | undefined;
1560
+ contradictionScanMaxNotes?: number | undefined;
1047
1561
  };
1048
1562
  surfacing: {
1049
1563
  includeDomainSummaries: boolean;
@@ -1052,6 +1566,7 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1052
1566
  maxTokensForKnowledge: number;
1053
1567
  includeEvidence: boolean;
1054
1568
  includeLinks: boolean;
1569
+ entityBoostWeight?: number | undefined;
1055
1570
  };
1056
1571
  minimemAware: boolean;
1057
1572
  coherenceChecking: boolean;
@@ -1066,14 +1581,6 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1066
1581
  decayGracePeriodDays?: number | undefined;
1067
1582
  } | undefined;
1068
1583
  enabled?: boolean | undefined;
1069
- graph?: {
1070
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
1071
- inferTemporalEdges?: boolean | undefined;
1072
- inferCausalEdges?: boolean | undefined;
1073
- inferEntityEdges?: boolean | undefined;
1074
- domainSplitThreshold?: number | undefined;
1075
- sqlitePromotionThreshold?: number | undefined;
1076
- } | undefined;
1077
1584
  memoryDir?: string | undefined;
1078
1585
  extraction?: {
1079
1586
  enabled?: boolean | undefined;
@@ -1083,10 +1590,13 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1083
1590
  defrag?: {
1084
1591
  minInboxItems?: number | undefined;
1085
1592
  autoConsolidate?: boolean | undefined;
1593
+ consolidationMode?: "content" | "off" | "index" | undefined;
1086
1594
  consolidationThreshold?: number | undefined;
1087
1595
  autoRegenerateSummaries?: boolean | undefined;
1088
1596
  llmSummaryGeneration?: boolean | undefined;
1089
1597
  autoResolveContradictions?: boolean | undefined;
1598
+ contradictionScan?: boolean | undefined;
1599
+ contradictionScanMaxNotes?: number | undefined;
1090
1600
  } | undefined;
1091
1601
  surfacing?: {
1092
1602
  includeDomainSummaries?: boolean | undefined;
@@ -1095,6 +1605,7 @@ export declare const KnowledgeBankConfigSchema: z.ZodObject<{
1095
1605
  maxTokensForKnowledge?: number | undefined;
1096
1606
  includeEvidence?: boolean | undefined;
1097
1607
  includeLinks?: boolean | undefined;
1608
+ entityBoostWeight?: number | undefined;
1098
1609
  } | undefined;
1099
1610
  minimemAware?: boolean | undefined;
1100
1611
  coherenceChecking?: boolean | undefined;
@@ -1135,17 +1646,72 @@ export type SessionBankConfig = z.infer<typeof SessionBankConfigSchema>;
1135
1646
  /**
1136
1647
  * Skill-tree storage configuration
1137
1648
  */
1649
+ export declare const SharedSkillBankConfigSchema: z.ZodObject<{
1650
+ /**
1651
+ * Mirror published (graduated) playbooks into a shared skill-tree
1652
+ * filesystem bank so consumers outside this Atlas instance (openswarm's
1653
+ * SkillProvider, Claude Code skill loaders, peer tools) can read them
1654
+ * without an openhive materialization bridge. Off by default: writing to a
1655
+ * machine-global bank is an explicit opt-in (CLI `--shared-bank` /
1656
+ * `COGCORE_SHARED_SKILL_BANK`).
1657
+ */
1658
+ enabled: z.ZodDefault<z.ZodBoolean>;
1659
+ /**
1660
+ * Bank base path (skill-tree `storage.basePath`; skills land under
1661
+ * `<path>/.skilltree/skills/<id>/SKILL.md`). Defaults to the ecosystem's
1662
+ * conventional shared bank `~/.skill-tree` when omitted.
1663
+ */
1664
+ path: z.ZodOptional<z.ZodString>;
1665
+ }, "strip", z.ZodTypeAny, {
1666
+ enabled: boolean;
1667
+ path?: string | undefined;
1668
+ }, {
1669
+ path?: string | undefined;
1670
+ enabled?: boolean | undefined;
1671
+ }>;
1138
1672
  export declare const SkillTreeConfigSchema: z.ZodObject<{
1139
1673
  /** Enable automatic skill-tree publishing via SqliteStorageAdapter */
1140
1674
  enabled: z.ZodDefault<z.ZodBoolean>;
1141
1675
  /** Path to the SQLite database for skill storage (relative to storage.baseDir) */
1142
1676
  dbPath: z.ZodDefault<z.ZodString>;
1677
+ /** Optional mirror of published skills into a shared filesystem bank. */
1678
+ sharedBank: z.ZodDefault<z.ZodObject<{
1679
+ /**
1680
+ * Mirror published (graduated) playbooks into a shared skill-tree
1681
+ * filesystem bank so consumers outside this Atlas instance (openswarm's
1682
+ * SkillProvider, Claude Code skill loaders, peer tools) can read them
1683
+ * without an openhive materialization bridge. Off by default: writing to a
1684
+ * machine-global bank is an explicit opt-in (CLI `--shared-bank` /
1685
+ * `COGCORE_SHARED_SKILL_BANK`).
1686
+ */
1687
+ enabled: z.ZodDefault<z.ZodBoolean>;
1688
+ /**
1689
+ * Bank base path (skill-tree `storage.basePath`; skills land under
1690
+ * `<path>/.skilltree/skills/<id>/SKILL.md`). Defaults to the ecosystem's
1691
+ * conventional shared bank `~/.skill-tree` when omitted.
1692
+ */
1693
+ path: z.ZodOptional<z.ZodString>;
1694
+ }, "strip", z.ZodTypeAny, {
1695
+ enabled: boolean;
1696
+ path?: string | undefined;
1697
+ }, {
1698
+ path?: string | undefined;
1699
+ enabled?: boolean | undefined;
1700
+ }>>;
1143
1701
  }, "strip", z.ZodTypeAny, {
1144
1702
  enabled: boolean;
1145
1703
  dbPath: string;
1704
+ sharedBank: {
1705
+ enabled: boolean;
1706
+ path?: string | undefined;
1707
+ };
1146
1708
  }, {
1147
1709
  enabled?: boolean | undefined;
1148
1710
  dbPath?: string | undefined;
1711
+ sharedBank?: {
1712
+ path?: string | undefined;
1713
+ enabled?: boolean | undefined;
1714
+ } | undefined;
1149
1715
  }>;
1150
1716
  /**
1151
1717
  * Curated playbook cache configuration (for git sources)
@@ -1167,7 +1733,13 @@ export type CuratedCacheConfig = z.infer<typeof CuratedCacheConfigSchema>;
1167
1733
  * Curated playbook configuration
1168
1734
  */
1169
1735
  export declare const CuratedPlaybooksConfigSchema: z.ZodObject<{
1170
- /** Load the bundled compound-engineering seed pack on init */
1736
+ /**
1737
+ * Load the bundled seed packs (compound-engineering + agent-ops) on init.
1738
+ * Cold-start semantics: bundled packs only seed an EMPTY playbook library
1739
+ * (mirrors the meta-playbook seed idempotency), so a warm store is never
1740
+ * retro-seeded on upgrade. `recreateOnInit` bypasses the empty check.
1741
+ * Default `true`; evals that must stay seed-free set this to `false`.
1742
+ */
1171
1743
  loadBundledSeedPack: z.ZodDefault<z.ZodBoolean>;
1172
1744
  /** Additional directories to load curated playbooks from (backward compat) */
1173
1745
  additionalDirs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -1225,34 +1797,413 @@ export type SkillTreeConfig = z.infer<typeof SkillTreeConfigSchema>;
1225
1797
  * without removing them from the codebase.
1226
1798
  */
1227
1799
  export declare const FeaturesConfigSchema: z.ZodObject<{
1228
- /** Enable instant (hot-path) learning on every trajectory (InstantLoop) */
1229
- instantLoop: z.ZodDefault<z.ZodBoolean>;
1230
1800
  /** Enable reflexion episode generation and storage */
1231
1801
  reflexion: z.ZodDefault<z.ZodBoolean>;
1232
1802
  /** Enable coherence checking on knowledge note insertion */
1233
1803
  coherenceChecking: z.ZodDefault<z.ZodBoolean>;
1234
- /** Enable experience clustering via ReasoningBank in batch pipeline */
1235
- reasoningBank: z.ZodDefault<z.ZodBoolean>;
1236
- /** Enable causal edge extraction in instant loop */
1237
- causalExtraction: z.ZodDefault<z.ZodBoolean>;
1238
1804
  /** Enable temporal compression (Hot/Warm/Cold/Evict) in batch pipeline */
1239
1805
  temporalCompression: z.ZodDefault<z.ZodBoolean>;
1806
+ /**
1807
+ * Dual-write every processed trajectory to the durable `dream_queue` table
1808
+ * (Phase A of the dreaming refactor). Write-only substrate: nothing drains it
1809
+ * yet, so this does not change learning behavior. Default on so the queue is
1810
+ * populated and ready for the decoupled `dream()` consumer (Phase B).
1811
+ */
1812
+ dreamQueue: z.ZodDefault<z.ZodBoolean>;
1813
+ /**
1814
+ * Roll each dream-time effectiveness annotation into a per-(scope, family,
1815
+ * solver) lift cell (`lift_cells` table, scope 'production') — the
1816
+ * treatment-effect companion to the eval difficulty registry. Write-only
1817
+ * (no core consumer; read by `cogcore eval lift-report`), one cheap upsert
1818
+ * per annotated trajectory, dream-time only. Default on.
1819
+ */
1820
+ liftTracking: z.ZodDefault<z.ZodBoolean>;
1821
+ /**
1822
+ * Enable Pareto-frontier merge proposing in the maintenance loop.
1823
+ * On by default, but self-gating: it only runs once a ReplayJudge is
1824
+ * available (bound via `setLearningProvider` for an LLM judge, or
1825
+ * `enableLiveReplayGating` for a live judge). With no judge it no-ops, so
1826
+ * headless / provider-less setups are unaffected.
1827
+ */
1828
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
1829
+ /**
1830
+ * Enable single-parent reflective playbook mutation in the maintenance
1831
+ * loop. On by default, but self-gating: it only runs once BOTH an LLM
1832
+ * provider (the generator, via `setLearningProvider`) and a ReplayJudge
1833
+ * are available. With neither it no-ops.
1834
+ */
1835
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
1836
+ /**
1837
+ * Force lexical retrieval (Jaccard+trigram textSimilarity) even when an
1838
+ * embedding provider is attached. Default false: when a provider is set,
1839
+ * retrieval scores by vector cosine (semantic). Set true to ablate
1840
+ * semantic vs. lexical — corresponds to E5 ablation arm `lexical-retrieval`.
1841
+ */
1842
+ lexicalRetrieval: z.ZodDefault<z.ZodBoolean>;
1843
+ /**
1844
+ * Enable write-time curation (PR-D2): near-dup merge on add(), helpfulness
1845
+ * counters, prune pass in maintenance, helpfulness-weighted injection re-rank.
1846
+ * Default true. Set false to restore append-only behavior (ablation arm
1847
+ * `append-only`).
1848
+ */
1849
+ curation: z.ZodDefault<z.ZodBoolean>;
1850
+ /**
1851
+ * Surface applicability conditions (situations + antiPatterns) at injection
1852
+ * time so the agent sees "Apply when:" / "Do NOT apply when:" alongside the
1853
+ * strategy and tactics. Default true — this is the fix. Set false to
1854
+ * reproduce old behavior (ablation arm: no-applicability-injection).
1855
+ */
1856
+ injectApplicability: z.ZodDefault<z.ZodBoolean>;
1857
+ /**
1858
+ * Use embedding cosine similarity for anti-pattern exclusion at retrieval
1859
+ * time when an embedding provider is attached. Default true. When false,
1860
+ * falls back to the legacy lexical textSimilarity > 0.7 guard.
1861
+ */
1862
+ semanticAntiPatterns: z.ZodDefault<z.ZodBoolean>;
1863
+ /**
1864
+ * F6: Update playbook helpful/harmful counters via INJECTION-PRESENCE +
1865
+ * TASK OUTCOME (relevance-weighted), rather than lexical usage detection.
1866
+ *
1867
+ * When true (default), for each task solve with injected playbooks, each
1868
+ * playbook's successCount/failureCount is incremented by its relevance
1869
+ * share (score_i / sum(score_j)) times the task outcome. This fixes the
1870
+ * curation loop for DISTILLED playbooks whose abstract tactics never
1871
+ * lexically match concrete actions, so wasUsed was always false and counters
1872
+ * never updated.
1873
+ *
1874
+ * When false, falls back to the old wasUsed-gated recordSuccess/recordFailure
1875
+ * path (lexical usage detection; ablation arm).
1876
+ *
1877
+ * Default true (this is the fix).
1878
+ */
1879
+ injectionPresenceCredit: z.ZodDefault<z.ZodBoolean>;
1880
+ /**
1881
+ * ADDITIVE LEARNING (default ON as of 2026-07-06). When ON, procedural-memory
1882
+ * consolidation REFINES/REUSES existing playbooks instead of minting a unique
1883
+ * `distilled-<uuid>` per trajectory:
1884
+ * FIX 1 — at dream distill time, a freshly distilled playbook that is
1885
+ * sufficiently similar (see `learning.additiveMergeThreshold`) to an
1886
+ * existing one (this-batch OR library) is merged into it (append
1887
+ * createdFrom, fold guidance/anti-patterns, accumulate counters, bump
1888
+ * version) rather than added as a new row.
1889
+ * FIX 2 — each solve records a frontier/live outcome for the playbooks
1890
+ * that were actually INJECTED (served set), so reused playbooks
1891
+ * accumulate frontier rows aligned with hybrid retrieval — not just the
1892
+ * legacy 0.3 lexical instant-loop match — feeding a non-sparse mutation
1893
+ * gate.
1894
+ * Set `false` (eval `--no-additive`) to restore the legacy "proliferating"
1895
+ * behavior (a new unique `distilled-<uuid>` per trajectory) for A/B arms.
1896
+ */
1897
+ additiveConsolidation: z.ZodDefault<z.ZodBoolean>;
1898
+ /**
1899
+ * F5: Emit a USE-TIME relevance-gating instruction alongside injected
1900
+ * candidate playbooks, telling the agent to self-filter against the
1901
+ * "Apply when:" / "Do NOT apply when:" conditions before using any
1902
+ * candidate. Only emitted when there is ≥1 candidate playbook AND
1903
+ * injectApplicability is on.
1904
+ *
1905
+ * Default true. Set false to reproduce old behavior (ablation arm:
1906
+ * no-relevance-gating).
1907
+ */
1908
+ relevanceGating: z.ZodDefault<z.ZodBoolean>;
1240
1909
  }, "strip", z.ZodTypeAny, {
1241
1910
  coherenceChecking: boolean;
1242
- instantLoop: boolean;
1243
1911
  reflexion: boolean;
1244
- reasoningBank: boolean;
1245
- causalExtraction: boolean;
1246
1912
  temporalCompression: boolean;
1913
+ dreamQueue: boolean;
1914
+ liftTracking: boolean;
1915
+ mergeProposing: boolean;
1916
+ reflectiveMutation: boolean;
1917
+ lexicalRetrieval: boolean;
1918
+ curation: boolean;
1919
+ injectApplicability: boolean;
1920
+ semanticAntiPatterns: boolean;
1921
+ injectionPresenceCredit: boolean;
1922
+ additiveConsolidation: boolean;
1923
+ relevanceGating: boolean;
1247
1924
  }, {
1248
1925
  coherenceChecking?: boolean | undefined;
1249
- instantLoop?: boolean | undefined;
1250
1926
  reflexion?: boolean | undefined;
1251
- reasoningBank?: boolean | undefined;
1252
- causalExtraction?: boolean | undefined;
1253
1927
  temporalCompression?: boolean | undefined;
1928
+ dreamQueue?: boolean | undefined;
1929
+ liftTracking?: boolean | undefined;
1930
+ mergeProposing?: boolean | undefined;
1931
+ reflectiveMutation?: boolean | undefined;
1932
+ lexicalRetrieval?: boolean | undefined;
1933
+ curation?: boolean | undefined;
1934
+ injectApplicability?: boolean | undefined;
1935
+ semanticAntiPatterns?: boolean | undefined;
1936
+ injectionPresenceCredit?: boolean | undefined;
1937
+ additiveConsolidation?: boolean | undefined;
1938
+ relevanceGating?: boolean | undefined;
1254
1939
  }>;
1255
1940
  export type FeaturesConfig = z.infer<typeof FeaturesConfigSchema>;
1941
+ /**
1942
+ * Dreaming / consolidation configuration.
1943
+ *
1944
+ * Controls when and how accumulated trajectories are consolidated. Learning is
1945
+ * always decoupled: consolidation happens only via `dream()` — explicitly, on a
1946
+ * schedule, or at close.
1947
+ */
1948
+ export declare const DreamSchedulerConfigSchema: z.ZodObject<{
1949
+ /** Arm an in-process idle timer that dreams after `idleMs` of no activity. */
1950
+ enabled: z.ZodDefault<z.ZodBoolean>;
1951
+ /** Idle debounce before an auto-dream fires (ms). */
1952
+ idleMs: z.ZodDefault<z.ZodNumber>;
1953
+ }, "strip", z.ZodTypeAny, {
1954
+ enabled: boolean;
1955
+ idleMs: number;
1956
+ }, {
1957
+ enabled?: boolean | undefined;
1958
+ idleMs?: number | undefined;
1959
+ }>;
1960
+ export declare const DreamConfigSchema: z.ZodObject<{
1961
+ /** After each solve/process call, run a dream synchronously (eval determinism). */
1962
+ consolidateInline: z.ZodDefault<z.ZodBoolean>;
1963
+ /** Pending-row count at/above which the coordinator considers a dream due. */
1964
+ countThreshold: z.ZodDefault<z.ZodNumber>;
1965
+ /** Oldest-pending age at/above which a dream is considered overdue (ms). */
1966
+ maxStalenessMs: z.ZodDefault<z.ZodNumber>;
1967
+ /** Max rows claimed per internal batch within a single dream. */
1968
+ maxRowsPerDream: z.ZodDefault<z.ZodNumber>;
1969
+ /** Max internal batches a single dream will drain before stopping. */
1970
+ maxBatchesPerDream: z.ZodDefault<z.ZodNumber>;
1971
+ /** Row lease TTL while a dream holds claimed rows (ms). */
1972
+ leaseTtlMs: z.ZodDefault<z.ZodNumber>;
1973
+ /** Attempts before a repeatedly-failing row is parked as `failed`. */
1974
+ maxAttempts: z.ZodDefault<z.ZodNumber>;
1975
+ /** In-process idle scheduler. */
1976
+ scheduler: z.ZodDefault<z.ZodObject<{
1977
+ /** Arm an in-process idle timer that dreams after `idleMs` of no activity. */
1978
+ enabled: z.ZodDefault<z.ZodBoolean>;
1979
+ /** Idle debounce before an auto-dream fires (ms). */
1980
+ idleMs: z.ZodDefault<z.ZodNumber>;
1981
+ }, "strip", z.ZodTypeAny, {
1982
+ enabled: boolean;
1983
+ idleMs: number;
1984
+ }, {
1985
+ enabled?: boolean | undefined;
1986
+ idleMs?: number | undefined;
1987
+ }>>;
1988
+ }, "strip", z.ZodTypeAny, {
1989
+ consolidateInline: boolean;
1990
+ countThreshold: number;
1991
+ maxStalenessMs: number;
1992
+ maxRowsPerDream: number;
1993
+ maxBatchesPerDream: number;
1994
+ leaseTtlMs: number;
1995
+ maxAttempts: number;
1996
+ scheduler: {
1997
+ enabled: boolean;
1998
+ idleMs: number;
1999
+ };
2000
+ }, {
2001
+ consolidateInline?: boolean | undefined;
2002
+ countThreshold?: number | undefined;
2003
+ maxStalenessMs?: number | undefined;
2004
+ maxRowsPerDream?: number | undefined;
2005
+ maxBatchesPerDream?: number | undefined;
2006
+ leaseTtlMs?: number | undefined;
2007
+ maxAttempts?: number | undefined;
2008
+ scheduler?: {
2009
+ enabled?: boolean | undefined;
2010
+ idleMs?: number | undefined;
2011
+ } | undefined;
2012
+ }>;
2013
+ export type DreamConfig = z.infer<typeof DreamConfigSchema>;
2014
+ /**
2015
+ * Validation control plane for mechanism/eval runs.
2016
+ *
2017
+ * This is intentionally separate from production feature flags. Validation
2018
+ * arms need to isolate retrieval, serving, write, and maintenance behavior
2019
+ * without silently changing the default runtime.
2020
+ */
2021
+ export declare const ValidationRetrievalChannelSchema: z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>;
2022
+ export type ValidationRetrievalChannel = z.infer<typeof ValidationRetrievalChannelSchema>;
2023
+ export declare const ValidationWriteChannelSchema: z.ZodEnum<["experience", "knowledgeNote", "playbook", "metaPlaybook", "reflexion", "causal", "frontier", "diagnosticOnly"]>;
2024
+ export type ValidationWriteChannel = z.infer<typeof ValidationWriteChannelSchema>;
2025
+ export declare const ValidationMutationModeSchema: z.ZodEnum<["frozen", "active", "candidate"]>;
2026
+ export type ValidationMutationMode = z.infer<typeof ValidationMutationModeSchema>;
2027
+ export declare const ValidationMaintenanceMaskSchema: z.ZodObject<{
2028
+ /** Write-time curation and prune maintenance. */
2029
+ curation: z.ZodDefault<z.ZodBoolean>;
2030
+ /** Pareto/replay-gated two-parent merge proposals. */
2031
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
2032
+ /** Single-parent reflective mutation proposals. */
2033
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
2034
+ /** Dream/batch extraction may create new learned artifacts. */
2035
+ extraction: z.ZodDefault<z.ZodBoolean>;
2036
+ /** Scheduler-driven maintenance/dream runs. */
2037
+ scheduling: z.ZodDefault<z.ZodBoolean>;
2038
+ }, "strip", z.ZodTypeAny, {
2039
+ extraction: boolean;
2040
+ mergeProposing: boolean;
2041
+ reflectiveMutation: boolean;
2042
+ curation: boolean;
2043
+ scheduling: boolean;
2044
+ }, {
2045
+ extraction?: boolean | undefined;
2046
+ mergeProposing?: boolean | undefined;
2047
+ reflectiveMutation?: boolean | undefined;
2048
+ curation?: boolean | undefined;
2049
+ scheduling?: boolean | undefined;
2050
+ }>;
2051
+ export type ValidationMaintenanceMask = z.infer<typeof ValidationMaintenanceMaskSchema>;
2052
+ export declare const ValidationChannelMasksSchema: z.ZodObject<{
2053
+ retrieval: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
2054
+ serving: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
2055
+ write: z.ZodDefault<z.ZodArray<z.ZodEnum<["experience", "knowledgeNote", "playbook", "metaPlaybook", "reflexion", "causal", "frontier", "diagnosticOnly"]>, "many">>;
2056
+ maintenance: z.ZodDefault<z.ZodObject<{
2057
+ /** Write-time curation and prune maintenance. */
2058
+ curation: z.ZodDefault<z.ZodBoolean>;
2059
+ /** Pareto/replay-gated two-parent merge proposals. */
2060
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
2061
+ /** Single-parent reflective mutation proposals. */
2062
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
2063
+ /** Dream/batch extraction may create new learned artifacts. */
2064
+ extraction: z.ZodDefault<z.ZodBoolean>;
2065
+ /** Scheduler-driven maintenance/dream runs. */
2066
+ scheduling: z.ZodDefault<z.ZodBoolean>;
2067
+ }, "strip", z.ZodTypeAny, {
2068
+ extraction: boolean;
2069
+ mergeProposing: boolean;
2070
+ reflectiveMutation: boolean;
2071
+ curation: boolean;
2072
+ scheduling: boolean;
2073
+ }, {
2074
+ extraction?: boolean | undefined;
2075
+ mergeProposing?: boolean | undefined;
2076
+ reflectiveMutation?: boolean | undefined;
2077
+ curation?: boolean | undefined;
2078
+ scheduling?: boolean | undefined;
2079
+ }>>;
2080
+ }, "strip", z.ZodTypeAny, {
2081
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2082
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2083
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
2084
+ maintenance: {
2085
+ extraction: boolean;
2086
+ mergeProposing: boolean;
2087
+ reflectiveMutation: boolean;
2088
+ curation: boolean;
2089
+ scheduling: boolean;
2090
+ };
2091
+ }, {
2092
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2093
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2094
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
2095
+ maintenance?: {
2096
+ extraction?: boolean | undefined;
2097
+ mergeProposing?: boolean | undefined;
2098
+ reflectiveMutation?: boolean | undefined;
2099
+ curation?: boolean | undefined;
2100
+ scheduling?: boolean | undefined;
2101
+ } | undefined;
2102
+ }>;
2103
+ export type ValidationChannelMasks = z.infer<typeof ValidationChannelMasksSchema>;
2104
+ export declare const ValidationConfigSchema: z.ZodObject<{
2105
+ /** Enable validation-specific isolation controls. Production default is off. */
2106
+ enabled: z.ZodDefault<z.ZodBoolean>;
2107
+ /**
2108
+ * active: existing direct-commit behavior.
2109
+ * frozen: no mutation/merge/curation writes during validation.
2110
+ * candidate: proposals are redirected to non-serving candidates (future work).
2111
+ */
2112
+ mutationMode: z.ZodDefault<z.ZodEnum<["frozen", "active", "candidate"]>>;
2113
+ channelMasks: z.ZodDefault<z.ZodObject<{
2114
+ retrieval: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
2115
+ serving: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
2116
+ write: z.ZodDefault<z.ZodArray<z.ZodEnum<["experience", "knowledgeNote", "playbook", "metaPlaybook", "reflexion", "causal", "frontier", "diagnosticOnly"]>, "many">>;
2117
+ maintenance: z.ZodDefault<z.ZodObject<{
2118
+ /** Write-time curation and prune maintenance. */
2119
+ curation: z.ZodDefault<z.ZodBoolean>;
2120
+ /** Pareto/replay-gated two-parent merge proposals. */
2121
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
2122
+ /** Single-parent reflective mutation proposals. */
2123
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
2124
+ /** Dream/batch extraction may create new learned artifacts. */
2125
+ extraction: z.ZodDefault<z.ZodBoolean>;
2126
+ /** Scheduler-driven maintenance/dream runs. */
2127
+ scheduling: z.ZodDefault<z.ZodBoolean>;
2128
+ }, "strip", z.ZodTypeAny, {
2129
+ extraction: boolean;
2130
+ mergeProposing: boolean;
2131
+ reflectiveMutation: boolean;
2132
+ curation: boolean;
2133
+ scheduling: boolean;
2134
+ }, {
2135
+ extraction?: boolean | undefined;
2136
+ mergeProposing?: boolean | undefined;
2137
+ reflectiveMutation?: boolean | undefined;
2138
+ curation?: boolean | undefined;
2139
+ scheduling?: boolean | undefined;
2140
+ }>>;
2141
+ }, "strip", z.ZodTypeAny, {
2142
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2143
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2144
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
2145
+ maintenance: {
2146
+ extraction: boolean;
2147
+ mergeProposing: boolean;
2148
+ reflectiveMutation: boolean;
2149
+ curation: boolean;
2150
+ scheduling: boolean;
2151
+ };
2152
+ }, {
2153
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2154
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2155
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
2156
+ maintenance?: {
2157
+ extraction?: boolean | undefined;
2158
+ mergeProposing?: boolean | undefined;
2159
+ reflectiveMutation?: boolean | undefined;
2160
+ curation?: boolean | undefined;
2161
+ scheduling?: boolean | undefined;
2162
+ } | undefined;
2163
+ }>>;
2164
+ /**
2165
+ * Permit cold-start seeding (bundled playbook pack, meta-playbook seeds,
2166
+ * meta-strategy priors) under validation. Default false: validation runs
2167
+ * start from an explicitly-controlled memory state. The seed-lift A/B
2168
+ * (Phase 1 of the seed co-optimization loop) sets this true on the seeded
2169
+ * arm so the committed seeds are the *measured variable* rather than an
2170
+ * uncontrolled confound.
2171
+ */
2172
+ allowSeeds: z.ZodDefault<z.ZodBoolean>;
2173
+ }, "strip", z.ZodTypeAny, {
2174
+ enabled: boolean;
2175
+ mutationMode: "frozen" | "active" | "candidate";
2176
+ channelMasks: {
2177
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2178
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
2179
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
2180
+ maintenance: {
2181
+ extraction: boolean;
2182
+ mergeProposing: boolean;
2183
+ reflectiveMutation: boolean;
2184
+ curation: boolean;
2185
+ scheduling: boolean;
2186
+ };
2187
+ };
2188
+ allowSeeds: boolean;
2189
+ }, {
2190
+ enabled?: boolean | undefined;
2191
+ mutationMode?: "frozen" | "active" | "candidate" | undefined;
2192
+ channelMasks?: {
2193
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2194
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
2195
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
2196
+ maintenance?: {
2197
+ extraction?: boolean | undefined;
2198
+ mergeProposing?: boolean | undefined;
2199
+ reflectiveMutation?: boolean | undefined;
2200
+ curation?: boolean | undefined;
2201
+ scheduling?: boolean | undefined;
2202
+ } | undefined;
2203
+ } | undefined;
2204
+ allowSeeds?: boolean | undefined;
2205
+ }>;
2206
+ export type ValidationConfig = z.infer<typeof ValidationConfigSchema>;
1256
2207
  /**
1257
2208
  * Main Atlas configuration
1258
2209
  */
@@ -1263,6 +2214,19 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1263
2214
  creditStrategy: z.ZodDefault<z.ZodEnum<["simple", "llm", "counterfactual"]>>;
1264
2215
  /** How to extract patterns */
1265
2216
  patternExtractor: z.ZodDefault<z.ZodEnum<["llm", "text", "both"]>>;
2217
+ /**
2218
+ * G2: When `patternExtractor` (or `creditStrategy`) requests an LLM-backed
2219
+ * path but no agent backend is wired (no `taskRunner`; e.g. `createAtlas`
2220
+ * with no backend or CLI ingest), extraction/analysis degrades to the
2221
+ * heuristic implementation. That degradation is always made LOUD (a
2222
+ * once-per-run warning). When `strictExtraction` is ON, the degradation
2223
+ * instead THROWS so misconfiguration is caught up front.
2224
+ *
2225
+ * Default OFF (warn, don't throw) so headless ingest still functions —
2226
+ * autonomous LLM extraction genuinely requires a backend, so headless
2227
+ * runs must be allowed to fall back to the heuristic extractor.
2228
+ */
2229
+ strictExtraction: z.ZodDefault<z.ZodBoolean>;
1266
2230
  /** Minimum trajectories before batch learning */
1267
2231
  minTrajectories: z.ZodDefault<z.ZodNumber>;
1268
2232
  /** Minimum hours since last batch learning */
@@ -1273,22 +2237,40 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1273
2237
  deduplicationThreshold: z.ZodDefault<z.ZodNumber>;
1274
2238
  /** Maximum experiences to keep during pruning (default: 1000) */
1275
2239
  maxExperiences: z.ZodDefault<z.ZodNumber>;
2240
+ /**
2241
+ * Additive-consolidation similarity threshold (0..1). Only consulted when
2242
+ * `features.additiveConsolidation` is ON. A freshly distilled playbook is
2243
+ * MERGED into an existing one instead of minting a new `distilled-<uuid>`
2244
+ * when their embeddings-optional similarity (cosine when both embeddings
2245
+ * exist, else lexical textSimilarity over strategy + situations) meets this
2246
+ * threshold AND they share a domain. Default 0.55 — deliberately below the
2247
+ * 0.9 write-time dedup threshold (which almost never fires for distinct
2248
+ * distilled titles) so genuine same-family repeats actually compound, while
2249
+ * the domain-overlap hard gate + this floor guard against cross-family
2250
+ * over-merge. Lower → more aggressive merging (evidence compounds faster but
2251
+ * risk of conflating distinct lessons); higher → closer to proliferation.
2252
+ */
2253
+ additiveMergeThreshold: z.ZodDefault<z.ZodNumber>;
1276
2254
  }, "strip", z.ZodTypeAny, {
1277
2255
  creditStrategy: "llm" | "simple" | "counterfactual";
1278
- patternExtractor: "llm" | "both" | "text";
2256
+ patternExtractor: "llm" | "text" | "both";
2257
+ strictExtraction: boolean;
1279
2258
  minTrajectories: number;
1280
2259
  deduplicationThreshold: number;
1281
2260
  maxExperiences: number;
2261
+ additiveMergeThreshold: number;
1282
2262
  minHoursSinceLast?: number | undefined;
1283
2263
  minSuccessRate?: number | undefined;
1284
2264
  }, {
1285
2265
  creditStrategy?: "llm" | "simple" | "counterfactual" | undefined;
1286
- patternExtractor?: "llm" | "both" | "text" | undefined;
2266
+ patternExtractor?: "llm" | "text" | "both" | undefined;
2267
+ strictExtraction?: boolean | undefined;
1287
2268
  minTrajectories?: number | undefined;
1288
2269
  minHoursSinceLast?: number | undefined;
1289
2270
  minSuccessRate?: number | undefined;
1290
2271
  deduplicationThreshold?: number | undefined;
1291
2272
  maxExperiences?: number | undefined;
2273
+ additiveMergeThreshold?: number | undefined;
1292
2274
  }>>;
1293
2275
  /** Router configuration */
1294
2276
  router: z.ZodDefault<z.ZodObject<{
@@ -1298,14 +2280,32 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1298
2280
  useDomainRouting: z.ZodDefault<z.ZodBoolean>;
1299
2281
  /** Default search strategy */
1300
2282
  defaultStrategy: z.ZodDefault<z.ZodString>;
2283
+ /**
2284
+ * Difficulty-aware routing (G6). When ON, the router computes a general,
2285
+ * domain-agnostic task-difficulty signal (`computeTaskDifficulty`) and:
2286
+ * - routes HARD tasks to the expensive refinement/exemplar strategy with a
2287
+ * deliberately LOWER `routing.confidence` (below `refinement
2288
+ * .confidenceThreshold`, default 0.85) so they auto-enter the G1
2289
+ * refinement loop;
2290
+ * - routes EASY tasks to the cheap/direct path with higher confidence so
2291
+ * they stay above the threshold and skip refinement;
2292
+ * - sets the multi-objective `prefer` axis from difficulty (hard → quality,
2293
+ * trivial → cheap) so the Pareto frontier query is actually exercised.
2294
+ *
2295
+ * Default ON (maintainer's call): degrades gracefully (no throw) when the
2296
+ * frontier is cold or memory is empty.
2297
+ */
2298
+ difficultyAwareRouting: z.ZodDefault<z.ZodBoolean>;
1301
2299
  }, "strip", z.ZodTypeAny, {
1302
2300
  similarityThreshold: number;
1303
2301
  useDomainRouting: boolean;
1304
2302
  defaultStrategy: string;
2303
+ difficultyAwareRouting: boolean;
1305
2304
  }, {
1306
2305
  similarityThreshold?: number | undefined;
1307
2306
  useDomainRouting?: boolean | undefined;
1308
2307
  defaultStrategy?: string | undefined;
2308
+ difficultyAwareRouting?: boolean | undefined;
1309
2309
  }>>;
1310
2310
  /** Memory configuration */
1311
2311
  memory: z.ZodDefault<z.ZodObject<{
@@ -1352,6 +2352,206 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1352
2352
  autoPrune?: boolean | undefined;
1353
2353
  preserveDomainCoverage?: boolean | undefined;
1354
2354
  }>>;
2355
+ /**
2356
+ * Use the Pareto frontier to select playbooks when a signature has
2357
+ * recorded outcomes, falling back to text-similarity matching otherwise.
2358
+ *
2359
+ * Default ON (G6, maintainer's call): the frontier path is headless-safe —
2360
+ * a cold store (signature with no recorded outcomes / empty frontier) falls
2361
+ * back to text-similarity matching inside `findMatchingFrontierAware`
2362
+ * (`playbook.ts`), so enabling it never deadlocks or throws.
2363
+ */
2364
+ frontierRouting: z.ZodDefault<z.ZodBoolean>;
2365
+ /**
2366
+ * Whether failed trajectories may be injected as in-context EXEMPLARS
2367
+ * (the experience-retrieval channel surfaced to the agent at solve time).
2368
+ *
2369
+ * This does NOT control whether failures are stored or learned from:
2370
+ * failures always still feed reflexion episodes, playbook anti-patterns,
2371
+ * causal edges, and error-pattern analysis. It only governs the imitation
2372
+ * channel. Injecting raw failed trajectories as exemplars can anchor an
2373
+ * agent to bad approaches — especially on imitation-heavy / procedural tasks
2374
+ * (embodied, web nav) where the agent copies action sequences. Set to
2375
+ * `false` for success-biased exemplar injection (the agent only sees
2376
+ * trajectories that worked). Default `true` preserves prior behavior.
2377
+ */
2378
+ injectFailedExperiences: z.ZodDefault<z.ZodBoolean>;
2379
+ /**
2380
+ * On init, seed the (file-backed) MetaPlaybookBank from the committed
2381
+ * `META_PLAYBOOK_SEEDS` — meta-level guidance that steers the
2382
+ * analysis/extraction/maintenance agents. Idempotent: only seeds an empty
2383
+ * bank, so learned refinements are never overwritten. Default `true`
2384
+ * (cold-start default; set `false` for seed-free ablations).
2385
+ */
2386
+ seedMetaPlaybooks: z.ZodDefault<z.ZodBoolean>;
2387
+ /**
2388
+ * On init, seed MetaMemory with the committed `META_STRATEGY_SEEDS` routing
2389
+ * priors so the router's meta-adjustment path is not inert on a cold store.
2390
+ * Idempotent: only seeds when no strategies exist, so learned strategies and
2391
+ * their evidence (EMA success rate) are never overwritten. Default `true`.
2392
+ */
2393
+ seedMetaStrategies: z.ZodDefault<z.ZodBoolean>;
2394
+ /** Playbook serving/retrieval configuration. */
2395
+ playbookRetrieval: z.ZodDefault<z.ZodObject<{
2396
+ /**
2397
+ * Playbook retrieval implementation.
2398
+ * - legacy: cognitive-core's existing PlaybookLibrary matcher.
2399
+ * - skill-tree-hybrid: convert playbooks to skill-tree Skills and score with
2400
+ * skill-tree's body-indexed hybrid scorer.
2401
+ */
2402
+ mode: z.ZodDefault<z.ZodEnum<["legacy", "skill-tree-hybrid"]>>;
2403
+ /**
2404
+ * Minimum retrieval score required before a playbook is injected, for LEXICAL
2405
+ * (text-similarity) scoring. Lexical scores are sparse (~0.1 even for relevant
2406
+ * matches), so this floor cannot separate signal from noise — embedding mode
2407
+ * (`minScoreSemantic`) is what makes a meaningful floor possible. Serving
2408
+ * relevance floor, separate from playbook confidence.
2409
+ */
2410
+ minScore: z.ZodDefault<z.ZodNumber>;
2411
+ /**
2412
+ * Relevance floor when SEMANTIC (embedding-cosine) scoring is active (an
2413
+ * EmbeddingProvider attached via `setEmbeddingProvider`). Cosine scores are
2414
+ * denser than lexical, so a real floor (default 0.35 — below the ~0.5 "high
2415
+ * similarity" bar so relevant matches survive) rejects noise WITHOUT omitting
2416
+ * relevant playbooks, unlike a raised lexical floor.
2417
+ */
2418
+ minScoreSemantic: z.ZodDefault<z.ZodNumber>;
2419
+ /**
2420
+ * Multiplier applied to the active floor on the GLOBAL (cross-domain) fallback
2421
+ * retrieval — when a task's own domain has no playbooks and retrieval reaches
2422
+ * across all domains, require a higher score (default 1.5×) so out-of-family
2423
+ * playbooks need a strong match. Prevents cross-family negative transfer (see
2424
+ * docs/runs/skillflow-playbook-ablation-3families-bedrock-haiku.md).
2425
+ */
2426
+ crossDomainFloorMultiplier: z.ZodDefault<z.ZodNumber>;
2427
+ /**
2428
+ * Fusion strategy for skill-tree-hybrid mode. RRF only changes ordering when
2429
+ * a dense embedder is attached; BM25-only scoring remains available.
2430
+ */
2431
+ fusion: z.ZodDefault<z.ZodEnum<["weighted", "rrf"]>>;
2432
+ /**
2433
+ * How an injected playbook is rendered into the prompt (roadmap §4.3 / Exp 4):
2434
+ * - `full`: the whole playbook (strategy + all tactics/steps). Default.
2435
+ * - `sectioned`: strategy + only the tactics/steps whose text shares cues with
2436
+ * the task. Lower token cost and less context interference for broad
2437
+ * playbooks where only a subskill applies. Deterministic (no LLM); a no-op
2438
+ * for already-atomic playbooks whose every tactic matches.
2439
+ * (`refined`, an LLM task-specific rewrite, is a separate serve-time path and
2440
+ * not selectable here yet.)
2441
+ */
2442
+ incorporation: z.ZodDefault<z.ZodEnum<["full", "sectioned"]>>;
2443
+ }, "strip", z.ZodTypeAny, {
2444
+ mode: "legacy" | "skill-tree-hybrid";
2445
+ minScore: number;
2446
+ minScoreSemantic: number;
2447
+ crossDomainFloorMultiplier: number;
2448
+ fusion: "weighted" | "rrf";
2449
+ incorporation: "full" | "sectioned";
2450
+ }, {
2451
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
2452
+ minScore?: number | undefined;
2453
+ minScoreSemantic?: number | undefined;
2454
+ crossDomainFloorMultiplier?: number | undefined;
2455
+ fusion?: "weighted" | "rrf" | undefined;
2456
+ incorporation?: "full" | "sectioned" | undefined;
2457
+ }>>;
2458
+ /** Optional post-retrieval playbook applicability gate. */
2459
+ playbookApplicability: z.ZodDefault<z.ZodObject<{
2460
+ /**
2461
+ * Opt-in serving gate that decides whether a retrieved playbook is specific
2462
+ * enough to inject.
2463
+ */
2464
+ enabled: z.ZodDefault<z.ZodBoolean>;
2465
+ /** Floor for matches that lack trigger/situation cues. */
2466
+ minSpecificityScore: z.ZodDefault<z.ZodNumber>;
2467
+ /** Stronger floor for cross-domain matches without trigger/situation cues. */
2468
+ crossDomainMinScore: z.ZodDefault<z.ZodNumber>;
2469
+ }, "strip", z.ZodTypeAny, {
2470
+ enabled: boolean;
2471
+ minSpecificityScore: number;
2472
+ crossDomainMinScore: number;
2473
+ }, {
2474
+ enabled?: boolean | undefined;
2475
+ minSpecificityScore?: number | undefined;
2476
+ crossDomainMinScore?: number | undefined;
2477
+ }>>;
2478
+ /** Procedural-memory filesystem migration settings. */
2479
+ proceduralMemory: z.ZodDefault<z.ZodObject<{
2480
+ /**
2481
+ * Stable procedural-memory authority. `filesystem` (the default) makes
2482
+ * `.atlas/playbooks/<slug>/SKILL.md` canonical for stable playbook content;
2483
+ * SQLite remains the runtime cache and operational ledger (operational state
2484
+ * mirrored to `.ccore/state.json` so the DB rebuilds from files). `sqlite`
2485
+ * preserves the legacy behavior where SQLite rows are the source of truth —
2486
+ * used by migration tooling and the SQLite-only-drift / migration tests,
2487
+ * which opt back in via `source: "sqlite"` explicitly.
2488
+ */
2489
+ source: z.ZodDefault<z.ZodEnum<["sqlite", "filesystem"]>>;
2490
+ /** Canonical procedural-memory directory, relative to storage.baseDir. */
2491
+ dir: z.ZodDefault<z.ZodString>;
2492
+ /** Fail startup on file-first warnings instead of continuing best-effort. */
2493
+ strictStartup: z.ZodDefault<z.ZodBoolean>;
2494
+ /** Future destructive cleanup switch; defaults off for hard migration safety. */
2495
+ pruneSqliteOnly: z.ZodDefault<z.ZodBoolean>;
2496
+ /**
2497
+ * Reindex-on-edit cascade (§6.2). When on, a debounced file watcher over the
2498
+ * canonical `playbooks/` tree picks up external `SKILL.md` edits (hand edits,
2499
+ * `git pull`) live via a durable queue — no reboot needed. Off by default:
2500
+ * short-lived eval/CLI runs don't need it (startup reindex covers them), and
2501
+ * only long-lived servers benefit. Requires `source: "filesystem"`.
2502
+ */
2503
+ watch: z.ZodDefault<z.ZodBoolean>;
2504
+ /** Coalescing window (ms) for a burst of file events before the cascade drains. */
2505
+ watchDebounceMs: z.ZodDefault<z.ZodNumber>;
2506
+ /**
2507
+ * Poll for changes instead of native OS events. Needed on filesystems where
2508
+ * native watching doesn't fire (NFS, Docker bind mounts, some CI). Off by
2509
+ * default (native fsevents/inotify are cheaper).
2510
+ */
2511
+ watchUsePolling: z.ZodDefault<z.ZodBoolean>;
2512
+ /** Poll interval (ms) when `watchUsePolling` is on. */
2513
+ watchPollIntervalMs: z.ZodDefault<z.ZodNumber>;
2514
+ /**
2515
+ * Legacy Phase 3 bridge. Prefer `source: "filesystem"` for hard-authority
2516
+ * migration; this remains for callers that only want mirroring.
2517
+ */
2518
+ structuralDualWrite: z.ZodDefault<z.ZodObject<{
2519
+ enabled: z.ZodDefault<z.ZodBoolean>;
2520
+ dir: z.ZodDefault<z.ZodString>;
2521
+ }, "strip", z.ZodTypeAny, {
2522
+ enabled: boolean;
2523
+ dir: string;
2524
+ }, {
2525
+ enabled?: boolean | undefined;
2526
+ dir?: string | undefined;
2527
+ }>>;
2528
+ }, "strip", z.ZodTypeAny, {
2529
+ source: "sqlite" | "filesystem";
2530
+ dir: string;
2531
+ strictStartup: boolean;
2532
+ pruneSqliteOnly: boolean;
2533
+ watch: boolean;
2534
+ watchDebounceMs: number;
2535
+ watchUsePolling: boolean;
2536
+ watchPollIntervalMs: number;
2537
+ structuralDualWrite: {
2538
+ enabled: boolean;
2539
+ dir: string;
2540
+ };
2541
+ }, {
2542
+ source?: "sqlite" | "filesystem" | undefined;
2543
+ dir?: string | undefined;
2544
+ strictStartup?: boolean | undefined;
2545
+ pruneSqliteOnly?: boolean | undefined;
2546
+ watch?: boolean | undefined;
2547
+ watchDebounceMs?: number | undefined;
2548
+ watchUsePolling?: boolean | undefined;
2549
+ watchPollIntervalMs?: number | undefined;
2550
+ structuralDualWrite?: {
2551
+ enabled?: boolean | undefined;
2552
+ dir?: string | undefined;
2553
+ } | undefined;
2554
+ }>>;
1355
2555
  }, "strip", z.ZodTypeAny, {
1356
2556
  maxExperiences: number;
1357
2557
  maxStrategies: number;
@@ -1367,6 +2567,37 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1367
2567
  autoPrune: boolean;
1368
2568
  preserveDomainCoverage: boolean;
1369
2569
  };
2570
+ frontierRouting: boolean;
2571
+ injectFailedExperiences: boolean;
2572
+ seedMetaPlaybooks: boolean;
2573
+ seedMetaStrategies: boolean;
2574
+ playbookRetrieval: {
2575
+ mode: "legacy" | "skill-tree-hybrid";
2576
+ minScore: number;
2577
+ minScoreSemantic: number;
2578
+ crossDomainFloorMultiplier: number;
2579
+ fusion: "weighted" | "rrf";
2580
+ incorporation: "full" | "sectioned";
2581
+ };
2582
+ playbookApplicability: {
2583
+ enabled: boolean;
2584
+ minSpecificityScore: number;
2585
+ crossDomainMinScore: number;
2586
+ };
2587
+ proceduralMemory: {
2588
+ source: "sqlite" | "filesystem";
2589
+ dir: string;
2590
+ strictStartup: boolean;
2591
+ pruneSqliteOnly: boolean;
2592
+ watch: boolean;
2593
+ watchDebounceMs: number;
2594
+ watchUsePolling: boolean;
2595
+ watchPollIntervalMs: number;
2596
+ structuralDualWrite: {
2597
+ enabled: boolean;
2598
+ dir: string;
2599
+ };
2600
+ };
1370
2601
  }, {
1371
2602
  maxExperiences?: number | undefined;
1372
2603
  maxStrategies?: number | undefined;
@@ -1382,6 +2613,37 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1382
2613
  autoPrune?: boolean | undefined;
1383
2614
  preserveDomainCoverage?: boolean | undefined;
1384
2615
  } | undefined;
2616
+ frontierRouting?: boolean | undefined;
2617
+ injectFailedExperiences?: boolean | undefined;
2618
+ seedMetaPlaybooks?: boolean | undefined;
2619
+ seedMetaStrategies?: boolean | undefined;
2620
+ playbookRetrieval?: {
2621
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
2622
+ minScore?: number | undefined;
2623
+ minScoreSemantic?: number | undefined;
2624
+ crossDomainFloorMultiplier?: number | undefined;
2625
+ fusion?: "weighted" | "rrf" | undefined;
2626
+ incorporation?: "full" | "sectioned" | undefined;
2627
+ } | undefined;
2628
+ playbookApplicability?: {
2629
+ enabled?: boolean | undefined;
2630
+ minSpecificityScore?: number | undefined;
2631
+ crossDomainMinScore?: number | undefined;
2632
+ } | undefined;
2633
+ proceduralMemory?: {
2634
+ source?: "sqlite" | "filesystem" | undefined;
2635
+ dir?: string | undefined;
2636
+ strictStartup?: boolean | undefined;
2637
+ pruneSqliteOnly?: boolean | undefined;
2638
+ watch?: boolean | undefined;
2639
+ watchDebounceMs?: number | undefined;
2640
+ watchUsePolling?: boolean | undefined;
2641
+ watchPollIntervalMs?: number | undefined;
2642
+ structuralDualWrite?: {
2643
+ enabled?: boolean | undefined;
2644
+ dir?: string | undefined;
2645
+ } | undefined;
2646
+ } | undefined;
1385
2647
  }>>;
1386
2648
  /** Storage configuration */
1387
2649
  storage: z.ZodDefault<z.ZodObject<{
@@ -1468,9 +2730,18 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1468
2730
  useAgentEvaluation: z.ZodDefault<z.ZodBoolean>;
1469
2731
  /** Agent type to use for evaluation */
1470
2732
  evaluatorAgentType: z.ZodDefault<z.ZodString>;
1471
- /** Confidence threshold below which to trigger refinement */
2733
+ /**
2734
+ * Confidence threshold below which to trigger refinement.
2735
+ * Raised from 0.6 so refinement is reachable on normal routes — most
2736
+ * routing decisions land below 0.85 confidence and should remain eligible
2737
+ * for verifier-driven refinement.
2738
+ */
1472
2739
  confidenceThreshold: z.ZodDefault<z.ZodNumber>;
1473
- /** Routing strategies that should trigger refinement */
2740
+ /**
2741
+ * Routing strategies that should trigger refinement.
2742
+ * Broadened to all four strategies (G1): a task can mis-execute on any
2743
+ * route, including `direct`/`adapt`, so none are excluded by default.
2744
+ */
1474
2745
  triggerOnStrategies: z.ZodDefault<z.ZodArray<z.ZodEnum<["explore", "fallback", "direct", "adapt"]>, "many">>;
1475
2746
  }, "strip", z.ZodTypeAny, {
1476
2747
  maxIterations: number;
@@ -1497,14 +2768,29 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1497
2768
  minSuccessCount: z.ZodDefault<z.ZodNumber>;
1498
2769
  /** Minimum success rate to promote */
1499
2770
  minSuccessRate: z.ZodDefault<z.ZodNumber>;
2771
+ /**
2772
+ * Eval-gate tier promotion (G5). When ON, a playbook must pass an
2773
+ * eval gate IN ADDITION to the threshold criteria before it is
2774
+ * promoted to a served tier.
2775
+ *
2776
+ * Default ON (maintainer's call): the default gate is Pareto-frontier
2777
+ * dominance, which is headless-safe — it reuses already-built, no-LLM
2778
+ * machinery and treats a playbook with no frontier history (first-ever
2779
+ * / freshly-extracted) as non-dominated, so default-on gating never
2780
+ * deadlocks. When a `PromotionJudge` (or `ReplayJudge`) is registered
2781
+ * on the `SkillLibrary`, the stronger judge-based gate is used instead.
2782
+ */
2783
+ evalGate: z.ZodDefault<z.ZodBoolean>;
1500
2784
  }, "strip", z.ZodTypeAny, {
1501
2785
  minSuccessRate: number;
1502
2786
  minConfidence: number;
1503
2787
  minSuccessCount: number;
2788
+ evalGate: boolean;
1504
2789
  }, {
1505
2790
  minSuccessRate?: number | undefined;
1506
2791
  minConfidence?: number | undefined;
1507
2792
  minSuccessCount?: number | undefined;
2793
+ evalGate?: boolean | undefined;
1508
2794
  }>>;
1509
2795
  /** Capacity limits */
1510
2796
  limits: z.ZodDefault<z.ZodObject<{
@@ -1531,17 +2817,25 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1531
2817
  includeRefinements: z.ZodDefault<z.ZodBoolean>;
1532
2818
  /** Include code examples in skill context */
1533
2819
  includeExamples: z.ZodDefault<z.ZodBoolean>;
2820
+ /**
2821
+ * G4: include a worked-trajectory exemplar (few-shot demonstration) in skill
2822
+ * context when a playbook carries one. Default ON — a surfaced skill should
2823
+ * carry the demonstration, not just rules ("demonstration > rules").
2824
+ */
2825
+ includeExemplar: z.ZodDefault<z.ZodBoolean>;
1534
2826
  /** Cache refresh interval in milliseconds (default: 5 minutes) */
1535
2827
  cacheRefreshInterval: z.ZodDefault<z.ZodNumber>;
1536
2828
  }, "strip", z.ZodTypeAny, {
1537
2829
  maxTokensForSkills: number;
1538
2830
  includeRefinements: boolean;
1539
2831
  includeExamples: boolean;
2832
+ includeExemplar: boolean;
1540
2833
  cacheRefreshInterval: number;
1541
2834
  }, {
1542
2835
  maxTokensForSkills?: number | undefined;
1543
2836
  includeRefinements?: boolean | undefined;
1544
2837
  includeExamples?: boolean | undefined;
2838
+ includeExemplar?: boolean | undefined;
1545
2839
  cacheRefreshInterval?: number | undefined;
1546
2840
  }>>;
1547
2841
  /** Demotion criteria */
@@ -1557,17 +2851,83 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1557
2851
  failureThreshold?: number | undefined;
1558
2852
  minConfidenceToRetain?: number | undefined;
1559
2853
  }>>;
2854
+ /** Contextual playbook retrieval for tiered skill surfacing. */
2855
+ retrieval: z.ZodDefault<z.ZodObject<{
2856
+ /**
2857
+ * Playbook retrieval implementation.
2858
+ * - legacy: cognitive-core's existing PlaybookLibrary matcher.
2859
+ * - skill-tree-hybrid: convert playbooks to skill-tree Skills and score with
2860
+ * skill-tree's body-indexed hybrid scorer.
2861
+ */
2862
+ mode: z.ZodDefault<z.ZodEnum<["legacy", "skill-tree-hybrid"]>>;
2863
+ /**
2864
+ * Minimum retrieval score required before a playbook is injected, for LEXICAL
2865
+ * (text-similarity) scoring. Lexical scores are sparse (~0.1 even for relevant
2866
+ * matches), so this floor cannot separate signal from noise — embedding mode
2867
+ * (`minScoreSemantic`) is what makes a meaningful floor possible. Serving
2868
+ * relevance floor, separate from playbook confidence.
2869
+ */
2870
+ minScore: z.ZodDefault<z.ZodNumber>;
2871
+ /**
2872
+ * Relevance floor when SEMANTIC (embedding-cosine) scoring is active (an
2873
+ * EmbeddingProvider attached via `setEmbeddingProvider`). Cosine scores are
2874
+ * denser than lexical, so a real floor (default 0.35 — below the ~0.5 "high
2875
+ * similarity" bar so relevant matches survive) rejects noise WITHOUT omitting
2876
+ * relevant playbooks, unlike a raised lexical floor.
2877
+ */
2878
+ minScoreSemantic: z.ZodDefault<z.ZodNumber>;
2879
+ /**
2880
+ * Multiplier applied to the active floor on the GLOBAL (cross-domain) fallback
2881
+ * retrieval — when a task's own domain has no playbooks and retrieval reaches
2882
+ * across all domains, require a higher score (default 1.5×) so out-of-family
2883
+ * playbooks need a strong match. Prevents cross-family negative transfer (see
2884
+ * docs/runs/skillflow-playbook-ablation-3families-bedrock-haiku.md).
2885
+ */
2886
+ crossDomainFloorMultiplier: z.ZodDefault<z.ZodNumber>;
2887
+ /**
2888
+ * Fusion strategy for skill-tree-hybrid mode. RRF only changes ordering when
2889
+ * a dense embedder is attached; BM25-only scoring remains available.
2890
+ */
2891
+ fusion: z.ZodDefault<z.ZodEnum<["weighted", "rrf"]>>;
2892
+ /**
2893
+ * How an injected playbook is rendered into the prompt (roadmap §4.3 / Exp 4):
2894
+ * - `full`: the whole playbook (strategy + all tactics/steps). Default.
2895
+ * - `sectioned`: strategy + only the tactics/steps whose text shares cues with
2896
+ * the task. Lower token cost and less context interference for broad
2897
+ * playbooks where only a subskill applies. Deterministic (no LLM); a no-op
2898
+ * for already-atomic playbooks whose every tactic matches.
2899
+ * (`refined`, an LLM task-specific rewrite, is a separate serve-time path and
2900
+ * not selectable here yet.)
2901
+ */
2902
+ incorporation: z.ZodDefault<z.ZodEnum<["full", "sectioned"]>>;
2903
+ }, "strip", z.ZodTypeAny, {
2904
+ mode: "legacy" | "skill-tree-hybrid";
2905
+ minScore: number;
2906
+ minScoreSemantic: number;
2907
+ crossDomainFloorMultiplier: number;
2908
+ fusion: "weighted" | "rrf";
2909
+ incorporation: "full" | "sectioned";
2910
+ }, {
2911
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
2912
+ minScore?: number | undefined;
2913
+ minScoreSemantic?: number | undefined;
2914
+ crossDomainFloorMultiplier?: number | undefined;
2915
+ fusion?: "weighted" | "rrf" | undefined;
2916
+ incorporation?: "full" | "sectioned" | undefined;
2917
+ }>>;
1560
2918
  }, "strip", z.ZodTypeAny, {
1561
2919
  context: {
1562
2920
  maxTokensForSkills: number;
1563
2921
  includeRefinements: boolean;
1564
2922
  includeExamples: boolean;
2923
+ includeExemplar: boolean;
1565
2924
  cacheRefreshInterval: number;
1566
2925
  };
1567
2926
  promotion: {
1568
2927
  minSuccessRate: number;
1569
2928
  minConfidence: number;
1570
2929
  minSuccessCount: number;
2930
+ evalGate: boolean;
1571
2931
  };
1572
2932
  limits: {
1573
2933
  maxCoreSkills: number;
@@ -1578,17 +2938,27 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1578
2938
  failureThreshold: number;
1579
2939
  minConfidenceToRetain: number;
1580
2940
  };
2941
+ retrieval: {
2942
+ mode: "legacy" | "skill-tree-hybrid";
2943
+ minScore: number;
2944
+ minScoreSemantic: number;
2945
+ crossDomainFloorMultiplier: number;
2946
+ fusion: "weighted" | "rrf";
2947
+ incorporation: "full" | "sectioned";
2948
+ };
1581
2949
  }, {
1582
2950
  context?: {
1583
2951
  maxTokensForSkills?: number | undefined;
1584
2952
  includeRefinements?: boolean | undefined;
1585
2953
  includeExamples?: boolean | undefined;
2954
+ includeExemplar?: boolean | undefined;
1586
2955
  cacheRefreshInterval?: number | undefined;
1587
2956
  } | undefined;
1588
2957
  promotion?: {
1589
2958
  minSuccessRate?: number | undefined;
1590
2959
  minConfidence?: number | undefined;
1591
2960
  minSuccessCount?: number | undefined;
2961
+ evalGate?: boolean | undefined;
1592
2962
  } | undefined;
1593
2963
  limits?: {
1594
2964
  maxCoreSkills?: number | undefined;
@@ -1599,6 +2969,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1599
2969
  failureThreshold?: number | undefined;
1600
2970
  minConfidenceToRetain?: number | undefined;
1601
2971
  } | undefined;
2972
+ retrieval?: {
2973
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
2974
+ minScore?: number | undefined;
2975
+ minScoreSemantic?: number | undefined;
2976
+ crossDomainFloorMultiplier?: number | undefined;
2977
+ fusion?: "weighted" | "rrf" | undefined;
2978
+ incorporation?: "full" | "sectioned" | undefined;
2979
+ } | undefined;
1602
2980
  }>>;
1603
2981
  /** MCP Server configuration */
1604
2982
  mcp: z.ZodDefault<z.ZodObject<{
@@ -1649,11 +3027,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1649
3027
  staleWorkspaceMaxAgeMs: z.ZodDefault<z.ZodNumber>;
1650
3028
  /** Base directory for workspaces (defaults to os.tmpdir()) */
1651
3029
  workspaceBaseDir: z.ZodOptional<z.ZodString>;
3030
+ /** Always run the workspace agent for playbook extraction when a runner exists. */
3031
+ forceAgenticPlaybookExtraction: z.ZodDefault<z.ZodBoolean>;
1652
3032
  }, "strip", z.ZodTypeAny, {
1653
3033
  cleanupWorkspaces: boolean;
1654
3034
  keepFailedWorkspaces: boolean;
1655
3035
  maxConcurrentAgents: number;
1656
3036
  staleWorkspaceMaxAgeMs: number;
3037
+ forceAgenticPlaybookExtraction: boolean;
1657
3038
  workspaceBaseDir?: string | undefined;
1658
3039
  }, {
1659
3040
  cleanupWorkspaces?: boolean | undefined;
@@ -1661,6 +3042,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1661
3042
  maxConcurrentAgents?: number | undefined;
1662
3043
  staleWorkspaceMaxAgeMs?: number | undefined;
1663
3044
  workspaceBaseDir?: string | undefined;
3045
+ forceAgenticPlaybookExtraction?: boolean | undefined;
1664
3046
  }>>;
1665
3047
  /** Compute provider configuration */
1666
3048
  compute: z.ZodDefault<z.ZodObject<{
@@ -1679,92 +3061,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1679
3061
  defaultLocation?: "local" | "remote" | "any" | undefined;
1680
3062
  allowFallback?: boolean | undefined;
1681
3063
  }>>;
1682
- /** Team-aware learning configuration */
1683
- teamLearning: z.ZodDefault<z.ZodObject<{
1684
- /** Enable team-aware learning */
1685
- enabled: z.ZodDefault<z.ZodBoolean>;
1686
- /** Minimum team trajectories before batch learning */
1687
- minTeamTrajectories: z.ZodDefault<z.ZodNumber>;
1688
- /** Similarity threshold for team playbook deduplication */
1689
- deduplicationThreshold: z.ZodDefault<z.ZodNumber>;
1690
- /** Weight of structural metrics in analysis (0 = ignore, 1 = metrics only) */
1691
- metricsWeight: z.ZodDefault<z.ZodNumber>;
1692
- /** Maximum team experiences to store */
1693
- maxTeamExperiences: z.ZodDefault<z.ZodNumber>;
1694
- /** Maximum team playbooks to store */
1695
- maxTeamPlaybooks: z.ZodDefault<z.ZodNumber>;
1696
- /** Maximum role playbooks to store */
1697
- maxRolePlaybooks: z.ZodDefault<z.ZodNumber>;
1698
- /** Analysis agent timeout in milliseconds */
1699
- analysisTimeout: z.ZodDefault<z.ZodNumber>;
1700
- /** Extraction agent timeout in milliseconds */
1701
- extractionTimeout: z.ZodDefault<z.ZodNumber>;
1702
- /** Compression settings for trajectory ingestion */
1703
- compression: z.ZodDefault<z.ZodObject<{
1704
- /** Maximum tokens per agent after compression */
1705
- maxTokensPerAgent: z.ZodDefault<z.ZodNumber>;
1706
- /** Preserve interaction boundary steps at full fidelity */
1707
- preserveInteractionBoundaries: z.ZodDefault<z.ZodBoolean>;
1708
- /** Minimum consecutive non-key steps before folding */
1709
- foldThreshold: z.ZodDefault<z.ZodNumber>;
1710
- /** Maximum ratio of steps to mark as critical */
1711
- maxCriticalRatio: z.ZodDefault<z.ZodNumber>;
1712
- /** Score threshold for critical steps */
1713
- criticalStepThreshold: z.ZodDefault<z.ZodNumber>;
1714
- /** Score threshold for critical interactions */
1715
- criticalInteractionThreshold: z.ZodDefault<z.ZodNumber>;
1716
- }, "strip", z.ZodTypeAny, {
1717
- maxTokensPerAgent: number;
1718
- preserveInteractionBoundaries: boolean;
1719
- foldThreshold: number;
1720
- maxCriticalRatio: number;
1721
- criticalStepThreshold: number;
1722
- criticalInteractionThreshold: number;
1723
- }, {
1724
- maxTokensPerAgent?: number | undefined;
1725
- preserveInteractionBoundaries?: boolean | undefined;
1726
- foldThreshold?: number | undefined;
1727
- maxCriticalRatio?: number | undefined;
1728
- criticalStepThreshold?: number | undefined;
1729
- criticalInteractionThreshold?: number | undefined;
1730
- }>>;
1731
- }, "strip", z.ZodTypeAny, {
1732
- enabled: boolean;
1733
- deduplicationThreshold: number;
1734
- minTeamTrajectories: number;
1735
- metricsWeight: number;
1736
- maxTeamExperiences: number;
1737
- maxTeamPlaybooks: number;
1738
- maxRolePlaybooks: number;
1739
- analysisTimeout: number;
1740
- extractionTimeout: number;
1741
- compression: {
1742
- maxTokensPerAgent: number;
1743
- preserveInteractionBoundaries: boolean;
1744
- foldThreshold: number;
1745
- maxCriticalRatio: number;
1746
- criticalStepThreshold: number;
1747
- criticalInteractionThreshold: number;
1748
- };
1749
- }, {
1750
- enabled?: boolean | undefined;
1751
- deduplicationThreshold?: number | undefined;
1752
- minTeamTrajectories?: number | undefined;
1753
- metricsWeight?: number | undefined;
1754
- maxTeamExperiences?: number | undefined;
1755
- maxTeamPlaybooks?: number | undefined;
1756
- maxRolePlaybooks?: number | undefined;
1757
- analysisTimeout?: number | undefined;
1758
- extractionTimeout?: number | undefined;
1759
- compression?: {
1760
- maxTokensPerAgent?: number | undefined;
1761
- preserveInteractionBoundaries?: boolean | undefined;
1762
- foldThreshold?: number | undefined;
1763
- maxCriticalRatio?: number | undefined;
1764
- criticalStepThreshold?: number | undefined;
1765
- criticalInteractionThreshold?: number | undefined;
1766
- } | undefined;
1767
- }>>;
1768
3064
  /** Knowledge bank configuration */
1769
3065
  knowledgeBank: z.ZodDefault<z.ZodObject<{
1770
3066
  /** Enable knowledge bank */
@@ -1794,6 +3090,20 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1794
3090
  minInboxItems: z.ZodDefault<z.ZodNumber>;
1795
3091
  /** Whether to auto-consolidate observations into entities */
1796
3092
  autoConsolidate: z.ZodDefault<z.ZodBoolean>;
3093
+ /**
3094
+ * How consolidation builds entity notes:
3095
+ * - `off`: skip consolidation entirely (atomic facts only).
3096
+ * - `index`: entity notes are lightweight records — canonical name + links to
3097
+ * the atomic fact notes mentioning the entity, NO duplicated fact bodies.
3098
+ * Used as a retrieval boost anchor (see getRelevantKnowledge). Default.
3099
+ * - `content`: legacy behavior — concatenate truncated fact bodies into the
3100
+ * entity note (retained for back-compat).
3101
+ *
3102
+ * `autoConsolidate: false` forces `off` regardless of this value.
3103
+ * Optional at the type level for back-compat with hand-built configs; the
3104
+ * KnowledgeDefragmenter treats `undefined` as `index`.
3105
+ */
3106
+ consolidationMode: z.ZodOptional<z.ZodEnum<["off", "index", "content"]>>;
1797
3107
  /** Minimum observations about an entity before consolidation */
1798
3108
  consolidationThreshold: z.ZodDefault<z.ZodNumber>;
1799
3109
  /** Whether to auto-regenerate domain summaries */
@@ -1802,6 +3112,20 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1802
3112
  llmSummaryGeneration: z.ZodDefault<z.ZodBoolean>;
1803
3113
  /** Whether to auto-resolve simple contradictions */
1804
3114
  autoResolveContradictions: z.ZodDefault<z.ZodBoolean>;
3115
+ /**
3116
+ * Run the pairwise contradiction-detection sweep during defrag. This is O(n²)
3117
+ * within a domain, so for large single-domain stores (e.g. a long conversation
3118
+ * where every fact shares one domain) it is expensive and low-value. Optional;
3119
+ * the KnowledgeDefragmenter treats `undefined` as enabled (back-compat). Set
3120
+ * false to skip. See DESIGN-memory-extraction-add-only.md (WS1c).
3121
+ */
3122
+ contradictionScan: z.ZodOptional<z.ZodBoolean>;
3123
+ /**
3124
+ * Hard cap on observations-per-domain considered by the contradiction sweep;
3125
+ * beyond this the sweep is skipped for that domain to bound cost. `undefined`
3126
+ * → default cap (see KnowledgeDefragmenter).
3127
+ */
3128
+ contradictionScanMaxNotes: z.ZodOptional<z.ZodNumber>;
1805
3129
  }, "strip", z.ZodTypeAny, {
1806
3130
  minInboxItems: number;
1807
3131
  autoConsolidate: boolean;
@@ -1809,13 +3133,19 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1809
3133
  autoRegenerateSummaries: boolean;
1810
3134
  llmSummaryGeneration: boolean;
1811
3135
  autoResolveContradictions: boolean;
3136
+ consolidationMode?: "content" | "off" | "index" | undefined;
3137
+ contradictionScan?: boolean | undefined;
3138
+ contradictionScanMaxNotes?: number | undefined;
1812
3139
  }, {
1813
3140
  minInboxItems?: number | undefined;
1814
3141
  autoConsolidate?: boolean | undefined;
3142
+ consolidationMode?: "content" | "off" | "index" | undefined;
1815
3143
  consolidationThreshold?: number | undefined;
1816
3144
  autoRegenerateSummaries?: boolean | undefined;
1817
3145
  llmSummaryGeneration?: boolean | undefined;
1818
3146
  autoResolveContradictions?: boolean | undefined;
3147
+ contradictionScan?: boolean | undefined;
3148
+ contradictionScanMaxNotes?: number | undefined;
1819
3149
  }>>;
1820
3150
  /** Confidence model config */
1821
3151
  confidence: z.ZodDefault<z.ZodObject<{
@@ -1850,35 +3180,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1850
3180
  staleThreshold?: number | undefined;
1851
3181
  decayGracePeriodDays?: number | undefined;
1852
3182
  }>>;
1853
- /** Graph overlay config */
1854
- graph: z.ZodDefault<z.ZodObject<{
1855
- /** Which graph layers to enable */
1856
- enabledLayers: z.ZodDefault<z.ZodArray<z.ZodEnum<["semantic", "temporal", "causal", "entity"]>, "many">>;
1857
- /** Whether to auto-infer temporal edges from timestamps */
1858
- inferTemporalEdges: z.ZodDefault<z.ZodBoolean>;
1859
- /** Whether to auto-infer causal edges from failure-recovery patterns */
1860
- inferCausalEdges: z.ZodDefault<z.ZodBoolean>;
1861
- /** Whether to auto-infer entity edges from shared entity tags */
1862
- inferEntityEdges: z.ZodDefault<z.ZodBoolean>;
1863
- /** Split layer files by domain when node count exceeds this */
1864
- domainSplitThreshold: z.ZodDefault<z.ZodNumber>;
1865
- /** Promote to SQLite when total edge count exceeds this */
1866
- sqlitePromotionThreshold: z.ZodDefault<z.ZodNumber>;
1867
- }, "strip", z.ZodTypeAny, {
1868
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
1869
- inferTemporalEdges: boolean;
1870
- inferCausalEdges: boolean;
1871
- inferEntityEdges: boolean;
1872
- domainSplitThreshold: number;
1873
- sqlitePromotionThreshold: number;
1874
- }, {
1875
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
1876
- inferTemporalEdges?: boolean | undefined;
1877
- inferCausalEdges?: boolean | undefined;
1878
- inferEntityEdges?: boolean | undefined;
1879
- domainSplitThreshold?: number | undefined;
1880
- sqlitePromotionThreshold?: number | undefined;
1881
- }>>;
1882
3183
  /** Surfacing config (independent from SkillLibrary) */
1883
3184
  surfacing: z.ZodDefault<z.ZodObject<{
1884
3185
  /** Include domain summaries in task context */
@@ -1893,6 +3194,13 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1893
3194
  includeEvidence: z.ZodDefault<z.ZodBoolean>;
1894
3195
  /** Include graph links in surfaced notes */
1895
3196
  includeLinks: z.ZodDefault<z.ZodBoolean>;
3197
+ /**
3198
+ * Additive score boost applied to atomic fact notes that are linked from an
3199
+ * entity record matching the query (index-mode consolidation). Entity records
3200
+ * themselves are NOT injected as content — they act purely as ranking anchors.
3201
+ * Optional; getRelevantKnowledge treats `undefined` as 0.15.
3202
+ */
3203
+ entityBoostWeight: z.ZodOptional<z.ZodNumber>;
1896
3204
  }, "strip", z.ZodTypeAny, {
1897
3205
  includeDomainSummaries: boolean;
1898
3206
  includeEntityNotes: boolean;
@@ -1900,6 +3208,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1900
3208
  maxTokensForKnowledge: number;
1901
3209
  includeEvidence: boolean;
1902
3210
  includeLinks: boolean;
3211
+ entityBoostWeight?: number | undefined;
1903
3212
  }, {
1904
3213
  includeDomainSummaries?: boolean | undefined;
1905
3214
  includeEntityNotes?: boolean | undefined;
@@ -1907,6 +3216,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1907
3216
  maxTokensForKnowledge?: number | undefined;
1908
3217
  includeEvidence?: boolean | undefined;
1909
3218
  includeLinks?: boolean | undefined;
3219
+ entityBoostWeight?: number | undefined;
1910
3220
  }>>;
1911
3221
  /** Whether to manage minimem-specific features (sync, versioning) */
1912
3222
  minimemAware: z.ZodDefault<z.ZodBoolean>;
@@ -1923,14 +3233,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1923
3233
  decayGracePeriodDays: number;
1924
3234
  };
1925
3235
  enabled: boolean;
1926
- graph: {
1927
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
1928
- inferTemporalEdges: boolean;
1929
- inferCausalEdges: boolean;
1930
- inferEntityEdges: boolean;
1931
- domainSplitThreshold: number;
1932
- sqlitePromotionThreshold: number;
1933
- };
1934
3236
  memoryDir: string;
1935
3237
  extraction: {
1936
3238
  enabled: boolean;
@@ -1944,6 +3246,9 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1944
3246
  autoRegenerateSummaries: boolean;
1945
3247
  llmSummaryGeneration: boolean;
1946
3248
  autoResolveContradictions: boolean;
3249
+ consolidationMode?: "content" | "off" | "index" | undefined;
3250
+ contradictionScan?: boolean | undefined;
3251
+ contradictionScanMaxNotes?: number | undefined;
1947
3252
  };
1948
3253
  surfacing: {
1949
3254
  includeDomainSummaries: boolean;
@@ -1952,6 +3257,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1952
3257
  maxTokensForKnowledge: number;
1953
3258
  includeEvidence: boolean;
1954
3259
  includeLinks: boolean;
3260
+ entityBoostWeight?: number | undefined;
1955
3261
  };
1956
3262
  minimemAware: boolean;
1957
3263
  coherenceChecking: boolean;
@@ -1966,14 +3272,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1966
3272
  decayGracePeriodDays?: number | undefined;
1967
3273
  } | undefined;
1968
3274
  enabled?: boolean | undefined;
1969
- graph?: {
1970
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
1971
- inferTemporalEdges?: boolean | undefined;
1972
- inferCausalEdges?: boolean | undefined;
1973
- inferEntityEdges?: boolean | undefined;
1974
- domainSplitThreshold?: number | undefined;
1975
- sqlitePromotionThreshold?: number | undefined;
1976
- } | undefined;
1977
3275
  memoryDir?: string | undefined;
1978
3276
  extraction?: {
1979
3277
  enabled?: boolean | undefined;
@@ -1983,10 +3281,13 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1983
3281
  defrag?: {
1984
3282
  minInboxItems?: number | undefined;
1985
3283
  autoConsolidate?: boolean | undefined;
3284
+ consolidationMode?: "content" | "off" | "index" | undefined;
1986
3285
  consolidationThreshold?: number | undefined;
1987
3286
  autoRegenerateSummaries?: boolean | undefined;
1988
3287
  llmSummaryGeneration?: boolean | undefined;
1989
3288
  autoResolveContradictions?: boolean | undefined;
3289
+ contradictionScan?: boolean | undefined;
3290
+ contradictionScanMaxNotes?: number | undefined;
1990
3291
  } | undefined;
1991
3292
  surfacing?: {
1992
3293
  includeDomainSummaries?: boolean | undefined;
@@ -1995,6 +3296,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
1995
3296
  maxTokensForKnowledge?: number | undefined;
1996
3297
  includeEvidence?: boolean | undefined;
1997
3298
  includeLinks?: boolean | undefined;
3299
+ entityBoostWeight?: number | undefined;
1998
3300
  } | undefined;
1999
3301
  minimemAware?: boolean | undefined;
2000
3302
  coherenceChecking?: boolean | undefined;
@@ -2005,16 +3307,54 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2005
3307
  enabled: z.ZodDefault<z.ZodBoolean>;
2006
3308
  /** Path to the SQLite database for skill storage (relative to storage.baseDir) */
2007
3309
  dbPath: z.ZodDefault<z.ZodString>;
3310
+ /** Optional mirror of published skills into a shared filesystem bank. */
3311
+ sharedBank: z.ZodDefault<z.ZodObject<{
3312
+ /**
3313
+ * Mirror published (graduated) playbooks into a shared skill-tree
3314
+ * filesystem bank so consumers outside this Atlas instance (openswarm's
3315
+ * SkillProvider, Claude Code skill loaders, peer tools) can read them
3316
+ * without an openhive materialization bridge. Off by default: writing to a
3317
+ * machine-global bank is an explicit opt-in (CLI `--shared-bank` /
3318
+ * `COGCORE_SHARED_SKILL_BANK`).
3319
+ */
3320
+ enabled: z.ZodDefault<z.ZodBoolean>;
3321
+ /**
3322
+ * Bank base path (skill-tree `storage.basePath`; skills land under
3323
+ * `<path>/.skilltree/skills/<id>/SKILL.md`). Defaults to the ecosystem's
3324
+ * conventional shared bank `~/.skill-tree` when omitted.
3325
+ */
3326
+ path: z.ZodOptional<z.ZodString>;
3327
+ }, "strip", z.ZodTypeAny, {
3328
+ enabled: boolean;
3329
+ path?: string | undefined;
3330
+ }, {
3331
+ path?: string | undefined;
3332
+ enabled?: boolean | undefined;
3333
+ }>>;
2008
3334
  }, "strip", z.ZodTypeAny, {
2009
3335
  enabled: boolean;
2010
3336
  dbPath: string;
3337
+ sharedBank: {
3338
+ enabled: boolean;
3339
+ path?: string | undefined;
3340
+ };
2011
3341
  }, {
2012
3342
  enabled?: boolean | undefined;
2013
3343
  dbPath?: string | undefined;
3344
+ sharedBank?: {
3345
+ path?: string | undefined;
3346
+ enabled?: boolean | undefined;
3347
+ } | undefined;
2014
3348
  }>>;
2015
3349
  /** Curated playbook seeding configuration */
2016
3350
  curatedPlaybooks: z.ZodDefault<z.ZodObject<{
2017
- /** Load the bundled compound-engineering seed pack on init */
3351
+ /**
3352
+ * Load the bundled seed packs (compound-engineering + agent-ops) on init.
3353
+ * Cold-start semantics: bundled packs only seed an EMPTY playbook library
3354
+ * (mirrors the meta-playbook seed idempotency), so a warm store is never
3355
+ * retro-seeded on upgrade. `recreateOnInit` bypasses the empty check.
3356
+ * Default `true`; evals that must stay seed-free set this to `false`.
3357
+ */
2018
3358
  loadBundledSeedPack: z.ZodDefault<z.ZodBoolean>;
2019
3359
  /** Additional directories to load curated playbooks from (backward compat) */
2020
3360
  additionalDirs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -2094,34 +3434,321 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2094
3434
  }>>;
2095
3435
  /** Feature toggles for ruvector-inspired subsystems */
2096
3436
  features: z.ZodDefault<z.ZodObject<{
2097
- /** Enable instant (hot-path) learning on every trajectory (InstantLoop) */
2098
- instantLoop: z.ZodDefault<z.ZodBoolean>;
2099
3437
  /** Enable reflexion episode generation and storage */
2100
3438
  reflexion: z.ZodDefault<z.ZodBoolean>;
2101
3439
  /** Enable coherence checking on knowledge note insertion */
2102
3440
  coherenceChecking: z.ZodDefault<z.ZodBoolean>;
2103
- /** Enable experience clustering via ReasoningBank in batch pipeline */
2104
- reasoningBank: z.ZodDefault<z.ZodBoolean>;
2105
- /** Enable causal edge extraction in instant loop */
2106
- causalExtraction: z.ZodDefault<z.ZodBoolean>;
2107
3441
  /** Enable temporal compression (Hot/Warm/Cold/Evict) in batch pipeline */
2108
3442
  temporalCompression: z.ZodDefault<z.ZodBoolean>;
3443
+ /**
3444
+ * Dual-write every processed trajectory to the durable `dream_queue` table
3445
+ * (Phase A of the dreaming refactor). Write-only substrate: nothing drains it
3446
+ * yet, so this does not change learning behavior. Default on so the queue is
3447
+ * populated and ready for the decoupled `dream()` consumer (Phase B).
3448
+ */
3449
+ dreamQueue: z.ZodDefault<z.ZodBoolean>;
3450
+ /**
3451
+ * Roll each dream-time effectiveness annotation into a per-(scope, family,
3452
+ * solver) lift cell (`lift_cells` table, scope 'production') — the
3453
+ * treatment-effect companion to the eval difficulty registry. Write-only
3454
+ * (no core consumer; read by `cogcore eval lift-report`), one cheap upsert
3455
+ * per annotated trajectory, dream-time only. Default on.
3456
+ */
3457
+ liftTracking: z.ZodDefault<z.ZodBoolean>;
3458
+ /**
3459
+ * Enable Pareto-frontier merge proposing in the maintenance loop.
3460
+ * On by default, but self-gating: it only runs once a ReplayJudge is
3461
+ * available (bound via `setLearningProvider` for an LLM judge, or
3462
+ * `enableLiveReplayGating` for a live judge). With no judge it no-ops, so
3463
+ * headless / provider-less setups are unaffected.
3464
+ */
3465
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
3466
+ /**
3467
+ * Enable single-parent reflective playbook mutation in the maintenance
3468
+ * loop. On by default, but self-gating: it only runs once BOTH an LLM
3469
+ * provider (the generator, via `setLearningProvider`) and a ReplayJudge
3470
+ * are available. With neither it no-ops.
3471
+ */
3472
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
3473
+ /**
3474
+ * Force lexical retrieval (Jaccard+trigram textSimilarity) even when an
3475
+ * embedding provider is attached. Default false: when a provider is set,
3476
+ * retrieval scores by vector cosine (semantic). Set true to ablate
3477
+ * semantic vs. lexical — corresponds to E5 ablation arm `lexical-retrieval`.
3478
+ */
3479
+ lexicalRetrieval: z.ZodDefault<z.ZodBoolean>;
3480
+ /**
3481
+ * Enable write-time curation (PR-D2): near-dup merge on add(), helpfulness
3482
+ * counters, prune pass in maintenance, helpfulness-weighted injection re-rank.
3483
+ * Default true. Set false to restore append-only behavior (ablation arm
3484
+ * `append-only`).
3485
+ */
3486
+ curation: z.ZodDefault<z.ZodBoolean>;
3487
+ /**
3488
+ * Surface applicability conditions (situations + antiPatterns) at injection
3489
+ * time so the agent sees "Apply when:" / "Do NOT apply when:" alongside the
3490
+ * strategy and tactics. Default true — this is the fix. Set false to
3491
+ * reproduce old behavior (ablation arm: no-applicability-injection).
3492
+ */
3493
+ injectApplicability: z.ZodDefault<z.ZodBoolean>;
3494
+ /**
3495
+ * Use embedding cosine similarity for anti-pattern exclusion at retrieval
3496
+ * time when an embedding provider is attached. Default true. When false,
3497
+ * falls back to the legacy lexical textSimilarity > 0.7 guard.
3498
+ */
3499
+ semanticAntiPatterns: z.ZodDefault<z.ZodBoolean>;
3500
+ /**
3501
+ * F6: Update playbook helpful/harmful counters via INJECTION-PRESENCE +
3502
+ * TASK OUTCOME (relevance-weighted), rather than lexical usage detection.
3503
+ *
3504
+ * When true (default), for each task solve with injected playbooks, each
3505
+ * playbook's successCount/failureCount is incremented by its relevance
3506
+ * share (score_i / sum(score_j)) times the task outcome. This fixes the
3507
+ * curation loop for DISTILLED playbooks whose abstract tactics never
3508
+ * lexically match concrete actions, so wasUsed was always false and counters
3509
+ * never updated.
3510
+ *
3511
+ * When false, falls back to the old wasUsed-gated recordSuccess/recordFailure
3512
+ * path (lexical usage detection; ablation arm).
3513
+ *
3514
+ * Default true (this is the fix).
3515
+ */
3516
+ injectionPresenceCredit: z.ZodDefault<z.ZodBoolean>;
3517
+ /**
3518
+ * ADDITIVE LEARNING (default ON as of 2026-07-06). When ON, procedural-memory
3519
+ * consolidation REFINES/REUSES existing playbooks instead of minting a unique
3520
+ * `distilled-<uuid>` per trajectory:
3521
+ * FIX 1 — at dream distill time, a freshly distilled playbook that is
3522
+ * sufficiently similar (see `learning.additiveMergeThreshold`) to an
3523
+ * existing one (this-batch OR library) is merged into it (append
3524
+ * createdFrom, fold guidance/anti-patterns, accumulate counters, bump
3525
+ * version) rather than added as a new row.
3526
+ * FIX 2 — each solve records a frontier/live outcome for the playbooks
3527
+ * that were actually INJECTED (served set), so reused playbooks
3528
+ * accumulate frontier rows aligned with hybrid retrieval — not just the
3529
+ * legacy 0.3 lexical instant-loop match — feeding a non-sparse mutation
3530
+ * gate.
3531
+ * Set `false` (eval `--no-additive`) to restore the legacy "proliferating"
3532
+ * behavior (a new unique `distilled-<uuid>` per trajectory) for A/B arms.
3533
+ */
3534
+ additiveConsolidation: z.ZodDefault<z.ZodBoolean>;
3535
+ /**
3536
+ * F5: Emit a USE-TIME relevance-gating instruction alongside injected
3537
+ * candidate playbooks, telling the agent to self-filter against the
3538
+ * "Apply when:" / "Do NOT apply when:" conditions before using any
3539
+ * candidate. Only emitted when there is ≥1 candidate playbook AND
3540
+ * injectApplicability is on.
3541
+ *
3542
+ * Default true. Set false to reproduce old behavior (ablation arm:
3543
+ * no-relevance-gating).
3544
+ */
3545
+ relevanceGating: z.ZodDefault<z.ZodBoolean>;
2109
3546
  }, "strip", z.ZodTypeAny, {
2110
3547
  coherenceChecking: boolean;
2111
- instantLoop: boolean;
2112
3548
  reflexion: boolean;
2113
- reasoningBank: boolean;
2114
- causalExtraction: boolean;
2115
3549
  temporalCompression: boolean;
3550
+ dreamQueue: boolean;
3551
+ liftTracking: boolean;
3552
+ mergeProposing: boolean;
3553
+ reflectiveMutation: boolean;
3554
+ lexicalRetrieval: boolean;
3555
+ curation: boolean;
3556
+ injectApplicability: boolean;
3557
+ semanticAntiPatterns: boolean;
3558
+ injectionPresenceCredit: boolean;
3559
+ additiveConsolidation: boolean;
3560
+ relevanceGating: boolean;
2116
3561
  }, {
2117
3562
  coherenceChecking?: boolean | undefined;
2118
- instantLoop?: boolean | undefined;
2119
3563
  reflexion?: boolean | undefined;
2120
- reasoningBank?: boolean | undefined;
2121
- causalExtraction?: boolean | undefined;
2122
3564
  temporalCompression?: boolean | undefined;
3565
+ dreamQueue?: boolean | undefined;
3566
+ liftTracking?: boolean | undefined;
3567
+ mergeProposing?: boolean | undefined;
3568
+ reflectiveMutation?: boolean | undefined;
3569
+ lexicalRetrieval?: boolean | undefined;
3570
+ curation?: boolean | undefined;
3571
+ injectApplicability?: boolean | undefined;
3572
+ semanticAntiPatterns?: boolean | undefined;
3573
+ injectionPresenceCredit?: boolean | undefined;
3574
+ additiveConsolidation?: boolean | undefined;
3575
+ relevanceGating?: boolean | undefined;
3576
+ }>>;
3577
+ /** Dreaming / consolidation configuration */
3578
+ dream: z.ZodDefault<z.ZodObject<{
3579
+ /** After each solve/process call, run a dream synchronously (eval determinism). */
3580
+ consolidateInline: z.ZodDefault<z.ZodBoolean>;
3581
+ /** Pending-row count at/above which the coordinator considers a dream due. */
3582
+ countThreshold: z.ZodDefault<z.ZodNumber>;
3583
+ /** Oldest-pending age at/above which a dream is considered overdue (ms). */
3584
+ maxStalenessMs: z.ZodDefault<z.ZodNumber>;
3585
+ /** Max rows claimed per internal batch within a single dream. */
3586
+ maxRowsPerDream: z.ZodDefault<z.ZodNumber>;
3587
+ /** Max internal batches a single dream will drain before stopping. */
3588
+ maxBatchesPerDream: z.ZodDefault<z.ZodNumber>;
3589
+ /** Row lease TTL while a dream holds claimed rows (ms). */
3590
+ leaseTtlMs: z.ZodDefault<z.ZodNumber>;
3591
+ /** Attempts before a repeatedly-failing row is parked as `failed`. */
3592
+ maxAttempts: z.ZodDefault<z.ZodNumber>;
3593
+ /** In-process idle scheduler. */
3594
+ scheduler: z.ZodDefault<z.ZodObject<{
3595
+ /** Arm an in-process idle timer that dreams after `idleMs` of no activity. */
3596
+ enabled: z.ZodDefault<z.ZodBoolean>;
3597
+ /** Idle debounce before an auto-dream fires (ms). */
3598
+ idleMs: z.ZodDefault<z.ZodNumber>;
3599
+ }, "strip", z.ZodTypeAny, {
3600
+ enabled: boolean;
3601
+ idleMs: number;
3602
+ }, {
3603
+ enabled?: boolean | undefined;
3604
+ idleMs?: number | undefined;
3605
+ }>>;
3606
+ }, "strip", z.ZodTypeAny, {
3607
+ consolidateInline: boolean;
3608
+ countThreshold: number;
3609
+ maxStalenessMs: number;
3610
+ maxRowsPerDream: number;
3611
+ maxBatchesPerDream: number;
3612
+ leaseTtlMs: number;
3613
+ maxAttempts: number;
3614
+ scheduler: {
3615
+ enabled: boolean;
3616
+ idleMs: number;
3617
+ };
3618
+ }, {
3619
+ consolidateInline?: boolean | undefined;
3620
+ countThreshold?: number | undefined;
3621
+ maxStalenessMs?: number | undefined;
3622
+ maxRowsPerDream?: number | undefined;
3623
+ maxBatchesPerDream?: number | undefined;
3624
+ leaseTtlMs?: number | undefined;
3625
+ maxAttempts?: number | undefined;
3626
+ scheduler?: {
3627
+ enabled?: boolean | undefined;
3628
+ idleMs?: number | undefined;
3629
+ } | undefined;
3630
+ }>>;
3631
+ /** Validation-only mechanism isolation controls. */
3632
+ validation: z.ZodDefault<z.ZodObject<{
3633
+ /** Enable validation-specific isolation controls. Production default is off. */
3634
+ enabled: z.ZodDefault<z.ZodBoolean>;
3635
+ /**
3636
+ * active: existing direct-commit behavior.
3637
+ * frozen: no mutation/merge/curation writes during validation.
3638
+ * candidate: proposals are redirected to non-serving candidates (future work).
3639
+ */
3640
+ mutationMode: z.ZodDefault<z.ZodEnum<["frozen", "active", "candidate"]>>;
3641
+ channelMasks: z.ZodDefault<z.ZodObject<{
3642
+ retrieval: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
3643
+ serving: z.ZodDefault<z.ZodArray<z.ZodEnum<["experiences", "knowledge", "playbooks", "metaPlaybooks", "shortTerm"]>, "many">>;
3644
+ write: z.ZodDefault<z.ZodArray<z.ZodEnum<["experience", "knowledgeNote", "playbook", "metaPlaybook", "reflexion", "causal", "frontier", "diagnosticOnly"]>, "many">>;
3645
+ maintenance: z.ZodDefault<z.ZodObject<{
3646
+ /** Write-time curation and prune maintenance. */
3647
+ curation: z.ZodDefault<z.ZodBoolean>;
3648
+ /** Pareto/replay-gated two-parent merge proposals. */
3649
+ mergeProposing: z.ZodDefault<z.ZodBoolean>;
3650
+ /** Single-parent reflective mutation proposals. */
3651
+ reflectiveMutation: z.ZodDefault<z.ZodBoolean>;
3652
+ /** Dream/batch extraction may create new learned artifacts. */
3653
+ extraction: z.ZodDefault<z.ZodBoolean>;
3654
+ /** Scheduler-driven maintenance/dream runs. */
3655
+ scheduling: z.ZodDefault<z.ZodBoolean>;
3656
+ }, "strip", z.ZodTypeAny, {
3657
+ extraction: boolean;
3658
+ mergeProposing: boolean;
3659
+ reflectiveMutation: boolean;
3660
+ curation: boolean;
3661
+ scheduling: boolean;
3662
+ }, {
3663
+ extraction?: boolean | undefined;
3664
+ mergeProposing?: boolean | undefined;
3665
+ reflectiveMutation?: boolean | undefined;
3666
+ curation?: boolean | undefined;
3667
+ scheduling?: boolean | undefined;
3668
+ }>>;
3669
+ }, "strip", z.ZodTypeAny, {
3670
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3671
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3672
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
3673
+ maintenance: {
3674
+ extraction: boolean;
3675
+ mergeProposing: boolean;
3676
+ reflectiveMutation: boolean;
3677
+ curation: boolean;
3678
+ scheduling: boolean;
3679
+ };
3680
+ }, {
3681
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
3682
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
3683
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
3684
+ maintenance?: {
3685
+ extraction?: boolean | undefined;
3686
+ mergeProposing?: boolean | undefined;
3687
+ reflectiveMutation?: boolean | undefined;
3688
+ curation?: boolean | undefined;
3689
+ scheduling?: boolean | undefined;
3690
+ } | undefined;
3691
+ }>>;
3692
+ /**
3693
+ * Permit cold-start seeding (bundled playbook pack, meta-playbook seeds,
3694
+ * meta-strategy priors) under validation. Default false: validation runs
3695
+ * start from an explicitly-controlled memory state. The seed-lift A/B
3696
+ * (Phase 1 of the seed co-optimization loop) sets this true on the seeded
3697
+ * arm so the committed seeds are the *measured variable* rather than an
3698
+ * uncontrolled confound.
3699
+ */
3700
+ allowSeeds: z.ZodDefault<z.ZodBoolean>;
3701
+ }, "strip", z.ZodTypeAny, {
3702
+ enabled: boolean;
3703
+ mutationMode: "frozen" | "active" | "candidate";
3704
+ channelMasks: {
3705
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3706
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3707
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
3708
+ maintenance: {
3709
+ extraction: boolean;
3710
+ mergeProposing: boolean;
3711
+ reflectiveMutation: boolean;
3712
+ curation: boolean;
3713
+ scheduling: boolean;
3714
+ };
3715
+ };
3716
+ allowSeeds: boolean;
3717
+ }, {
3718
+ enabled?: boolean | undefined;
3719
+ mutationMode?: "frozen" | "active" | "candidate" | undefined;
3720
+ channelMasks?: {
3721
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
3722
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
3723
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
3724
+ maintenance?: {
3725
+ extraction?: boolean | undefined;
3726
+ mergeProposing?: boolean | undefined;
3727
+ reflectiveMutation?: boolean | undefined;
3728
+ curation?: boolean | undefined;
3729
+ scheduling?: boolean | undefined;
3730
+ } | undefined;
3731
+ } | undefined;
3732
+ allowSeeds?: boolean | undefined;
2123
3733
  }>>;
2124
3734
  }, "strip", z.ZodTypeAny, {
3735
+ validation: {
3736
+ enabled: boolean;
3737
+ mutationMode: "frozen" | "active" | "candidate";
3738
+ channelMasks: {
3739
+ retrieval: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3740
+ serving: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[];
3741
+ write: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[];
3742
+ maintenance: {
3743
+ extraction: boolean;
3744
+ mergeProposing: boolean;
3745
+ reflectiveMutation: boolean;
3746
+ curation: boolean;
3747
+ scheduling: boolean;
3748
+ };
3749
+ };
3750
+ allowSeeds: boolean;
3751
+ };
2125
3752
  refinement: {
2126
3753
  maxIterations: number;
2127
3754
  acceptableScore: number;
@@ -2160,13 +3787,46 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2160
3787
  autoPrune: boolean;
2161
3788
  preserveDomainCoverage: boolean;
2162
3789
  };
3790
+ frontierRouting: boolean;
3791
+ injectFailedExperiences: boolean;
3792
+ seedMetaPlaybooks: boolean;
3793
+ seedMetaStrategies: boolean;
3794
+ playbookRetrieval: {
3795
+ mode: "legacy" | "skill-tree-hybrid";
3796
+ minScore: number;
3797
+ minScoreSemantic: number;
3798
+ crossDomainFloorMultiplier: number;
3799
+ fusion: "weighted" | "rrf";
3800
+ incorporation: "full" | "sectioned";
3801
+ };
3802
+ playbookApplicability: {
3803
+ enabled: boolean;
3804
+ minSpecificityScore: number;
3805
+ crossDomainMinScore: number;
3806
+ };
3807
+ proceduralMemory: {
3808
+ source: "sqlite" | "filesystem";
3809
+ dir: string;
3810
+ strictStartup: boolean;
3811
+ pruneSqliteOnly: boolean;
3812
+ watch: boolean;
3813
+ watchDebounceMs: number;
3814
+ watchUsePolling: boolean;
3815
+ watchPollIntervalMs: number;
3816
+ structuralDualWrite: {
3817
+ enabled: boolean;
3818
+ dir: string;
3819
+ };
3820
+ };
2163
3821
  };
2164
3822
  learning: {
2165
3823
  creditStrategy: "llm" | "simple" | "counterfactual";
2166
- patternExtractor: "llm" | "both" | "text";
3824
+ patternExtractor: "llm" | "text" | "both";
3825
+ strictExtraction: boolean;
2167
3826
  minTrajectories: number;
2168
3827
  deduplicationThreshold: number;
2169
3828
  maxExperiences: number;
3829
+ additiveMergeThreshold: number;
2170
3830
  minHoursSinceLast?: number | undefined;
2171
3831
  minSuccessRate?: number | undefined;
2172
3832
  };
@@ -2174,6 +3834,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2174
3834
  similarityThreshold: number;
2175
3835
  useDomainRouting: boolean;
2176
3836
  defaultStrategy: string;
3837
+ difficultyAwareRouting: boolean;
2177
3838
  };
2178
3839
  storage: {
2179
3840
  baseDir: string;
@@ -2186,12 +3847,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2186
3847
  maxTokensForSkills: number;
2187
3848
  includeRefinements: boolean;
2188
3849
  includeExamples: boolean;
3850
+ includeExemplar: boolean;
2189
3851
  cacheRefreshInterval: number;
2190
3852
  };
2191
3853
  promotion: {
2192
3854
  minSuccessRate: number;
2193
3855
  minConfidence: number;
2194
3856
  minSuccessCount: number;
3857
+ evalGate: boolean;
2195
3858
  };
2196
3859
  limits: {
2197
3860
  maxCoreSkills: number;
@@ -2202,6 +3865,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2202
3865
  failureThreshold: number;
2203
3866
  minConfidenceToRetain: number;
2204
3867
  };
3868
+ retrieval: {
3869
+ mode: "legacy" | "skill-tree-hybrid";
3870
+ minScore: number;
3871
+ minScoreSemantic: number;
3872
+ crossDomainFloorMultiplier: number;
3873
+ fusion: "weighted" | "rrf";
3874
+ incorporation: "full" | "sectioned";
3875
+ };
2205
3876
  };
2206
3877
  mcp: {
2207
3878
  enabled: boolean;
@@ -2218,6 +3889,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2218
3889
  keepFailedWorkspaces: boolean;
2219
3890
  maxConcurrentAgents: number;
2220
3891
  staleWorkspaceMaxAgeMs: number;
3892
+ forceAgenticPlaybookExtraction: boolean;
2221
3893
  workspaceBaseDir?: string | undefined;
2222
3894
  };
2223
3895
  compute: {
@@ -2225,25 +3897,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2225
3897
  defaultLocation: "local" | "remote" | "any";
2226
3898
  allowFallback: boolean;
2227
3899
  };
2228
- teamLearning: {
2229
- enabled: boolean;
2230
- deduplicationThreshold: number;
2231
- minTeamTrajectories: number;
2232
- metricsWeight: number;
2233
- maxTeamExperiences: number;
2234
- maxTeamPlaybooks: number;
2235
- maxRolePlaybooks: number;
2236
- analysisTimeout: number;
2237
- extractionTimeout: number;
2238
- compression: {
2239
- maxTokensPerAgent: number;
2240
- preserveInteractionBoundaries: boolean;
2241
- foldThreshold: number;
2242
- maxCriticalRatio: number;
2243
- criticalStepThreshold: number;
2244
- criticalInteractionThreshold: number;
2245
- };
2246
- };
2247
3900
  knowledgeBank: {
2248
3901
  confidence: {
2249
3902
  extractedInitial: number;
@@ -2255,14 +3908,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2255
3908
  decayGracePeriodDays: number;
2256
3909
  };
2257
3910
  enabled: boolean;
2258
- graph: {
2259
- enabledLayers: ("semantic" | "temporal" | "causal" | "entity")[];
2260
- inferTemporalEdges: boolean;
2261
- inferCausalEdges: boolean;
2262
- inferEntityEdges: boolean;
2263
- domainSplitThreshold: number;
2264
- sqlitePromotionThreshold: number;
2265
- };
2266
3911
  memoryDir: string;
2267
3912
  extraction: {
2268
3913
  enabled: boolean;
@@ -2276,6 +3921,9 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2276
3921
  autoRegenerateSummaries: boolean;
2277
3922
  llmSummaryGeneration: boolean;
2278
3923
  autoResolveContradictions: boolean;
3924
+ consolidationMode?: "content" | "off" | "index" | undefined;
3925
+ contradictionScan?: boolean | undefined;
3926
+ contradictionScanMaxNotes?: number | undefined;
2279
3927
  };
2280
3928
  surfacing: {
2281
3929
  includeDomainSummaries: boolean;
@@ -2284,6 +3932,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2284
3932
  maxTokensForKnowledge: number;
2285
3933
  includeEvidence: boolean;
2286
3934
  includeLinks: boolean;
3935
+ entityBoostWeight?: number | undefined;
2287
3936
  };
2288
3937
  minimemAware: boolean;
2289
3938
  coherenceChecking: boolean;
@@ -2291,6 +3940,10 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2291
3940
  skillTree: {
2292
3941
  enabled: boolean;
2293
3942
  dbPath: string;
3943
+ sharedBank: {
3944
+ enabled: boolean;
3945
+ path?: string | undefined;
3946
+ };
2294
3947
  };
2295
3948
  curatedPlaybooks: {
2296
3949
  loadBundledSeedPack: boolean;
@@ -2312,13 +3965,51 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2312
3965
  };
2313
3966
  features: {
2314
3967
  coherenceChecking: boolean;
2315
- instantLoop: boolean;
2316
3968
  reflexion: boolean;
2317
- reasoningBank: boolean;
2318
- causalExtraction: boolean;
2319
3969
  temporalCompression: boolean;
3970
+ dreamQueue: boolean;
3971
+ liftTracking: boolean;
3972
+ mergeProposing: boolean;
3973
+ reflectiveMutation: boolean;
3974
+ lexicalRetrieval: boolean;
3975
+ curation: boolean;
3976
+ injectApplicability: boolean;
3977
+ semanticAntiPatterns: boolean;
3978
+ injectionPresenceCredit: boolean;
3979
+ additiveConsolidation: boolean;
3980
+ relevanceGating: boolean;
3981
+ };
3982
+ dream: {
3983
+ consolidateInline: boolean;
3984
+ countThreshold: number;
3985
+ maxStalenessMs: number;
3986
+ maxRowsPerDream: number;
3987
+ maxBatchesPerDream: number;
3988
+ leaseTtlMs: number;
3989
+ maxAttempts: number;
3990
+ scheduler: {
3991
+ enabled: boolean;
3992
+ idleMs: number;
3993
+ };
2320
3994
  };
2321
3995
  }, {
3996
+ validation?: {
3997
+ enabled?: boolean | undefined;
3998
+ mutationMode?: "frozen" | "active" | "candidate" | undefined;
3999
+ channelMasks?: {
4000
+ retrieval?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
4001
+ serving?: ("playbooks" | "experiences" | "knowledge" | "metaPlaybooks" | "shortTerm")[] | undefined;
4002
+ write?: ("causal" | "reflexion" | "experience" | "knowledgeNote" | "playbook" | "metaPlaybook" | "frontier" | "diagnosticOnly")[] | undefined;
4003
+ maintenance?: {
4004
+ extraction?: boolean | undefined;
4005
+ mergeProposing?: boolean | undefined;
4006
+ reflectiveMutation?: boolean | undefined;
4007
+ curation?: boolean | undefined;
4008
+ scheduling?: boolean | undefined;
4009
+ } | undefined;
4010
+ } | undefined;
4011
+ allowSeeds?: boolean | undefined;
4012
+ } | undefined;
2322
4013
  refinement?: {
2323
4014
  maxIterations?: number | undefined;
2324
4015
  acceptableScore?: number | undefined;
@@ -2357,20 +4048,54 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2357
4048
  autoPrune?: boolean | undefined;
2358
4049
  preserveDomainCoverage?: boolean | undefined;
2359
4050
  } | undefined;
4051
+ frontierRouting?: boolean | undefined;
4052
+ injectFailedExperiences?: boolean | undefined;
4053
+ seedMetaPlaybooks?: boolean | undefined;
4054
+ seedMetaStrategies?: boolean | undefined;
4055
+ playbookRetrieval?: {
4056
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
4057
+ minScore?: number | undefined;
4058
+ minScoreSemantic?: number | undefined;
4059
+ crossDomainFloorMultiplier?: number | undefined;
4060
+ fusion?: "weighted" | "rrf" | undefined;
4061
+ incorporation?: "full" | "sectioned" | undefined;
4062
+ } | undefined;
4063
+ playbookApplicability?: {
4064
+ enabled?: boolean | undefined;
4065
+ minSpecificityScore?: number | undefined;
4066
+ crossDomainMinScore?: number | undefined;
4067
+ } | undefined;
4068
+ proceduralMemory?: {
4069
+ source?: "sqlite" | "filesystem" | undefined;
4070
+ dir?: string | undefined;
4071
+ strictStartup?: boolean | undefined;
4072
+ pruneSqliteOnly?: boolean | undefined;
4073
+ watch?: boolean | undefined;
4074
+ watchDebounceMs?: number | undefined;
4075
+ watchUsePolling?: boolean | undefined;
4076
+ watchPollIntervalMs?: number | undefined;
4077
+ structuralDualWrite?: {
4078
+ enabled?: boolean | undefined;
4079
+ dir?: string | undefined;
4080
+ } | undefined;
4081
+ } | undefined;
2360
4082
  } | undefined;
2361
4083
  learning?: {
2362
4084
  creditStrategy?: "llm" | "simple" | "counterfactual" | undefined;
2363
- patternExtractor?: "llm" | "both" | "text" | undefined;
4085
+ patternExtractor?: "llm" | "text" | "both" | undefined;
4086
+ strictExtraction?: boolean | undefined;
2364
4087
  minTrajectories?: number | undefined;
2365
4088
  minHoursSinceLast?: number | undefined;
2366
4089
  minSuccessRate?: number | undefined;
2367
4090
  deduplicationThreshold?: number | undefined;
2368
4091
  maxExperiences?: number | undefined;
4092
+ additiveMergeThreshold?: number | undefined;
2369
4093
  } | undefined;
2370
4094
  router?: {
2371
4095
  similarityThreshold?: number | undefined;
2372
4096
  useDomainRouting?: boolean | undefined;
2373
4097
  defaultStrategy?: string | undefined;
4098
+ difficultyAwareRouting?: boolean | undefined;
2374
4099
  } | undefined;
2375
4100
  storage?: {
2376
4101
  baseDir?: string | undefined;
@@ -2383,12 +4108,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2383
4108
  maxTokensForSkills?: number | undefined;
2384
4109
  includeRefinements?: boolean | undefined;
2385
4110
  includeExamples?: boolean | undefined;
4111
+ includeExemplar?: boolean | undefined;
2386
4112
  cacheRefreshInterval?: number | undefined;
2387
4113
  } | undefined;
2388
4114
  promotion?: {
2389
4115
  minSuccessRate?: number | undefined;
2390
4116
  minConfidence?: number | undefined;
2391
4117
  minSuccessCount?: number | undefined;
4118
+ evalGate?: boolean | undefined;
2392
4119
  } | undefined;
2393
4120
  limits?: {
2394
4121
  maxCoreSkills?: number | undefined;
@@ -2399,6 +4126,14 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2399
4126
  failureThreshold?: number | undefined;
2400
4127
  minConfidenceToRetain?: number | undefined;
2401
4128
  } | undefined;
4129
+ retrieval?: {
4130
+ mode?: "legacy" | "skill-tree-hybrid" | undefined;
4131
+ minScore?: number | undefined;
4132
+ minScoreSemantic?: number | undefined;
4133
+ crossDomainFloorMultiplier?: number | undefined;
4134
+ fusion?: "weighted" | "rrf" | undefined;
4135
+ incorporation?: "full" | "sectioned" | undefined;
4136
+ } | undefined;
2402
4137
  } | undefined;
2403
4138
  mcp?: {
2404
4139
  enabled?: boolean | undefined;
@@ -2416,31 +4151,13 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2416
4151
  maxConcurrentAgents?: number | undefined;
2417
4152
  staleWorkspaceMaxAgeMs?: number | undefined;
2418
4153
  workspaceBaseDir?: string | undefined;
4154
+ forceAgenticPlaybookExtraction?: boolean | undefined;
2419
4155
  } | undefined;
2420
4156
  compute?: {
2421
4157
  defaultCostTier?: "free" | "low" | "medium" | "high" | undefined;
2422
4158
  defaultLocation?: "local" | "remote" | "any" | undefined;
2423
4159
  allowFallback?: boolean | undefined;
2424
4160
  } | undefined;
2425
- teamLearning?: {
2426
- enabled?: boolean | undefined;
2427
- deduplicationThreshold?: number | undefined;
2428
- minTeamTrajectories?: number | undefined;
2429
- metricsWeight?: number | undefined;
2430
- maxTeamExperiences?: number | undefined;
2431
- maxTeamPlaybooks?: number | undefined;
2432
- maxRolePlaybooks?: number | undefined;
2433
- analysisTimeout?: number | undefined;
2434
- extractionTimeout?: number | undefined;
2435
- compression?: {
2436
- maxTokensPerAgent?: number | undefined;
2437
- preserveInteractionBoundaries?: boolean | undefined;
2438
- foldThreshold?: number | undefined;
2439
- maxCriticalRatio?: number | undefined;
2440
- criticalStepThreshold?: number | undefined;
2441
- criticalInteractionThreshold?: number | undefined;
2442
- } | undefined;
2443
- } | undefined;
2444
4161
  knowledgeBank?: {
2445
4162
  confidence?: {
2446
4163
  extractedInitial?: number | undefined;
@@ -2452,14 +4169,6 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2452
4169
  decayGracePeriodDays?: number | undefined;
2453
4170
  } | undefined;
2454
4171
  enabled?: boolean | undefined;
2455
- graph?: {
2456
- enabledLayers?: ("semantic" | "temporal" | "causal" | "entity")[] | undefined;
2457
- inferTemporalEdges?: boolean | undefined;
2458
- inferCausalEdges?: boolean | undefined;
2459
- inferEntityEdges?: boolean | undefined;
2460
- domainSplitThreshold?: number | undefined;
2461
- sqlitePromotionThreshold?: number | undefined;
2462
- } | undefined;
2463
4172
  memoryDir?: string | undefined;
2464
4173
  extraction?: {
2465
4174
  enabled?: boolean | undefined;
@@ -2469,10 +4178,13 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2469
4178
  defrag?: {
2470
4179
  minInboxItems?: number | undefined;
2471
4180
  autoConsolidate?: boolean | undefined;
4181
+ consolidationMode?: "content" | "off" | "index" | undefined;
2472
4182
  consolidationThreshold?: number | undefined;
2473
4183
  autoRegenerateSummaries?: boolean | undefined;
2474
4184
  llmSummaryGeneration?: boolean | undefined;
2475
4185
  autoResolveContradictions?: boolean | undefined;
4186
+ contradictionScan?: boolean | undefined;
4187
+ contradictionScanMaxNotes?: number | undefined;
2476
4188
  } | undefined;
2477
4189
  surfacing?: {
2478
4190
  includeDomainSummaries?: boolean | undefined;
@@ -2481,6 +4193,7 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2481
4193
  maxTokensForKnowledge?: number | undefined;
2482
4194
  includeEvidence?: boolean | undefined;
2483
4195
  includeLinks?: boolean | undefined;
4196
+ entityBoostWeight?: number | undefined;
2484
4197
  } | undefined;
2485
4198
  minimemAware?: boolean | undefined;
2486
4199
  coherenceChecking?: boolean | undefined;
@@ -2488,6 +4201,10 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2488
4201
  skillTree?: {
2489
4202
  enabled?: boolean | undefined;
2490
4203
  dbPath?: string | undefined;
4204
+ sharedBank?: {
4205
+ path?: string | undefined;
4206
+ enabled?: boolean | undefined;
4207
+ } | undefined;
2491
4208
  } | undefined;
2492
4209
  curatedPlaybooks?: {
2493
4210
  loadBundledSeedPack?: boolean | undefined;
@@ -2509,11 +4226,32 @@ export declare const AtlasConfigSchema: z.ZodObject<{
2509
4226
  } | undefined;
2510
4227
  features?: {
2511
4228
  coherenceChecking?: boolean | undefined;
2512
- instantLoop?: boolean | undefined;
2513
4229
  reflexion?: boolean | undefined;
2514
- reasoningBank?: boolean | undefined;
2515
- causalExtraction?: boolean | undefined;
2516
4230
  temporalCompression?: boolean | undefined;
4231
+ dreamQueue?: boolean | undefined;
4232
+ liftTracking?: boolean | undefined;
4233
+ mergeProposing?: boolean | undefined;
4234
+ reflectiveMutation?: boolean | undefined;
4235
+ lexicalRetrieval?: boolean | undefined;
4236
+ curation?: boolean | undefined;
4237
+ injectApplicability?: boolean | undefined;
4238
+ semanticAntiPatterns?: boolean | undefined;
4239
+ injectionPresenceCredit?: boolean | undefined;
4240
+ additiveConsolidation?: boolean | undefined;
4241
+ relevanceGating?: boolean | undefined;
4242
+ } | undefined;
4243
+ dream?: {
4244
+ consolidateInline?: boolean | undefined;
4245
+ countThreshold?: number | undefined;
4246
+ maxStalenessMs?: number | undefined;
4247
+ maxRowsPerDream?: number | undefined;
4248
+ maxBatchesPerDream?: number | undefined;
4249
+ leaseTtlMs?: number | undefined;
4250
+ maxAttempts?: number | undefined;
4251
+ scheduler?: {
4252
+ enabled?: boolean | undefined;
4253
+ idleMs?: number | undefined;
4254
+ } | undefined;
2517
4255
  } | undefined;
2518
4256
  }>;
2519
4257
  export type AtlasConfig = z.infer<typeof AtlasConfigSchema>;
@@ -2521,6 +4259,21 @@ export type AtlasConfig = z.infer<typeof AtlasConfigSchema>;
2521
4259
  * Create default configuration
2522
4260
  */
2523
4261
  export declare function createDefaultConfig(overrides?: Partial<AtlasConfig>): AtlasConfig;
4262
+ export declare function createValidationConfig(overrides?: Partial<ValidationConfig>): ValidationConfig;
4263
+ /**
4264
+ * Apply validation controls to the runtime-facing config.
4265
+ *
4266
+ * This does not enable validation on its own. When validation is enabled, the
4267
+ * maintenance mask gates the corresponding runtime feature flags. Frozen
4268
+ * mutation mode additionally disables direct mutation/merge/curation paths.
4269
+ *
4270
+ * Validation also disables ALL cold-start seeding (bundled packs,
4271
+ * meta-playbooks, routing priors) unless `validation.allowSeeds` is set:
4272
+ * validation runs must start from an explicitly-controlled memory state, so
4273
+ * any warmth is injected by the harness's own levers, never implicitly by
4274
+ * defaults. `allowSeeds: true` is the explicit lever for seed-lift A/Bs.
4275
+ */
4276
+ export declare function applyValidationControls(config: AtlasConfig): AtlasConfig;
2524
4277
  /**
2525
4278
  * Merge configurations
2526
4279
  */