@namzu/sdk 48.3.1 → 50.0.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 (838) hide show
  1. package/CHANGELOG.md +542 -0
  2. package/README.md +137 -125
  3. package/dist/agents/QueryAgent.d.ts.map +1 -1
  4. package/dist/agents/QueryAgent.js +1 -0
  5. package/dist/agents/QueryAgent.js.map +1 -1
  6. package/dist/agents/examples/SupervisorAgent.d.ts.map +1 -1
  7. package/dist/agents/examples/SupervisorAgent.js +1 -0
  8. package/dist/agents/examples/SupervisorAgent.js.map +1 -1
  9. package/dist/agents/runAgent.d.ts +2 -0
  10. package/dist/agents/runAgent.d.ts.map +1 -1
  11. package/dist/agents/runAgent.js +1 -0
  12. package/dist/agents/runAgent.js.map +1 -1
  13. package/dist/authorization/shell-lexer.d.ts.map +1 -1
  14. package/dist/authorization/shell-lexer.js +16 -1
  15. package/dist/authorization/shell-lexer.js.map +1 -1
  16. package/dist/bridge/acp/permission.d.ts +8 -2
  17. package/dist/bridge/acp/permission.d.ts.map +1 -1
  18. package/dist/bridge/acp/permission.js +1 -0
  19. package/dist/bridge/acp/permission.js.map +1 -1
  20. package/dist/bridge/acp/server.d.ts +25 -1
  21. package/dist/bridge/acp/server.d.ts.map +1 -1
  22. package/dist/bridge/acp/server.js +205 -21
  23. package/dist/bridge/acp/server.js.map +1 -1
  24. package/dist/bridge/acp/tasks.d.ts +5 -0
  25. package/dist/bridge/acp/tasks.d.ts.map +1 -0
  26. package/dist/bridge/acp/tasks.js +19 -0
  27. package/dist/bridge/acp/tasks.js.map +1 -0
  28. package/dist/bridge/acp/update.d.ts.map +1 -1
  29. package/dist/bridge/acp/update.js +148 -13
  30. package/dist/bridge/acp/update.js.map +1 -1
  31. package/dist/config/registry.d.ts +2 -0
  32. package/dist/config/registry.d.ts.map +1 -1
  33. package/dist/config/registry.js +23 -3
  34. package/dist/config/registry.js.map +1 -1
  35. package/dist/config/runtime.d.ts +31 -31
  36. package/dist/connector/mcp/adapter.d.ts.map +1 -1
  37. package/dist/connector/mcp/adapter.js +11 -4
  38. package/dist/connector/mcp/adapter.js.map +1 -1
  39. package/dist/connector/mcp/client.d.ts.map +1 -1
  40. package/dist/connector/mcp/client.js +6 -3
  41. package/dist/connector/mcp/client.js.map +1 -1
  42. package/dist/connector/mcp/discovery.d.ts +9 -5
  43. package/dist/connector/mcp/discovery.d.ts.map +1 -1
  44. package/dist/connector/mcp/discovery.js +16 -8
  45. package/dist/connector/mcp/discovery.js.map +1 -1
  46. package/dist/connector/mcp/mcp-toolset.d.ts +3 -0
  47. package/dist/connector/mcp/mcp-toolset.d.ts.map +1 -1
  48. package/dist/connector/mcp/mcp-toolset.js +20 -2
  49. package/dist/connector/mcp/mcp-toolset.js.map +1 -1
  50. package/dist/connector/mcp/reconnect.d.ts +2 -0
  51. package/dist/connector/mcp/reconnect.d.ts.map +1 -1
  52. package/dist/connector/mcp/reconnect.js +36 -5
  53. package/dist/connector/mcp/reconnect.js.map +1 -1
  54. package/dist/constants/acp/index.d.ts +3 -0
  55. package/dist/constants/acp/index.d.ts.map +1 -1
  56. package/dist/constants/acp/index.js +3 -0
  57. package/dist/constants/acp/index.js.map +1 -1
  58. package/dist/contracts/a2a.d.ts +80 -80
  59. package/dist/contracts/schemas.d.ts +2 -2
  60. package/dist/contracts/session/schemas.d.ts +10 -10
  61. package/dist/manager/agent/lifecycle.d.ts +11 -0
  62. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  63. package/dist/manager/agent/lifecycle.js +178 -3
  64. package/dist/manager/agent/lifecycle.js.map +1 -1
  65. package/dist/manager/plan/lifecycle.d.ts +7 -8
  66. package/dist/manager/plan/lifecycle.d.ts.map +1 -1
  67. package/dist/manager/plan/lifecycle.js +7 -8
  68. package/dist/manager/plan/lifecycle.js.map +1 -1
  69. package/dist/manager/resident/consumption.d.ts +8 -8
  70. package/dist/manager/resident/learning-cycle.d.ts +2 -2
  71. package/dist/manager/resident/learning-observation.d.ts +12 -12
  72. package/dist/manager/resident/learning.d.ts +82 -82
  73. package/dist/manager/resident/outbox.d.ts +8 -8
  74. package/dist/manager/resident/proposal.d.ts +2 -2
  75. package/dist/manager/resident/store.d.ts +10 -10
  76. package/dist/manager/session/attribution.d.ts +1 -0
  77. package/dist/manager/session/attribution.d.ts.map +1 -1
  78. package/dist/manager/session/attribution.js +9 -1
  79. package/dist/manager/session/attribution.js.map +1 -1
  80. package/dist/manager/session/streamed-message-identity.d.ts +6 -0
  81. package/dist/manager/session/streamed-message-identity.d.ts.map +1 -0
  82. package/dist/manager/session/streamed-message-identity.js +14 -0
  83. package/dist/manager/session/streamed-message-identity.js.map +1 -0
  84. package/dist/manager/session/turn-recorder.d.ts.map +1 -1
  85. package/dist/manager/session/turn-recorder.js +4 -3
  86. package/dist/manager/session/turn-recorder.js.map +1 -1
  87. package/dist/pals/activity/causality.d.ts +23 -0
  88. package/dist/pals/activity/causality.d.ts.map +1 -0
  89. package/dist/pals/activity/causality.js +205 -0
  90. package/dist/pals/activity/causality.js.map +1 -0
  91. package/dist/pals/activity/projection.d.ts +5 -0
  92. package/dist/pals/activity/projection.d.ts.map +1 -0
  93. package/dist/pals/activity/projection.js +79 -0
  94. package/dist/pals/activity/projection.js.map +1 -0
  95. package/dist/pals/activity/source.d.ts +16 -0
  96. package/dist/pals/activity/source.d.ts.map +1 -0
  97. package/dist/pals/activity/source.js +235 -0
  98. package/dist/pals/activity/source.js.map +1 -0
  99. package/dist/pals/activity/subscription-policy.d.ts +38 -0
  100. package/dist/pals/activity/subscription-policy.d.ts.map +1 -0
  101. package/dist/pals/activity/subscription-policy.js +183 -0
  102. package/dist/pals/activity/subscription-policy.js.map +1 -0
  103. package/dist/pals/activity/subscription-schema.d.ts +353 -0
  104. package/dist/pals/activity/subscription-schema.d.ts.map +1 -0
  105. package/dist/pals/activity/subscription-schema.js +24 -0
  106. package/dist/pals/activity/subscription-schema.js.map +1 -0
  107. package/dist/pals/activity/subscription-store.d.ts +25 -0
  108. package/dist/pals/activity/subscription-store.d.ts.map +1 -0
  109. package/dist/pals/activity/subscription-store.js +152 -0
  110. package/dist/pals/activity/subscription-store.js.map +1 -0
  111. package/dist/pals/activity/subscription-types.d.ts +42 -0
  112. package/dist/pals/activity/subscription-types.d.ts.map +1 -0
  113. package/dist/pals/activity/subscription-types.js +2 -0
  114. package/dist/pals/activity/subscription-types.js.map +1 -0
  115. package/dist/pals/activity/subscriptions.d.ts +32 -0
  116. package/dist/pals/activity/subscriptions.d.ts.map +1 -0
  117. package/dist/pals/activity/subscriptions.js +151 -0
  118. package/dist/pals/activity/subscriptions.js.map +1 -0
  119. package/dist/pals/activity/types.d.ts +77 -0
  120. package/dist/pals/activity/types.d.ts.map +1 -0
  121. package/dist/pals/activity/types.js +2 -0
  122. package/dist/pals/activity/types.js.map +1 -0
  123. package/dist/pals/channels/ingress.d.ts +9 -0
  124. package/dist/pals/channels/ingress.d.ts.map +1 -0
  125. package/dist/pals/channels/ingress.js +131 -0
  126. package/dist/pals/channels/ingress.js.map +1 -0
  127. package/dist/pals/channels/routes.d.ts +20 -0
  128. package/dist/pals/channels/routes.d.ts.map +1 -0
  129. package/dist/pals/channels/routes.js +111 -0
  130. package/dist/pals/channels/routes.js.map +1 -0
  131. package/dist/pals/channels/routing.d.ts +37 -0
  132. package/dist/pals/channels/routing.d.ts.map +1 -0
  133. package/dist/pals/channels/routing.js +150 -0
  134. package/dist/pals/channels/routing.js.map +1 -0
  135. package/dist/pals/channels/schema.d.ts +234 -0
  136. package/dist/pals/channels/schema.d.ts.map +1 -0
  137. package/dist/pals/channels/schema.js +94 -0
  138. package/dist/pals/channels/schema.js.map +1 -0
  139. package/dist/pals/channels/types.d.ts +115 -0
  140. package/dist/pals/channels/types.d.ts.map +1 -0
  141. package/dist/pals/channels/types.js +2 -0
  142. package/dist/pals/channels/types.js.map +1 -0
  143. package/dist/pals/communication/broker.d.ts +8 -0
  144. package/dist/pals/communication/broker.d.ts.map +1 -0
  145. package/dist/pals/communication/broker.js +121 -0
  146. package/dist/pals/communication/broker.js.map +1 -0
  147. package/dist/pals/communication/dispatch.d.ts +4 -0
  148. package/dist/pals/communication/dispatch.d.ts.map +1 -0
  149. package/dist/pals/communication/dispatch.js +57 -0
  150. package/dist/pals/communication/dispatch.js.map +1 -0
  151. package/dist/pals/communication/inbound.d.ts +9 -0
  152. package/dist/pals/communication/inbound.d.ts.map +1 -0
  153. package/dist/pals/communication/inbound.js +155 -0
  154. package/dist/pals/communication/inbound.js.map +1 -0
  155. package/dist/pals/communication/ingress-dispatch.d.ts +5 -0
  156. package/dist/pals/communication/ingress-dispatch.d.ts.map +1 -0
  157. package/dist/pals/communication/ingress-dispatch.js +51 -0
  158. package/dist/pals/communication/ingress-dispatch.js.map +1 -0
  159. package/dist/pals/communication/ingress-inbound.d.ts +9 -0
  160. package/dist/pals/communication/ingress-inbound.d.ts.map +1 -0
  161. package/dist/pals/communication/ingress-inbound.js +222 -0
  162. package/dist/pals/communication/ingress-inbound.js.map +1 -0
  163. package/dist/pals/communication/ingress-schema.d.ts +7829 -0
  164. package/dist/pals/communication/ingress-schema.d.ts.map +1 -0
  165. package/dist/pals/communication/ingress-schema.js +479 -0
  166. package/dist/pals/communication/ingress-schema.js.map +1 -0
  167. package/dist/pals/communication/ingress-types.d.ts +187 -0
  168. package/dist/pals/communication/ingress-types.d.ts.map +1 -0
  169. package/dist/pals/communication/ingress-types.js +73 -0
  170. package/dist/pals/communication/ingress-types.js.map +1 -0
  171. package/dist/pals/communication/operator.d.ts +75 -0
  172. package/dist/pals/communication/operator.d.ts.map +1 -0
  173. package/dist/pals/communication/operator.js +217 -0
  174. package/dist/pals/communication/operator.js.map +1 -0
  175. package/dist/pals/communication/policy.d.ts +41 -0
  176. package/dist/pals/communication/policy.d.ts.map +1 -0
  177. package/dist/pals/communication/policy.js +138 -0
  178. package/dist/pals/communication/policy.js.map +1 -0
  179. package/dist/pals/communication/schema.d.ts +2000 -0
  180. package/dist/pals/communication/schema.d.ts.map +1 -0
  181. package/dist/pals/communication/schema.js +170 -0
  182. package/dist/pals/communication/schema.js.map +1 -0
  183. package/dist/pals/communication/store.d.ts +61 -0
  184. package/dist/pals/communication/store.d.ts.map +1 -0
  185. package/dist/pals/communication/store.js +450 -0
  186. package/dist/pals/communication/store.js.map +1 -0
  187. package/dist/pals/communication/tools.d.ts +23 -0
  188. package/dist/pals/communication/tools.d.ts.map +1 -0
  189. package/dist/pals/communication/tools.js +107 -0
  190. package/dist/pals/communication/tools.js.map +1 -0
  191. package/dist/pals/communication/types.d.ts +168 -0
  192. package/dist/pals/communication/types.d.ts.map +1 -0
  193. package/dist/pals/communication/types.js +24 -0
  194. package/dist/pals/communication/types.js.map +1 -0
  195. package/dist/pals/communication/verify.d.ts +22 -0
  196. package/dist/pals/communication/verify.d.ts.map +1 -0
  197. package/dist/pals/communication/verify.js +142 -0
  198. package/dist/pals/communication/verify.js.map +1 -0
  199. package/dist/pals/lifecycle.d.ts +37 -0
  200. package/dist/pals/lifecycle.d.ts.map +1 -0
  201. package/dist/pals/lifecycle.js +22 -0
  202. package/dist/pals/lifecycle.js.map +1 -0
  203. package/dist/pals/prompt.d.ts +30 -0
  204. package/dist/pals/prompt.d.ts.map +1 -0
  205. package/dist/pals/prompt.js +65 -0
  206. package/dist/pals/prompt.js.map +1 -0
  207. package/dist/pals/reference-images.d.ts +44 -0
  208. package/dist/pals/reference-images.d.ts.map +1 -0
  209. package/dist/pals/reference-images.js +248 -0
  210. package/dist/pals/reference-images.js.map +1 -0
  211. package/dist/pals/runtime.d.ts +46 -0
  212. package/dist/pals/runtime.d.ts.map +1 -0
  213. package/dist/pals/runtime.js +624 -0
  214. package/dist/pals/runtime.js.map +1 -0
  215. package/dist/pals/store.d.ts +26 -0
  216. package/dist/pals/store.d.ts.map +1 -0
  217. package/dist/pals/store.js +334 -0
  218. package/dist/pals/store.js.map +1 -0
  219. package/dist/pals/types.d.ts +145 -0
  220. package/dist/pals/types.d.ts.map +1 -0
  221. package/dist/pals/types.js +2 -0
  222. package/dist/pals/types.js.map +1 -0
  223. package/dist/peers/envelope.js +1 -1
  224. package/dist/peers/envelope.js.map +1 -1
  225. package/dist/peers/protocol.d.ts +83 -83
  226. package/dist/peers/record.d.ts +10 -10
  227. package/dist/plugin/lifecycle.d.ts +14 -10
  228. package/dist/plugin/lifecycle.d.ts.map +1 -1
  229. package/dist/plugin/lifecycle.js +178 -41
  230. package/dist/plugin/lifecycle.js.map +1 -1
  231. package/dist/plugin/shell-hook.d.ts.map +1 -1
  232. package/dist/plugin/shell-hook.js +7 -2
  233. package/dist/plugin/shell-hook.js.map +1 -1
  234. package/dist/process/kill-tree.d.ts.map +1 -1
  235. package/dist/process/kill-tree.js +9 -1
  236. package/dist/process/kill-tree.js.map +1 -1
  237. package/dist/prompt/resident-learning.js +2 -2
  238. package/dist/prompt/resident-learning.js.map +1 -1
  239. package/dist/prompt/resident-step.d.ts +2 -2
  240. package/dist/prompt/resident-step.js +4 -4
  241. package/dist/prompt/resident-step.js.map +1 -1
  242. package/dist/provider/errors.d.ts +19 -0
  243. package/dist/provider/errors.d.ts.map +1 -1
  244. package/dist/provider/errors.js +123 -2
  245. package/dist/provider/errors.js.map +1 -1
  246. package/dist/public-runtime.d.ts +43 -15
  247. package/dist/public-runtime.d.ts.map +1 -1
  248. package/dist/public-runtime.js +37 -9
  249. package/dist/public-runtime.js.map +1 -1
  250. package/dist/public-tools.d.ts +8 -3
  251. package/dist/public-tools.d.ts.map +1 -1
  252. package/dist/public-tools.js +8 -3
  253. package/dist/public-tools.js.map +1 -1
  254. package/dist/public-types.d.ts +27 -7
  255. package/dist/public-types.d.ts.map +1 -1
  256. package/dist/registry/tool/presentation.d.ts +1 -0
  257. package/dist/registry/tool/presentation.d.ts.map +1 -1
  258. package/dist/registry/tool/presentation.js +9 -7
  259. package/dist/registry/tool/presentation.js.map +1 -1
  260. package/dist/registry/tool/screen.d.ts.map +1 -1
  261. package/dist/registry/tool/screen.js +33 -2
  262. package/dist/registry/tool/screen.js.map +1 -1
  263. package/dist/runtime/harness-session/index.d.ts +5 -0
  264. package/dist/runtime/harness-session/index.d.ts.map +1 -0
  265. package/dist/runtime/harness-session/index.js +928 -0
  266. package/dist/runtime/harness-session/index.js.map +1 -0
  267. package/dist/runtime/harness-session/journal.d.ts +37 -0
  268. package/dist/runtime/harness-session/journal.d.ts.map +1 -0
  269. package/dist/runtime/harness-session/journal.js +177 -0
  270. package/dist/runtime/harness-session/journal.js.map +1 -0
  271. package/dist/runtime/harness-session/saved-view.d.ts +8 -0
  272. package/dist/runtime/harness-session/saved-view.d.ts.map +1 -0
  273. package/dist/runtime/harness-session/saved-view.js +112 -0
  274. package/dist/runtime/harness-session/saved-view.js.map +1 -0
  275. package/dist/runtime/jobs/awaited-jobs.d.ts +2 -1
  276. package/dist/runtime/jobs/awaited-jobs.d.ts.map +1 -1
  277. package/dist/runtime/jobs/awaited-jobs.js +2 -1
  278. package/dist/runtime/jobs/awaited-jobs.js.map +1 -1
  279. package/dist/runtime/jobs/registry.d.ts +56 -1
  280. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  281. package/dist/runtime/jobs/registry.js +377 -39
  282. package/dist/runtime/jobs/registry.js.map +1 -1
  283. package/dist/runtime/query/abandon-turn.d.ts +12 -1
  284. package/dist/runtime/query/abandon-turn.d.ts.map +1 -1
  285. package/dist/runtime/query/abandon-turn.js +3 -1
  286. package/dist/runtime/query/abandon-turn.js.map +1 -1
  287. package/dist/runtime/query/checkpoint.d.ts +4 -0
  288. package/dist/runtime/query/checkpoint.d.ts.map +1 -1
  289. package/dist/runtime/query/checkpoint.js +10 -0
  290. package/dist/runtime/query/checkpoint.js.map +1 -1
  291. package/dist/runtime/query/durable-inbound.d.ts +5 -0
  292. package/dist/runtime/query/durable-inbound.d.ts.map +1 -0
  293. package/dist/runtime/query/durable-inbound.js +89 -0
  294. package/dist/runtime/query/durable-inbound.js.map +1 -0
  295. package/dist/runtime/query/events.d.ts +4 -0
  296. package/dist/runtime/query/events.d.ts.map +1 -1
  297. package/dist/runtime/query/events.js +22 -5
  298. package/dist/runtime/query/events.js.map +1 -1
  299. package/dist/runtime/query/executor/tool-call-admission.d.ts +5 -1
  300. package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
  301. package/dist/runtime/query/executor/tool-call-admission.js +85 -13
  302. package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
  303. package/dist/runtime/query/executor.d.ts +41 -18
  304. package/dist/runtime/query/executor.d.ts.map +1 -1
  305. package/dist/runtime/query/executor.js +227 -114
  306. package/dist/runtime/query/executor.js.map +1 -1
  307. package/dist/runtime/query/index.d.ts +9 -0
  308. package/dist/runtime/query/index.d.ts.map +1 -1
  309. package/dist/runtime/query/index.js +41 -5
  310. package/dist/runtime/query/index.js.map +1 -1
  311. package/dist/runtime/query/iteration/index.d.ts +18 -6
  312. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  313. package/dist/runtime/query/iteration/index.js +176 -75
  314. package/dist/runtime/query/iteration/index.js.map +1 -1
  315. package/dist/runtime/query/iteration/outstanding-work.d.ts +9 -5
  316. package/dist/runtime/query/iteration/outstanding-work.d.ts.map +1 -1
  317. package/dist/runtime/query/iteration/outstanding-work.js +63 -6
  318. package/dist/runtime/query/iteration/outstanding-work.js.map +1 -1
  319. package/dist/runtime/query/iteration/phases/context.d.ts +8 -0
  320. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  321. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  322. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  323. package/dist/runtime/query/iteration/phases/tool-review.js +106 -17
  324. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  325. package/dist/runtime/query/iteration/step-shaping.d.ts +2 -0
  326. package/dist/runtime/query/iteration/step-shaping.d.ts.map +1 -1
  327. package/dist/runtime/query/iteration/step-shaping.js +5 -1
  328. package/dist/runtime/query/iteration/step-shaping.js.map +1 -1
  329. package/dist/runtime/query/observation-context.d.ts +2 -2
  330. package/dist/runtime/query/observation-context.d.ts.map +1 -1
  331. package/dist/runtime/query/observation-context.js +20 -13
  332. package/dist/runtime/query/observation-context.js.map +1 -1
  333. package/dist/runtime/query/prepare-turn.js +2 -2
  334. package/dist/runtime/query/prepare-turn.js.map +1 -1
  335. package/dist/runtime/query/prompt-cache.d.ts +1 -0
  336. package/dist/runtime/query/prompt-cache.d.ts.map +1 -1
  337. package/dist/runtime/query/prompt-cache.js +2 -0
  338. package/dist/runtime/query/prompt-cache.js.map +1 -1
  339. package/dist/runtime/query/prompt.d.ts +2 -0
  340. package/dist/runtime/query/prompt.d.ts.map +1 -1
  341. package/dist/runtime/query/prompt.js +23 -1
  342. package/dist/runtime/query/prompt.js.map +1 -1
  343. package/dist/runtime/query/repeat-call.d.ts +12 -3
  344. package/dist/runtime/query/repeat-call.d.ts.map +1 -1
  345. package/dist/runtime/query/repeat-call.js +33 -10
  346. package/dist/runtime/query/repeat-call.js.map +1 -1
  347. package/dist/runtime/query/resume-pending.d.ts +5 -6
  348. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  349. package/dist/runtime/query/resume-pending.js +30 -3
  350. package/dist/runtime/query/resume-pending.js.map +1 -1
  351. package/dist/runtime/query/resume-session.js +1 -1
  352. package/dist/runtime/query/resume-session.js.map +1 -1
  353. package/dist/runtime/query/review-policy.d.ts +8 -1
  354. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  355. package/dist/runtime/query/review-policy.js +6 -0
  356. package/dist/runtime/query/review-policy.js.map +1 -1
  357. package/dist/runtime/query/saved-presentation.d.ts +13 -0
  358. package/dist/runtime/query/saved-presentation.d.ts.map +1 -0
  359. package/dist/runtime/query/saved-presentation.js +63 -0
  360. package/dist/runtime/query/saved-presentation.js.map +1 -0
  361. package/dist/runtime/query/steering.d.ts +6 -9
  362. package/dist/runtime/query/steering.d.ts.map +1 -1
  363. package/dist/runtime/query/steering.js.map +1 -1
  364. package/dist/runtime/query/tool-executions.d.ts +7 -3
  365. package/dist/runtime/query/tool-executions.d.ts.map +1 -1
  366. package/dist/runtime/query/tool-executions.js +89 -9
  367. package/dist/runtime/query/tool-executions.js.map +1 -1
  368. package/dist/runtime/query/tooling.d.ts +3 -1
  369. package/dist/runtime/query/tooling.d.ts.map +1 -1
  370. package/dist/runtime/query/tooling.js +3 -0
  371. package/dist/runtime/query/tooling.js.map +1 -1
  372. package/dist/scheduler/completion-inbox.d.ts +25 -1
  373. package/dist/scheduler/completion-inbox.d.ts.map +1 -1
  374. package/dist/scheduler/completion-inbox.js +102 -8
  375. package/dist/scheduler/completion-inbox.js.map +1 -1
  376. package/dist/scheduler/delegating.d.ts.map +1 -1
  377. package/dist/scheduler/delegating.js +5 -0
  378. package/dist/scheduler/delegating.js.map +1 -1
  379. package/dist/scheduler/local.d.ts.map +1 -1
  380. package/dist/scheduler/local.js +2 -0
  381. package/dist/scheduler/local.js.map +1 -1
  382. package/dist/session/summary/materialize.d.ts +10 -6
  383. package/dist/session/summary/materialize.d.ts.map +1 -1
  384. package/dist/session/summary/materialize.js +41 -8
  385. package/dist/session/summary/materialize.js.map +1 -1
  386. package/dist/store/budget/ledger.d.ts +9 -0
  387. package/dist/store/budget/ledger.d.ts.map +1 -1
  388. package/dist/store/budget/ledger.js +58 -6
  389. package/dist/store/budget/ledger.js.map +1 -1
  390. package/dist/store/evidence/index-page.d.ts +12 -12
  391. package/dist/store/evidence/source-text.d.ts +4 -4
  392. package/dist/store/index.d.ts +1 -0
  393. package/dist/store/index.d.ts.map +1 -1
  394. package/dist/store/index.js +1 -0
  395. package/dist/store/index.js.map +1 -1
  396. package/dist/store/memory/disk.d.ts +7 -2
  397. package/dist/store/memory/disk.d.ts.map +1 -1
  398. package/dist/store/memory/disk.js +58 -5
  399. package/dist/store/memory/disk.js.map +1 -1
  400. package/dist/store/memory/index.d.ts +9 -0
  401. package/dist/store/memory/index.d.ts.map +1 -1
  402. package/dist/store/memory/index.js +43 -5
  403. package/dist/store/memory/index.js.map +1 -1
  404. package/dist/store/memory/markdown.d.ts +7 -2
  405. package/dist/store/memory/markdown.d.ts.map +1 -1
  406. package/dist/store/memory/markdown.js +33 -0
  407. package/dist/store/memory/markdown.js.map +1 -1
  408. package/dist/store/memory/memory.d.ts +7 -2
  409. package/dist/store/memory/memory.d.ts.map +1 -1
  410. package/dist/store/memory/memory.js +34 -0
  411. package/dist/store/memory/memory.js.map +1 -1
  412. package/dist/store/memory/revision.d.ts +16 -0
  413. package/dist/store/memory/revision.d.ts.map +1 -0
  414. package/dist/store/memory/revision.js +144 -0
  415. package/dist/store/memory/revision.js.map +1 -0
  416. package/dist/store/session/disk.d.ts +9 -4
  417. package/dist/store/session/disk.d.ts.map +1 -1
  418. package/dist/store/session/disk.js +57 -11
  419. package/dist/store/session/disk.js.map +1 -1
  420. package/dist/store/session/memory.d.ts +5 -3
  421. package/dist/store/session/memory.d.ts.map +1 -1
  422. package/dist/store/session/memory.js +24 -7
  423. package/dist/store/session/memory.js.map +1 -1
  424. package/dist/store/session-log/core.d.ts +26 -6
  425. package/dist/store/session-log/core.d.ts.map +1 -1
  426. package/dist/store/session-log/core.js +61 -8
  427. package/dist/store/session-log/core.js.map +1 -1
  428. package/dist/store/session-log/disk.d.ts +2 -2
  429. package/dist/store/session-log/disk.d.ts.map +1 -1
  430. package/dist/store/session-log/disk.js +1 -0
  431. package/dist/store/session-log/disk.js.map +1 -1
  432. package/dist/store/session-log/fold.d.ts +7 -0
  433. package/dist/store/session-log/fold.d.ts.map +1 -1
  434. package/dist/store/session-log/fold.js +21 -0
  435. package/dist/store/session-log/fold.js.map +1 -1
  436. package/dist/store/session-log/index.d.ts +5 -3
  437. package/dist/store/session-log/index.d.ts.map +1 -1
  438. package/dist/store/session-log/index.js +3 -1
  439. package/dist/store/session-log/index.js.map +1 -1
  440. package/dist/store/session-log/memory.d.ts +1 -1
  441. package/dist/store/session-log/memory.d.ts.map +1 -1
  442. package/dist/store/session-log/memory.js +1 -0
  443. package/dist/store/session-log/memory.js.map +1 -1
  444. package/dist/store/session-log/spill.d.ts +10 -3
  445. package/dist/store/session-log/spill.d.ts.map +1 -1
  446. package/dist/store/session-log/spill.js +70 -5
  447. package/dist/store/session-log/spill.js.map +1 -1
  448. package/dist/store/session-log/structured-result.d.ts +21 -0
  449. package/dist/store/session-log/structured-result.d.ts.map +1 -0
  450. package/dist/store/session-log/structured-result.js +67 -0
  451. package/dist/store/session-log/structured-result.js.map +1 -0
  452. package/dist/store/task/disk.d.ts +11 -0
  453. package/dist/store/task/disk.d.ts.map +1 -1
  454. package/dist/store/task/disk.js +41 -2
  455. package/dist/store/task/disk.js.map +1 -1
  456. package/dist/store/task/memory.d.ts.map +1 -1
  457. package/dist/store/task/memory.js +15 -3
  458. package/dist/store/task/memory.js.map +1 -1
  459. package/dist/tools/admit-facts.d.ts +13 -0
  460. package/dist/tools/admit-facts.d.ts.map +1 -0
  461. package/dist/tools/admit-facts.js +142 -0
  462. package/dist/tools/admit-facts.js.map +1 -0
  463. package/dist/tools/builtins/bash.d.ts +4 -1
  464. package/dist/tools/builtins/bash.d.ts.map +1 -1
  465. package/dist/tools/builtins/bash.js +108 -22
  466. package/dist/tools/builtins/bash.js.map +1 -1
  467. package/dist/tools/builtins/browser.d.ts +10 -10
  468. package/dist/tools/builtins/computer-use.d.ts +90 -90
  469. package/dist/tools/builtins/edit.d.ts +17 -0
  470. package/dist/tools/builtins/edit.d.ts.map +1 -1
  471. package/dist/tools/builtins/edit.js +34 -0
  472. package/dist/tools/builtins/edit.js.map +1 -1
  473. package/dist/tools/builtins/file-write-result.d.ts.map +1 -1
  474. package/dist/tools/builtins/file-write-result.js +13 -0
  475. package/dist/tools/builtins/file-write-result.js.map +1 -1
  476. package/dist/tools/builtins/glob.d.ts.map +1 -1
  477. package/dist/tools/builtins/glob.js +12 -0
  478. package/dist/tools/builtins/glob.js.map +1 -1
  479. package/dist/tools/builtins/grep.d.ts.map +1 -1
  480. package/dist/tools/builtins/grep.js +14 -0
  481. package/dist/tools/builtins/grep.js.map +1 -1
  482. package/dist/tools/builtins/index.d.ts +2 -0
  483. package/dist/tools/builtins/index.d.ts.map +1 -1
  484. package/dist/tools/builtins/index.js +1 -0
  485. package/dist/tools/builtins/index.js.map +1 -1
  486. package/dist/tools/builtins/job.d.ts.map +1 -1
  487. package/dist/tools/builtins/job.js +4 -1
  488. package/dist/tools/builtins/job.js.map +1 -1
  489. package/dist/tools/builtins/lsp.d.ts +2 -2
  490. package/dist/tools/builtins/read-file.d.ts.map +1 -1
  491. package/dist/tools/builtins/read-file.js +49 -0
  492. package/dist/tools/builtins/read-file.js.map +1 -1
  493. package/dist/tools/builtins/view-image.d.ts +24 -0
  494. package/dist/tools/builtins/view-image.d.ts.map +1 -0
  495. package/dist/tools/builtins/view-image.js +385 -0
  496. package/dist/tools/builtins/view-image.js.map +1 -0
  497. package/dist/tools/builtins/wait-for-job-bounds.d.ts +8 -4
  498. package/dist/tools/builtins/wait-for-job-bounds.d.ts.map +1 -1
  499. package/dist/tools/builtins/wait-for-job-bounds.js +43 -8
  500. package/dist/tools/builtins/wait-for-job-bounds.js.map +1 -1
  501. package/dist/tools/builtins/wait-for-job.d.ts +3 -0
  502. package/dist/tools/builtins/wait-for-job.d.ts.map +1 -1
  503. package/dist/tools/builtins/wait-for-job.js +127 -15
  504. package/dist/tools/builtins/wait-for-job.js.map +1 -1
  505. package/dist/tools/builtins/write-file.d.ts.map +1 -1
  506. package/dist/tools/builtins/write-file.js +1 -0
  507. package/dist/tools/builtins/write-file.js.map +1 -1
  508. package/dist/tools/command-shell.d.ts +37 -2
  509. package/dist/tools/command-shell.d.ts.map +1 -1
  510. package/dist/tools/command-shell.js +100 -3
  511. package/dist/tools/command-shell.js.map +1 -1
  512. package/dist/tools/coordinator/agent.d.ts +9 -19
  513. package/dist/tools/coordinator/agent.d.ts.map +1 -1
  514. package/dist/tools/coordinator/agent.js.map +1 -1
  515. package/dist/tools/coordinator/index.d.ts.map +1 -1
  516. package/dist/tools/coordinator/index.js +127 -67
  517. package/dist/tools/coordinator/index.js.map +1 -1
  518. package/dist/tools/coordinator/wait-with-idle-bound.d.ts +2 -0
  519. package/dist/tools/coordinator/wait-with-idle-bound.d.ts.map +1 -1
  520. package/dist/tools/coordinator/wait-with-idle-bound.js +1 -1
  521. package/dist/tools/coordinator/wait-with-idle-bound.js.map +1 -1
  522. package/dist/tools/defineTool.d.ts.map +1 -1
  523. package/dist/tools/defineTool.js +4 -0
  524. package/dist/tools/defineTool.js.map +1 -1
  525. package/dist/tools/failure-facts.d.ts +8 -0
  526. package/dist/tools/failure-facts.d.ts.map +1 -0
  527. package/dist/tools/failure-facts.js +24 -0
  528. package/dist/tools/failure-facts.js.map +1 -0
  529. package/dist/tools/host-output.d.ts +24 -0
  530. package/dist/tools/host-output.d.ts.map +1 -0
  531. package/dist/tools/host-output.js +117 -0
  532. package/dist/tools/host-output.js.map +1 -0
  533. package/dist/tools/memory/delete.d.ts.map +1 -1
  534. package/dist/tools/memory/delete.js +38 -3
  535. package/dist/tools/memory/delete.js.map +1 -1
  536. package/dist/tools/memory/read.d.ts.map +1 -1
  537. package/dist/tools/memory/read.js +38 -2
  538. package/dist/tools/memory/read.js.map +1 -1
  539. package/dist/tools/memory/search.d.ts.map +1 -1
  540. package/dist/tools/memory/search.js +38 -7
  541. package/dist/tools/memory/search.js.map +1 -1
  542. package/dist/tools/memory/update.d.ts.map +1 -1
  543. package/dist/tools/memory/update.js +30 -3
  544. package/dist/tools/memory/update.js.map +1 -1
  545. package/dist/tools/oem-code-pages.d.ts +8 -0
  546. package/dist/tools/oem-code-pages.d.ts.map +1 -0
  547. package/dist/tools/oem-code-pages.js +23 -0
  548. package/dist/tools/oem-code-pages.js.map +1 -0
  549. package/dist/tools/schedules/schedule-tool.d.ts.map +1 -1
  550. package/dist/tools/schedules/schedule-tool.js +35 -6
  551. package/dist/tools/schedules/schedule-tool.js.map +1 -1
  552. package/dist/tools/schedules/types.d.ts +23 -3
  553. package/dist/tools/schedules/types.d.ts.map +1 -1
  554. package/dist/tools/task/list.d.ts.map +1 -1
  555. package/dist/tools/task/list.js +14 -6
  556. package/dist/tools/task/list.js.map +1 -1
  557. package/dist/tools/task/present.d.ts.map +1 -1
  558. package/dist/tools/task/present.js +26 -6
  559. package/dist/tools/task/present.js.map +1 -1
  560. package/dist/tools/task/update.d.ts.map +1 -1
  561. package/dist/tools/task/update.js +12 -5
  562. package/dist/tools/task/update.js.map +1 -1
  563. package/dist/tools/text-window.d.ts +19 -0
  564. package/dist/tools/text-window.d.ts.map +1 -0
  565. package/dist/tools/text-window.js +83 -0
  566. package/dist/tools/text-window.js.map +1 -0
  567. package/dist/toolsets/manager.d.ts +24 -0
  568. package/dist/toolsets/manager.d.ts.map +1 -1
  569. package/dist/toolsets/manager.js +105 -2
  570. package/dist/toolsets/manager.js.map +1 -1
  571. package/dist/turn/memory-recall.d.ts +2 -0
  572. package/dist/turn/memory-recall.d.ts.map +1 -1
  573. package/dist/turn/memory-recall.js +3 -1
  574. package/dist/turn/memory-recall.js.map +1 -1
  575. package/dist/types/acp/index.d.ts +137 -1
  576. package/dist/types/acp/index.d.ts.map +1 -1
  577. package/dist/types/agent/base.d.ts +3 -0
  578. package/dist/types/agent/base.d.ts.map +1 -1
  579. package/dist/types/agent/manager.d.ts +8 -23
  580. package/dist/types/agent/manager.d.ts.map +1 -1
  581. package/dist/types/agent/scheduler.d.ts +10 -1
  582. package/dist/types/agent/scheduler.d.ts.map +1 -1
  583. package/dist/types/agent/task.d.ts +4 -0
  584. package/dist/types/agent/task.d.ts.map +1 -1
  585. package/dist/types/authorization/index.d.ts +30 -30
  586. package/dist/types/connector/mcp.d.ts +7 -0
  587. package/dist/types/connector/mcp.d.ts.map +1 -1
  588. package/dist/types/errors/catalog.d.ts.map +1 -1
  589. package/dist/types/errors/catalog.js +4 -2
  590. package/dist/types/errors/catalog.js.map +1 -1
  591. package/dist/types/harness/schema.d.ts +354 -0
  592. package/dist/types/harness/schema.d.ts.map +1 -0
  593. package/dist/types/harness/schema.js +203 -0
  594. package/dist/types/harness/schema.js.map +1 -0
  595. package/dist/types/harness/session.d.ts +278 -0
  596. package/dist/types/harness/session.d.ts.map +1 -0
  597. package/dist/types/harness/session.js +2 -0
  598. package/dist/types/harness/session.js.map +1 -0
  599. package/dist/types/hitl/index.d.ts +12 -0
  600. package/dist/types/hitl/index.d.ts.map +1 -1
  601. package/dist/types/hitl/index.js.map +1 -1
  602. package/dist/types/job/index.d.ts +47 -0
  603. package/dist/types/job/index.d.ts.map +1 -0
  604. package/dist/types/job/index.js +2 -0
  605. package/dist/types/job/index.js.map +1 -0
  606. package/dist/types/memory/index.d.ts +29 -0
  607. package/dist/types/memory/index.d.ts.map +1 -1
  608. package/dist/types/memory/index.js +6 -0
  609. package/dist/types/memory/index.js.map +1 -1
  610. package/dist/types/message/inbound-delivery.d.ts +44 -0
  611. package/dist/types/message/inbound-delivery.d.ts.map +1 -0
  612. package/dist/types/message/inbound-delivery.js +14 -0
  613. package/dist/types/message/inbound-delivery.js.map +1 -0
  614. package/dist/types/message/index.d.ts +4 -1
  615. package/dist/types/message/index.d.ts.map +1 -1
  616. package/dist/types/message/index.js +5 -1
  617. package/dist/types/message/index.js.map +1 -1
  618. package/dist/types/plugin/index.d.ts +18 -8
  619. package/dist/types/plugin/index.d.ts.map +1 -1
  620. package/dist/types/plugin/index.js +5 -2
  621. package/dist/types/plugin/index.js.map +1 -1
  622. package/dist/types/sandbox/index.d.ts +39 -2
  623. package/dist/types/sandbox/index.d.ts.map +1 -1
  624. package/dist/types/sandbox/index.js.map +1 -1
  625. package/dist/types/session/checkpoint.d.ts +24 -17
  626. package/dist/types/session/checkpoint.d.ts.map +1 -1
  627. package/dist/types/session/checkpoint.js +1 -0
  628. package/dist/types/session/checkpoint.js.map +1 -1
  629. package/dist/types/session/events.d.ts +23 -1
  630. package/dist/types/session/events.d.ts.map +1 -1
  631. package/dist/types/session/events.js.map +1 -1
  632. package/dist/types/session/records.d.ts +1514 -565
  633. package/dist/types/session/records.d.ts.map +1 -1
  634. package/dist/types/session/records.js +89 -1
  635. package/dist/types/session/records.js.map +1 -1
  636. package/dist/types/session/step.d.ts +2 -0
  637. package/dist/types/session/step.d.ts.map +1 -1
  638. package/dist/types/session/step.js.map +1 -1
  639. package/dist/types/session/store.d.ts +19 -10
  640. package/dist/types/session/store.d.ts.map +1 -1
  641. package/dist/types/session/tool-execution.d.ts +6 -0
  642. package/dist/types/session/tool-execution.d.ts.map +1 -1
  643. package/dist/types/structured-output/index.d.ts +12 -2
  644. package/dist/types/structured-output/index.d.ts.map +1 -1
  645. package/dist/types/summary/ref.d.ts +3 -1
  646. package/dist/types/summary/ref.d.ts.map +1 -1
  647. package/dist/types/tool/index.d.ts +32 -4
  648. package/dist/types/tool/index.d.ts.map +1 -1
  649. package/dist/types/tool/index.js.map +1 -1
  650. package/dist/types/tool/presentation.d.ts +106 -0
  651. package/dist/types/tool/presentation.d.ts.map +1 -1
  652. package/dist/utils/json-snapshot.d.ts +6 -2
  653. package/dist/utils/json-snapshot.d.ts.map +1 -1
  654. package/dist/utils/json-snapshot.js +19 -9
  655. package/dist/utils/json-snapshot.js.map +1 -1
  656. package/dist/utils/structured-result-json.d.ts +5 -0
  657. package/dist/utils/structured-result-json.d.ts.map +1 -0
  658. package/dist/utils/structured-result-json.js +10 -0
  659. package/dist/utils/structured-result-json.js.map +1 -0
  660. package/package.json +1 -1
  661. package/src/agents/QueryAgent.ts +1 -0
  662. package/src/agents/examples/SupervisorAgent.ts +1 -0
  663. package/src/agents/runAgent.ts +3 -0
  664. package/src/authorization/shell-lexer.ts +16 -1
  665. package/src/bridge/acp/permission.ts +17 -3
  666. package/src/bridge/acp/server.ts +271 -25
  667. package/src/bridge/acp/tasks.ts +23 -0
  668. package/src/bridge/acp/update.ts +167 -13
  669. package/src/config/registry.ts +24 -3
  670. package/src/connector/mcp/adapter.ts +16 -4
  671. package/src/connector/mcp/client.ts +6 -2
  672. package/src/connector/mcp/discovery.ts +29 -8
  673. package/src/connector/mcp/mcp-toolset.ts +25 -4
  674. package/src/connector/mcp/reconnect.ts +34 -4
  675. package/src/constants/acp/index.ts +4 -0
  676. package/src/manager/agent/lifecycle.ts +230 -3
  677. package/src/manager/plan/lifecycle.ts +11 -9
  678. package/src/manager/session/attribution.ts +12 -2
  679. package/src/manager/session/streamed-message-identity.ts +21 -0
  680. package/src/manager/session/turn-recorder.ts +4 -3
  681. package/src/pals/activity/causality.ts +261 -0
  682. package/src/pals/activity/projection.ts +89 -0
  683. package/src/pals/activity/source.ts +240 -0
  684. package/src/pals/activity/subscription-policy.ts +230 -0
  685. package/src/pals/activity/subscription-schema.ts +27 -0
  686. package/src/pals/activity/subscription-store.ts +172 -0
  687. package/src/pals/activity/subscription-types.ts +48 -0
  688. package/src/pals/activity/subscriptions.ts +209 -0
  689. package/src/pals/activity/types.ts +108 -0
  690. package/src/pals/channels/ingress.ts +153 -0
  691. package/src/pals/channels/routes.ts +118 -0
  692. package/src/pals/channels/routing.ts +197 -0
  693. package/src/pals/channels/schema.ts +108 -0
  694. package/src/pals/channels/types.ts +156 -0
  695. package/src/pals/communication/broker.ts +131 -0
  696. package/src/pals/communication/dispatch.ts +66 -0
  697. package/src/pals/communication/inbound.ts +193 -0
  698. package/src/pals/communication/ingress-dispatch.ts +63 -0
  699. package/src/pals/communication/ingress-inbound.ts +269 -0
  700. package/src/pals/communication/ingress-schema.ts +526 -0
  701. package/src/pals/communication/ingress-types.ts +336 -0
  702. package/src/pals/communication/operator.ts +315 -0
  703. package/src/pals/communication/policy.ts +174 -0
  704. package/src/pals/communication/schema.ts +173 -0
  705. package/src/pals/communication/store.ts +577 -0
  706. package/src/pals/communication/tools.ts +139 -0
  707. package/src/pals/communication/types.ts +227 -0
  708. package/src/pals/communication/verify.ts +220 -0
  709. package/src/pals/lifecycle.ts +54 -0
  710. package/src/pals/prompt.ts +101 -0
  711. package/src/pals/reference-images.ts +322 -0
  712. package/src/pals/runtime.ts +670 -0
  713. package/src/pals/store.ts +369 -0
  714. package/src/pals/types.ts +157 -0
  715. package/src/peers/envelope.ts +1 -1
  716. package/src/plugin/lifecycle.ts +217 -46
  717. package/src/plugin/shell-hook.ts +8 -2
  718. package/src/process/kill-tree.ts +10 -1
  719. package/src/prompt/resident-learning.ts +2 -2
  720. package/src/prompt/resident-step.ts +4 -4
  721. package/src/provider/errors.ts +135 -2
  722. package/src/public-runtime.ts +119 -12
  723. package/src/public-tools.ts +13 -1
  724. package/src/public-types.ts +69 -7
  725. package/src/registry/tool/presentation.ts +9 -4
  726. package/src/registry/tool/screen.ts +34 -2
  727. package/src/runtime/harness-session/index.ts +1125 -0
  728. package/src/runtime/harness-session/journal.ts +209 -0
  729. package/src/runtime/harness-session/saved-view.ts +122 -0
  730. package/src/runtime/jobs/awaited-jobs.ts +2 -1
  731. package/src/runtime/jobs/registry.ts +423 -50
  732. package/src/runtime/query/abandon-turn.ts +18 -2
  733. package/src/runtime/query/checkpoint.ts +11 -0
  734. package/src/runtime/query/durable-inbound.ts +101 -0
  735. package/src/runtime/query/events.ts +22 -5
  736. package/src/runtime/query/executor/tool-call-admission.ts +125 -32
  737. package/src/runtime/query/executor.ts +316 -130
  738. package/src/runtime/query/index.ts +48 -5
  739. package/src/runtime/query/iteration/index.ts +253 -114
  740. package/src/runtime/query/iteration/outstanding-work.ts +57 -7
  741. package/src/runtime/query/iteration/phases/context.ts +8 -0
  742. package/src/runtime/query/iteration/phases/tool-review.ts +124 -22
  743. package/src/runtime/query/iteration/step-shaping.ts +9 -1
  744. package/src/runtime/query/observation-context.ts +22 -16
  745. package/src/runtime/query/prepare-turn.ts +2 -2
  746. package/src/runtime/query/prompt-cache.ts +3 -0
  747. package/src/runtime/query/prompt.ts +32 -1
  748. package/src/runtime/query/repeat-call.ts +40 -10
  749. package/src/runtime/query/resume-pending.ts +60 -7
  750. package/src/runtime/query/resume-session.ts +1 -1
  751. package/src/runtime/query/review-policy.ts +23 -2
  752. package/src/runtime/query/saved-presentation.ts +70 -0
  753. package/src/runtime/query/steering.ts +6 -9
  754. package/src/runtime/query/tool-executions.ts +108 -9
  755. package/src/runtime/query/tooling.ts +6 -1
  756. package/src/scheduler/completion-inbox.ts +108 -7
  757. package/src/scheduler/delegating.ts +5 -0
  758. package/src/scheduler/local.ts +2 -0
  759. package/src/session/summary/materialize.ts +51 -9
  760. package/src/store/budget/ledger.ts +60 -5
  761. package/src/store/index.ts +1 -0
  762. package/src/store/memory/disk.ts +82 -7
  763. package/src/store/memory/index.ts +66 -7
  764. package/src/store/memory/markdown.ts +54 -2
  765. package/src/store/memory/memory.ts +52 -2
  766. package/src/store/memory/revision.ts +158 -0
  767. package/src/store/session/disk.ts +77 -10
  768. package/src/store/session/memory.ts +32 -7
  769. package/src/store/session-log/core.ts +118 -11
  770. package/src/store/session-log/disk.ts +9 -2
  771. package/src/store/session-log/fold.ts +22 -0
  772. package/src/store/session-log/index.ts +5 -0
  773. package/src/store/session-log/memory.ts +2 -1
  774. package/src/store/session-log/spill.ts +89 -6
  775. package/src/store/session-log/structured-result.ts +96 -0
  776. package/src/store/task/disk.ts +46 -2
  777. package/src/store/task/memory.ts +13 -3
  778. package/src/tools/admit-facts.ts +145 -0
  779. package/src/tools/builtins/bash.ts +132 -24
  780. package/src/tools/builtins/edit.ts +42 -0
  781. package/src/tools/builtins/file-write-result.ts +14 -0
  782. package/src/tools/builtins/glob.ts +12 -0
  783. package/src/tools/builtins/grep.ts +14 -0
  784. package/src/tools/builtins/index.ts +2 -0
  785. package/src/tools/builtins/job.ts +4 -1
  786. package/src/tools/builtins/read-file.ts +57 -0
  787. package/src/tools/builtins/view-image.ts +409 -0
  788. package/src/tools/builtins/wait-for-job-bounds.ts +45 -7
  789. package/src/tools/builtins/wait-for-job.ts +159 -36
  790. package/src/tools/builtins/write-file.ts +4 -2
  791. package/src/tools/command-shell.ts +132 -5
  792. package/src/tools/coordinator/agent.ts +9 -19
  793. package/src/tools/coordinator/index.ts +150 -75
  794. package/src/tools/coordinator/wait-with-idle-bound.ts +3 -1
  795. package/src/tools/defineTool.ts +4 -0
  796. package/src/tools/failure-facts.ts +24 -0
  797. package/src/tools/host-output.ts +136 -0
  798. package/src/tools/memory/delete.ts +33 -3
  799. package/src/tools/memory/read.ts +35 -2
  800. package/src/tools/memory/search.ts +38 -7
  801. package/src/tools/memory/update.ts +28 -3
  802. package/src/tools/oem-code-pages.ts +22 -0
  803. package/src/tools/schedules/schedule-tool.ts +38 -5
  804. package/src/tools/schedules/types.ts +23 -3
  805. package/src/tools/task/list.ts +15 -7
  806. package/src/tools/task/present.ts +37 -7
  807. package/src/tools/task/update.ts +12 -5
  808. package/src/tools/text-window.ts +87 -0
  809. package/src/toolsets/manager.ts +132 -2
  810. package/src/turn/memory-recall.ts +5 -1
  811. package/src/types/acp/index.ts +150 -4
  812. package/src/types/agent/base.ts +3 -0
  813. package/src/types/agent/manager.ts +8 -23
  814. package/src/types/agent/scheduler.ts +10 -1
  815. package/src/types/agent/task.ts +4 -0
  816. package/src/types/connector/mcp.ts +7 -0
  817. package/src/types/errors/catalog.ts +4 -2
  818. package/src/types/harness/schema.ts +203 -0
  819. package/src/types/harness/session.ts +306 -0
  820. package/src/types/hitl/index.ts +17 -1
  821. package/src/types/job/index.ts +42 -0
  822. package/src/types/memory/index.ts +43 -0
  823. package/src/types/message/inbound-delivery.ts +63 -0
  824. package/src/types/message/index.ts +8 -1
  825. package/src/types/plugin/index.ts +11 -6
  826. package/src/types/sandbox/index.ts +46 -0
  827. package/src/types/session/checkpoint.ts +4 -1
  828. package/src/types/session/events.ts +23 -1
  829. package/src/types/session/records.ts +114 -2
  830. package/src/types/session/step.ts +2 -0
  831. package/src/types/session/store.ts +23 -9
  832. package/src/types/session/tool-execution.ts +6 -0
  833. package/src/types/structured-output/index.ts +13 -2
  834. package/src/types/summary/ref.ts +3 -1
  835. package/src/types/tool/index.ts +39 -5
  836. package/src/types/tool/presentation.ts +121 -0
  837. package/src/utils/json-snapshot.ts +26 -9
  838. package/src/utils/structured-result-json.ts +10 -0
