@namzu/sdk 3.1.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/CHANGELOG.md +221 -0
  2. package/dist/advisory/__tests__/consultation-context.test.d.ts +2 -0
  3. package/dist/advisory/__tests__/consultation-context.test.d.ts.map +1 -0
  4. package/dist/advisory/__tests__/consultation-context.test.js +124 -0
  5. package/dist/advisory/__tests__/consultation-context.test.js.map +1 -0
  6. package/dist/advisory/context.d.ts +25 -0
  7. package/dist/advisory/context.d.ts.map +1 -1
  8. package/dist/advisory/context.js +18 -0
  9. package/dist/advisory/context.js.map +1 -1
  10. package/dist/advisory/executor.d.ts.map +1 -1
  11. package/dist/advisory/executor.js +25 -3
  12. package/dist/advisory/executor.js.map +1 -1
  13. package/dist/agents/SupervisorAgent.d.ts.map +1 -1
  14. package/dist/agents/SupervisorAgent.js +6 -0
  15. package/dist/agents/SupervisorAgent.js.map +1 -1
  16. package/dist/agents/__tests__/supervisor-hands-down-hitl.test.d.ts +2 -0
  17. package/dist/agents/__tests__/supervisor-hands-down-hitl.test.d.ts.map +1 -0
  18. package/dist/agents/__tests__/supervisor-hands-down-hitl.test.js +112 -0
  19. package/dist/agents/__tests__/supervisor-hands-down-hitl.test.js.map +1 -0
  20. package/dist/compaction/__tests__/context-reducer.test.d.ts +2 -0
  21. package/dist/compaction/__tests__/context-reducer.test.d.ts.map +1 -0
  22. package/dist/compaction/__tests__/context-reducer.test.js +197 -0
  23. package/dist/compaction/__tests__/context-reducer.test.js.map +1 -0
  24. package/dist/compaction/factory.d.ts +7 -0
  25. package/dist/compaction/factory.d.ts.map +1 -1
  26. package/dist/compaction/factory.js +7 -0
  27. package/dist/compaction/factory.js.map +1 -1
  28. package/dist/compaction/index.d.ts +2 -0
  29. package/dist/compaction/index.d.ts.map +1 -1
  30. package/dist/compaction/index.js +1 -0
  31. package/dist/compaction/index.js.map +1 -1
  32. package/dist/compaction/interface.d.ts +13 -0
  33. package/dist/compaction/interface.d.ts.map +1 -1
  34. package/dist/compaction/managers/null.d.ts +3 -0
  35. package/dist/compaction/managers/null.d.ts.map +1 -1
  36. package/dist/compaction/managers/null.js +3 -0
  37. package/dist/compaction/managers/null.js.map +1 -1
  38. package/dist/compaction/managers/slidingWindow.d.ts +6 -0
  39. package/dist/compaction/managers/slidingWindow.d.ts.map +1 -1
  40. package/dist/compaction/managers/slidingWindow.js +6 -0
  41. package/dist/compaction/managers/slidingWindow.js.map +1 -1
  42. package/dist/compaction/managers/structured.d.ts +10 -0
  43. package/dist/compaction/managers/structured.d.ts.map +1 -1
  44. package/dist/compaction/managers/structured.js +10 -0
  45. package/dist/compaction/managers/structured.js.map +1 -1
  46. package/dist/compaction/reducer.d.ts +86 -0
  47. package/dist/compaction/reducer.d.ts.map +1 -0
  48. package/dist/compaction/reducer.js +77 -0
  49. package/dist/compaction/reducer.js.map +1 -0
  50. package/dist/connector/builtins/__tests__/oauth2-auth.test.d.ts +2 -0
  51. package/dist/connector/builtins/__tests__/oauth2-auth.test.d.ts.map +1 -0
  52. package/dist/connector/builtins/__tests__/oauth2-auth.test.js +54 -0
  53. package/dist/connector/builtins/__tests__/oauth2-auth.test.js.map +1 -0
  54. package/dist/connector/builtins/http.d.ts.map +1 -1
  55. package/dist/connector/builtins/http.js +24 -2
  56. package/dist/connector/builtins/http.js.map +1 -1
  57. package/dist/connector/builtins/http.test.js +18 -2
  58. package/dist/connector/builtins/http.test.js.map +1 -1
  59. package/dist/connector/index.d.ts +3 -2
  60. package/dist/connector/index.d.ts.map +1 -1
  61. package/dist/connector/index.js +2 -1
  62. package/dist/connector/index.js.map +1 -1
  63. package/dist/connector/mcp/__tests__/prompt-as-tool.test.d.ts +2 -0
  64. package/dist/connector/mcp/__tests__/prompt-as-tool.test.d.ts.map +1 -0
  65. package/dist/connector/mcp/__tests__/prompt-as-tool.test.js +122 -0
  66. package/dist/connector/mcp/__tests__/prompt-as-tool.test.js.map +1 -0
  67. package/dist/connector/mcp/__tests__/prompts-and-lifecycle.test.d.ts +2 -0
  68. package/dist/connector/mcp/__tests__/prompts-and-lifecycle.test.d.ts.map +1 -0
  69. package/dist/connector/mcp/__tests__/prompts-and-lifecycle.test.js +214 -0
  70. package/dist/connector/mcp/__tests__/prompts-and-lifecycle.test.js.map +1 -0
  71. package/dist/connector/mcp/client.d.ts +52 -1
  72. package/dist/connector/mcp/client.d.ts.map +1 -1
  73. package/dist/connector/mcp/client.js +86 -0
  74. package/dist/connector/mcp/client.js.map +1 -1
  75. package/dist/connector/mcp/discovery.d.ts +27 -2
  76. package/dist/connector/mcp/discovery.d.ts.map +1 -1
  77. package/dist/connector/mcp/discovery.js +58 -5
  78. package/dist/connector/mcp/discovery.js.map +1 -1
  79. package/dist/connector/mcp/index.d.ts +4 -3
  80. package/dist/connector/mcp/index.d.ts.map +1 -1
  81. package/dist/connector/mcp/index.js +3 -2
  82. package/dist/connector/mcp/index.js.map +1 -1
  83. package/dist/connector/mcp/policy.d.ts +17 -0
  84. package/dist/connector/mcp/policy.d.ts.map +1 -1
  85. package/dist/connector/mcp/policy.js +18 -7
  86. package/dist/connector/mcp/policy.js.map +1 -1
  87. package/dist/connector/mcp/prompt-adapter.d.ts +39 -0
  88. package/dist/connector/mcp/prompt-adapter.d.ts.map +1 -0
  89. package/dist/connector/mcp/prompt-adapter.js +113 -0
  90. package/dist/connector/mcp/prompt-adapter.js.map +1 -0
  91. package/dist/connector/mcp/server.d.ts +42 -1
  92. package/dist/connector/mcp/server.d.ts.map +1 -1
  93. package/dist/connector/mcp/server.js +77 -4
  94. package/dist/connector/mcp/server.js.map +1 -1
  95. package/dist/manager/agent/__tests__/depth-limit-authority.test.d.ts +2 -0
  96. package/dist/manager/agent/__tests__/depth-limit-authority.test.d.ts.map +1 -0
  97. package/dist/manager/agent/__tests__/depth-limit-authority.test.js +58 -0
  98. package/dist/manager/agent/__tests__/depth-limit-authority.test.js.map +1 -0
  99. package/dist/manager/agent/__tests__/hitl-across-spawn.test.d.ts +2 -0
  100. package/dist/manager/agent/__tests__/hitl-across-spawn.test.d.ts.map +1 -0
  101. package/dist/manager/agent/__tests__/hitl-across-spawn.test.js +226 -0
  102. package/dist/manager/agent/__tests__/hitl-across-spawn.test.js.map +1 -0
  103. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  104. package/dist/manager/agent/lifecycle.js +13 -0
  105. package/dist/manager/agent/lifecycle.js.map +1 -1
  106. package/dist/plugin/__tests__/discovery-scopes.test.d.ts +2 -0
  107. package/dist/plugin/__tests__/discovery-scopes.test.d.ts.map +1 -0
  108. package/dist/plugin/__tests__/discovery-scopes.test.js +97 -0
  109. package/dist/plugin/__tests__/discovery-scopes.test.js.map +1 -0
  110. package/dist/plugin/__tests__/enable-contributions.test.js +5 -1
  111. package/dist/plugin/__tests__/enable-contributions.test.js.map +1 -1
  112. package/dist/plugin/__tests__/mcp-admission.test.d.ts +2 -0
  113. package/dist/plugin/__tests__/mcp-admission.test.d.ts.map +1 -0
  114. package/dist/plugin/__tests__/mcp-admission.test.js +227 -0
  115. package/dist/plugin/__tests__/mcp-admission.test.js.map +1 -0
  116. package/dist/plugin/lifecycle.d.ts +41 -0
  117. package/dist/plugin/lifecycle.d.ts.map +1 -1
  118. package/dist/plugin/lifecycle.js +39 -1
  119. package/dist/plugin/lifecycle.js.map +1 -1
  120. package/dist/plugin/loader.d.ts +39 -3
  121. package/dist/plugin/loader.d.ts.map +1 -1
  122. package/dist/plugin/loader.js +37 -4
  123. package/dist/plugin/loader.js.map +1 -1
  124. package/dist/public-runtime.d.ts +4 -2
  125. package/dist/public-runtime.d.ts.map +1 -1
  126. package/dist/public-runtime.js +5 -2
  127. package/dist/public-runtime.js.map +1 -1
  128. package/dist/public-types.d.ts +2 -2
  129. package/dist/public-types.d.ts.map +1 -1
  130. package/dist/rag/__tests__/namespace-isolation.test.d.ts +2 -0
  131. package/dist/rag/__tests__/namespace-isolation.test.d.ts.map +1 -0
  132. package/dist/rag/__tests__/namespace-isolation.test.js +80 -0
  133. package/dist/rag/__tests__/namespace-isolation.test.js.map +1 -0
  134. package/dist/rag/ingestion.d.ts.map +1 -1
  135. package/dist/rag/ingestion.js +1 -0
  136. package/dist/rag/ingestion.js.map +1 -1
  137. package/dist/rag/retriever.d.ts.map +1 -1
  138. package/dist/rag/retriever.js +2 -0
  139. package/dist/rag/retriever.js.map +1 -1
  140. package/dist/rag/vector-store.d.ts.map +1 -1
  141. package/dist/rag/vector-store.js +6 -0
  142. package/dist/rag/vector-store.js.map +1 -1
  143. package/dist/registry/tool/execute.d.ts.map +1 -1
  144. package/dist/registry/tool/execute.js +113 -109
  145. package/dist/registry/tool/execute.js.map +1 -1
  146. package/dist/runtime/query/__tests__/per-step-skills.test.d.ts +10 -0
  147. package/dist/runtime/query/__tests__/per-step-skills.test.d.ts.map +1 -0
  148. package/dist/runtime/query/__tests__/per-step-skills.test.js +122 -0
  149. package/dist/runtime/query/__tests__/per-step-skills.test.js.map +1 -0
  150. package/dist/runtime/query/__tests__/per-step-tool-choice.test.d.ts +2 -0
  151. package/dist/runtime/query/__tests__/per-step-tool-choice.test.d.ts.map +1 -0
  152. package/dist/runtime/query/__tests__/per-step-tool-choice.test.js +153 -0
  153. package/dist/runtime/query/__tests__/per-step-tool-choice.test.js.map +1 -0
  154. package/dist/runtime/query/__tests__/resume-run.test.d.ts +2 -0
  155. package/dist/runtime/query/__tests__/resume-run.test.d.ts.map +1 -0
  156. package/dist/runtime/query/__tests__/resume-run.test.js +211 -0
  157. package/dist/runtime/query/__tests__/resume-run.test.js.map +1 -0
  158. package/dist/runtime/query/index.d.ts +10 -0
  159. package/dist/runtime/query/index.d.ts.map +1 -1
  160. package/dist/runtime/query/index.js +26 -0
  161. package/dist/runtime/query/index.js.map +1 -1
  162. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  163. package/dist/runtime/query/iteration/index.js +50 -33
  164. package/dist/runtime/query/iteration/index.js.map +1 -1
  165. package/dist/runtime/query/iteration/phases/compaction-model-routing.test.d.ts +2 -0
  166. package/dist/runtime/query/iteration/phases/compaction-model-routing.test.d.ts.map +1 -0
  167. package/dist/runtime/query/iteration/phases/compaction-model-routing.test.js +96 -0
  168. package/dist/runtime/query/iteration/phases/compaction-model-routing.test.js.map +1 -0
  169. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  170. package/dist/runtime/query/iteration/phases/compaction.js +95 -5
  171. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  172. package/dist/runtime/query/iteration/phases/context-reducer-dispatch.test.d.ts +2 -0
  173. package/dist/runtime/query/iteration/phases/context-reducer-dispatch.test.d.ts.map +1 -0
  174. package/dist/runtime/query/iteration/phases/context-reducer-dispatch.test.js +180 -0
  175. package/dist/runtime/query/iteration/phases/context-reducer-dispatch.test.js.map +1 -0
  176. package/dist/runtime/query/iteration/phases/context.d.ts +9 -0
  177. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  178. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  179. package/dist/runtime/query/resume-run.d.ts +70 -0
  180. package/dist/runtime/query/resume-run.d.ts.map +1 -0
  181. package/dist/runtime/query/resume-run.js +46 -0
  182. package/dist/runtime/query/resume-run.js.map +1 -0
  183. package/dist/telemetry/__tests__/model-call-span.test.d.ts +2 -0
  184. package/dist/telemetry/__tests__/model-call-span.test.d.ts.map +1 -0
  185. package/dist/telemetry/__tests__/model-call-span.test.js +152 -0
  186. package/dist/telemetry/__tests__/model-call-span.test.js.map +1 -0
  187. package/dist/telemetry/__tests__/span-closure.test.d.ts +2 -0
  188. package/dist/telemetry/__tests__/span-closure.test.d.ts.map +1 -0
  189. package/dist/telemetry/__tests__/span-closure.test.js +124 -0
  190. package/dist/telemetry/__tests__/span-closure.test.js.map +1 -0
  191. package/dist/tools/advisory/index.js +1 -1
  192. package/dist/tools/advisory/index.js.map +1 -1
  193. package/dist/tools/coordinator/__tests__/plan-dependencies.test.d.ts +2 -0
  194. package/dist/tools/coordinator/__tests__/plan-dependencies.test.d.ts.map +1 -0
  195. package/dist/tools/coordinator/__tests__/plan-dependencies.test.js +126 -0
  196. package/dist/tools/coordinator/__tests__/plan-dependencies.test.js.map +1 -0
  197. package/dist/tools/coordinator/index.d.ts.map +1 -1
  198. package/dist/tools/coordinator/index.js +13 -1
  199. package/dist/tools/coordinator/index.js.map +1 -1
  200. package/dist/tools/coordinator/plan-dependencies.d.ts +43 -0
  201. package/dist/tools/coordinator/plan-dependencies.d.ts.map +1 -0
  202. package/dist/tools/coordinator/plan-dependencies.js +148 -0
  203. package/dist/tools/coordinator/plan-dependencies.js.map +1 -0
  204. package/dist/types/agent/base.d.ts +26 -0
  205. package/dist/types/agent/base.d.ts.map +1 -1
  206. package/dist/types/agent/supervisor.d.ts +15 -0
  207. package/dist/types/agent/supervisor.d.ts.map +1 -1
  208. package/dist/types/agent/task.d.ts +17 -0
  209. package/dist/types/agent/task.d.ts.map +1 -1
  210. package/dist/types/agent/task.js.map +1 -1
  211. package/dist/types/connector/core.d.ts +34 -0
  212. package/dist/types/connector/core.d.ts.map +1 -1
  213. package/dist/types/connector/definition.d.ts +10 -0
  214. package/dist/types/connector/definition.d.ts.map +1 -1
  215. package/dist/types/connector/mcp.d.ts +13 -0
  216. package/dist/types/connector/mcp.d.ts.map +1 -1
  217. package/dist/types/rag/retrieval.d.ts +16 -0
  218. package/dist/types/rag/retrieval.d.ts.map +1 -1
  219. package/dist/types/rag/storage.d.ts +9 -0
  220. package/dist/types/rag/storage.d.ts.map +1 -1
  221. package/dist/types/rag/vector.d.ts +11 -0
  222. package/dist/types/rag/vector.d.ts.map +1 -1
  223. package/dist/types/router/task-router.d.ts +19 -0
  224. package/dist/types/router/task-router.d.ts.map +1 -1
  225. package/dist/types/run/prepare-step.d.ts +56 -3
  226. package/dist/types/run/prepare-step.d.ts.map +1 -1
  227. package/dist/types/toolset/index.d.ts +22 -0
  228. package/dist/types/toolset/index.d.ts.map +1 -1
  229. package/package.json +1 -1
  230. package/src/advisory/__tests__/consultation-context.test.ts +191 -0
  231. package/src/advisory/context.ts +32 -0
  232. package/src/advisory/executor.ts +30 -3
  233. package/src/agents/SupervisorAgent.ts +6 -0
  234. package/src/agents/__tests__/supervisor-hands-down-hitl.test.ts +131 -0
  235. package/src/compaction/__tests__/context-reducer.test.ts +239 -0
  236. package/src/compaction/factory.ts +7 -0
  237. package/src/compaction/index.ts +8 -0
  238. package/src/compaction/interface.ts +13 -0
  239. package/src/compaction/managers/null.ts +3 -0
  240. package/src/compaction/managers/slidingWindow.ts +6 -0
  241. package/src/compaction/managers/structured.ts +10 -0
  242. package/src/compaction/reducer.ts +154 -0
  243. package/src/connector/builtins/__tests__/oauth2-auth.test.ts +73 -0
  244. package/src/connector/builtins/http.test.ts +28 -2
  245. package/src/connector/builtins/http.ts +26 -2
  246. package/src/connector/index.ts +7 -2
  247. package/src/connector/mcp/__tests__/prompt-as-tool.test.ts +157 -0
  248. package/src/connector/mcp/__tests__/prompts-and-lifecycle.test.ts +286 -0
  249. package/src/connector/mcp/client.ts +95 -0
  250. package/src/connector/mcp/discovery.ts +67 -5
  251. package/src/connector/mcp/index.ts +8 -3
  252. package/src/connector/mcp/policy.ts +23 -8
  253. package/src/connector/mcp/prompt-adapter.ts +139 -0
  254. package/src/connector/mcp/server.ts +101 -3
  255. package/src/manager/agent/__tests__/depth-limit-authority.test.ts +74 -0
  256. package/src/manager/agent/__tests__/hitl-across-spawn.test.ts +273 -0
  257. package/src/manager/agent/lifecycle.ts +12 -0
  258. package/src/plugin/__tests__/discovery-scopes.test.ts +133 -0
  259. package/src/plugin/__tests__/enable-contributions.test.ts +5 -1
  260. package/src/plugin/__tests__/mcp-admission.test.ts +286 -0
  261. package/src/plugin/lifecycle.ts +68 -1
  262. package/src/plugin/loader.ts +57 -3
  263. package/src/public-runtime.ts +10 -0
  264. package/src/public-types.ts +5 -0
  265. package/src/rag/__tests__/namespace-isolation.test.ts +109 -0
  266. package/src/rag/ingestion.ts +1 -0
  267. package/src/rag/retriever.ts +2 -0
  268. package/src/rag/vector-store.ts +5 -0
  269. package/src/registry/tool/execute.ts +123 -119
  270. package/src/runtime/query/__tests__/per-step-skills.test.ts +154 -0
  271. package/src/runtime/query/__tests__/per-step-tool-choice.test.ts +180 -0
  272. package/src/runtime/query/__tests__/resume-run.test.ts +262 -0
  273. package/src/runtime/query/index.ts +39 -0
  274. package/src/runtime/query/iteration/index.ts +55 -34
  275. package/src/runtime/query/iteration/phases/compaction-model-routing.test.ts +125 -0
  276. package/src/runtime/query/iteration/phases/compaction.ts +106 -5
  277. package/src/runtime/query/iteration/phases/context-reducer-dispatch.test.ts +238 -0
  278. package/src/runtime/query/iteration/phases/context.ts +11 -0
  279. package/src/runtime/query/resume-run.ts +93 -0
  280. package/src/telemetry/__tests__/model-call-span.test.ts +195 -0
  281. package/src/telemetry/__tests__/span-closure.test.ts +153 -0
  282. package/src/tools/advisory/index.ts +1 -1
  283. package/src/tools/coordinator/__tests__/plan-dependencies.test.ts +186 -0
  284. package/src/tools/coordinator/index.ts +14 -1
  285. package/src/tools/coordinator/plan-dependencies.ts +175 -0
  286. package/src/types/agent/base.ts +27 -0
  287. package/src/types/agent/supervisor.ts +15 -0
  288. package/src/types/agent/task.ts +18 -0
  289. package/src/types/connector/core.ts +34 -0
  290. package/src/types/connector/definition.ts +10 -0
  291. package/src/types/connector/mcp.ts +14 -0
  292. package/src/types/rag/retrieval.ts +16 -0
  293. package/src/types/rag/storage.ts +9 -0
  294. package/src/types/rag/vector.ts +11 -0
  295. package/src/types/router/task-router.ts +19 -0
  296. package/src/types/run/prepare-step.ts +58 -3
  297. package/src/types/toolset/index.ts +22 -0
