@ai-agent-forge/agent-forge 0.86.7 → 0.87.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 (665) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +8 -9
  3. package/dist/artifacts/artifact-store.d.ts.map +1 -1
  4. package/dist/artifacts/artifact-store.js +9 -5
  5. package/dist/artifacts/artifact-store.js.map +1 -1
  6. package/dist/bundle/.build-manifest.json +410 -371
  7. package/dist/bundle/chunks/{chunk-A7GUOX2H.js → chunk-6ZKDNZHA.js} +5 -1
  8. package/dist/bundle/chunks/chunk-BFC2BDVJ.js +13 -0
  9. package/dist/bundle/chunks/chunk-MOHOLL3F.js +1456 -0
  10. package/dist/bundle/chunks/image-resize-worker.js +12 -1
  11. package/dist/bundle/chunks/{virtual-modules-3IZ4MYSQ.js → virtual-modules-KZ5DRH7Q.js} +1 -1
  12. package/dist/bundle/cli.js +1 -1
  13. package/dist/bundle/client.js +1 -1
  14. package/dist/bundle/index.js +2 -2
  15. package/dist/bundle/rpc-entry.js +1 -1
  16. package/dist/cli/args.d.ts.map +1 -1
  17. package/dist/cli/args.js +231 -185
  18. package/dist/cli/args.js.map +1 -1
  19. package/dist/cli/auth-check.d.ts.map +1 -1
  20. package/dist/cli/auth-check.js +3 -2
  21. package/dist/cli/auth-check.js.map +1 -1
  22. package/dist/cli/auth-command.d.ts.map +1 -1
  23. package/dist/cli/auth-command.js +15 -9
  24. package/dist/cli/auth-command.js.map +1 -1
  25. package/dist/cli/credential-print.d.ts.map +1 -1
  26. package/dist/cli/credential-print.js +14 -7
  27. package/dist/cli/credential-print.js.map +1 -1
  28. package/dist/cli/experimental/command.d.ts.map +1 -1
  29. package/dist/cli/experimental/command.js +6 -5
  30. package/dist/cli/experimental/command.js.map +1 -1
  31. package/dist/cli/list-models.d.ts.map +1 -1
  32. package/dist/cli/list-models.js +9 -8
  33. package/dist/cli/list-models.js.map +1 -1
  34. package/dist/cli/plugin-manager-controller.d.ts.map +1 -1
  35. package/dist/cli/plugin-manager-controller.js +2 -1
  36. package/dist/cli/plugin-manager-controller.js.map +1 -1
  37. package/dist/cli/serve.d.ts.map +1 -1
  38. package/dist/cli/serve.js +8 -5
  39. package/dist/cli/serve.js.map +1 -1
  40. package/dist/client/remote-session.d.ts.map +1 -1
  41. package/dist/client/remote-session.js +16 -9
  42. package/dist/client/remote-session.js.map +1 -1
  43. package/dist/config.d.ts.map +1 -1
  44. package/dist/config.js +2 -1
  45. package/dist/config.js.map +1 -1
  46. package/dist/core/agent-capability-contract.d.ts +0 -7
  47. package/dist/core/agent-capability-contract.d.ts.map +1 -1
  48. package/dist/core/agent-capability-contract.js +72 -68
  49. package/dist/core/agent-capability-contract.js.map +1 -1
  50. package/dist/core/agent-session-bash.d.ts.map +1 -1
  51. package/dist/core/agent-session-bash.js +5 -4
  52. package/dist/core/agent-session-bash.js.map +1 -1
  53. package/dist/core/agent-session-compaction.d.ts.map +1 -1
  54. package/dist/core/agent-session-compaction.js +28 -22
  55. package/dist/core/agent-session-compaction.js.map +1 -1
  56. package/dist/core/agent-session-context.d.ts.map +1 -1
  57. package/dist/core/agent-session-context.js +18 -13
  58. package/dist/core/agent-session-context.js.map +1 -1
  59. package/dist/core/agent-session-model.d.ts.map +1 -1
  60. package/dist/core/agent-session-model.js +2 -1
  61. package/dist/core/agent-session-model.js.map +1 -1
  62. package/dist/core/agent-session-retry.d.ts.map +1 -1
  63. package/dist/core/agent-session-retry.js +3 -2
  64. package/dist/core/agent-session-retry.js.map +1 -1
  65. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  66. package/dist/core/agent-session-runtime.js +7 -6
  67. package/dist/core/agent-session-runtime.js.map +1 -1
  68. package/dist/core/agent-session-services.d.ts +1 -1
  69. package/dist/core/agent-session-services.d.ts.map +1 -1
  70. package/dist/core/agent-session-services.js.map +1 -1
  71. package/dist/core/agent-session-tools.d.ts.map +1 -1
  72. package/dist/core/agent-session-tools.js +3 -2
  73. package/dist/core/agent-session-tools.js.map +1 -1
  74. package/dist/core/agent-session.d.ts +40 -2
  75. package/dist/core/agent-session.d.ts.map +1 -1
  76. package/dist/core/agent-session.js +142 -34
  77. package/dist/core/agent-session.js.map +1 -1
  78. package/dist/core/auth-guidance.d.ts.map +1 -1
  79. package/dist/core/auth-guidance.js +11 -5
  80. package/dist/core/auth-guidance.js.map +1 -1
  81. package/dist/core/auth-storage.d.ts.map +1 -1
  82. package/dist/core/auth-storage.js +9 -6
  83. package/dist/core/auth-storage.js.map +1 -1
  84. package/dist/core/compaction/compaction.d.ts.map +1 -1
  85. package/dist/core/compaction/compaction.js +2 -1
  86. package/dist/core/compaction/compaction.js.map +1 -1
  87. package/dist/core/embedded-sdk.d.ts.map +1 -1
  88. package/dist/core/embedded-sdk.js +10 -6
  89. package/dist/core/embedded-sdk.js.map +1 -1
  90. package/dist/core/export-html/index.d.ts.map +1 -1
  91. package/dist/core/export-html/index.js +9 -4
  92. package/dist/core/export-html/index.js.map +1 -1
  93. package/dist/core/extensions/agent-composition.d.ts.map +1 -1
  94. package/dist/core/extensions/agent-composition.js +26 -19
  95. package/dist/core/extensions/agent-composition.js.map +1 -1
  96. package/dist/core/extensions/bootstrap-agent-loop.d.ts.map +1 -1
  97. package/dist/core/extensions/bootstrap-agent-loop.js +3 -2
  98. package/dist/core/extensions/bootstrap-agent-loop.js.map +1 -1
  99. package/dist/core/extensions/bootstrap-lifecycle.d.ts.map +1 -1
  100. package/dist/core/extensions/bootstrap-lifecycle.js +20 -17
  101. package/dist/core/extensions/bootstrap-lifecycle.js.map +1 -1
  102. package/dist/core/extensions/bootstrap-overflow-policy.d.ts.map +1 -1
  103. package/dist/core/extensions/bootstrap-overflow-policy.js +2 -1
  104. package/dist/core/extensions/bootstrap-overflow-policy.js.map +1 -1
  105. package/dist/core/extensions/bootstrap-retry-policy.d.ts.map +1 -1
  106. package/dist/core/extensions/bootstrap-retry-policy.js +2 -1
  107. package/dist/core/extensions/bootstrap-retry-policy.js.map +1 -1
  108. package/dist/core/extensions/bootstrap-skills.d.ts.map +1 -1
  109. package/dist/core/extensions/bootstrap-skills.js +7 -6
  110. package/dist/core/extensions/bootstrap-skills.js.map +1 -1
  111. package/dist/core/extensions/bootstrap-tools.d.ts.map +1 -1
  112. package/dist/core/extensions/bootstrap-tools.js +2 -1
  113. package/dist/core/extensions/bootstrap-tools.js.map +1 -1
  114. package/dist/core/extensions/capability-plugin.d.ts.map +1 -1
  115. package/dist/core/extensions/capability-plugin.js +37 -13
  116. package/dist/core/extensions/capability-plugin.js.map +1 -1
  117. package/dist/core/extensions/capability-runtime-events.d.ts.map +1 -1
  118. package/dist/core/extensions/capability-runtime-events.js +17 -13
  119. package/dist/core/extensions/capability-runtime-events.js.map +1 -1
  120. package/dist/core/extensions/capability-runtime-guards.d.ts.map +1 -1
  121. package/dist/core/extensions/capability-runtime-guards.js +16 -15
  122. package/dist/core/extensions/capability-runtime-guards.js.map +1 -1
  123. package/dist/core/extensions/capability-runtime-manifest.d.ts.map +1 -1
  124. package/dist/core/extensions/capability-runtime-manifest.js +52 -30
  125. package/dist/core/extensions/capability-runtime-manifest.js.map +1 -1
  126. package/dist/core/extensions/capability-runtime-validation.d.ts.map +1 -1
  127. package/dist/core/extensions/capability-runtime-validation.js +66 -65
  128. package/dist/core/extensions/capability-runtime-validation.js.map +1 -1
  129. package/dist/core/extensions/capability-runtime.d.ts.map +1 -1
  130. package/dist/core/extensions/capability-runtime.js +147 -127
  131. package/dist/core/extensions/capability-runtime.js.map +1 -1
  132. package/dist/core/extensions/compaction-memory-failure-mode.d.ts.map +1 -1
  133. package/dist/core/extensions/compaction-memory-failure-mode.js +3 -2
  134. package/dist/core/extensions/compaction-memory-failure-mode.js.map +1 -1
  135. package/dist/core/extensions/context-strategy-binding.d.ts.map +1 -1
  136. package/dist/core/extensions/context-strategy-binding.js +7 -4
  137. package/dist/core/extensions/context-strategy-binding.js.map +1 -1
  138. package/dist/core/extensions/lifecycle-catalog.d.ts.map +1 -1
  139. package/dist/core/extensions/lifecycle-catalog.js +290 -279
  140. package/dist/core/extensions/lifecycle-catalog.js.map +1 -1
  141. package/dist/core/extensions/lifecycle-delivery-queue.d.ts.map +1 -1
  142. package/dist/core/extensions/lifecycle-delivery-queue.js +3 -2
  143. package/dist/core/extensions/lifecycle-delivery-queue.js.map +1 -1
  144. package/dist/core/facade/coding-agent-facade.d.ts +6 -0
  145. package/dist/core/facade/coding-agent-facade.d.ts.map +1 -1
  146. package/dist/core/facade/coding-agent-facade.js +2 -0
  147. package/dist/core/facade/coding-agent-facade.js.map +1 -1
  148. package/dist/core/http-dispatcher.d.ts.map +1 -1
  149. package/dist/core/http-dispatcher.js +2 -1
  150. package/dist/core/http-dispatcher.js.map +1 -1
  151. package/dist/core/i18n/index.d.ts +14 -0
  152. package/dist/core/i18n/index.d.ts.map +1 -0
  153. package/dist/core/i18n/index.js +67 -0
  154. package/dist/core/i18n/index.js.map +1 -0
  155. package/dist/core/i18n/locales/en/example.d.ts +7 -0
  156. package/dist/core/i18n/locales/en/example.d.ts.map +1 -0
  157. package/dist/core/i18n/locales/en/example.js +7 -0
  158. package/dist/core/i18n/locales/en/example.js.map +1 -0
  159. package/dist/core/i18n/locales/zh-cn/cli.d.ts +8 -0
  160. package/dist/core/i18n/locales/zh-cn/cli.d.ts.map +1 -0
  161. package/dist/core/i18n/locales/zh-cn/cli.js +227 -0
  162. package/dist/core/i18n/locales/zh-cn/cli.js.map +1 -0
  163. package/dist/core/i18n/locales/zh-cn/common.d.ts +6 -0
  164. package/dist/core/i18n/locales/zh-cn/common.d.ts.map +1 -0
  165. package/dist/core/i18n/locales/zh-cn/common.js +6 -0
  166. package/dist/core/i18n/locales/zh-cn/common.js.map +1 -0
  167. package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts +13 -0
  168. package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts.map +1 -0
  169. package/dist/core/i18n/locales/zh-cn/core-contract-core.js +173 -0
  170. package/dist/core/i18n/locales/zh-cn/core-contract-core.js.map +1 -0
  171. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts +12 -0
  172. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts.map +1 -0
  173. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js +582 -0
  174. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js.map +1 -0
  175. package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts +9 -0
  176. package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts.map +1 -0
  177. package/dist/core/i18n/locales/zh-cn/core-contract-final.js +55 -0
  178. package/dist/core/i18n/locales/zh-cn/core-contract-final.js.map +1 -0
  179. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts +11 -0
  180. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts.map +1 -0
  181. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js +455 -0
  182. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js.map +1 -0
  183. package/dist/core/i18n/locales/zh-cn/core-errors.d.ts +9 -0
  184. package/dist/core/i18n/locales/zh-cn/core-errors.d.ts.map +1 -0
  185. package/dist/core/i18n/locales/zh-cn/core-errors.js +191 -0
  186. package/dist/core/i18n/locales/zh-cn/core-errors.js.map +1 -0
  187. package/dist/core/i18n/locales/zh-cn/example.d.ts +7 -0
  188. package/dist/core/i18n/locales/zh-cn/example.d.ts.map +1 -0
  189. package/dist/core/i18n/locales/zh-cn/example.js +10 -0
  190. package/dist/core/i18n/locales/zh-cn/example.js.map +1 -0
  191. package/dist/core/i18n/locales/zh-cn/index.d.ts +2 -0
  192. package/dist/core/i18n/locales/zh-cn/index.d.ts.map +1 -0
  193. package/dist/core/i18n/locales/zh-cn/index.js +41 -0
  194. package/dist/core/i18n/locales/zh-cn/index.js.map +1 -0
  195. package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts +10 -0
  196. package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts.map +1 -0
  197. package/dist/core/i18n/locales/zh-cn/interactive-mode.js +265 -0
  198. package/dist/core/i18n/locales/zh-cn/interactive-mode.js.map +1 -0
  199. package/dist/core/i18n/locales/zh-cn/keybindings.d.ts +11 -0
  200. package/dist/core/i18n/locales/zh-cn/keybindings.d.ts.map +1 -0
  201. package/dist/core/i18n/locales/zh-cn/keybindings.js +67 -0
  202. package/dist/core/i18n/locales/zh-cn/keybindings.js.map +1 -0
  203. package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts +7 -0
  204. package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts.map +1 -0
  205. package/dist/core/i18n/locales/zh-cn/slash-commands.js +39 -0
  206. package/dist/core/i18n/locales/zh-cn/slash-commands.js.map +1 -0
  207. package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts +10 -0
  208. package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts.map +1 -0
  209. package/dist/core/i18n/locales/zh-cn/tui-builtin.js +15 -0
  210. package/dist/core/i18n/locales/zh-cn/tui-builtin.js.map +1 -0
  211. package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts +13 -0
  212. package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts.map +1 -0
  213. package/dist/core/i18n/locales/zh-cn/tui-components-misc.js +102 -0
  214. package/dist/core/i18n/locales/zh-cn/tui-components-misc.js.map +1 -0
  215. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts +12 -0
  216. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts.map +1 -0
  217. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js +288 -0
  218. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js.map +1 -0
  219. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts +9 -0
  220. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts.map +1 -0
  221. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js +79 -0
  222. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js.map +1 -0
  223. package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts +8 -0
  224. package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts.map +1 -0
  225. package/dist/core/i18n/locales/zh-cn/tui-self-owned.js +72 -0
  226. package/dist/core/i18n/locales/zh-cn/tui-self-owned.js.map +1 -0
  227. package/dist/core/keybindings.d.ts +15 -0
  228. package/dist/core/keybindings.d.ts.map +1 -1
  229. package/dist/core/keybindings.js +18 -0
  230. package/dist/core/keybindings.js.map +1 -1
  231. package/dist/core/logger.d.ts.map +1 -1
  232. package/dist/core/logger.js +5 -1
  233. package/dist/core/logger.js.map +1 -1
  234. package/dist/core/model-registry.d.ts.map +1 -1
  235. package/dist/core/model-registry.js +2 -1
  236. package/dist/core/model-registry.js.map +1 -1
  237. package/dist/core/model-runtime.d.ts.map +1 -1
  238. package/dist/core/model-runtime.js +8 -4
  239. package/dist/core/model-runtime.js.map +1 -1
  240. package/dist/core/package-install-host.d.ts.map +1 -1
  241. package/dist/core/package-install-host.js +4 -3
  242. package/dist/core/package-install-host.js.map +1 -1
  243. package/dist/core/package-manager.d.ts.map +1 -1
  244. package/dist/core/package-manager.js +15 -10
  245. package/dist/core/package-manager.js.map +1 -1
  246. package/dist/core/package-resource-collection.d.ts.map +1 -1
  247. package/dist/core/package-resource-collection.js +2 -1
  248. package/dist/core/package-resource-collection.js.map +1 -1
  249. package/dist/core/package-source.d.ts.map +1 -1
  250. package/dist/core/package-source.js +3 -2
  251. package/dist/core/package-source.js.map +1 -1
  252. package/dist/core/provider-composer.d.ts.map +1 -1
  253. package/dist/core/provider-composer.js +22 -13
  254. package/dist/core/provider-composer.js.map +1 -1
  255. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  256. package/dist/core/remote-catalog-provider.js +6 -2
  257. package/dist/core/remote-catalog-provider.js.map +1 -1
  258. package/dist/core/resolve-config-value.d.ts.map +1 -1
  259. package/dist/core/resolve-config-value.js +15 -5
  260. package/dist/core/resolve-config-value.js.map +1 -1
  261. package/dist/core/sdk.d.ts +19 -5
  262. package/dist/core/sdk.d.ts.map +1 -1
  263. package/dist/core/sdk.js +74 -54
  264. package/dist/core/sdk.js.map +1 -1
  265. package/dist/core/session-cwd.d.ts.map +1 -1
  266. package/dist/core/session-cwd.js +5 -2
  267. package/dist/core/session-cwd.js.map +1 -1
  268. package/dist/core/session-export.d.ts.map +1 -1
  269. package/dist/core/session-export.js +2 -1
  270. package/dist/core/session-export.js.map +1 -1
  271. package/dist/core/session-manager.d.ts.map +1 -1
  272. package/dist/core/session-manager.js +39 -29
  273. package/dist/core/session-manager.js.map +1 -1
  274. package/dist/core/session-storage.d.ts.map +1 -1
  275. package/dist/core/session-storage.js +3 -3
  276. package/dist/core/session-storage.js.map +1 -1
  277. package/dist/core/settings-manager.d.ts +11 -0
  278. package/dist/core/settings-manager.d.ts.map +1 -1
  279. package/dist/core/settings-manager.js +27 -5
  280. package/dist/core/settings-manager.js.map +1 -1
  281. package/dist/core/slash-commands.d.ts.map +1 -1
  282. package/dist/core/slash-commands.js +53 -32
  283. package/dist/core/slash-commands.js.map +1 -1
  284. package/dist/core/system-prompt.d.ts.map +1 -1
  285. package/dist/core/system-prompt.js +25 -2
  286. package/dist/core/system-prompt.js.map +1 -1
  287. package/dist/core/tools/bash.d.ts.map +1 -1
  288. package/dist/core/tools/bash.js +11 -7
  289. package/dist/core/tools/bash.js.map +1 -1
  290. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  291. package/dist/core/tools/edit-diff.js +9 -4
  292. package/dist/core/tools/edit-diff.js.map +1 -1
  293. package/dist/core/tools/edit.d.ts.map +1 -1
  294. package/dist/core/tools/edit.js +4 -3
  295. package/dist/core/tools/edit.js.map +1 -1
  296. package/dist/core/tools/index.d.ts.map +1 -1
  297. package/dist/core/tools/index.js +3 -2
  298. package/dist/core/tools/index.js.map +1 -1
  299. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  300. package/dist/core/tools/output-accumulator.js +2 -1
  301. package/dist/core/tools/output-accumulator.js.map +1 -1
  302. package/dist/core/tools/read.d.ts.map +1 -1
  303. package/dist/core/tools/read.js +6 -2
  304. package/dist/core/tools/read.js.map +1 -1
  305. package/dist/core/tools/write.d.ts.map +1 -1
  306. package/dist/core/tools/write.js +2 -1
  307. package/dist/core/tools/write.js.map +1 -1
  308. package/dist/durable/durable-service.d.ts.map +1 -1
  309. package/dist/durable/durable-service.js +25 -18
  310. package/dist/durable/durable-service.js.map +1 -1
  311. package/dist/host/checkpoint-commit.d.ts.map +1 -1
  312. package/dist/host/checkpoint-commit.js +2 -1
  313. package/dist/host/checkpoint-commit.js.map +1 -1
  314. package/dist/host/manual-compaction.d.ts.map +1 -1
  315. package/dist/host/manual-compaction.js +2 -1
  316. package/dist/host/manual-compaction.js.map +1 -1
  317. package/dist/host/output-projection.d.ts +0 -13
  318. package/dist/host/output-projection.d.ts.map +1 -1
  319. package/dist/host/output-projection.js +16 -2
  320. package/dist/host/output-projection.js.map +1 -1
  321. package/dist/host/summary-retry.d.ts.map +1 -1
  322. package/dist/host/summary-retry.js +3 -2
  323. package/dist/host/summary-retry.js.map +1 -1
  324. package/dist/main.d.ts.map +1 -1
  325. package/dist/main.js +94 -58
  326. package/dist/main.js.map +1 -1
  327. package/dist/modes/interactive/components/agents-view.d.ts.map +1 -1
  328. package/dist/modes/interactive/components/agents-view.js +18 -15
  329. package/dist/modes/interactive/components/agents-view.js.map +1 -1
  330. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  331. package/dist/modes/interactive/components/assistant-message.js +6 -5
  332. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  333. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  334. package/dist/modes/interactive/components/bash-execution.js +12 -7
  335. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  336. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  337. package/dist/modes/interactive/components/bordered-loader.js +2 -1
  338. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  339. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  340. package/dist/modes/interactive/components/branch-summary-message.js +6 -5
  341. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  342. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  343. package/dist/modes/interactive/components/compaction-summary-message.js +9 -5
  344. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  345. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  346. package/dist/modes/interactive/components/config-selector.js +18 -15
  347. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  348. package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
  349. package/dist/modes/interactive/components/custom-entry.js +2 -1
  350. package/dist/modes/interactive/components/custom-entry.js.map +1 -1
  351. package/dist/modes/interactive/components/dialog-editor.d.ts.map +1 -1
  352. package/dist/modes/interactive/components/dialog-editor.js +5 -4
  353. package/dist/modes/interactive/components/dialog-editor.js.map +1 -1
  354. package/dist/modes/interactive/components/dialog-input.d.ts.map +1 -1
  355. package/dist/modes/interactive/components/dialog-input.js +2 -1
  356. package/dist/modes/interactive/components/dialog-input.js.map +1 -1
  357. package/dist/modes/interactive/components/dialog-selector.d.ts.map +1 -1
  358. package/dist/modes/interactive/components/dialog-selector.js +4 -3
  359. package/dist/modes/interactive/components/dialog-selector.js.map +1 -1
  360. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
  361. package/dist/modes/interactive/components/first-time-setup.js +11 -10
  362. package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
  363. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  364. package/dist/modes/interactive/components/footer.js +7 -4
  365. package/dist/modes/interactive/components/footer.js.map +1 -1
  366. package/dist/modes/interactive/components/index.d.ts +1 -0
  367. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  368. package/dist/modes/interactive/components/index.js +1 -0
  369. package/dist/modes/interactive/components/index.js.map +1 -1
  370. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  371. package/dist/modes/interactive/components/keybinding-hints.js +3 -2
  372. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  373. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  374. package/dist/modes/interactive/components/login-dialog.js +12 -11
  375. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  376. package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
  377. package/dist/modes/interactive/components/mermaid.js +6 -2
  378. package/dist/modes/interactive/components/mermaid.js.map +1 -1
  379. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  380. package/dist/modes/interactive/components/model-selector.js +28 -16
  381. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  382. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  383. package/dist/modes/interactive/components/oauth-selector.js +10 -9
  384. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  385. package/dist/modes/interactive/components/plugin-manager-entry.d.ts.map +1 -1
  386. package/dist/modes/interactive/components/plugin-manager-entry.js +22 -13
  387. package/dist/modes/interactive/components/plugin-manager-entry.js.map +1 -1
  388. package/dist/modes/interactive/components/plugin-selection-entry.d.ts.map +1 -1
  389. package/dist/modes/interactive/components/plugin-selection-entry.js +27 -12
  390. package/dist/modes/interactive/components/plugin-selection-entry.js.map +1 -1
  391. package/dist/modes/interactive/components/queue-manager-selector.d.ts +60 -0
  392. package/dist/modes/interactive/components/queue-manager-selector.d.ts.map +1 -0
  393. package/dist/modes/interactive/components/queue-manager-selector.js +166 -0
  394. package/dist/modes/interactive/components/queue-manager-selector.js.map +1 -0
  395. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  396. package/dist/modes/interactive/components/scoped-models-selector.js +16 -14
  397. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  398. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  399. package/dist/modes/interactive/components/session-selector.js +43 -31
  400. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  401. package/dist/modes/interactive/components/settings-selector.d.ts +2 -0
  402. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  403. package/dist/modes/interactive/components/settings-selector.js +113 -96
  404. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  405. package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
  406. package/dist/modes/interactive/components/settings-submenu.js +5 -4
  407. package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
  408. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  409. package/dist/modes/interactive/components/show-images-selector.js +3 -2
  410. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  411. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  412. package/dist/modes/interactive/components/skill-invocation-message.js +4 -3
  413. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  414. package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
  415. package/dist/modes/interactive/components/status-indicator.js +14 -5
  416. package/dist/modes/interactive/components/status-indicator.js.map +1 -1
  417. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  418. package/dist/modes/interactive/components/theme-selector.js +2 -1
  419. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  420. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  421. package/dist/modes/interactive/components/thinking-selector.js +11 -4
  422. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  423. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  424. package/dist/modes/interactive/components/tool-execution.js +8 -3
  425. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  426. package/dist/modes/interactive/components/tree-list.d.ts.map +1 -1
  427. package/dist/modes/interactive/components/tree-list.js +7 -6
  428. package/dist/modes/interactive/components/tree-list.js.map +1 -1
  429. package/dist/modes/interactive/components/tree-render.d.ts.map +1 -1
  430. package/dist/modes/interactive/components/tree-render.js +28 -23
  431. package/dist/modes/interactive/components/tree-render.js.map +1 -1
  432. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  433. package/dist/modes/interactive/components/tree-selector.js +9 -7
  434. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  435. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  436. package/dist/modes/interactive/components/user-message-selector.js +5 -4
  437. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  438. package/dist/modes/interactive/components/workflow-view.d.ts.map +1 -1
  439. package/dist/modes/interactive/components/workflow-view.js +36 -21
  440. package/dist/modes/interactive/components/workflow-view.js.map +1 -1
  441. package/dist/modes/interactive/external-editor.d.ts.map +1 -1
  442. package/dist/modes/interactive/external-editor.js +2 -1
  443. package/dist/modes/interactive/external-editor.js.map +1 -1
  444. package/dist/modes/interactive/interactive-auth.d.ts.map +1 -1
  445. package/dist/modes/interactive/interactive-auth.js +71 -40
  446. package/dist/modes/interactive/interactive-auth.js.map +1 -1
  447. package/dist/modes/interactive/interactive-commands.d.ts +1 -0
  448. package/dist/modes/interactive/interactive-commands.d.ts.map +1 -1
  449. package/dist/modes/interactive/interactive-commands.js +3 -0
  450. package/dist/modes/interactive/interactive-commands.js.map +1 -1
  451. package/dist/modes/interactive/interactive-dialog-ui.d.ts.map +1 -1
  452. package/dist/modes/interactive/interactive-dialog-ui.js +5 -5
  453. package/dist/modes/interactive/interactive-dialog-ui.js.map +1 -1
  454. package/dist/modes/interactive/interactive-format.d.ts.map +1 -1
  455. package/dist/modes/interactive/interactive-format.js +34 -18
  456. package/dist/modes/interactive/interactive-format.js.map +1 -1
  457. package/dist/modes/interactive/interactive-helpers.d.ts.map +1 -1
  458. package/dist/modes/interactive/interactive-helpers.js +7 -2
  459. package/dist/modes/interactive/interactive-helpers.js.map +1 -1
  460. package/dist/modes/interactive/interactive-mode.d.ts +4 -1
  461. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  462. package/dist/modes/interactive/interactive-mode.js +327 -243
  463. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  464. package/dist/modes/interactive/interactive-selectors.d.ts +9 -0
  465. package/dist/modes/interactive/interactive-selectors.d.ts.map +1 -1
  466. package/dist/modes/interactive/interactive-selectors.js +79 -25
  467. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  468. package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  469. package/dist/modes/interactive/theme/theme-controller.js +5 -1
  470. package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  471. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  472. package/dist/modes/interactive/theme/theme.js +26 -23
  473. package/dist/modes/interactive/theme/theme.js.map +1 -1
  474. package/dist/modes/json-event.d.ts.map +1 -1
  475. package/dist/modes/json-event.js +3 -2
  476. package/dist/modes/json-event.js.map +1 -1
  477. package/dist/modes/print-mode.d.ts.map +1 -1
  478. package/dist/modes/print-mode.js +3 -2
  479. package/dist/modes/print-mode.js.map +1 -1
  480. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  481. package/dist/modes/rpc/rpc-client.js +3 -2
  482. package/dist/modes/rpc/rpc-client.js.map +1 -1
  483. package/dist/package-manager-cli.d.ts.map +1 -1
  484. package/dist/package-manager-cli.js +28 -13
  485. package/dist/package-manager-cli.js.map +1 -1
  486. package/dist/plugins/ecosystem/catalog.d.ts.map +1 -1
  487. package/dist/plugins/ecosystem/catalog.js +3 -2
  488. package/dist/plugins/ecosystem/catalog.js.map +1 -1
  489. package/dist/plugins/ecosystem/cli.d.ts.map +1 -1
  490. package/dist/plugins/ecosystem/cli.js +2 -1
  491. package/dist/plugins/ecosystem/cli.js.map +1 -1
  492. package/dist/plugins/ecosystem/default-plugin-market.d.ts.map +1 -1
  493. package/dist/plugins/ecosystem/default-plugin-market.js +3 -2
  494. package/dist/plugins/ecosystem/default-plugin-market.js.map +1 -1
  495. package/dist/plugins/ecosystem/distribution.d.ts.map +1 -1
  496. package/dist/plugins/ecosystem/distribution.js +2 -1
  497. package/dist/plugins/ecosystem/distribution.js.map +1 -1
  498. package/dist/plugins/ecosystem/installer.d.ts.map +1 -1
  499. package/dist/plugins/ecosystem/installer.js +3 -2
  500. package/dist/plugins/ecosystem/installer.js.map +1 -1
  501. package/dist/plugins/ecosystem/node-disk-registry-source.d.ts.map +1 -1
  502. package/dist/plugins/ecosystem/node-disk-registry-source.js +20 -17
  503. package/dist/plugins/ecosystem/node-disk-registry-source.js.map +1 -1
  504. package/dist/plugins/ecosystem/node-distribution-host.d.ts.map +1 -1
  505. package/dist/plugins/ecosystem/node-distribution-host.js +35 -34
  506. package/dist/plugins/ecosystem/node-distribution-host.js.map +1 -1
  507. package/dist/plugins/ecosystem/node-npm-registry-source.d.ts.map +1 -1
  508. package/dist/plugins/ecosystem/node-npm-registry-source.js +35 -34
  509. package/dist/plugins/ecosystem/node-npm-registry-source.js.map +1 -1
  510. package/dist/plugins/ecosystem/node-package-install-host.d.ts.map +1 -1
  511. package/dist/plugins/ecosystem/node-package-install-host.js +9 -8
  512. package/dist/plugins/ecosystem/node-package-install-host.js.map +1 -1
  513. package/dist/plugins/ecosystem/node-package-install-persistence.d.ts.map +1 -1
  514. package/dist/plugins/ecosystem/node-package-install-persistence.js +4 -3
  515. package/dist/plugins/ecosystem/node-package-install-persistence.js.map +1 -1
  516. package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts.map +1 -1
  517. package/dist/plugins/ecosystem/node-plugin-bootstrap.js +21 -5
  518. package/dist/plugins/ecosystem/node-plugin-bootstrap.js.map +1 -1
  519. package/dist/plugins/ecosystem/node-plugin-trust-root.d.ts.map +1 -1
  520. package/dist/plugins/ecosystem/node-plugin-trust-root.js +10 -9
  521. package/dist/plugins/ecosystem/node-plugin-trust-root.js.map +1 -1
  522. package/dist/plugins/ecosystem/node-registry-source.d.ts.map +1 -1
  523. package/dist/plugins/ecosystem/node-registry-source.js +31 -30
  524. package/dist/plugins/ecosystem/node-registry-source.js.map +1 -1
  525. package/dist/plugins/ecosystem/node-release-package-source.d.ts.map +1 -1
  526. package/dist/plugins/ecosystem/node-release-package-source.js +30 -29
  527. package/dist/plugins/ecosystem/node-release-package-source.js.map +1 -1
  528. package/dist/plugins/ecosystem/node-tar-writer.d.ts.map +1 -1
  529. package/dist/plugins/ecosystem/node-tar-writer.js +11 -10
  530. package/dist/plugins/ecosystem/node-tar-writer.js.map +1 -1
  531. package/dist/plugins/ecosystem/node-url-package-source.d.ts.map +1 -1
  532. package/dist/plugins/ecosystem/node-url-package-source.js +21 -20
  533. package/dist/plugins/ecosystem/node-url-package-source.js.map +1 -1
  534. package/dist/plugins/ecosystem/plugin-acquisition.d.ts.map +1 -1
  535. package/dist/plugins/ecosystem/plugin-acquisition.js +3 -2
  536. package/dist/plugins/ecosystem/plugin-acquisition.js.map +1 -1
  537. package/dist/plugins/ecosystem/registry-cli-adapter.d.ts.map +1 -1
  538. package/dist/plugins/ecosystem/registry-cli-adapter.js +2 -1
  539. package/dist/plugins/ecosystem/registry-cli-adapter.js.map +1 -1
  540. package/dist/plugins/ecosystem/registry.d.ts.map +1 -1
  541. package/dist/plugins/ecosystem/registry.js +35 -32
  542. package/dist/plugins/ecosystem/registry.js.map +1 -1
  543. package/dist/plugins/ecosystem/resolver.d.ts.map +1 -1
  544. package/dist/plugins/ecosystem/resolver.js +3 -2
  545. package/dist/plugins/ecosystem/resolver.js.map +1 -1
  546. package/dist/plugins/ecosystem/selection-store.d.ts.map +1 -1
  547. package/dist/plugins/ecosystem/selection-store.js +11 -10
  548. package/dist/plugins/ecosystem/selection-store.js.map +1 -1
  549. package/dist/plugins/ecosystem/selection.d.ts.map +1 -1
  550. package/dist/plugins/ecosystem/selection.js +8 -7
  551. package/dist/plugins/ecosystem/selection.js.map +1 -1
  552. package/dist/plugins/ecosystem/state.d.ts.map +1 -1
  553. package/dist/plugins/ecosystem/state.js +24 -23
  554. package/dist/plugins/ecosystem/state.js.map +1 -1
  555. package/dist/plugins/ecosystem/updates.d.ts.map +1 -1
  556. package/dist/plugins/ecosystem/updates.js +5 -4
  557. package/dist/plugins/ecosystem/updates.js.map +1 -1
  558. package/dist/plugins/mcp-http.d.ts +0 -17
  559. package/dist/plugins/mcp-http.d.ts.map +1 -1
  560. package/dist/plugins/mcp-http.js +30 -7
  561. package/dist/plugins/mcp-http.js.map +1 -1
  562. package/dist/plugins/plugin-supervisor.d.ts.map +1 -1
  563. package/dist/plugins/plugin-supervisor.js +19 -1
  564. package/dist/plugins/plugin-supervisor.js.map +1 -1
  565. package/dist/profile/first-roles.d.ts.map +1 -1
  566. package/dist/profile/first-roles.js +10 -1
  567. package/dist/profile/first-roles.js.map +1 -1
  568. package/dist/profile/goal-plugin.d.ts.map +1 -1
  569. package/dist/profile/goal-plugin.js +24 -5
  570. package/dist/profile/goal-plugin.js.map +1 -1
  571. package/dist/profile/identity.d.ts.map +1 -1
  572. package/dist/profile/identity.js +7 -6
  573. package/dist/profile/identity.js.map +1 -1
  574. package/dist/profile/lock.d.ts.map +1 -1
  575. package/dist/profile/lock.js +15 -1
  576. package/dist/profile/lock.js.map +1 -1
  577. package/dist/profile/plan-plugin.d.ts.map +1 -1
  578. package/dist/profile/plan-plugin.js +26 -13
  579. package/dist/profile/plan-plugin.js.map +1 -1
  580. package/dist/profile/plugin-profiles.d.ts.map +1 -1
  581. package/dist/profile/plugin-profiles.js +2 -1
  582. package/dist/profile/plugin-profiles.js.map +1 -1
  583. package/dist/profile/policy-manifest.d.ts.map +1 -1
  584. package/dist/profile/policy-manifest.js +5 -4
  585. package/dist/profile/policy-manifest.js.map +1 -1
  586. package/dist/profile/profile-registry.d.ts +0 -12
  587. package/dist/profile/profile-registry.d.ts.map +1 -1
  588. package/dist/profile/profile-registry.js +14 -1
  589. package/dist/profile/profile-registry.js.map +1 -1
  590. package/dist/profile/role-catalog.d.ts +0 -1
  591. package/dist/profile/role-catalog.d.ts.map +1 -1
  592. package/dist/profile/role-catalog.js +17 -15
  593. package/dist/profile/role-catalog.js.map +1 -1
  594. package/dist/profile/role-orchestrator.d.ts.map +1 -1
  595. package/dist/profile/role-orchestrator.js +8 -7
  596. package/dist/profile/role-orchestrator.js.map +1 -1
  597. package/dist/profile/role-runner.d.ts.map +1 -1
  598. package/dist/profile/role-runner.js +3 -2
  599. package/dist/profile/role-runner.js.map +1 -1
  600. package/dist/profile/root-facade.d.ts.map +1 -1
  601. package/dist/profile/root-facade.js +2 -1
  602. package/dist/profile/root-facade.js.map +1 -1
  603. package/dist/profile/skill-discovery-wiring.d.ts.map +1 -1
  604. package/dist/profile/skill-discovery-wiring.js +7 -2
  605. package/dist/profile/skill-discovery-wiring.js.map +1 -1
  606. package/dist/profile/state-store.d.ts.map +1 -1
  607. package/dist/profile/state-store.js +13 -9
  608. package/dist/profile/state-store.js.map +1 -1
  609. package/dist/profile/todo-plugin.d.ts.map +1 -1
  610. package/dist/profile/todo-plugin.js +9 -4
  611. package/dist/profile/todo-plugin.js.map +1 -1
  612. package/dist/profiles/builtin-suites.d.ts +13 -6
  613. package/dist/profiles/builtin-suites.d.ts.map +1 -1
  614. package/dist/profiles/builtin-suites.js +15 -6
  615. package/dist/profiles/builtin-suites.js.map +1 -1
  616. package/dist/profiles/suite-loader.d.ts +25 -1
  617. package/dist/profiles/suite-loader.d.ts.map +1 -1
  618. package/dist/profiles/suite-loader.js +34 -9
  619. package/dist/profiles/suite-loader.js.map +1 -1
  620. package/dist/remote/server-entry.d.ts.map +1 -1
  621. package/dist/remote/server-entry.js +3 -2
  622. package/dist/remote/server-entry.js.map +1 -1
  623. package/dist/remote/session-source.d.ts.map +1 -1
  624. package/dist/remote/session-source.js +8 -4
  625. package/dist/remote/session-source.js.map +1 -1
  626. package/dist/share/session-share.d.ts.map +1 -1
  627. package/dist/share/session-share.js +14 -2
  628. package/dist/share/session-share.js.map +1 -1
  629. package/dist/testing/plugin-testkit.d.ts.map +1 -1
  630. package/dist/testing/plugin-testkit.js +4 -3
  631. package/dist/testing/plugin-testkit.js.map +1 -1
  632. package/dist/testing/runtime-delivery-queue.d.ts.map +1 -1
  633. package/dist/testing/runtime-delivery-queue.js +2 -1
  634. package/dist/testing/runtime-delivery-queue.js.map +1 -1
  635. package/dist/testing/session-plugin-testkit.d.ts.map +1 -1
  636. package/dist/testing/session-plugin-testkit.js +10 -7
  637. package/dist/testing/session-plugin-testkit.js.map +1 -1
  638. package/dist/utils/ansi.d.ts.map +1 -1
  639. package/dist/utils/ansi.js +2 -1
  640. package/dist/utils/ansi.js.map +1 -1
  641. package/dist/utils/clipboard.d.ts.map +1 -1
  642. package/dist/utils/clipboard.js +7 -6
  643. package/dist/utils/clipboard.js.map +1 -1
  644. package/dist/utils/image-resize-worker.d.ts.map +1 -1
  645. package/dist/utils/image-resize-worker.js +3 -2
  646. package/dist/utils/image-resize-worker.js.map +1 -1
  647. package/dist/utils/shell.d.ts.map +1 -1
  648. package/dist/utils/shell.js +9 -8
  649. package/dist/utils/shell.js.map +1 -1
  650. package/dist/utils/tools-manager.d.ts.map +1 -1
  651. package/dist/utils/tools-manager.js +23 -13
  652. package/dist/utils/tools-manager.js.map +1 -1
  653. package/dist/utils/version-check.d.ts.map +1 -1
  654. package/dist/utils/version-check.js +5 -1
  655. package/dist/utils/version-check.js.map +1 -1
  656. package/docs/keybindings.md +3 -0
  657. package/docs/quickstart.md +1 -1
  658. package/docs/settings.md +1 -0
  659. package/docs/terminal-setup.md +2 -3
  660. package/docs/usage.md +6 -5
  661. package/examples/extensions/with-deps/package-lock.json +2 -2
  662. package/examples/extensions/with-deps/package.json +1 -1
  663. package/examples/extensions/with-deps/plugin.json +1 -1
  664. package/package.json +1 -1
  665. package/dist/bundle/chunks/chunk-EALJ5DDX.js +0 -1452
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-memory-failure-mode.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/compaction-memory-failure-mode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,6BAA6B,GAAG,OAAO,GAAG,iBAAiB,CAAC;AAExE,MAAM,WAAW,wCAAwC;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,6BAA6B,CAAC;CACpD;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,gCAAgC,GACzC;IACA,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CACzB,GACD;IACA,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CACzB,CAAC;AAEL,wBAAgB,kCAAkC,CACjD,WAAW,EAAE,wCAAwC,GACnD,wCAAwC,CAQ1C;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IACnD,QAAQ,CAAC,WAAW,EAAE,wCAAwC,CAAC;IAC/D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC3B,GAAG,gCAAgC,CAmBnC","sourcesContent":["/**\n * D-027 compaction memory-failure mode (P1-9, 记忆系统设计 §8).\n *\n * A Profile's compaction policy must explicitly declare one of exactly two\n * failure modes for memory-subsystem faults:\n * - `abort` — the whole compaction fails and the RAW error is surfaced\n * (unattended / strict environments);\n * - `degrade-visible` — the memory steps are skipped (candidate generation,\n * memory commit, recall, recall verification), but context candidate\n * generation, snapshot/rebuild, and Session/Context replace still run;\n * the result is marked as NOT memory-integrated, a structured degradation\n * event carrying the RAW error is published, and inspector can query it.\n * Silent degradation is forbidden — visibility is what separates a\n * degradation from \"quietly skipping memory\".\n */\nexport type CompactionMemoryFailureModeV1 = \"abort\" | \"degrade-visible\";\n\nexport interface CompactionMemoryFailureModeDeclarationV1 {\n\treadonly profileId: string;\n\treadonly failureMode: CompactionMemoryFailureModeV1;\n}\n\nexport interface MemoryStepOutcomeV1 {\n\treadonly step: number;\n\treadonly skipped: boolean;\n}\n\nexport type CompactionMemoryFailureOutcomeV1 =\n\t| {\n\t\t\treadonly mode: \"abort\";\n\t\t\treadonly status: \"aborted\";\n\t\t\treadonly rawError: string;\n\t }\n\t| {\n\t\t\treadonly mode: \"degrade-visible\";\n\t\t\treadonly status: \"degraded_visible\";\n\t\t\t/** Memory steps (2/4/5/8) skipped; context steps (6/7) executed. */\n\t\t\treadonly steps: readonly MemoryStepOutcomeV1[];\n\t\t\treadonly degraded: true;\n\t\t\treadonly rawError: string;\n\t };\n\nexport function declareCompactionMemoryFailureMode(\n\tdeclaration: CompactionMemoryFailureModeDeclarationV1,\n): CompactionMemoryFailureModeDeclarationV1 {\n\tif (![\"abort\", \"degrade-visible\"].includes(declaration.failureMode)) {\n\t\tthrow new Error(`Invalid compaction memory failure mode: ${String(declaration.failureMode)}`);\n\t}\n\tif (declaration.profileId.trim().length === 0) {\n\t\tthrow new Error(\"Compaction memory failure mode declaration requires a profileId\");\n\t}\n\treturn Object.freeze({ ...declaration });\n}\n\n/** Applies D-027 to a memory-subsystem fault, honoring the declared mode. */\nexport function applyCompactionMemoryFailure(input: {\n\treadonly declaration: CompactionMemoryFailureModeDeclarationV1;\n\treadonly rawError: unknown;\n}): CompactionMemoryFailureOutcomeV1 {\n\tconst rawError = input.rawError instanceof Error ? input.rawError.message : String(input.rawError);\n\tif (input.declaration.failureMode === \"abort\") {\n\t\treturn { mode: \"abort\", status: \"aborted\", rawError };\n\t}\n\treturn {\n\t\tmode: \"degrade-visible\" as const,\n\t\tstatus: \"degraded_visible\" as const,\n\t\tdegraded: true as const,\n\t\trawError,\n\t\tsteps: Object.freeze([\n\t\t\t{ step: 2, skipped: true },\n\t\t\t{ step: 4, skipped: true },\n\t\t\t{ step: 5, skipped: true },\n\t\t\t{ step: 6, skipped: false },\n\t\t\t{ step: 7, skipped: false },\n\t\t\t{ step: 8, skipped: true },\n\t\t] as readonly MemoryStepOutcomeV1[]),\n\t};\n}\n"]}
1
+ {"version":3,"file":"compaction-memory-failure-mode.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/compaction-memory-failure-mode.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,6BAA6B,GAAG,OAAO,GAAG,iBAAiB,CAAC;AAExE,MAAM,WAAW,wCAAwC;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,6BAA6B,CAAC;CACpD;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,gCAAgC,GACzC;IACA,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CACzB,GACD;IACA,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CACzB,CAAC;AAEL,wBAAgB,kCAAkC,CACjD,WAAW,EAAE,wCAAwC,GACnD,wCAAwC,CAQ1C;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IACnD,QAAQ,CAAC,WAAW,EAAE,wCAAwC,CAAC;IAC/D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC3B,GAAG,gCAAgC,CAmBnC","sourcesContent":["import { t } from \"../i18n/index.ts\";\n/**\n * D-027 compaction memory-failure mode (P1-9, 记忆系统设计 §8).\n *\n * A Profile's compaction policy must explicitly declare one of exactly two\n * failure modes for memory-subsystem faults:\n * - `abort` — the whole compaction fails and the RAW error is surfaced\n * (unattended / strict environments);\n * - `degrade-visible` — the memory steps are skipped (candidate generation,\n * memory commit, recall, recall verification), but context candidate\n * generation, snapshot/rebuild, and Session/Context replace still run;\n * the result is marked as NOT memory-integrated, a structured degradation\n * event carrying the RAW error is published, and inspector can query it.\n * Silent degradation is forbidden — visibility is what separates a\n * degradation from \"quietly skipping memory\".\n */\nexport type CompactionMemoryFailureModeV1 = \"abort\" | \"degrade-visible\";\n\nexport interface CompactionMemoryFailureModeDeclarationV1 {\n\treadonly profileId: string;\n\treadonly failureMode: CompactionMemoryFailureModeV1;\n}\n\nexport interface MemoryStepOutcomeV1 {\n\treadonly step: number;\n\treadonly skipped: boolean;\n}\n\nexport type CompactionMemoryFailureOutcomeV1 =\n\t| {\n\t\t\treadonly mode: \"abort\";\n\t\t\treadonly status: \"aborted\";\n\t\t\treadonly rawError: string;\n\t }\n\t| {\n\t\t\treadonly mode: \"degrade-visible\";\n\t\t\treadonly status: \"degraded_visible\";\n\t\t\t/** Memory steps (2/4/5/8) skipped; context steps (6/7) executed. */\n\t\t\treadonly steps: readonly MemoryStepOutcomeV1[];\n\t\t\treadonly degraded: true;\n\t\t\treadonly rawError: string;\n\t };\n\nexport function declareCompactionMemoryFailureMode(\n\tdeclaration: CompactionMemoryFailureModeDeclarationV1,\n): CompactionMemoryFailureModeDeclarationV1 {\n\tif (![\"abort\", \"degrade-visible\"].includes(declaration.failureMode)) {\n\t\tthrow new Error(t(\"Invalid compaction memory failure mode: {value}\", { value: String(declaration.failureMode) }));\n\t}\n\tif (declaration.profileId.trim().length === 0) {\n\t\tthrow new Error(t(\"Compaction memory failure mode declaration requires a profileId\"));\n\t}\n\treturn Object.freeze({ ...declaration });\n}\n\n/** Applies D-027 to a memory-subsystem fault, honoring the declared mode. */\nexport function applyCompactionMemoryFailure(input: {\n\treadonly declaration: CompactionMemoryFailureModeDeclarationV1;\n\treadonly rawError: unknown;\n}): CompactionMemoryFailureOutcomeV1 {\n\tconst rawError = input.rawError instanceof Error ? input.rawError.message : String(input.rawError);\n\tif (input.declaration.failureMode === \"abort\") {\n\t\treturn { mode: \"abort\", status: \"aborted\", rawError };\n\t}\n\treturn {\n\t\tmode: \"degrade-visible\" as const,\n\t\tstatus: \"degraded_visible\" as const,\n\t\tdegraded: true as const,\n\t\trawError,\n\t\tsteps: Object.freeze([\n\t\t\t{ step: 2, skipped: true },\n\t\t\t{ step: 4, skipped: true },\n\t\t\t{ step: 5, skipped: true },\n\t\t\t{ step: 6, skipped: false },\n\t\t\t{ step: 7, skipped: false },\n\t\t\t{ step: 8, skipped: true },\n\t\t] as readonly MemoryStepOutcomeV1[]),\n\t};\n}\n"]}
@@ -1,9 +1,10 @@
1
+ import { t } from "../i18n/index.js";
1
2
  export function declareCompactionMemoryFailureMode(declaration) {
2
3
  if (!["abort", "degrade-visible"].includes(declaration.failureMode)) {
3
- throw new Error(`Invalid compaction memory failure mode: ${String(declaration.failureMode)}`);
4
+ throw new Error(t("Invalid compaction memory failure mode: {value}", { value: String(declaration.failureMode) }));
4
5
  }
5
6
  if (declaration.profileId.trim().length === 0) {
6
- throw new Error("Compaction memory failure mode declaration requires a profileId");
7
+ throw new Error(t("Compaction memory failure mode declaration requires a profileId"));
7
8
  }
8
9
  return Object.freeze({ ...declaration });
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-memory-failure-mode.js","sourceRoot":"","sources":["../../../src/core/extensions/compaction-memory-failure-mode.ts"],"names":[],"mappings":"AA0CA,MAAM,UAAU,kCAAkC,CACjD,WAAqD,EACV;IAC3C,IAAI,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,2CAA2C,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,WAAW,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC;AAAA,CACzC;AAED,6EAA6E;AAC7E,MAAM,UAAU,4BAA4B,CAAC,KAG5C,EAAoC;IACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnG,IAAI,KAAK,CAAC,WAAW,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;QAC/C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACvD,CAAC;IACD,OAAO;QACN,IAAI,EAAE,iBAA0B;QAChC,MAAM,EAAE,kBAA2B;QACnC,QAAQ,EAAE,IAAa;QACvB,QAAQ;QACR,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;SACQ,CAAC;KACpC,CAAC;AAAA,CACF","sourcesContent":["/**\n * D-027 compaction memory-failure mode (P1-9, 记忆系统设计 §8).\n *\n * A Profile's compaction policy must explicitly declare one of exactly two\n * failure modes for memory-subsystem faults:\n * - `abort` — the whole compaction fails and the RAW error is surfaced\n * (unattended / strict environments);\n * - `degrade-visible` — the memory steps are skipped (candidate generation,\n * memory commit, recall, recall verification), but context candidate\n * generation, snapshot/rebuild, and Session/Context replace still run;\n * the result is marked as NOT memory-integrated, a structured degradation\n * event carrying the RAW error is published, and inspector can query it.\n * Silent degradation is forbidden — visibility is what separates a\n * degradation from \"quietly skipping memory\".\n */\nexport type CompactionMemoryFailureModeV1 = \"abort\" | \"degrade-visible\";\n\nexport interface CompactionMemoryFailureModeDeclarationV1 {\n\treadonly profileId: string;\n\treadonly failureMode: CompactionMemoryFailureModeV1;\n}\n\nexport interface MemoryStepOutcomeV1 {\n\treadonly step: number;\n\treadonly skipped: boolean;\n}\n\nexport type CompactionMemoryFailureOutcomeV1 =\n\t| {\n\t\t\treadonly mode: \"abort\";\n\t\t\treadonly status: \"aborted\";\n\t\t\treadonly rawError: string;\n\t }\n\t| {\n\t\t\treadonly mode: \"degrade-visible\";\n\t\t\treadonly status: \"degraded_visible\";\n\t\t\t/** Memory steps (2/4/5/8) skipped; context steps (6/7) executed. */\n\t\t\treadonly steps: readonly MemoryStepOutcomeV1[];\n\t\t\treadonly degraded: true;\n\t\t\treadonly rawError: string;\n\t };\n\nexport function declareCompactionMemoryFailureMode(\n\tdeclaration: CompactionMemoryFailureModeDeclarationV1,\n): CompactionMemoryFailureModeDeclarationV1 {\n\tif (![\"abort\", \"degrade-visible\"].includes(declaration.failureMode)) {\n\t\tthrow new Error(`Invalid compaction memory failure mode: ${String(declaration.failureMode)}`);\n\t}\n\tif (declaration.profileId.trim().length === 0) {\n\t\tthrow new Error(\"Compaction memory failure mode declaration requires a profileId\");\n\t}\n\treturn Object.freeze({ ...declaration });\n}\n\n/** Applies D-027 to a memory-subsystem fault, honoring the declared mode. */\nexport function applyCompactionMemoryFailure(input: {\n\treadonly declaration: CompactionMemoryFailureModeDeclarationV1;\n\treadonly rawError: unknown;\n}): CompactionMemoryFailureOutcomeV1 {\n\tconst rawError = input.rawError instanceof Error ? input.rawError.message : String(input.rawError);\n\tif (input.declaration.failureMode === \"abort\") {\n\t\treturn { mode: \"abort\", status: \"aborted\", rawError };\n\t}\n\treturn {\n\t\tmode: \"degrade-visible\" as const,\n\t\tstatus: \"degraded_visible\" as const,\n\t\tdegraded: true as const,\n\t\trawError,\n\t\tsteps: Object.freeze([\n\t\t\t{ step: 2, skipped: true },\n\t\t\t{ step: 4, skipped: true },\n\t\t\t{ step: 5, skipped: true },\n\t\t\t{ step: 6, skipped: false },\n\t\t\t{ step: 7, skipped: false },\n\t\t\t{ step: 8, skipped: true },\n\t\t] as readonly MemoryStepOutcomeV1[]),\n\t};\n}\n"]}
1
+ {"version":3,"file":"compaction-memory-failure-mode.js","sourceRoot":"","sources":["../../../src/core/extensions/compaction-memory-failure-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AA2CrC,MAAM,UAAU,kCAAkC,CACjD,WAAqD,EACV;IAC3C,IAAI,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,iDAAiD,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IACnH,CAAC;IACD,IAAI,WAAW,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,iEAAiE,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC;AAAA,CACzC;AAED,6EAA6E;AAC7E,MAAM,UAAU,4BAA4B,CAAC,KAG5C,EAAoC;IACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnG,IAAI,KAAK,CAAC,WAAW,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;QAC/C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACvD,CAAC;IACD,OAAO;QACN,IAAI,EAAE,iBAA0B;QAChC,MAAM,EAAE,kBAA2B;QACnC,QAAQ,EAAE,IAAa;QACvB,QAAQ;QACR,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;YAC1B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;SACQ,CAAC;KACpC,CAAC;AAAA,CACF","sourcesContent":["import { t } from \"../i18n/index.ts\";\n/**\n * D-027 compaction memory-failure mode (P1-9, 记忆系统设计 §8).\n *\n * A Profile's compaction policy must explicitly declare one of exactly two\n * failure modes for memory-subsystem faults:\n * - `abort` — the whole compaction fails and the RAW error is surfaced\n * (unattended / strict environments);\n * - `degrade-visible` — the memory steps are skipped (candidate generation,\n * memory commit, recall, recall verification), but context candidate\n * generation, snapshot/rebuild, and Session/Context replace still run;\n * the result is marked as NOT memory-integrated, a structured degradation\n * event carrying the RAW error is published, and inspector can query it.\n * Silent degradation is forbidden — visibility is what separates a\n * degradation from \"quietly skipping memory\".\n */\nexport type CompactionMemoryFailureModeV1 = \"abort\" | \"degrade-visible\";\n\nexport interface CompactionMemoryFailureModeDeclarationV1 {\n\treadonly profileId: string;\n\treadonly failureMode: CompactionMemoryFailureModeV1;\n}\n\nexport interface MemoryStepOutcomeV1 {\n\treadonly step: number;\n\treadonly skipped: boolean;\n}\n\nexport type CompactionMemoryFailureOutcomeV1 =\n\t| {\n\t\t\treadonly mode: \"abort\";\n\t\t\treadonly status: \"aborted\";\n\t\t\treadonly rawError: string;\n\t }\n\t| {\n\t\t\treadonly mode: \"degrade-visible\";\n\t\t\treadonly status: \"degraded_visible\";\n\t\t\t/** Memory steps (2/4/5/8) skipped; context steps (6/7) executed. */\n\t\t\treadonly steps: readonly MemoryStepOutcomeV1[];\n\t\t\treadonly degraded: true;\n\t\t\treadonly rawError: string;\n\t };\n\nexport function declareCompactionMemoryFailureMode(\n\tdeclaration: CompactionMemoryFailureModeDeclarationV1,\n): CompactionMemoryFailureModeDeclarationV1 {\n\tif (![\"abort\", \"degrade-visible\"].includes(declaration.failureMode)) {\n\t\tthrow new Error(t(\"Invalid compaction memory failure mode: {value}\", { value: String(declaration.failureMode) }));\n\t}\n\tif (declaration.profileId.trim().length === 0) {\n\t\tthrow new Error(t(\"Compaction memory failure mode declaration requires a profileId\"));\n\t}\n\treturn Object.freeze({ ...declaration });\n}\n\n/** Applies D-027 to a memory-subsystem fault, honoring the declared mode. */\nexport function applyCompactionMemoryFailure(input: {\n\treadonly declaration: CompactionMemoryFailureModeDeclarationV1;\n\treadonly rawError: unknown;\n}): CompactionMemoryFailureOutcomeV1 {\n\tconst rawError = input.rawError instanceof Error ? input.rawError.message : String(input.rawError);\n\tif (input.declaration.failureMode === \"abort\") {\n\t\treturn { mode: \"abort\", status: \"aborted\", rawError };\n\t}\n\treturn {\n\t\tmode: \"degrade-visible\" as const,\n\t\tstatus: \"degraded_visible\" as const,\n\t\tdegraded: true as const,\n\t\trawError,\n\t\tsteps: Object.freeze([\n\t\t\t{ step: 2, skipped: true },\n\t\t\t{ step: 4, skipped: true },\n\t\t\t{ step: 5, skipped: true },\n\t\t\t{ step: 6, skipped: false },\n\t\t\t{ step: 7, skipped: false },\n\t\t\t{ step: 8, skipped: true },\n\t\t] as readonly MemoryStepOutcomeV1[]),\n\t};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"context-strategy-binding.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/context-strategy-binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;AA0B3G,uFAAuF;AACvF,wBAAgB,6BAA6B,CAC5C,iBAAiB,EAAE,gBAAgB,GAAG,SAAS,EAC/C,UAAU,EAAE,MAAM,iBAAiB,GAAG,SAAS,EAC/C,eAAe,EAAE,MAAM,MAAM,GAAG,SAAS,EACzC,YAAY,CAAC,EAAE,MAAM,MAAM,GACzB,gBAAgB,CAgBlB;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CACnD,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAUlC","sourcesContent":["import type { AgentMessage } from \"@agent-forge/agent-core\";\nimport type { CapabilityRuntime } from \"./capability-runtime.ts\";\n\nexport type ContextTransform = (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\nfunction cloneContext(messages: AgentMessage[], strategyName: string): AgentMessage[] {\n\ttry {\n\t\treturn structuredClone(messages);\n\t} catch (error) {\n\t\tthrow new Error(`Context strategy returned a non-cloneable request context: ${strategyName}`, { cause: error });\n\t}\n}\n\nfunction asAgentMessages(result: unknown, strategyName: string): AgentMessage[] {\n\tif (\n\t\t!Array.isArray(result) ||\n\t\tresult.some(\n\t\t\t(message) =>\n\t\t\t\ttypeof message !== \"object\" ||\n\t\t\t\tmessage === null ||\n\t\t\t\t!(\"role\" in message) ||\n\t\t\t\ttypeof (message as { role?: unknown }).role !== \"string\",\n\t\t)\n\t) {\n\t\tthrow new Error(`Context strategy must return an AgentMessage array: ${strategyName}`);\n\t}\n\treturn result as AgentMessage[];\n}\n\n/** Compose the legacy context hook with an explicitly selected capability strategy. */\nexport function bindCapabilityContextStrategy(\n\tpreviousTransform: ContextTransform | undefined,\n\tgetRuntime: () => CapabilityRuntime | undefined,\n\tgetStrategyName: () => string | undefined,\n\tgetSessionId?: () => string,\n): ContextTransform {\n\treturn async (messages, signal) => {\n\t\tconst transformed = (await previousTransform?.(messages, signal)) ?? messages;\n\t\tconst strategyName = getStrategyName();\n\t\tif (!strategyName) return transformed;\n\t\tconst runtime = getRuntime();\n\t\tif (!runtime?.hasContextStrategy(strategyName)) {\n\t\t\tthrow new Error(`Configured context strategy is not registered: ${strategyName}`);\n\t\t}\n\t\tconst result = await runtime.transformContext(strategyName, cloneContext(transformed, strategyName), {\n\t\t\tsignal,\n\t\t\treason: \"request\",\n\t\t\tsessionId: getSessionId?.(),\n\t\t});\n\t\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n\t};\n}\n\n/**\n * Apply the explicitly selected capability strategy to a message array.\n * Shared by the legacy context-strategy binding and the default loop hook\n * chain; callers that have no previous transform pass the raw messages.\n */\nexport async function applyCapabilityContextStrategy(\n\tmessages: readonly AgentMessage[],\n\truntime: CapabilityRuntime,\n\tstrategyName: string,\n\tsessionId: string | undefined,\n\tsignal?: AbortSignal,\n): Promise<readonly AgentMessage[]> {\n\tif (!runtime.hasContextStrategy(strategyName)) {\n\t\tthrow new Error(`Configured context strategy is not registered: ${strategyName}`);\n\t}\n\tconst result = await runtime.transformContext(strategyName, cloneContext(messages as AgentMessage[], strategyName), {\n\t\tsignal,\n\t\treason: \"request\",\n\t\tsessionId,\n\t});\n\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n}\n"]}
1
+ {"version":3,"file":"context-strategy-binding.d.ts","sourceRoot":"","sources":["../../../src/core/extensions/context-strategy-binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;AA4B3G,uFAAuF;AACvF,wBAAgB,6BAA6B,CAC5C,iBAAiB,EAAE,gBAAgB,GAAG,SAAS,EAC/C,UAAU,EAAE,MAAM,iBAAiB,GAAG,SAAS,EAC/C,eAAe,EAAE,MAAM,MAAM,GAAG,SAAS,EACzC,YAAY,CAAC,EAAE,MAAM,MAAM,GACzB,gBAAgB,CAgBlB;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CACnD,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAUlC","sourcesContent":["import type { AgentMessage } from \"@agent-forge/agent-core\";\nimport { t } from \"../i18n/index.ts\";\nimport type { CapabilityRuntime } from \"./capability-runtime.ts\";\n\nexport type ContextTransform = (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\nfunction cloneContext(messages: AgentMessage[], strategyName: string): AgentMessage[] {\n\ttry {\n\t\treturn structuredClone(messages);\n\t} catch (error) {\n\t\tthrow new Error(t(\"Context strategy returned a non-cloneable request context: {name}\", { name: strategyName }), {\n\t\t\tcause: error,\n\t\t});\n\t}\n}\n\nfunction asAgentMessages(result: unknown, strategyName: string): AgentMessage[] {\n\tif (\n\t\t!Array.isArray(result) ||\n\t\tresult.some(\n\t\t\t(message) =>\n\t\t\t\ttypeof message !== \"object\" ||\n\t\t\t\tmessage === null ||\n\t\t\t\t!(\"role\" in message) ||\n\t\t\t\ttypeof (message as { role?: unknown }).role !== \"string\",\n\t\t)\n\t) {\n\t\tthrow new Error(t(\"Context strategy must return an AgentMessage array: {strategyName}\", { strategyName }));\n\t}\n\treturn result as AgentMessage[];\n}\n\n/** Compose the legacy context hook with an explicitly selected capability strategy. */\nexport function bindCapabilityContextStrategy(\n\tpreviousTransform: ContextTransform | undefined,\n\tgetRuntime: () => CapabilityRuntime | undefined,\n\tgetStrategyName: () => string | undefined,\n\tgetSessionId?: () => string,\n): ContextTransform {\n\treturn async (messages, signal) => {\n\t\tconst transformed = (await previousTransform?.(messages, signal)) ?? messages;\n\t\tconst strategyName = getStrategyName();\n\t\tif (!strategyName) return transformed;\n\t\tconst runtime = getRuntime();\n\t\tif (!runtime?.hasContextStrategy(strategyName)) {\n\t\t\tthrow new Error(t(\"Configured context strategy is not registered: {name}\", { name: strategyName }));\n\t\t}\n\t\tconst result = await runtime.transformContext(strategyName, cloneContext(transformed, strategyName), {\n\t\t\tsignal,\n\t\t\treason: \"request\",\n\t\t\tsessionId: getSessionId?.(),\n\t\t});\n\t\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n\t};\n}\n\n/**\n * Apply the explicitly selected capability strategy to a message array.\n * Shared by the legacy context-strategy binding and the default loop hook\n * chain; callers that have no previous transform pass the raw messages.\n */\nexport async function applyCapabilityContextStrategy(\n\tmessages: readonly AgentMessage[],\n\truntime: CapabilityRuntime,\n\tstrategyName: string,\n\tsessionId: string | undefined,\n\tsignal?: AbortSignal,\n): Promise<readonly AgentMessage[]> {\n\tif (!runtime.hasContextStrategy(strategyName)) {\n\t\tthrow new Error(t(\"Configured context strategy is not registered: {name}\", { name: strategyName }));\n\t}\n\tconst result = await runtime.transformContext(strategyName, cloneContext(messages as AgentMessage[], strategyName), {\n\t\tsignal,\n\t\treason: \"request\",\n\t\tsessionId,\n\t});\n\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n}\n"]}
@@ -1,9 +1,12 @@
1
+ import { t } from "../i18n/index.js";
1
2
  function cloneContext(messages, strategyName) {
2
3
  try {
3
4
  return structuredClone(messages);
4
5
  }
5
6
  catch (error) {
6
- throw new Error(`Context strategy returned a non-cloneable request context: ${strategyName}`, { cause: error });
7
+ throw new Error(t("Context strategy returned a non-cloneable request context: {name}", { name: strategyName }), {
8
+ cause: error,
9
+ });
7
10
  }
8
11
  }
9
12
  function asAgentMessages(result, strategyName) {
@@ -12,7 +15,7 @@ function asAgentMessages(result, strategyName) {
12
15
  message === null ||
13
16
  !("role" in message) ||
14
17
  typeof message.role !== "string")) {
15
- throw new Error(`Context strategy must return an AgentMessage array: ${strategyName}`);
18
+ throw new Error(t("Context strategy must return an AgentMessage array: {strategyName}", { strategyName }));
16
19
  }
17
20
  return result;
18
21
  }
@@ -25,7 +28,7 @@ export function bindCapabilityContextStrategy(previousTransform, getRuntime, get
25
28
  return transformed;
26
29
  const runtime = getRuntime();
27
30
  if (!runtime?.hasContextStrategy(strategyName)) {
28
- throw new Error(`Configured context strategy is not registered: ${strategyName}`);
31
+ throw new Error(t("Configured context strategy is not registered: {name}", { name: strategyName }));
29
32
  }
30
33
  const result = await runtime.transformContext(strategyName, cloneContext(transformed, strategyName), {
31
34
  signal,
@@ -42,7 +45,7 @@ export function bindCapabilityContextStrategy(previousTransform, getRuntime, get
42
45
  */
43
46
  export async function applyCapabilityContextStrategy(messages, runtime, strategyName, sessionId, signal) {
44
47
  if (!runtime.hasContextStrategy(strategyName)) {
45
- throw new Error(`Configured context strategy is not registered: ${strategyName}`);
48
+ throw new Error(t("Configured context strategy is not registered: {name}", { name: strategyName }));
46
49
  }
47
50
  const result = await runtime.transformContext(strategyName, cloneContext(messages, strategyName), {
48
51
  signal,
@@ -1 +1 @@
1
- {"version":3,"file":"context-strategy-binding.js","sourceRoot":"","sources":["../../../src/core/extensions/context-strategy-binding.ts"],"names":[],"mappings":"AAKA,SAAS,YAAY,CAAC,QAAwB,EAAE,YAAoB,EAAkB;IACrF,IAAI,CAAC;QACJ,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,8DAA8D,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACjH,CAAC;AAAA,CACD;AAED,SAAS,eAAe,CAAC,MAAe,EAAE,YAAoB,EAAkB;IAC/E,IACC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACtB,MAAM,CAAC,IAAI,CACV,CAAC,OAAO,EAAE,EAAE,CACX,OAAO,OAAO,KAAK,QAAQ;YAC3B,OAAO,KAAK,IAAI;YAChB,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC;YACpB,OAAQ,OAA8B,CAAC,IAAI,KAAK,QAAQ,CACzD,EACA,CAAC;QACF,MAAM,IAAI,KAAK,CAAC,uDAAuD,YAAY,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,MAAwB,CAAC;AAAA,CAChC;AAED,uFAAuF;AACvF,MAAM,UAAU,6BAA6B,CAC5C,iBAA+C,EAC/C,UAA+C,EAC/C,eAAyC,EACzC,YAA2B,EACR;IACnB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,CAAC,MAAM,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC;QAC9E,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,CAAC;QACtC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,kDAAkD,YAAY,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE;YACpG,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,YAAY,EAAE,EAAE;SAC3B,CAAC,CAAC;QACH,OAAO,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;IAAA,CACzE,CAAC;AAAA,CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,QAAiC,EACjC,OAA0B,EAC1B,YAAoB,EACpB,SAA6B,EAC7B,MAAoB,EACe;IACnC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,kDAAkD,YAAY,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,QAA0B,EAAE,YAAY,CAAC,EAAE;QACnH,MAAM;QACN,MAAM,EAAE,SAAS;QACjB,SAAS;KACT,CAAC,CAAC;IACH,OAAO,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;AAAA,CACzE","sourcesContent":["import type { AgentMessage } from \"@agent-forge/agent-core\";\nimport type { CapabilityRuntime } from \"./capability-runtime.ts\";\n\nexport type ContextTransform = (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\nfunction cloneContext(messages: AgentMessage[], strategyName: string): AgentMessage[] {\n\ttry {\n\t\treturn structuredClone(messages);\n\t} catch (error) {\n\t\tthrow new Error(`Context strategy returned a non-cloneable request context: ${strategyName}`, { cause: error });\n\t}\n}\n\nfunction asAgentMessages(result: unknown, strategyName: string): AgentMessage[] {\n\tif (\n\t\t!Array.isArray(result) ||\n\t\tresult.some(\n\t\t\t(message) =>\n\t\t\t\ttypeof message !== \"object\" ||\n\t\t\t\tmessage === null ||\n\t\t\t\t!(\"role\" in message) ||\n\t\t\t\ttypeof (message as { role?: unknown }).role !== \"string\",\n\t\t)\n\t) {\n\t\tthrow new Error(`Context strategy must return an AgentMessage array: ${strategyName}`);\n\t}\n\treturn result as AgentMessage[];\n}\n\n/** Compose the legacy context hook with an explicitly selected capability strategy. */\nexport function bindCapabilityContextStrategy(\n\tpreviousTransform: ContextTransform | undefined,\n\tgetRuntime: () => CapabilityRuntime | undefined,\n\tgetStrategyName: () => string | undefined,\n\tgetSessionId?: () => string,\n): ContextTransform {\n\treturn async (messages, signal) => {\n\t\tconst transformed = (await previousTransform?.(messages, signal)) ?? messages;\n\t\tconst strategyName = getStrategyName();\n\t\tif (!strategyName) return transformed;\n\t\tconst runtime = getRuntime();\n\t\tif (!runtime?.hasContextStrategy(strategyName)) {\n\t\t\tthrow new Error(`Configured context strategy is not registered: ${strategyName}`);\n\t\t}\n\t\tconst result = await runtime.transformContext(strategyName, cloneContext(transformed, strategyName), {\n\t\t\tsignal,\n\t\t\treason: \"request\",\n\t\t\tsessionId: getSessionId?.(),\n\t\t});\n\t\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n\t};\n}\n\n/**\n * Apply the explicitly selected capability strategy to a message array.\n * Shared by the legacy context-strategy binding and the default loop hook\n * chain; callers that have no previous transform pass the raw messages.\n */\nexport async function applyCapabilityContextStrategy(\n\tmessages: readonly AgentMessage[],\n\truntime: CapabilityRuntime,\n\tstrategyName: string,\n\tsessionId: string | undefined,\n\tsignal?: AbortSignal,\n): Promise<readonly AgentMessage[]> {\n\tif (!runtime.hasContextStrategy(strategyName)) {\n\t\tthrow new Error(`Configured context strategy is not registered: ${strategyName}`);\n\t}\n\tconst result = await runtime.transformContext(strategyName, cloneContext(messages as AgentMessage[], strategyName), {\n\t\tsignal,\n\t\treason: \"request\",\n\t\tsessionId,\n\t});\n\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n}\n"]}
1
+ {"version":3,"file":"context-strategy-binding.js","sourceRoot":"","sources":["../../../src/core/extensions/context-strategy-binding.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAKrC,SAAS,YAAY,CAAC,QAAwB,EAAE,YAAoB,EAAkB;IACrF,IAAI,CAAC;QACJ,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,mEAAmE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE;YAC/G,KAAK,EAAE,KAAK;SACZ,CAAC,CAAC;IACJ,CAAC;AAAA,CACD;AAED,SAAS,eAAe,CAAC,MAAe,EAAE,YAAoB,EAAkB;IAC/E,IACC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACtB,MAAM,CAAC,IAAI,CACV,CAAC,OAAO,EAAE,EAAE,CACX,OAAO,OAAO,KAAK,QAAQ;YAC3B,OAAO,KAAK,IAAI;YAChB,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC;YACpB,OAAQ,OAA8B,CAAC,IAAI,KAAK,QAAQ,CACzD,EACA,CAAC;QACF,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,oEAAoE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAC5G,CAAC;IACD,OAAO,MAAwB,CAAC;AAAA,CAChC;AAED,uFAAuF;AACvF,MAAM,UAAU,6BAA6B,CAC5C,iBAA+C,EAC/C,UAA+C,EAC/C,eAAyC,EACzC,YAA2B,EACR;IACnB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,CAAC,MAAM,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC;QAC9E,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,CAAC;QACtC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,uDAAuD,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE;YACpG,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,YAAY,EAAE,EAAE;SAC3B,CAAC,CAAC;QACH,OAAO,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;IAAA,CACzE,CAAC;AAAA,CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,QAAiC,EACjC,OAA0B,EAC1B,YAAoB,EACpB,SAA6B,EAC7B,MAAoB,EACe;IACnC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,uDAAuD,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IACrG,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,QAA0B,EAAE,YAAY,CAAC,EAAE;QACnH,MAAM;QACN,MAAM,EAAE,SAAS;QACjB,SAAS;KACT,CAAC,CAAC;IACH,OAAO,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;AAAA,CACzE","sourcesContent":["import type { AgentMessage } from \"@agent-forge/agent-core\";\nimport { t } from \"../i18n/index.ts\";\nimport type { CapabilityRuntime } from \"./capability-runtime.ts\";\n\nexport type ContextTransform = (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\nfunction cloneContext(messages: AgentMessage[], strategyName: string): AgentMessage[] {\n\ttry {\n\t\treturn structuredClone(messages);\n\t} catch (error) {\n\t\tthrow new Error(t(\"Context strategy returned a non-cloneable request context: {name}\", { name: strategyName }), {\n\t\t\tcause: error,\n\t\t});\n\t}\n}\n\nfunction asAgentMessages(result: unknown, strategyName: string): AgentMessage[] {\n\tif (\n\t\t!Array.isArray(result) ||\n\t\tresult.some(\n\t\t\t(message) =>\n\t\t\t\ttypeof message !== \"object\" ||\n\t\t\t\tmessage === null ||\n\t\t\t\t!(\"role\" in message) ||\n\t\t\t\ttypeof (message as { role?: unknown }).role !== \"string\",\n\t\t)\n\t) {\n\t\tthrow new Error(t(\"Context strategy must return an AgentMessage array: {strategyName}\", { strategyName }));\n\t}\n\treturn result as AgentMessage[];\n}\n\n/** Compose the legacy context hook with an explicitly selected capability strategy. */\nexport function bindCapabilityContextStrategy(\n\tpreviousTransform: ContextTransform | undefined,\n\tgetRuntime: () => CapabilityRuntime | undefined,\n\tgetStrategyName: () => string | undefined,\n\tgetSessionId?: () => string,\n): ContextTransform {\n\treturn async (messages, signal) => {\n\t\tconst transformed = (await previousTransform?.(messages, signal)) ?? messages;\n\t\tconst strategyName = getStrategyName();\n\t\tif (!strategyName) return transformed;\n\t\tconst runtime = getRuntime();\n\t\tif (!runtime?.hasContextStrategy(strategyName)) {\n\t\t\tthrow new Error(t(\"Configured context strategy is not registered: {name}\", { name: strategyName }));\n\t\t}\n\t\tconst result = await runtime.transformContext(strategyName, cloneContext(transformed, strategyName), {\n\t\t\tsignal,\n\t\t\treason: \"request\",\n\t\t\tsessionId: getSessionId?.(),\n\t\t});\n\t\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n\t};\n}\n\n/**\n * Apply the explicitly selected capability strategy to a message array.\n * Shared by the legacy context-strategy binding and the default loop hook\n * chain; callers that have no previous transform pass the raw messages.\n */\nexport async function applyCapabilityContextStrategy(\n\tmessages: readonly AgentMessage[],\n\truntime: CapabilityRuntime,\n\tstrategyName: string,\n\tsessionId: string | undefined,\n\tsignal?: AbortSignal,\n): Promise<readonly AgentMessage[]> {\n\tif (!runtime.hasContextStrategy(strategyName)) {\n\t\tthrow new Error(t(\"Configured context strategy is not registered: {name}\", { name: strategyName }));\n\t}\n\tconst result = await runtime.transformContext(strategyName, cloneContext(messages as AgentMessage[], strategyName), {\n\t\tsignal,\n\t\treason: \"request\",\n\t\tsessionId,\n\t});\n\treturn cloneContext(asAgentMessages(result, strategyName), strategyName);\n}\n"]}