@@ -0,0 +1,117 @@
1
+ import { execFileSync } from 'node:child_process';
2
+ import { StringDecoder } from 'node:string_decoder';
3
+ import { OEM_UPPER_HALF } from './oem-code-pages.js';
4
+ let probedCodePage;
5
+ /** The console's active code page on Windows, probed once; null when unknown. */
6
+ export function probeOemCodePage() {
7
+ if (probedCodePage !== undefined)
8
+ return probedCodePage;
9
+ try {
10
+ const out = execFileSync('cmd.exe', ['/d', '/s', '/c', 'chcp'], {
11
+ encoding: 'latin1',
12
+ windowsHide: true,
13
+ stdio: ['ignore', 'pipe', 'ignore'],
14
+ timeout: 5000,
15
+ });
16
+ const match = /(\d{3,5})\s*$/.exec(out.trim());
17
+ probedCodePage = match ? Number(match[1]) : null;
18
+ }
19
+ catch {
20
+ probedCodePage = null;
21
+ }
22
+ return probedCodePage;
23
+ }
24
+ /** A decoder for one non-UTF-8 console code page, or undefined when none is known. */
25
+ function legacyDecoder(codePage) {
26
+ if (codePage === undefined || codePage === 65001)
27
+ return undefined;
28
+ const table = OEM_UPPER_HALF[codePage];
29
+ if (table !== undefined) {
30
+ // Single-byte: no state between chunks.
31
+ return {
32
+ write(chunk) {
33
+ let text = '';
34
+ for (const byte of chunk)
35
+ text += byte < 0x80 ? String.fromCharCode(byte) : table[byte - 0x80];
36
+ return text;
37
+ },
38
+ end: () => '',
39
+ };
40
+ }
41
+ // The WHATWG labels Node knows: Windows ANSI pages and IBM866.
42
+ const label = codePage >= 1250 && codePage <= 1258
43
+ ? `windows-${codePage}`
44
+ : codePage === 866
45
+ ? 'ibm866'
46
+ : undefined;
47
+ if (label === undefined)
48
+ return undefined;
49
+ try {
50
+ const decoder = new TextDecoder(label);
51
+ return {
52
+ write: (chunk) => decoder.decode(chunk, { stream: true }),
53
+ end: () => decoder.decode(),
54
+ };
55
+ }
56
+ catch {
57
+ return undefined;
58
+ }
59
+ }
60
+ /** The trailing bytes of `bytes` that start a UTF-8 character it does not finish. */
61
+ function incompleteUtf8Tail(bytes) {
62
+ for (let back = 1; back <= Math.min(3, bytes.length); back++) {
63
+ const byte = bytes[bytes.length - back];
64
+ if ((byte & 0xc0) === 0x80)
65
+ continue;
66
+ const needed = byte >= 0xf0 ? 4 : byte >= 0xe0 ? 3 : byte >= 0xc0 ? 2 : 1;
67
+ return needed > back ? bytes.subarray(bytes.length - back) : Buffer.alloc(0);
68
+ }
69
+ return Buffer.alloc(0);
70
+ }
71
+ export function createHostOutputDecoder(options = {}) {
72
+ const platform = options.platform ?? process.platform;
73
+ if (platform !== 'win32')
74
+ return new StringDecoder('utf8');
75
+ const legacy = legacyDecoder('codePage' in options ? options.codePage : (probeOemCodePage() ?? undefined));
76
+ if (legacy === undefined)
77
+ return new StringDecoder('utf8');
78
+ let utf8 = new TextDecoder('utf-8', { fatal: true });
79
+ // The bytes of a character cut by the last chunk, which the UTF-8 decoder
80
+ // holds internally and cannot hand back when the stream turns out not to
81
+ // be UTF-8: the legacy decoder must start from them, not lose them.
82
+ let tail = Buffer.alloc(0);
83
+ return {
84
+ write(chunk) {
85
+ if (utf8 !== undefined) {
86
+ try {
87
+ const text = utf8.decode(chunk, { stream: true });
88
+ tail = incompleteUtf8Tail(chunk.length >= 3 ? chunk : Buffer.concat([tail, chunk]));
89
+ return text;
90
+ }
91
+ catch {
92
+ utf8 = undefined;
93
+ return legacy.write(Buffer.concat([tail, chunk]));
94
+ }
95
+ }
96
+ return legacy.write(chunk);
97
+ },
98
+ end() {
99
+ if (utf8 !== undefined) {
100
+ try {
101
+ return utf8.decode();
102
+ }
103
+ catch {
104
+ utf8 = undefined;
105
+ return legacy.write(tail) + legacy.end();
106
+ }
107
+ }
108
+ return legacy.end();
109
+ },
110
+ };
111
+ }
112
+ /** Decode a whole captured buffer. */
113
+ export function decodeHostOutput(bytes, options = {}) {
114
+ const decoder = createHostOutputDecoder(options);
115
+ return decoder.write(bytes) + decoder.end();
116
+ }
117
+ //# sourceMappingURL=host-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-output.js","sourceRoot":"","sources":["../../src/tools/host-output.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/delete.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI/D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAsBxE"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/delete.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI/D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAkDxE"}
@@ -1,20 +1,55 @@
1
1
  import { z } from 'zod';