@@ -1 +1 @@
1
- {"version":3,"file":"SupervisorAgent.js","sourceRoot":"","sources":["../../src/agents/SupervisorAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SupervisorAgent.js","sourceRoot":"","sources":["../../src/agents/SupervisorAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAEtD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAWrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAG/D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CACpC,WAAkC,EAClC,KAAY,EACZ,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI;YACxB,KAAK;YACL,MAAM,EAAE,QAAiB;YACzB,KAAK,EAAE,EAAE,GAAG,iBAAiB,EAAE;YAC/B,IAAI,EAAE,EAAE,GAAG,SAAS,EAAE;YACtB,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,GAAG,GAAG,MAAM,CAAC,SAAS;YAClC,QAAQ,EAAE,EAAE;SACZ;QACD,SAAS,EAAE,KAAK;KAChB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,mBAAmB,CAAC,WAAuC;IAC1E,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAA;AACzE,CAAC;AAED,MAAM,OAAO,eAAgB,SAAQ,aAA2D;IACtF,IAAI,GAAG,YAAqB,CAAA;IAErC,YAAY,QAAsD;QACjE,KAAK,CAAC;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE;gBACb,aAAa,EAAE,IAAI;gBACnB,iBAAiB,EAAE,IAAI;gBACvB,mBAAmB,EAAE,IAAI;gBACzB,iBAAiB,EAAE,IAAI;aACvB;SACD,CAAC,CAAA;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,GAAG,CACR,KAAiB,EACjB,MAA6B,EAC7B,QAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,EAAE,CACjE,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAC1E,CAAA;IACF,CAAC;IAEO,KAAK,CAAC,YAAY,CACzB,KAAiB,EACjB,MAA6B,EAC7B,QAA2B;QAE3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEhC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpF,MAAM,IAAI,KAAK,CACd,+GAA+G,CAC/G,CAAA;QACF,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAChC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAEhC,MAAM,WAAW,GAAa;YAC7B,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAa;YACpC,QAAQ;SACR,CAAA;QAED,IAAI,OAAoB,CAAA;QACxB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;QACzB,CAAC;aAAM,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAChC,MAAM,oBAAoB,GAAG,MAAM,CAAC,cAAc;gBACjD,CAAC,CAAC;oBACA,GAAG,MAAM,CAAC,cAAc;oBACxB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU;iBACjE;gBACF,CAAC,CAAC,MAAM,CAAC,UAAU;oBAClB,CAAC,CAAE;wBACD,UAAU,EAAE,MAAM,CAAC,UAAU;qBAC6B;oBAC5D,CAAC,CAAC,SAAS,CAAA;YAEb,MAAM,WAAW,GAAqB;gBACrC,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC/B,qBAAqB,EAAE,IAAI,CAAC,eAAe;gBAC3C,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE;oBACd,KAAK,EAAE,MAAM,CAAC,WAAW;oBACzB,SAAS,EAAE,MAAM,CAAC,WAAW;iBAC7B;gBACD,cAAc,EAAE,oBAAoB;gBACpC,+DAA+D;gBAC/D,6DAA6D;gBAC7D,0DAA0D;gBAC1D,4DAA4D;gBAC5D,yDAAyD;gBACzD,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,QAAQ;gBACR,QAAQ;gBACR,SAAS;gBACT,SAAS;gBACT,WAAW;aACX,CAAA;YACD,OAAO,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QAClF,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;QACrF,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4B,CAAA;QAEzD,IAAI,cAA8E,CAAA;QAElF,kEAAkE;QAClE,oEAAoE;QACpE,0DAA0D;QAC1D,MAAM,aAAa,GAAG,IAAI,mBAAmB,EAAE,CAAA;QAC/C,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAA;QAE3C,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;YACjD,OAAO;YACP,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,eAAe,EAAE,MAAM,CAAC,QAAQ;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK;YACL,cAAc,EAAE,GAAG,EAAE,CAAC,cAAc;YACpC,cAAc,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE;gBACrC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;YACrC,CAAC;YACD,8DAA8D;YAC9D,+DAA+D;YAC/D,0DAA0D;YAC1D,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,aAAa;YACb,cAAc;SACd,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAA;QAChC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1C,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC9D,CAAC;QACF,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;YACxC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC;QAED,MAAM,oBAAoB,GAAG,gBAAgB,CAC5C,MAAM,CAAC,eAAe,IAAI,EAAE,QAAQ,EAAE,EACtC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAChB,CAAA;QAED,MAAM,GAAG,GAAG,MAAM,UAAU,CAC3B;YACC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK;YACL,SAAS,EAAE;gBACV,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,GAAG,EAAE,MAAM,CAAC,GAAG;aACf;YACD,aAAa;YACb,cAAc;YACd,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YACzB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YAC7B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS;YACT,QAAQ;YACR,SAAS;YACT,QAAQ;YACR,KAAK;YACL,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,YAAY,EAAE,MAAM;YACpB,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;gBACrC,cAAc,GAAG,WAAW,CAAA;YAC7B,CAAC;YACD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,WAAW,EAAE,OAAO;YACpB,aAAa;YACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,eAAe,EAAE,oBAAoB;YACrC,gEAAgE;YAChE,6DAA6D;YAC7D,4DAA4D;YAC5D,8DAA8D;YAC9D,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,kEAAkE;YAClE,yDAAyD;YACzD,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,MAAM,CAAC,qBAAqB;gBAC/B,CAAC,CAAC,EAAE,qBAAqB,EAAE,MAAM,CAAC,qBAAqB,EAAE;gBACzD,CAAC,CAAC,EAAE,CAAC;SACN,EACD,QAAQ,CACR,CAAA;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;QACvC,MAAM,WAAW,GAAG,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;QAE7D,MAAM,cAAc,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAA;QAEvD,OAAO;YACN,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YAC3D,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,KAAK,EAAE,GAAG,CAAC,UAAU;YACrB,IAAI,EAAE,GAAG,CAAC,QAAQ;YAClB,UAAU,EAAE,GAAG,CAAC,gBAAgB;YAChC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,WAAW;YACX,cAAc;YACd,UAAU,EAAE,WAAW,CAAC,MAAM;SAC9B,CAAA;IACF,CAAC;CACD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=supervisor-hands-down-hitl.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supervisor-hands-down-hitl.test.d.ts","sourceRoot":"","sources":["../../../src/agents/__tests__/supervisor-hands-down-hitl.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,112 @@
1
+ import { mkdtemp } from 'node:fs/promises';
2
+ import { tmpdir } from 'node:os';
3
+ import { join } from 'node:path';
4
+ import { describe, expect, it, vi } from 'vitest';
5
+ import { MockLLMProvider } from '../../provider/mock.js';
6
+ import { ToolRegistry } from '../../registry/tool/execute.js';
7
+ import { SupervisorAgent } from '../SupervisorAgent.js';
8
+ /**
9
+ * The supervisor already handed its resume handler to its OWN run and its
10
+ * own coordinator tools. It did not hand it to the spawn context, so the
11
+ * two disagreed: the supervisor paused for a human, and every worker it
12
+ * launched approved itself.
13
+ *
14
+ * This is the link a mutation run found untested — the previous version of
15
+ * these tests drove `AgentManager` with a context built by hand, which is
16
+ * not the path a host takes.
17
+ */
18
+ /** Captures the context the supervisor builds for its spawns. */
19
+ function spyManager() {
20
+ const contexts = [];
21
+ const manager = {
22
+ sendMessage: vi.fn(async (_options, context) => {
23
+ contexts.push(context);
24
+ return {
25
+ taskId: 'task_1',
26
+ status: 'completed',
27
+ result: {
28
+ runId: 'run_child',
29
+ status: 'completed',
30
+ usage: { promptTokens: 1, completionTokens: 1, totalTokens: 2 },
31
+ cost: { totalCost: 0 },
32
+ iterations: 1,
33
+ durationMs: 1,
34
+ messages: [],
35
+ result: 'worker done',
36
+ },
37
+ };
38
+ }),
39
+ await: vi.fn(async () => undefined),
40
+ cancel: vi.fn(),
41
+ dispose: vi.fn(),
42
+ on: vi.fn(),
43
+ off: vi.fn(),
44
+ };
45
+ return { contexts, manager };
46
+ }
47
+ async function runSupervisor(resumeHandler) {
48
+ const { contexts, manager } = spyManager();
49
+ const agent = new SupervisorAgent({
50
+ id: 'supervisor',
51
+ name: 'Supervisor',
52
+ version: '1',
53
+ category: 'test',
54
+ description: 'coordinates workers',
55
+ });
56
+ const provider = new MockLLMProvider({
57
+ turns: [
58
+ {
59
+ toolCalls: [
60
+ {
61
+ id: 'c1',
62
+ name: 'create_task',
63
+ rawArguments: JSON.stringify({
64
+ agent_id: 'worker',
65
+ prompt: 'do the thing',
66
+ description: 'a task',
67
+ }),
68
+ },
69
+ ],
70
+ },
71
+ { text: 'all done' },
72
+ ],
73
+ });
74
+ await agent
75
+ .run({
76
+ messages: [{ role: 'user', content: 'go', timestamp: 1 }],
77
+ workingDirectory: await mkdtemp(join(tmpdir(), 'namzu-sup-')),
78
+ }, {
79
+ provider,
80
+ agentIds: ['worker'],
81
+ agentManager: manager,
82
+ tools: new ToolRegistry(),
83
+ systemPrompt: 'You coordinate.',
84
+ model: 'mock-model',
85
+ tokenBudget: 100_000,
86
+ timeoutMs: 30_000,
87
+ maxIterations: 4,
88
+ sessionId: 'ses_sup',
89
+ threadId: 'thd_sup',
90
+ projectId: 'prj_sup',
91
+ tenantId: 'tnt_sup',
92
+ ...(resumeHandler ? { resumeHandler } : {}),
93
+ })
94
+ .catch(() => undefined);
95
+ return contexts;
96
+ }
97
+ describe('a supervisor hands its decision channel to the workers it launches', () => {
98
+ it('puts its own handler on the spawn context', async () => {
99
+ const handler = vi.fn(async () => ({ action: 'approve_tools' }));
100
+ const contexts = await runSupervisor(handler);
101
+ expect(contexts.length).toBeGreaterThan(0);
102
+ expect(contexts[0]?.resumeHandler).toBe(handler);
103
+ });
104
+ it('leaves the context without one when it has none itself', async () => {
105
+ const contexts = await runSupervisor();
106
+ expect(contexts.length).toBeGreaterThan(0);
107
+ // Absent still means the worker auto-approves, which is what every
108
+ // worker did before any of this.
109
+ expect(contexts[0]?.resumeHandler).toBeUndefined();
110
+ });
111
+ });
112
+ //# sourceMappingURL=supervisor-hands-down-hitl.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supervisor-hands-down-hitl.test.js","sourceRoot":"","sources":["../../../src/agents/__tests__/supervisor-hands-down-hitl.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=context-reducer.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-reducer.test.d.ts","sourceRoot":"","sources":["../../../src/compaction/__tests__/context-reducer.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,197 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ import { createSlidingWindowReducer } from '../reducer.js';
3
+ /**
4
+ * `strategy: 'sliding-window'` was accepted by the config schema and then
5
+ * ignored — the runtime asked only whether the strategy was `'disabled'`, so
6
+ * a host who chose the cheap non-LLM path silently got the expensive LLM one,
7
+ * summarization calls and all. These pin the behaviour the name always
8
+ * claimed, and the three invariants that make a shorter history usable rather
9
+ * than merely shorter.
10
+ */
11
+ const sys = (content) => ({ role: 'system', content, timestamp: 1 });
12
+ const user = (content) => ({ role: 'user', content, timestamp: 1 });
13
+ const asst = (content) => ({ role: 'assistant', content, timestamp: 1 });
14
+ const callsTool = (id) => ({
15
+ role: 'assistant',
16
+ content: null,
17
+ timestamp: 1,
18
+ toolCalls: [{ id, type: 'function', function: { name: 'echo', arguments: '{}' } }],
19
+ });
20
+ const toolResult = (id) => ({
21
+ role: 'tool',
22
+ content: 'ok',
23
+ timestamp: 1,
24
+ toolCallId: id,
25
+ });
26
+ function reduction(messages, over) {
27
+ return {
28
+ messages,
29
+ reason: 'threshold',
30
+ estimatedTokens: 1_000,
31
+ contextWindowTokens: 2_000,
32
+ model: 'mock-model',
33
+ keepRecentMessages: 4,
34
+ ...over,
35
+ };
36
+ }
37
+ describe('the sliding window keeps recent turns and drops the rest', () => {
38
+ it('keeps the configured tail', async () => {
39
+ const reduce = createSlidingWindowReducer();
40
+ const messages = [sys('prompt'), ...Array.from({ length: 10 }, (_, i) => user(`m${i}`))];
41
+ const next = await reduce(reduction(messages));
42
+ expect(next).toBeDefined();
43
+ expect(next?.length).toBe(5); // the system floor plus keepRecentMessages
44
+ expect(next?.at(-1)).toBe(messages.at(-1));
45
+ });
46
+ it('cuts harder when the provider already rejected the prompt', async () => {
47
+ const reduce = createSlidingWindowReducer();
48
+ const messages = [sys('prompt'), ...Array.from({ length: 10 }, (_, i) => user(`m${i}`))];
49
+ const threshold = await reduce(reduction(messages));
50
+ const overflow = await reduce(reduction(messages, { reason: 'overflow' }));
51
+ // An overflow means the ordinary window was ALREADY too big. Cutting to
52
+ // the same size would shed nothing and the caller would retry an
53
+ // identical prompt.
54
+ expect(overflow?.length).toBeLessThan(threshold?.length ?? 0);
55
+ });
56
+ it('summarizes nothing — every survivor is the original object', async () => {
57
+ const reduce = createSlidingWindowReducer();
58
+ const messages = [sys('prompt'), ...Array.from({ length: 8 }, (_, i) => user(`m${i}`))];
59
+ const next = await reduce(reduction(messages));
60
+ for (const message of next ?? [])
61
+ expect(messages).toContain(message);
62
+ });
63
+ });
64
+ describe('the three invariants a shorter history has to keep', () => {
65
+ it('never drops the leading system floor', async () => {
66
+ const reduce = createSlidingWindowReducer();
67
+ const messages = [
68
+ sys('prompt'),
69
+ sys('working memory'),
70
+ ...Array.from({ length: 8 }, (_, i) => user(`m${i}`)),
71
+ ];
72
+ const next = await reduce(reduction(messages));
73
+ expect(next?.[0]).toBe(messages[0]);
74
+ expect(next?.[1]).toBe(messages[1]);
75
+ });
76
+ it('does not split a tool_use from its tool_result', async () => {
77
+ const reduce = createSlidingWindowReducer();
78
+ // The naive cut at length-3 lands between the assistant call and its
79
+ // result, which is a provider 400 on the next turn.
80
+ const messages = [
81
+ sys('prompt'),
82
+ user('go'),
83
+ asst('thinking'),
84
+ callsTool('c1'),
85
+ toolResult('c1'),
86
+ user('again'),
87
+ asst('done'),
88
+ user('more'),
89
+ ];
90
+ const next = await reduce(reduction(messages, { keepRecentMessages: 5 }));
91
+ const kept = new Set(next ?? []);
92
+ // Cutting at 3 would keep the call and its result together; cutting at
93
+ // 4 would orphan the result. The pair is never split either way.
94
+ expect(kept.has(messages[4])).toBe(kept.has(messages[3]));
95
+ });
96
+ it('takes a cut above the requested window when nothing below is safe', async () => {
97
+ const reduce = createSlidingWindowReducer();
98
+ // A multi-step turn: the user is silent while the agent works, so every
99
+ // boundary inside the recent window opens on an assistant or tool
100
+ // message. A backwards-only search would decline here — exactly when
101
+ // the history is longest.
102
+ const messages = [
103
+ sys('prompt'),
104
+ user('go'),
105
+ callsTool('c1'),
106
+ toolResult('c1'),
107
+ asst('working'),
108
+ callsTool('c2'),
109
+ toolResult('c2'),
110
+ // The only user turn after the opening one, and it sits ABOVE the
111
+ // requested cut — so every candidate below opens on an assistant or
112
+ // tool message and the backwards search comes back empty.
113
+ user('next'),
114
+ callsTool('c3'),
115
+ toolResult('c3'),
116
+ ];
117
+ const next = await reduce(reduction(messages, { keepRecentMessages: 5 }));
118
+ expect(next).toBeDefined();
119
+ expect(next?.length).toBeLessThan(messages.length);
120
+ // It kept LESS than asked rather than declining, and what it kept opens
121
+ // on a user turn.
122
+ expect(next?.[1]?.role).toBe('user');
123
+ });
124
+ it('keeps a pinned turn from the middle of the conversation', async () => {
125
+ const reduce = createSlidingWindowReducer();
126
+ const pinned = { ...user('the account id is X'), retain: true };
127
+ const messages = [
128
+ sys('prompt'),
129
+ user('m0'),
130
+ pinned,
131
+ ...Array.from({ length: 8 }, (_, i) => user(`m${i + 1}`)),
132
+ ];
133
+ const next = await reduce(reduction(messages));
134
+ // Recency is not the only thing that matters, which is what `retain`
135
+ // exists to say.
136
+ expect(next).toContain(pinned);
137
+ expect(next).not.toContain(messages[1]);
138
+ });
139
+ });
140
+ describe('refusing beats a reduction that would break the next turn', () => {
141
+ it('declines when there is nothing but the system floor to cut', async () => {
142
+ const reduce = createSlidingWindowReducer();
143
+ expect(await reduce(reduction([sys('prompt'), user('go')]))).toBeUndefined();
144
+ });
145
+ it('declines when every candidate cut splits one assistant fan-out', async () => {
146
+ const reduce = createSlidingWindowReducer();
147
+ // Six results answering one call: no cut inside the block is safe, and
148
+ // the condition clears itself on the next assistant message.
149
+ const messages = [
150
+ sys('prompt'),
151
+ user('go'),
152
+ {
153
+ role: 'assistant',
154
+ content: null,
155
+ timestamp: 1,
156
+ toolCalls: Array.from({ length: 6 }, (_, i) => ({
157
+ id: `c${i}`,
158
+ type: 'function',
159
+ function: { name: 'echo', arguments: '{}' },
160
+ })),
161
+ },
162
+ ...Array.from({ length: 6 }, (_, i) => toolResult(`c${i}`)),
163
+ ];
164
+ expect(await reduce(reduction(messages, { keepRecentMessages: 2 }))).toBeUndefined();
165
+ });
166
+ it('declines rather than reporting a reduction that removed nothing', async () => {
167
+ const reduce = createSlidingWindowReducer();
168
+ // Every non-system message is pinned, so the survivor set is the input.
169
+ const messages = [
170
+ sys('prompt'),
171
+ ...Array.from({ length: 8 }, (_, i) => ({ ...user(`m${i}`), retain: true })),
172
+ ];
173
+ // Saying "reduced" here would have the overflow path retry an identical
174
+ // prompt and burn a model call to be told the same thing.
175
+ expect(await reduce(reduction(messages))).toBeUndefined();
176
+ });
177
+ });
178
+ describe('the knob a caller reaches for', () => {
179
+ it('lets an explicit window override the run config', async () => {
180
+ const reduce = createSlidingWindowReducer({ keepRecentMessages: 2 });
181
+ const messages = [sys('prompt'), ...Array.from({ length: 10 }, (_, i) => user(`m${i}`))];
182
+ const next = await reduce(reduction(messages, { keepRecentMessages: 8 }));
183
+ expect(next?.length).toBe(3);
184
+ });
185
+ it('is a plain function, so a host can wrap one', async () => {
186
+ const inner = createSlidingWindowReducer();
187
+ const seen = vi.fn();
188
+ const reduce = async (input) => {
189
+ seen(input.reason);
190
+ return inner(input);
191
+ };
192
+ const messages = [sys('prompt'), ...Array.from({ length: 8 }, (_, i) => user(`m${i}`))];
193
+ await reduce(reduction(messages, { reason: 'overflow' }));
194
+ expect(seen).toHaveBeenCalledWith('overflow');
195
+ });
196
+ });
197
+ //# sourceMappingURL=context-reducer.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-reducer.test.js","sourceRoot":"","sources":["../../../src/compaction/__tests__/context-reducer.test.ts"],"names":[],"mappings":"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"}
@@ -16,5 +16,12 @@ import type { CompactionStrategy } from './types.js';
16
16
  * const trimmed = manager.applyManagement(messages)
17
17
  * ```
18
18
  */
19
+ /**
20
+ * @deprecated Nothing calls this. Select a strategy with
21
+ * `compactionConfig.strategy`, or pass a `contextReducer` to `query()`.
22
+ *
23
+ * The factory produced managers the runtime had no seam to drive, so its
24
+ * return value was always dropped on the floor. See {@link ConversationManager}.
25
+ */
19
26
  export declare function createConversationManager(strategy: CompactionStrategy, config: CompactionConfig): ConversationManager;
20
27
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/compaction/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,gBAAgB,GACtB,mBAAmB,CAerB"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/compaction/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD;;;;;;;;;;;;;;GAcG;AACH;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,gBAAgB,GACtB,mBAAmB,CAerB"}
@@ -16,6 +16,13 @@ import { StructuredCompactionManager } from './managers/structured.js';
16
16
  * const trimmed = manager.applyManagement(messages)
17
17
  * ```
18
18
  */
19
+ /**
20
+ * @deprecated Nothing calls this. Select a strategy with
21
+ * `compactionConfig.strategy`, or pass a `contextReducer` to `query()`.
22
+ *
23
+ * The factory produced managers the runtime had no seam to drive, so its
24
+ * return value was always dropped on the floor. See {@link ConversationManager}.
25
+ */
19
26
  export function createConversationManager(strategy, config) {
20
27
  switch (strategy) {
21
28
  case 'structured':
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/compaction/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAGtE;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,yBAAyB,CACxC,QAA4B,EAC5B,MAAwB;IAExB,QAAQ,QAAQ,EAAE,CAAC;QAClB,KAAK,YAAY;YAChB,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAA;QAC/C,KAAK,gBAAgB;YACpB,OAAO,IAAI,oBAAoB,CAAC;gBAC/B,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;aAC7C,CAAC,CAAA;QACH,KAAK,UAAU;YACd,OAAO,IAAI,WAAW,EAAE,CAAA;QACzB,OAAO,CAAC,CAAC,CAAC;YACT,MAAM,WAAW,GAAU,QAAQ,CAAA;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,EAAE,CAAC,CAAA;QAC/D,CAAC;IACF,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/compaction/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAGtE;;;;;;;;;;;;;;GAcG;AACH;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACxC,QAA4B,EAC5B,MAAwB;IAExB,QAAQ,QAAQ,EAAE,CAAC;QAClB,KAAK,YAAY;YAChB,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAA;QAC/C,KAAK,gBAAgB;YACpB,OAAO,IAAI,oBAAoB,CAAC;gBAC/B,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;aAC7C,CAAC,CAAA;QACH,KAAK,UAAU;YACd,OAAO,IAAI,WAAW,EAAE,CAAA;QACzB,OAAO,CAAC,CAAC,CAAC;YACT,MAAM,WAAW,GAAU,QAAQ,CAAA;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,EAAE,CAAC,CAAA;QAC/D,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -1,6 +1,8 @@
1
1
  export type { WorkingState, PlanSlot, FileSlot, FileAction, ToolResultSlot, CompactionStrategy, } from './types.js';
2
2
  export type { DanglingResult } from './dangling.js';
3
3
  export type { ConversationManager } from './interface.js';
4
+ export { createSlidingWindowReducer } from './reducer.js';
5
+ export type { ContextReducer, ContextReduction, ContextReductionReason, SlidingWindowOptions, } from './reducer.js';
4
6
  export { WorkingStateManager } from './manager.js';
5
7
  export { serializeState } from './serializer.js';
6
8
  export { extractFromToolCall, extractFromToolResult, extractFromUserMessage, extractFromAssistantMessage, } from './extractor.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compaction/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,cAAc,EACd,kBAAkB,GAClB,MAAM,YAAY,CAAA;AAEnB,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EACN,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GACjB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AAEpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EACN,8BAA8B,EAC9B,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,gCAAgC,EAChC,0BAA0B,GAC1B,MAAM,0BAA0B,CAAA;AACjC,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compaction/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,cAAc,EACd,kBAAkB,GAClB,MAAM,YAAY,CAAA;AAEnB,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AACzD,YAAY,EACX,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,GACpB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EACN,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GACjB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AAEpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EACN,8BAA8B,EAC9B,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,gCAAgC,EAChC,0BAA0B,GAC1B,MAAM,0BAA0B,CAAA;AACjC,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA"}
@@ -1,3 +1,4 @@
1
+ export { createSlidingWindowReducer } from './reducer.js';
1
2
  export { WorkingStateManager } from './manager.js';
2
3
  export { serializeState } from './serializer.js';
3
4
  export { extractFromToolCall, extractFromToolResult, extractFromUserMessage, extractFromAssistantMessage, } from './extractor.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compaction/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EACN,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GACjB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AAEpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EACN,8BAA8B,EAC9B,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,gCAAgC,EAChC,0BAA0B,GAC1B,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compaction/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAQzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EACN,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EACN,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,GACjB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AAEpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EACN,8BAA8B,EAC9B,mBAAmB,EACnB,oBAAoB,GACpB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,gCAAgC,EAChC,0BAA0B,GAC1B,MAAM,0BAA0B,CAAA"}
@@ -6,6 +6,19 @@ import type { Message } from '../types/message/index.js';
6
6
  * A manager applies two strategies:
7
7
  * 1. **Routine management** (applyManagement): Called after each iteration to proactively optimize context.
8
8
  * 2. **Overflow reduction** (reduceContext): Called when the LLM reports context window exceeded.
9
+ *
10
+ * @deprecated Use {@link ContextReducer}, which the runtime actually drives.
11
+ *
12
+ * This interface cannot be implemented correctly. `reduceContext` is
13
+ * documented as reducing the history, but it takes `Message[]` and returns
14
+ * `boolean` — the only way to honour the contract is to mutate the argument
15
+ * in place, and neither shipped implementation does. Both build a shorter
16
+ * array locally, discard it, and return `true`. Nothing in the runtime ever
17
+ * called any of it, which is why an unfulfillable contract survived.
18
+ *
19
+ * `ContextReducer` returns the new history, may be async so a reducer can
20
+ * call a model, and is told whether it was asked speculatively or after the
21
+ * provider rejected the prompt. Kept exported until the next major.
9
22
  */
10
23
  export interface ConversationManager {
11
24
  /** Unique name for this manager (e.g., 'structured', 'sliding-window', 'disabled') */
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/compaction/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAExD;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IACnC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAErB;;;;;;;OAOG;IACH,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAA;IAE/C;;;;;;;;OAQG;IACH,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAA;CACnE"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/compaction/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAExD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,mBAAmB;IACnC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAErB;;;;;;;OAOG;IACH,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAA;IAE/C;;;;;;;;OAQG;IACH,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAA;CACnE"}
@@ -4,6 +4,9 @@ import type { ConversationManager } from '../interface.js';
4
4
  * No-op conversation manager implementation.
5
5
  * Never modifies messages, useful for testing or when context management is disabled.
6
6
  */
7
+ /**
8
+ * @deprecated Use `strategy: 'disabled'`, which the runtime reads.
9
+ */
7
10
  export declare class NullManager implements ConversationManager {
8
11
  readonly name = "null";
9
12
  applyManagement(messages: Message[]): Message[];
@@ -1 +1 @@
1
- {"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/null.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D;;;GAGG;AACH,qBAAa,WAAY,YAAW,mBAAmB;IACtD,QAAQ,CAAC,IAAI,UAAS;IAEtB,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAI/C,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CAIrE"}
1
+ {"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/null.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D;;;GAGG;AACH;;GAEG;AACH,qBAAa,WAAY,YAAW,mBAAmB;IACtD,QAAQ,CAAC,IAAI,UAAS;IAEtB,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAI/C,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CAIrE"}
@@ -2,6 +2,9 @@
2
2
  * No-op conversation manager implementation.
3
3
  * Never modifies messages, useful for testing or when context management is disabled.
4
4
  */
5
+ /**
6
+ * @deprecated Use `strategy: 'disabled'`, which the runtime reads.
7
+ */
5
8
  export class NullManager {
6
9
  name = 'null';
7
10
  applyManagement(messages) {
@@ -1 +1 @@
1
- {"version":3,"file":"null.js","sourceRoot":"","sources":["../../../src/compaction/managers/null.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,OAAO,WAAW;IACd,IAAI,GAAG,MAAM,CAAA;IAEtB,eAAe,CAAC,QAAmB;QAClC,OAAO,QAAQ,CAAA;IAChB,CAAC;IAED,aAAa,CAAC,SAAoB,EAAE,eAAuB;QAC1D,yCAAyC;QACzC,OAAO,KAAK,CAAA;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"null.js","sourceRoot":"","sources":["../../../src/compaction/managers/null.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH;;GAEG;AACH,MAAM,OAAO,WAAW;IACd,IAAI,GAAG,MAAM,CAAA;IAEtB,eAAe,CAAC,QAAmB;QAClC,OAAO,QAAQ,CAAA;IAChB,CAAC;IAED,aAAa,CAAC,SAAoB,EAAE,eAAuB;QAC1D,yCAAyC;QACzC,OAAO,KAAK,CAAA;IACb,CAAC;CACD"}
@@ -17,6 +17,12 @@ export interface SlidingWindowManagerConfig {
17
17
  * 2. Use findSafeTrimIndex to ensure tool call/result pairs remain atomic
18
18
  * 3. applyManagement runs proactively each iteration; reduceContext on overflow
19
19
  */
20
+ /**
21
+ * @deprecated Use `createSlidingWindowReducer()`, or `strategy: 'sliding-window'`.
22
+ *
23
+ * Never reachable through the runtime, and `reduceContext` here computes a
24
+ * trim index and returns a boolean without trimming anything.
25
+ */
20
26
  export declare class SlidingWindowManager implements ConversationManager {
21
27
  readonly name = "sliding-window";
22
28
  private readonly keepRecentMessages;
@@ -1 +1 @@
1
- {"version":3,"file":"slidingWindow.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/slidingWindow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,0BAA0B;IAC1C;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED;;;;;;;;;GASG;AACH,qBAAa,oBAAqB,YAAW,mBAAmB;IAC/D,QAAQ,CAAC,IAAI,oBAAmB;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;gBAE/B,MAAM,GAAE,0BAA+B;IAInD,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAW/C,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CAepE"}
1
+ {"version":3,"file":"slidingWindow.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/slidingWindow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,0BAA0B;IAC1C;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED;;;;;;;;;GASG;AACH;;;;;GAKG;AACH,qBAAa,oBAAqB,YAAW,mBAAmB;IAC/D,QAAQ,CAAC,IAAI,oBAAmB;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;gBAE/B,MAAM,GAAE,0BAA+B;IAInD,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAW/C,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CAepE"}
@@ -9,6 +9,12 @@ import { findSafeTrimIndex } from '../dangling.js';
9
9
  * 2. Use findSafeTrimIndex to ensure tool call/result pairs remain atomic
10
10
  * 3. applyManagement runs proactively each iteration; reduceContext on overflow
11
11
  */
12
+ /**
13
+ * @deprecated Use `createSlidingWindowReducer()`, or `strategy: 'sliding-window'`.
14
+ *
15
+ * Never reachable through the runtime, and `reduceContext` here computes a
16
+ * trim index and returns a boolean without trimming anything.
17
+ */
12
18
  export class SlidingWindowManager {
13
19
  name = 'sliding-window';
14
20
  keepRecentMessages;
@@ -1 +1 @@
1
- {"version":3,"file":"slidingWindow.js","sourceRoot":"","sources":["../../../src/compaction/managers/slidingWindow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAWlD;;;;;;;;;GASG;AACH,MAAM,OAAO,oBAAoB;IACvB,IAAI,GAAG,gBAAgB,CAAA;IACf,kBAAkB,CAAQ;IAE3C,YAAY,SAAqC,EAAE;QAClD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAA;IACzD,CAAC;IAED,eAAe,CAAC,QAAmB;QAClC,gCAAgC;QAChC,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAChD,OAAO,QAAQ,CAAA;QAChB,CAAC;QAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAA;QAClE,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QACjE,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACnC,CAAC;IAED,aAAa,CAAC,QAAmB,EAAE,eAAuB;QACzD,8CAA8C;QAC9C,sDAAsD;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,CAAC,CAAA;QAC3E,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAA;QACvD,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QAEjE,IAAI,WAAW,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpC,sBAAsB;YACtB,OAAO,KAAK,CAAA;QACb,CAAC;QAED,0DAA0D;QAC1D,OAAO,WAAW,GAAG,CAAC,CAAA;IACvB,CAAC;CACD"}
1
+ {"version":3,"file":"slidingWindow.js","sourceRoot":"","sources":["../../../src/compaction/managers/slidingWindow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAWlD;;;;;;;;;GASG;AACH;;;;;GAKG;AACH,MAAM,OAAO,oBAAoB;IACvB,IAAI,GAAG,gBAAgB,CAAA;IACf,kBAAkB,CAAQ;IAE3C,YAAY,SAAqC,EAAE;QAClD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAA;IACzD,CAAC;IAED,eAAe,CAAC,QAAmB;QAClC,gCAAgC;QAChC,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAChD,OAAO,QAAQ,CAAA;QAChB,CAAC;QAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAA;QAClE,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QACjE,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACnC,CAAC;IAED,aAAa,CAAC,QAAmB,EAAE,eAAuB;QACzD,8CAA8C;QAC9C,sDAAsD;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,CAAC,CAAA;QAC3E,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAA;QACvD,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QAEjE,IAAI,WAAW,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpC,sBAAsB;YACtB,OAAO,KAAK,CAAA;QACb,CAAC;QAED,0DAA0D;QAC1D,OAAO,WAAW,GAAG,CAAC,CAAA;IACvB,CAAC;CACD"}
@@ -13,6 +13,16 @@ import type { ConversationManager } from '../interface.js';
13
13
  *
14
14
  * Provides maximum context preservation but more computational overhead.
15
15
  */
16
+ /**
17
+ * @deprecated Not the structured strategy. `strategy: 'structured'` runs the
18
+ * live path in `runtime/query/iteration/phases/compaction.ts`, which this
19
+ * class predates and does not share code with.
20
+ *
21
+ * What is here is a weaker parallel copy: no LLM-verified summary, no stale
22
+ * tool-result clearing, no retention pins, no events — and a `reduceContext`
23
+ * that builds a shorter history into a local array and then returns a
24
+ * boolean, discarding it.
25
+ */
16
26
  export declare class StructuredCompactionManager implements ConversationManager {
17
27
  readonly name = "structured";
18
28
  private readonly config;
@@ -1 +1 @@
1
- {"version":3,"file":"structured.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/structured.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAO3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAI1D;;;;;;;;;;;GAWG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IACtE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,MAAM,EAAE,gBAAgB;IAIpC,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IA+E/C,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CA0DpE"}
1
+ {"version":3,"file":"structured.d.ts","sourceRoot":"","sources":["../../../src/compaction/managers/structured.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAO3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAI1D;;;;;;;;;;;GAWG;AACH;;;;;;;;;GASG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IACtE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,MAAM,EAAE,gBAAgB;IAIpC,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IA+E/C,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;CA0DpE"}
@@ -14,6 +14,16 @@ import { serializeState } from '../serializer.js';
14
14
  *
15
15
  * Provides maximum context preservation but more computational overhead.
16
16
  */
17
+ /**
18
+ * @deprecated Not the structured strategy. `strategy: 'structured'` runs the
19
+ * live path in `runtime/query/iteration/phases/compaction.ts`, which this
20
+ * class predates and does not share code with.
21
+ *
22
+ * What is here is a weaker parallel copy: no LLM-verified summary, no stale
23
+ * tool-result clearing, no retention pins, no events — and a `reduceContext`
24
+ * that builds a shorter history into a local array and then returns a
25
+ * boolean, discarding it.
26
+ */
17
27
  export class StructuredCompactionManager {
18
28
  name = 'structured';
19
29
  config;