2
+ import { MemoryRevisionConflictError } from '../../store/memory/revision.js';
3
+ import { hasConditionalMemoryWrites } from '../../types/memory/index.js';
2
4
  import { asMemoryId } from '../../utils/id.js';
3
5
  import { defineTool } from '../defineTool.js';
4
6
  export function buildDeleteMemoryTool(store) {
5
7
  return defineTool({
6
8
  name: 'delete_memory',
7
- description: 'Permanently delete a stored memory by ID. Use update_memory with status archived when the record should remain available for inspection. Deletion does not erase past conversation transcripts.',
9
+ description: 'Permanently delete a stored memory by ID. Use update_memory with status archived when the record should remain available for inspection. Deletion does not erase past conversation transcripts. Pass the revision from read_memory when available to refuse a stale deletion.',
8
10
  inputSchema: z.object({
9
11
  id: z.string().describe('Memory ID to permanently delete'),
12
+ revision: z
13
+ .string()
14
+ .min(1)
15
+ .optional()
16
+ .describe('Opaque revision from read_memory; refuse deletion if the record changed'),
10
17
  }),
11
18
  category: 'custom',
12
19
  permissions: [],
13
20
  readOnly: false,
14
21
  destructive: true,
15
22
  concurrencySafe: true,
16
- async execute({ id }) {
17
- const removed = await store.delete(asMemoryId(id));
23
+ async execute({ id, revision }) {
24
+ if (revision !== undefined && !hasConditionalMemoryWrites(store)) {
25
+ return {
26
+ success: false,
27
+ output: 'This memory store does not support revision-checked deletion.',
28
+ error: 'Conditional memory deletion unavailable',
29
+ };
30
+ }
31
+ let removed;
32
+ try {
33
+ if (revision === undefined) {
34
+ removed = await store.delete(asMemoryId(id));
35
+ }
36
+ else if (hasConditionalMemoryWrites(store)) {
37
+ await store.deleteIfRevision(asMemoryId(id), revision);
38
+ removed = true;
39
+ }
40
+ else
41
+ throw new Error('Conditional memory support changed during the deletion.');
42
+ }
43
+ catch (error) {
44
+ if (!(error instanceof MemoryRevisionConflictError))
45
+ throw error;
46
+ return {
47
+ success: false,
48
+ output: error.message,
49
+ error: 'Memory changed since read',
50
+ data: { reason: 'revision_conflict' },
51
+ };
52
+ }
18
53
  return {
19
54
  success: removed,
20
55
  output: removed ? `Memory deleted: ${id}.` : `Memory ${id} not found.`,
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/tools/memory/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACvD,OAAO,UAAU,CAAC;QACjB,IAAI,EAAE,eAAe;QACrB,WAAW,EACV,iMAAiM;QAClM,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SAC1D,CAAC;QACF,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,IAAI;QACrB,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE;YACnB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;YAClD,OAAO;gBACN,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,aAAa;gBACtE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;aACjD,CAAA;QACF,CAAC;KACD,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/tools/memory/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAA;AAE5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAExE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACvD,OAAO,UAAU,CAAC;QACjB,IAAI,EAAE,eAAe;QACrB,WAAW,EACV,+QAA+Q;QAChR,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC1D,QAAQ,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,QAAQ,CAAC,yEAAyE,CAAC;SACrF,CAAC;QACF,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,IAAI;QACrB,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE;YAC7B,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,+DAA+D;oBACvE,KAAK,EAAE,yCAAyC;iBAChD,CAAA;YACF,CAAC;YACD,IAAI,OAAgB,CAAA;YACpB,IAAI,CAAC;gBACJ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC5B,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC7C,CAAC;qBAAM,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC9C,MAAM,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;oBACtD,OAAO,GAAG,IAAI,CAAA;gBACf,CAAC;;oBAAM,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;YAClF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,CAAC,KAAK,YAAY,2BAA2B,CAAC;oBAAE,MAAM,KAAK,CAAA;gBAChE,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,KAAK,EAAE,2BAA2B;oBAClC,IAAI,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;iBACrC,CAAA;YACF,CAAC;YACD,OAAO;gBACN,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,aAAa;gBACtE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;aACjD,CAAA;QACF,CAAC;KACD,CAAC,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/read.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAmC,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI/D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAiGtE"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAmC,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI/D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAgItE"}
@@ -1,5 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { MEMORY_VERIFY_NOTICE, describeMemoryAge, memoryLinkNames, } from '../../store/memory/links.js';
3
+ import { MemoryRevisionUnavailableError } from '../../store/memory/revision.js';
4
+ import { hasConditionalMemoryWrites } from '../../types/memory/index.js';
3
5
  import { defineTool } from '../defineTool.js';
4
6
  import { allMemoryEntries, resolveMemoryReference } from './resolve.js';
5
7
  export function buildReadMemoryTool(store) {
@@ -31,7 +33,25 @@ export function buildReadMemoryTool(store) {
31
33
  let entries = reference.entries;
32
34
  let entry;
33
35
  let content;
34
- if (store.getRecord) {
36
+ let revision;
37
+ if (hasConditionalMemoryWrites(store)) {
38
+ try {
39
+ const record = await store.getVersionedRecord(memoryId);
40
+ entry = record?.entry;
41
+ content = record?.content;
42
+ revision = record?.revision;
43
+ }
44
+ catch (error) {
45
+ if (!(error instanceof MemoryRevisionUnavailableError))
46
+ throw error;
47
+ // Legacy in-memory records may hold cloneable host objects with
48
+ // inaccessible bytes. Read them without claiming CAS support.
49
+ const record = await store.getRecord?.(memoryId);
50
+ entry = record?.entry;
51
+ content = record?.content ?? (await store.get(memoryId));
52
+ }
53
+ }
54
+ else if (store.getRecord) {
35
55
  const record = await store.getRecord(memoryId);
36
56
  entry = record?.entry;
37
57
  content = record?.content;
@@ -73,9 +93,24 @@ export function buildReadMemoryTool(store) {
73
93
  // A JSON body stays exactly the stored text, parseable as it was
74
94
  // before these notes existed; its age and links are in `data`.
75
95
  const annotate = notes.length > 0 && content.format !== 'json';
96
+ const output = annotate ? `${content.content}\n\n---\n${notes.join('\n')}` : content.content;
76
97
  return {
77
98
  success: true,
78
- output: annotate ? `${content.content}\n\n---\n${notes.join('\n')}` : content.content,
99
+ output,
100
+ // The executor sends output or content to the model, not data. Keep
101
+ // output byte-compatible (including JSON) while exposing the token
102
+ // in a separate model-visible text block.
103
+ ...(revision !== undefined
104
+ ? {
105
+ content: [
106
+ { type: 'text', text: output },
107
+ {
108
+ type: 'text',
109
+ text: `Memory revision: ${revision}. Pass it as revision to update_memory or delete_memory to reject stale changes.`,
110
+ },
111
+ ],
112
+ }
113
+ : {}),
79
114
  data: {
80
115
  id: content.id,
81
116
  format: content.format,
@@ -83,6 +118,7 @@ export function buildReadMemoryTool(store) {
83
118
  ...(entry?.name !== undefined ? { name: entry.name } : {}),
84
119
  ...(entry?.type !== undefined ? { type: entry.type } : {}),
85
120
  ...(entry ? { updatedAt: entry.updatedAt } : {}),
121
+ ...(revision !== undefined ? { revision } : {}),
86
122
  ...(resolved.length > 0 ? { links: resolved } : {}),
87
123
  },
88
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../src/tools/memory/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../src/tools/memory/read.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/search.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,WAAW,EAGX,WAAW,EACX,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAkE/D,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAExE;AAED,8EAA8E;AAC9E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAE7E"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/search.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,WAAW,EAGX,WAAW,EACX,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAiG/D,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAExE;AAED,8EAA8E;AAC9E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAE7E"}
@@ -1,10 +1,11 @@
1
1
  import { z } from 'zod';
2
2
  import { describeMemoryAge } from '../../store/memory/links.js';
3
3
  import { defineTool } from '../defineTool.js';
4
+ const MAX_MEMORY_SCAN = 256;
4
5
  function defineSearchMemoryTool(search) {
5
6
  return defineTool({
6
7
  name: 'search_memory',
7
- description: 'Search active stored memories by relevant words or tags. The built-in store ranks matches in names, titles, descriptions, summaries and full content. Returns the title, name, type, age and description of each match; use read_memory for evidence. Set status to archived to inspect obsolete records.',
8
+ description: 'Search active stored memories by relevant words or tags. The built-in stores rank matches in names, titles, descriptions, summaries and full content. Built-in search examines at most 256 recent candidates per call; if incomplete, continue with the returned scan_offset. Use read_memory for evidence. Set status to archived to inspect obsolete records.',
8
9
  inputSchema: z.object({
9
10
  query: z.string().optional().describe('Relevant words or identifiers to search'),
10
11
  tags: z.array(z.string()).optional().describe('Filter by tags (all must match)'),
@@ -19,19 +20,46 @@ function defineSearchMemoryTool(search) {
19
20
  .max(50)
20
21
  .default(10)
21
22
  .describe('Maximum results to return (1–50)'),
23
+ scan_offset: z
24
+ .number()
25
+ .int()
26
+ .min(0)
27
+ .default(0)
28
+ .describe('Candidate offset from an earlier incomplete search; starts at 0'),
22
29
  }),
23
30
  category: 'analysis',
24
31
  permissions: [],
25
32
  readOnly: true,
26
33
  destructive: false,
27
34
  concurrencySafe: true,
28
- async execute({ query, tags, status, limit }) {
29
- const result = await search({ query, tags, status, limit });
35
+ async execute({ query, tags, status, limit, scan_offset }) {
36
+ const result = await search({
37
+ query,
38
+ tags,
39
+ status,
40
+ limit,
41
+ maxScanned: MAX_MEMORY_SCAN,
42
+ scanOffset: scan_offset,
43
+ });
44
+ const continuation = result.truncated
45
+ ? result.nextScanOffset === undefined
46
+ ? ' Search incomplete; narrow the query or read a known ID.'
47
+ : ` Search incomplete; continue with scan_offset ${result.nextScanOffset}.`
48
+ : '';
49
+ const page = scan_offset > 0 || result.truncated ? ' in this scan page' : '';
30
50
  if (result.entries.length === 0) {
31
51
  return {
32
52
  success: true,
33
- output: 'No memories found.',
34
- data: { entries: [], totalCount: 0 },
53
+ output: `No memories found${page}.${continuation}`,
54
+ data: {
55
+ entries: [],
56
+ totalCount: result.totalCount,
57
+ truncated: result.truncated === true,
58
+ ...(result.scannedCount !== undefined ? { scannedCount: result.scannedCount } : {}),
59
+ ...(result.nextScanOffset !== undefined
60
+ ? { nextScanOffset: result.nextScanOffset }
61
+ : {}),
62
+ },
35
63
  };
36
64
  }
37
65
  const now = Date.now();
@@ -42,14 +70,17 @@ function defineSearchMemoryTool(search) {
42
70
  return `${i + 1}. [${e.id}] ${e.title} (${kind}) — ${e.description ?? e.summary}${e.tags.length > 0 ? ` [${e.tags.join(', ')}]` : ''}`;
43
71
  });
44
72
  const output = result.totalCount > result.entries.length
45
- ? `Found ${result.totalCount} memories (showing ${result.entries.length}):\n${lines.join('\n')}`
46
- : `Found ${result.totalCount} memories:\n${lines.join('\n')}`;
73
+ ? `Found ${result.totalCount} memories${page} (showing ${result.entries.length}):\n${lines.join('\n')}${continuation}`
74
+ : `Found ${result.totalCount} memories${page}:\n${lines.join('\n')}${continuation}`;
47
75
  return {
48
76
  success: true,
49
77
  output,
50
78
  data: {
51
79
  entries: result.entries,
52
80
  totalCount: result.totalCount,
81
+ truncated: result.truncated === true,
82
+ ...(result.scannedCount !== undefined ? { scannedCount: result.scannedCount } : {}),
83
+ ...(result.nextScanOffset !== undefined ? { nextScanOffset: result.nextScanOffset } : {}),
53
84
  },
54
85
  };
55
86
  },
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/tools/memory/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/tools/memory/search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/update.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAK/D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAgFxE"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/tools/memory/update.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAK/D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAuGxE"}
@@ -1,16 +1,23 @@
1
1
  import { z } from 'zod';
2
2
  import { MemoryContentRejectedError, MemoryNameConflictError } from '../../store/memory/naming.js';
3
+ import { MemoryRevisionConflictError } from '../../store/memory/revision.js';
4
+ import { hasConditionalMemoryWrites } from '../../types/memory/index.js';
3
5
  import { defineTool } from '../defineTool.js';
4
6
  import { memoryFieldsSchema } from './fields.js';
5
7
  import { resolveMemoryReference } from './resolve.js';
6
8
  export function buildUpdateMemoryTool(store) {
7
9
  return defineTool({
8
10
  name: 'update_memory',
9
- description: 'Correct an existing memory in place, or archive an obsolete claim so it is no longer recalled. Prefer this to saving a second memory about the same thing. Identify it by the ID from search_memory or by its name from the memory index; current evidence should determine corrections.',
11
+ description: 'Correct an existing memory in place, or archive an obsolete claim so it is no longer recalled. Prefer this to saving a second memory about the same thing. Identify it by the ID from search_memory or by its name from the memory index; current evidence should determine corrections. Pass the revision from read_memory when available to refuse a stale correction.',
10
12
  inputSchema: z.object({
11
13
  id: z
12
14
  .string()
13
15
  .describe('Memory ID, or the memory name from the index, to correct or archive'),
16
+ revision: z
17
+ .string()
18
+ .min(1)
19
+ .optional()
20
+ .describe('Opaque revision from read_memory; refuse the update if the record changed'),
14
21
  title: z.string().min(1).optional().describe('Corrected short descriptive title'),
15
22
  summary: z.string().min(1).optional().describe('Corrected brief summary (1-2 sentences)'),
16
23
  content: z.string().min(1).optional().describe('Corrected full content'),
@@ -26,7 +33,7 @@ export function buildUpdateMemoryTool(store) {
26
33
  readOnly: false,
27
34
  destructive: false,
28
35
  concurrencySafe: true,
29
- async execute({ id, ...updates }) {
36
+ async execute({ id, revision, ...updates }) {
30
37
  if (Object.values(updates).every((value) => value === undefined)) {
31
38
  return {
32
39
  success: false,
@@ -34,6 +41,13 @@ export function buildUpdateMemoryTool(store) {
34
41
  error: 'No memory update supplied',
35
42
  };
36
43
  }
44
+ if (revision !== undefined && !hasConditionalMemoryWrites(store)) {
45
+ return {
46
+ success: false,
47
+ output: 'This memory store does not support revision-checked updates.',
48
+ error: 'Conditional memory update unavailable',
49
+ };
50
+ }
37
51
  const reference = await resolveMemoryReference(store, id);
38
52
  if (!reference.found) {
39
53
  return {
@@ -47,9 +61,22 @@ export function buildUpdateMemoryTool(store) {
47
61
  // provenance here would overwrite metadata from a concurrent writer.
48
62
  let entry;
49
63
  try {
50
- entry = await store.update(memoryId, updates);
64
+ if (revision === undefined)
65
+ entry = await store.update(memoryId, updates);
66
+ else if (hasConditionalMemoryWrites(store))
67
+ entry = await store.updateIfRevision(memoryId, updates, revision);
68
+ else
69
+ throw new Error('Conditional memory support changed during the update.');
51
70
  }
52
71
  catch (error) {
72
+ if (error instanceof MemoryRevisionConflictError) {
73
+ return {
74
+ success: false,
75
+ output: error.message,
76
+ error: 'Memory changed since read',
77
+ data: { reason: 'revision_conflict' },
78
+ };
79
+ }
53
80
  if (error instanceof MemoryContentRejectedError) {
54
81
  return {
55
82
  success: false,
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/tools/memory/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/tools/memory/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * The upper half (bytes 0x80-0xFF) of the DOS/OEM single-byte code pages a
3
+ * Windows console reports. WHATWG `TextDecoder` has no IBM437/850/852/857
4
+ * labels, and cmd.exe writes these, so they are tabulated here. Generated
5
+ * from Python's `codecs` tables; each string is exactly 128 characters.
6
+ */
7
+ export declare const OEM_UPPER_HALF: Readonly<Record<number, string>>;
8
+ //# sourceMappingURL=oem-code-pages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oem-code-pages.d.ts","sourceRoot":"","sources":["../../src/tools/oem-code-pages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAe3D,CAAA"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The upper half (bytes 0x80-0xFF) of the DOS/OEM single-byte code pages a
3
+ * Windows console reports. WHATWG `TextDecoder` has no IBM437/850/852/857
4
+ * labels, and cmd.exe writes these, so they are tabulated here. Generated
5
+ * from Python's `codecs` tables; each string is exactly 128 characters.
6
+ */
7
+ export const OEM_UPPER_HALF = {
8
+ 437: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
9
+ 737: '\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c3\u03c2\u03c4\u03c5\u03c6\u03c7\u03c8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03c9\u03ac\u03ad\u03ae\u03ca\u03af\u03cc\u03cd\u03cb\u03ce\u0386\u0388\u0389\u038a\u038c\u038e\u038f\xb1\u2265\u2264\u03aa\u03ab\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
10
+ 775: '\u0106\xfc\xe9\u0101\xe4\u0123\xe5\u0107\u0142\u0113\u0156\u0157\u012b\u0179\xc4\xc5\xc9\xe6\xc6\u014d\xf6\u0122\xa2\u015a\u015b\xd6\xdc\xf8\xa3\xd8\xd7\xa4\u0100\u012a\xf3\u017b\u017c\u017a\u201d\xa6\xa9\xae\xac\xbd\xbc\u0141\xab\xbb\u2591\u2592\u2593\u2502\u2524\u0104\u010c\u0118\u0116\u2563\u2551\u2557\u255d\u012e\u0160\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u0172\u016a\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u017d\u0105\u010d\u0119\u0117\u012f\u0161\u0173\u016b\u017e\u2518\u250c\u2588\u2584\u258c\u2590\u2580\xd3\xdf\u014c\u0143\xf5\xd5\xb5\u0144\u0136\u0137\u013b\u013c\u0146\u0112\u0145\u2019\xad\xb1\u201c\xbe\xb6\xa7\xf7\u201e\xb0\u2219\xb7\xb9\xb3\xb2\u25a0\xa0',
11
+ 850: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xf8\xa3\xd8\xd7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\xae\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\xc1\xc2\xc0\xa9\u2563\u2551\u2557\u255d\xa2\xa5\u2510\u2514\u2534\u252c\u251c\u2500\u253c\xe3\xc3\u255a\u2554\u2569\u2566\u2560\u2550\u256c\xa4\xf0\xd0\xca\xcb\xc8\u0131\xcd\xce\xcf\u2518\u250c\u2588\u2584\xa6\xcc\u2580\xd3\xdf\xd4\xd2\xf5\xd5\xb5\xfe\xde\xda\xdb\xd9\xfd\xdd\xaf\xb4\xad\xb1\u2017\xbe\xb6\xa7\xf7\xb8\xb0\xa8\xb7\xb9\xb3\xb2\u25a0\xa0',
12
+ 852: '\xc7\xfc\xe9\xe2\xe4\u016f\u0107\xe7\u0142\xeb\u0150\u0151\xee\u0179\xc4\u0106\xc9\u0139\u013a\xf4\xf6\u013d\u013e\u015a\u015b\xd6\xdc\u0164\u0165\u0141\xd7\u010d\xe1\xed\xf3\xfa\u0104\u0105\u017d\u017e\u0118\u0119\xac\u017a\u010c\u015f\xab\xbb\u2591\u2592\u2593\u2502\u2524\xc1\xc2\u011a\u015e\u2563\u2551\u2557\u255d\u017b\u017c\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u0102\u0103\u255a\u2554\u2569\u2566\u2560\u2550\u256c\xa4\u0111\u0110\u010e\xcb\u010f\u0147\xcd\xce\u011b\u2518\u250c\u2588\u2584\u0162\u016e\u2580\xd3\xdf\xd4\u0143\u0144\u0148\u0160\u0161\u0154\xda\u0155\u0170\xfd\xdd\u0163\xb4\xad\u02dd\u02db\u02c7\u02d8\xa7\xf7\xb8\xb0\xa8\u02d9\u0171\u0158\u0159\u25a0\xa0',
13
+ 855: '\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045a\u040a\u045b\u040b\u045c\u040c\u045e\u040e\u045f\u040f\u044e\u042e\u044a\u042a\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xab\xbb\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255d\u0439\u0419\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u043a\u041a\u255a\u2554\u2569\u2566\u2560\u2550\u256c\xa4\u043b\u041b\u043c\u041c\u043d\u041d\u043e\u041e\u043f\u2518\u250c\u2588\u2584\u041f\u044f\u2580\u042f\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044c\u042c\u2116\xad\u044b\u042b\u0437\u0417\u0448\u0428\u044d\u042d\u0449\u0429\u0447\u0427\xa7\u25a0\xa0',
14
+ 857: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\u0131\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\u0130\xd6\xdc\xf8\xa3\xd8\u015e\u015f\xe1\xed\xf3\xfa\xf1\xd1\u011e\u011f\xbf\xae\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\xc1\xc2\xc0\xa9\u2563\u2551\u2557\u255d\xa2\xa5\u2510\u2514\u2534\u252c\u251c\u2500\u253c\xe3\xc3\u255a\u2554\u2569\u2566\u2560\u2550\u256c\xa4\xba\xaa\xca\xcb\xc8\ufffd\xcd\xce\xcf\u2518\u250c\u2588\u2584\xa6\xcc\u2580\xd3\xdf\xd4\xd2\xf5\xd5\xb5\ufffd\xd7\xda\xdb\xd9\xec\xff\xaf\xb4\xad\xb1\ufffd\xbe\xb6\xa7\xf7\xb8\xb0\xa8\xb7\xb9\xb3\xb2\u25a0\xa0',
15
+ 858: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xf8\xa3\xd8\xd7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\xae\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\xc1\xc2\xc0\xa9\u2563\u2551\u2557\u255d\xa2\xa5\u2510\u2514\u2534\u252c\u251c\u2500\u253c\xe3\xc3\u255a\u2554\u2569\u2566\u2560\u2550\u256c\xa4\xf0\xd0\xca\xcb\xc8\u20ac\xcd\xce\xcf\u2518\u250c\u2588\u2584\xa6\xcc\u2580\xd3\xdf\xd4\xd2\xf5\xd5\xb5\xfe\xde\xda\xdb\xd9\xfd\xdd\xaf\xb4\xad\xb1\u2017\xbe\xb6\xa7\xf7\xb8\xb0\xa8\xb7\xb9\xb3\xb2\u25a0\xa0',
16
+ 860: '\xc7\xfc\xe9\xe2\xe3\xe0\xc1\xe7\xea\xca\xe8\xcd\xd4\xec\xc3\xc2\xc9\xc0\xc8\xf4\xf5\xf2\xda\xf9\xcc\xd5\xdc\xa2\xa3\xd9\u20a7\xd3\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\xd2\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
17
+ 861: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xd0\xf0\xde\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xfe\xfb\xdd\xfd\xd6\xdc\xf8\xa3\xd8\u20a7\u0192\xe1\xed\xf3\xfa\xc1\xcd\xd3\xda\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
18
+ 862: '\u05d0\u05d1\u05d2\u05d3\u05d4\u05d5\u05d6\u05d7\u05d8\u05d9\u05da\u05db\u05dc\u05dd\u05de\u05df\u05e0\u05e1\u05e2\u05e3\u05e4\u05e5\u05e6\u05e7\u05e8\u05e9\u05ea\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
19
+ 863: '\xc7\xfc\xe9\xe2\xc2\xe0\xb6\xe7\xea\xeb\xe8\xef\xee\u2017\xc0\xa7\xc9\xc8\xca\xf4\xcb\xcf\xfb\xf9\xa4\xd4\xdc\xa2\xa3\xd9\xdb\u0192\xa6\xb4\xf3\xfa\xa8\xb8\xb3\xaf\xce\u2310\xac\xbd\xbc\xbe\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
20
+ 865: '\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xf8\xa3\xd8\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xa4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0',
21
+ 869: '\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\u0386\ufffd\xb7\xac\xa6\u2018\u2019\u0388\u2015\u0389\u038a\u03aa\u038c\ufffd\ufffd\u038e\u03ab\xa9\u038f\xb2\xb3\u03ac\xa3\u03ad\u03ae\u03af\u03ca\u0390\u03cc\u03cd\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xbd\u0398\u0399\xab\xbb\u2591\u2592\u2593\u2502\u2524\u039a\u039b\u039c\u039d\u2563\u2551\u2557\u255d\u039e\u039f\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u03a0\u03a1\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9\u03b1\u03b2\u03b3\u2518\u250c\u2588\u2584\u03b4\u03b5\u2580\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c3\u03c2\u03c4\u0384\xad\xb1\u03c5\u03c6\u03c7\xa7\u03c8\u0385\xb0\xa8\u03c9\u03cb\u03b0\u03ce\u25a0\xa0',
22
+ };
23
+ //# sourceMappingURL=oem-code-pages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oem-code-pages.js","sourceRoot":"","sources":["../../src/tools/oem-code-pages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAqC;IAC/D,GAAG,EAAE,wpBAAwpB;IAC7pB,GAAG,EAAE,svBAAsvB;IAC3vB,GAAG,EAAE,0qBAA0qB;IAC/qB,GAAG,EAAE,kkBAAkkB;IACvkB,GAAG,EAAE,8qBAA8qB;IACnrB,GAAG,EAAE,svBAAsvB;IAC3vB,GAAG,EAAE,8kBAA8kB;IACnlB,GAAG,EAAE,kkBAAkkB;IACvkB,GAAG,EAAE,opBAAopB;IACzpB,GAAG,EAAE,wpBAAwpB;IAC7pB,GAAG,EAAE,8sBAA8sB;IACntB,GAAG,EAAE,wpBAAwpB;IAC7pB,GAAG,EAAE,wpBAAwpB;IAC7pB,GAAG,EAAE,kuBAAkuB;CACvuB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"schedule-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/schedules/schedule-tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,cAAc,EAAc,MAAM,2BAA2B,CAAA;AAKxF,OAAO,KAAK,EAOX,gBAAgB,EAChB,MAAM,YAAY,CAAA;AAEnB,eAAO,MAAM,kBAAkB,aAAa,CAAA;AA2gB5C;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,cAAc,EAAE,CAkC3E"}
1
+ {"version":3,"file":"schedule-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/schedules/schedule-tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,cAAc,EAAc,MAAM,2BAA2B,CAAA;AAKxF,OAAO,KAAK,EAOX,gBAAgB,EAChB,MAAM,YAAY,CAAA;AAEnB,eAAO,MAAM,kBAAkB,aAAa,CAAA;AA4iB5C;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,cAAc,EAAE,CAkC3E"}