@orion-agents/orion-code 0.1.9 → 0.2.2

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 (757) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/README.md +142 -323
  3. package/README.zh-CN.md +118 -578
  4. package/dist/cli.js +65 -84
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/context-commands.d.ts.map +1 -1
  7. package/dist/commands/context-commands.js +14 -7
  8. package/dist/commands/context-commands.js.map +1 -1
  9. package/dist/commands/context-tool-command-handlers.d.ts +4 -5
  10. package/dist/commands/context-tool-command-handlers.d.ts.map +1 -1
  11. package/dist/commands/context-tool-command-handlers.js +132 -208
  12. package/dist/commands/context-tool-command-handlers.js.map +1 -1
  13. package/dist/commands/core-command-handlers.d.ts +3 -6
  14. package/dist/commands/core-command-handlers.d.ts.map +1 -1
  15. package/dist/commands/core-command-handlers.js +66 -664
  16. package/dist/commands/core-command-handlers.js.map +1 -1
  17. package/dist/commands/diagnostic-command-handlers.d.ts +1 -2
  18. package/dist/commands/diagnostic-command-handlers.d.ts.map +1 -1
  19. package/dist/commands/diagnostic-command-handlers.js +3 -17
  20. package/dist/commands/diagnostic-command-handlers.js.map +1 -1
  21. package/dist/commands/diagnostic-commands.d.ts.map +1 -1
  22. package/dist/commands/diagnostic-commands.js +0 -45
  23. package/dist/commands/diagnostic-commands.js.map +1 -1
  24. package/dist/commands/index.d.ts +1 -1
  25. package/dist/commands/index.d.ts.map +1 -1
  26. package/dist/commands/index.js +2 -7
  27. package/dist/commands/index.js.map +1 -1
  28. package/dist/commands/model-command-handlers.d.ts +1 -1
  29. package/dist/commands/model-command-handlers.js +2 -2
  30. package/dist/commands/model-command-handlers.js.map +1 -1
  31. package/dist/commands/model-commands.d.ts.map +1 -1
  32. package/dist/commands/model-commands.js +0 -11
  33. package/dist/commands/model-commands.js.map +1 -1
  34. package/dist/commands/registry.d.ts.map +1 -1
  35. package/dist/commands/registry.js +1 -139
  36. package/dist/commands/registry.js.map +1 -1
  37. package/dist/commands/session-command-handlers.d.ts +1 -1
  38. package/dist/commands/session-command-handlers.d.ts.map +1 -1
  39. package/dist/commands/session-command-handlers.js +52 -214
  40. package/dist/commands/session-command-handlers.js.map +1 -1
  41. package/dist/commands/session-commands.d.ts.map +1 -1
  42. package/dist/commands/session-commands.js +0 -48
  43. package/dist/commands/session-commands.js.map +1 -1
  44. package/dist/commands/target-command.d.ts +9 -15
  45. package/dist/commands/target-command.d.ts.map +1 -1
  46. package/dist/commands/target-command.js +16 -130
  47. package/dist/commands/target-command.js.map +1 -1
  48. package/dist/commands/tool-commands.d.ts.map +1 -1
  49. package/dist/commands/tool-commands.js +0 -10
  50. package/dist/commands/tool-commands.js.map +1 -1
  51. package/dist/commands/types.d.ts +10 -14
  52. package/dist/commands/types.d.ts.map +1 -1
  53. package/dist/commands/types.js +1 -1
  54. package/dist/commands/types.js.map +1 -1
  55. package/dist/commands/workflow-command-handlers.d.ts.map +1 -1
  56. package/dist/commands/workflow-command-handlers.js +1 -3
  57. package/dist/commands/workflow-command-handlers.js.map +1 -1
  58. package/dist/commands/workflow-commands.d.ts.map +1 -1
  59. package/dist/commands/workflow-commands.js +2 -24
  60. package/dist/commands/workflow-commands.js.map +1 -1
  61. package/dist/framework/agent-mode.d.ts +2 -3
  62. package/dist/framework/agent-mode.d.ts.map +1 -1
  63. package/dist/framework/agent-mode.js +8 -31
  64. package/dist/framework/agent-mode.js.map +1 -1
  65. package/dist/framework/index.d.ts +3 -3
  66. package/dist/framework/index.d.ts.map +1 -1
  67. package/dist/framework/index.js +6 -9
  68. package/dist/framework/index.js.map +1 -1
  69. package/dist/framework/loop-budget-contract.d.ts +20 -0
  70. package/dist/framework/loop-budget-contract.d.ts.map +1 -0
  71. package/dist/framework/loop-budget-contract.js +13 -0
  72. package/dist/framework/loop-budget-contract.js.map +1 -0
  73. package/dist/framework/prompt.d.ts.map +1 -1
  74. package/dist/framework/prompt.js +5 -4
  75. package/dist/framework/prompt.js.map +1 -1
  76. package/dist/framework/query.d.ts +45 -22
  77. package/dist/framework/query.d.ts.map +1 -1
  78. package/dist/framework/query.js +64 -52
  79. package/dist/framework/query.js.map +1 -1
  80. package/dist/framework/store.d.ts +4 -2
  81. package/dist/framework/store.d.ts.map +1 -1
  82. package/dist/framework/store.js +1 -0
  83. package/dist/framework/store.js.map +1 -1
  84. package/dist/framework/tool-call-orchestrator.d.ts +80 -0
  85. package/dist/framework/tool-call-orchestrator.d.ts.map +1 -0
  86. package/dist/framework/tool-call-orchestrator.js +192 -0
  87. package/dist/framework/tool-call-orchestrator.js.map +1 -0
  88. package/dist/framework/tool-state.d.ts +12 -11
  89. package/dist/framework/tool-state.d.ts.map +1 -1
  90. package/dist/framework/tool-state.js +36 -28
  91. package/dist/framework/tool-state.js.map +1 -1
  92. package/dist/framework/tool.d.ts +0 -9
  93. package/dist/framework/tool.d.ts.map +1 -1
  94. package/dist/framework/tool.js.map +1 -1
  95. package/dist/index.d.ts +70 -26
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +64 -65
  98. package/dist/index.js.map +1 -1
  99. package/dist/print-ui/launch.d.ts.map +1 -1
  100. package/dist/print-ui/launch.js +9 -2
  101. package/dist/print-ui/launch.js.map +1 -1
  102. package/dist/product/paths.d.ts +7 -0
  103. package/dist/product/paths.d.ts.map +1 -1
  104. package/dist/product/paths.js +19 -0
  105. package/dist/product/paths.js.map +1 -1
  106. package/dist/runtime/agent-loop.d.ts +80 -0
  107. package/dist/runtime/agent-loop.d.ts.map +1 -0
  108. package/dist/runtime/agent-loop.js +419 -0
  109. package/dist/runtime/agent-loop.js.map +1 -0
  110. package/dist/runtime/agent-runtime-controller.d.ts +10 -57
  111. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  112. package/dist/runtime/agent-runtime-controller.js +270 -1216
  113. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  114. package/dist/runtime/agent-runtime-protocol.d.ts +4 -5
  115. package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
  116. package/dist/runtime/agent-runtime-protocol.js.map +1 -1
  117. package/dist/runtime/agent-runtime-runner.d.ts +36 -0
  118. package/dist/runtime/agent-runtime-runner.d.ts.map +1 -0
  119. package/dist/runtime/agent-runtime-runner.js +3 -0
  120. package/dist/runtime/agent-runtime-runner.js.map +1 -0
  121. package/dist/runtime/batch-read-service.d.ts +29 -0
  122. package/dist/runtime/batch-read-service.d.ts.map +1 -0
  123. package/dist/runtime/batch-read-service.js +212 -0
  124. package/dist/runtime/batch-read-service.js.map +1 -0
  125. package/dist/runtime/builtin-tool-provider.d.ts +30 -0
  126. package/dist/runtime/builtin-tool-provider.d.ts.map +1 -0
  127. package/dist/runtime/builtin-tool-provider.js +233 -0
  128. package/dist/runtime/builtin-tool-provider.js.map +1 -0
  129. package/dist/runtime/capabilities/compiler.d.ts +11 -0
  130. package/dist/runtime/capabilities/compiler.d.ts.map +1 -0
  131. package/dist/runtime/capabilities/compiler.js +719 -0
  132. package/dist/runtime/capabilities/compiler.js.map +1 -0
  133. package/dist/runtime/capabilities/index.d.ts +3 -0
  134. package/dist/runtime/capabilities/index.d.ts.map +1 -0
  135. package/dist/runtime/capabilities/index.js +9 -0
  136. package/dist/runtime/capabilities/index.js.map +1 -0
  137. package/dist/runtime/capabilities/types.d.ts +175 -0
  138. package/dist/runtime/capabilities/types.d.ts.map +1 -0
  139. package/dist/runtime/capabilities/types.js +3 -0
  140. package/dist/runtime/capabilities/types.js.map +1 -0
  141. package/dist/runtime/capability-receipt-journal.d.ts +29 -0
  142. package/dist/runtime/capability-receipt-journal.d.ts.map +1 -0
  143. package/dist/runtime/capability-receipt-journal.js +264 -0
  144. package/dist/runtime/capability-receipt-journal.js.map +1 -0
  145. package/dist/runtime/capability-step-factory.d.ts +73 -0
  146. package/dist/runtime/capability-step-factory.d.ts.map +1 -0
  147. package/dist/runtime/capability-step-factory.js +302 -0
  148. package/dist/runtime/capability-step-factory.js.map +1 -0
  149. package/dist/runtime/compact-transaction.d.ts +225 -0
  150. package/dist/runtime/compact-transaction.d.ts.map +1 -0
  151. package/dist/runtime/compact-transaction.js +622 -0
  152. package/dist/runtime/compact-transaction.js.map +1 -0
  153. package/dist/runtime/composer/buffer.d.ts +3 -4
  154. package/dist/runtime/composer/buffer.d.ts.map +1 -1
  155. package/dist/runtime/composer/buffer.js +3 -4
  156. package/dist/runtime/composer/buffer.js.map +1 -1
  157. package/dist/runtime/composer/grapheme.d.ts +2 -4
  158. package/dist/runtime/composer/grapheme.d.ts.map +1 -1
  159. package/dist/runtime/composer/grapheme.js +2 -4
  160. package/dist/runtime/composer/grapheme.js.map +1 -1
  161. package/dist/runtime/composer/layout.d.ts +1 -3
  162. package/dist/runtime/composer/layout.d.ts.map +1 -1
  163. package/dist/runtime/composer/layout.js +1 -3
  164. package/dist/runtime/composer/layout.js.map +1 -1
  165. package/dist/runtime/core-tools/descriptors.d.ts +17 -0
  166. package/dist/runtime/core-tools/descriptors.d.ts.map +1 -0
  167. package/dist/runtime/core-tools/descriptors.js +185 -0
  168. package/dist/runtime/core-tools/descriptors.js.map +1 -0
  169. package/dist/runtime/first-party-core-provider.d.ts +55 -0
  170. package/dist/runtime/first-party-core-provider.d.ts.map +1 -0
  171. package/dist/runtime/first-party-core-provider.js +197 -0
  172. package/dist/runtime/first-party-core-provider.js.map +1 -0
  173. package/dist/runtime/first-party-long-tail-provider.d.ts +57 -0
  174. package/dist/runtime/first-party-long-tail-provider.d.ts.map +1 -0
  175. package/dist/runtime/first-party-long-tail-provider.js +238 -0
  176. package/dist/runtime/first-party-long-tail-provider.js.map +1 -0
  177. package/dist/runtime/first-party-tool-services.d.ts +43 -0
  178. package/dist/runtime/first-party-tool-services.d.ts.map +1 -0
  179. package/dist/runtime/first-party-tool-services.js +200 -0
  180. package/dist/runtime/first-party-tool-services.js.map +1 -0
  181. package/dist/runtime/first-party-tool-universe.d.ts +14 -0
  182. package/dist/runtime/first-party-tool-universe.d.ts.map +1 -0
  183. package/dist/runtime/first-party-tool-universe.js +20 -0
  184. package/dist/runtime/first-party-tool-universe.js.map +1 -0
  185. package/dist/runtime/goal-lifecycle-v2.d.ts +63 -0
  186. package/dist/runtime/goal-lifecycle-v2.d.ts.map +1 -0
  187. package/dist/runtime/goal-lifecycle-v2.js +253 -0
  188. package/dist/runtime/goal-lifecycle-v2.js.map +1 -0
  189. package/dist/runtime/goal-runtime-coordinator.d.ts +111 -0
  190. package/dist/runtime/goal-runtime-coordinator.d.ts.map +1 -0
  191. package/dist/runtime/goal-runtime-coordinator.js +511 -0
  192. package/dist/runtime/goal-runtime-coordinator.js.map +1 -0
  193. package/dist/runtime/harness-confluence.d.ts +165 -0
  194. package/dist/runtime/harness-confluence.d.ts.map +1 -0
  195. package/dist/runtime/harness-confluence.js +807 -0
  196. package/dist/runtime/harness-confluence.js.map +1 -0
  197. package/dist/runtime/harness-eval.d.ts +96 -0
  198. package/dist/runtime/harness-eval.d.ts.map +1 -0
  199. package/dist/runtime/harness-eval.js +181 -0
  200. package/dist/runtime/harness-eval.js.map +1 -0
  201. package/dist/runtime/harness-metrics.d.ts +202 -0
  202. package/dist/runtime/harness-metrics.d.ts.map +1 -0
  203. package/dist/runtime/harness-metrics.js +415 -0
  204. package/dist/runtime/harness-metrics.js.map +1 -0
  205. package/dist/runtime/legacy-session-importer.d.ts +99 -0
  206. package/dist/runtime/legacy-session-importer.d.ts.map +1 -0
  207. package/dist/runtime/legacy-session-importer.js +455 -0
  208. package/dist/runtime/legacy-session-importer.js.map +1 -0
  209. package/dist/runtime/legacy-thread-materializer.d.ts +72 -0
  210. package/dist/runtime/legacy-thread-materializer.d.ts.map +1 -0
  211. package/dist/runtime/legacy-thread-materializer.js +553 -0
  212. package/dist/runtime/legacy-thread-materializer.js.map +1 -0
  213. package/dist/runtime/long-tail-tools/descriptors.d.ts +23 -0
  214. package/dist/runtime/long-tail-tools/descriptors.d.ts.map +1 -0
  215. package/dist/runtime/long-tail-tools/descriptors.js +423 -0
  216. package/dist/runtime/long-tail-tools/descriptors.js.map +1 -0
  217. package/dist/runtime/loop-budget.d.ts +1 -1
  218. package/dist/runtime/loop-budget.d.ts.map +1 -1
  219. package/dist/runtime/loop-budget.js +2 -2
  220. package/dist/runtime/loop-budget.js.map +1 -1
  221. package/dist/runtime/mcp/first-party-mcp-adapter.d.ts +75 -0
  222. package/dist/runtime/mcp/first-party-mcp-adapter.d.ts.map +1 -0
  223. package/dist/runtime/mcp/first-party-mcp-adapter.js +484 -0
  224. package/dist/runtime/mcp/first-party-mcp-adapter.js.map +1 -0
  225. package/dist/runtime/mcp/first-party-mcp-config.d.ts +13 -0
  226. package/dist/runtime/mcp/first-party-mcp-config.d.ts.map +1 -0
  227. package/dist/runtime/mcp/first-party-mcp-config.js +139 -0
  228. package/dist/runtime/mcp/first-party-mcp-config.js.map +1 -0
  229. package/dist/runtime/mcp/index.d.ts +5 -0
  230. package/dist/runtime/mcp/index.d.ts.map +1 -0
  231. package/dist/{skills → runtime/mcp}/index.js +3 -9
  232. package/dist/runtime/mcp/index.js.map +1 -0
  233. package/dist/runtime/mcp/lazy-mcp-runtime.d.ts +95 -0
  234. package/dist/runtime/mcp/lazy-mcp-runtime.d.ts.map +1 -0
  235. package/dist/runtime/mcp/lazy-mcp-runtime.js +854 -0
  236. package/dist/runtime/mcp/lazy-mcp-runtime.js.map +1 -0
  237. package/dist/runtime/mcp/types.d.ts +128 -0
  238. package/dist/runtime/mcp/types.d.ts.map +1 -0
  239. package/dist/runtime/mcp/types.js +5 -0
  240. package/dist/runtime/mcp/types.js.map +1 -0
  241. package/dist/runtime/orion-runtime-v1.d.ts +322 -0
  242. package/dist/runtime/orion-runtime-v1.d.ts.map +1 -0
  243. package/dist/runtime/orion-runtime-v1.js +959 -0
  244. package/dist/runtime/orion-runtime-v1.js.map +1 -0
  245. package/dist/runtime/orion-session-runner.d.ts +38 -0
  246. package/dist/runtime/orion-session-runner.d.ts.map +1 -0
  247. package/dist/runtime/orion-session-runner.js +168 -0
  248. package/dist/runtime/orion-session-runner.js.map +1 -0
  249. package/dist/runtime/product-orion-runtime.d.ts +35 -0
  250. package/dist/runtime/product-orion-runtime.d.ts.map +1 -0
  251. package/dist/runtime/product-orion-runtime.js +1047 -0
  252. package/dist/runtime/product-orion-runtime.js.map +1 -0
  253. package/dist/runtime/prompts/index.d.ts +3 -0
  254. package/dist/runtime/prompts/index.d.ts.map +1 -0
  255. package/dist/{ink-ui/types.js → runtime/prompts/index.js} +3 -2
  256. package/dist/runtime/prompts/index.js.map +1 -0
  257. package/dist/runtime/prompts/prompt-registry.d.ts +22 -0
  258. package/dist/runtime/prompts/prompt-registry.d.ts.map +1 -0
  259. package/dist/runtime/prompts/prompt-registry.js +356 -0
  260. package/dist/runtime/prompts/prompt-registry.js.map +1 -0
  261. package/dist/runtime/prompts/types.d.ts +111 -0
  262. package/dist/runtime/prompts/types.d.ts.map +1 -0
  263. package/dist/runtime/prompts/types.js +5 -0
  264. package/dist/runtime/prompts/types.js.map +1 -0
  265. package/dist/runtime/protocol/canonical.d.ts +3 -0
  266. package/dist/runtime/protocol/canonical.d.ts.map +1 -0
  267. package/dist/runtime/protocol/canonical.js +21 -0
  268. package/dist/runtime/protocol/canonical.js.map +1 -0
  269. package/dist/runtime/protocol/index.d.ts +4 -0
  270. package/dist/runtime/protocol/index.d.ts.map +1 -0
  271. package/dist/runtime/protocol/index.js +16 -0
  272. package/dist/runtime/protocol/index.js.map +1 -0
  273. package/dist/runtime/protocol/runtime-protocol-v1.d.ts +671 -0
  274. package/dist/runtime/protocol/runtime-protocol-v1.d.ts.map +1 -0
  275. package/dist/runtime/protocol/runtime-protocol-v1.js +557 -0
  276. package/dist/runtime/protocol/runtime-protocol-v1.js.map +1 -0
  277. package/dist/runtime/release-receipts.d.ts +110 -0
  278. package/dist/runtime/release-receipts.d.ts.map +1 -0
  279. package/dist/runtime/release-receipts.js +305 -0
  280. package/dist/runtime/release-receipts.js.map +1 -0
  281. package/dist/runtime/resource-scope.d.ts +123 -0
  282. package/dist/runtime/resource-scope.d.ts.map +1 -0
  283. package/dist/runtime/resource-scope.js +363 -0
  284. package/dist/runtime/resource-scope.js.map +1 -0
  285. package/dist/runtime/runtime-event-buffer.d.ts +78 -0
  286. package/dist/runtime/runtime-event-buffer.d.ts.map +1 -0
  287. package/dist/runtime/runtime-event-buffer.js +237 -0
  288. package/dist/runtime/runtime-event-buffer.js.map +1 -0
  289. package/dist/runtime/runtime-services.d.ts +87 -0
  290. package/dist/runtime/runtime-services.d.ts.map +1 -0
  291. package/dist/runtime/runtime-services.js +180 -0
  292. package/dist/runtime/runtime-services.js.map +1 -0
  293. package/dist/runtime/session-history-recovery.d.ts +19 -0
  294. package/dist/runtime/session-history-recovery.d.ts.map +1 -0
  295. package/dist/runtime/session-history-recovery.js +45 -0
  296. package/dist/runtime/session-history-recovery.js.map +1 -0
  297. package/dist/runtime/skills/bounded-lru-cache.d.ts +34 -0
  298. package/dist/runtime/skills/bounded-lru-cache.d.ts.map +1 -0
  299. package/dist/runtime/skills/bounded-lru-cache.js +100 -0
  300. package/dist/runtime/skills/bounded-lru-cache.js.map +1 -0
  301. package/dist/runtime/skills/filesystem-skill-provider.d.ts +96 -0
  302. package/dist/runtime/skills/filesystem-skill-provider.d.ts.map +1 -0
  303. package/dist/runtime/skills/filesystem-skill-provider.js +829 -0
  304. package/dist/runtime/skills/filesystem-skill-provider.js.map +1 -0
  305. package/dist/runtime/skills/index.d.ts +5 -0
  306. package/dist/runtime/skills/index.d.ts.map +1 -0
  307. package/dist/{ink-ui/controllers/chat-controller.js → runtime/skills/index.js} +5 -2
  308. package/dist/runtime/skills/index.js.map +1 -0
  309. package/dist/runtime/skills/lazy-skill-runtime.d.ts +77 -0
  310. package/dist/runtime/skills/lazy-skill-runtime.d.ts.map +1 -0
  311. package/dist/runtime/skills/lazy-skill-runtime.js +673 -0
  312. package/dist/runtime/skills/lazy-skill-runtime.js.map +1 -0
  313. package/dist/runtime/skills/types.d.ts +137 -0
  314. package/dist/runtime/skills/types.d.ts.map +1 -0
  315. package/dist/runtime/skills/types.js +13 -0
  316. package/dist/runtime/skills/types.js.map +1 -0
  317. package/dist/runtime/step-snapshot.d.ts +183 -0
  318. package/dist/runtime/step-snapshot.d.ts.map +1 -0
  319. package/dist/runtime/step-snapshot.js +286 -0
  320. package/dist/runtime/step-snapshot.js.map +1 -0
  321. package/dist/runtime/subagent-thread-runtime.d.ts +239 -0
  322. package/dist/runtime/subagent-thread-runtime.d.ts.map +1 -0
  323. package/dist/runtime/subagent-thread-runtime.js +876 -0
  324. package/dist/runtime/subagent-thread-runtime.js.map +1 -0
  325. package/dist/runtime/subagents/index.d.ts +4 -1
  326. package/dist/runtime/subagents/index.d.ts.map +1 -1
  327. package/dist/runtime/subagents/index.js +10 -2
  328. package/dist/runtime/subagents/index.js.map +1 -1
  329. package/dist/runtime/subagents/parent-step-fork.d.ts +36 -0
  330. package/dist/runtime/subagents/parent-step-fork.d.ts.map +1 -0
  331. package/dist/runtime/subagents/parent-step-fork.js +83 -0
  332. package/dist/runtime/subagents/parent-step-fork.js.map +1 -0
  333. package/dist/runtime/subagents/production.d.ts +65 -46
  334. package/dist/runtime/subagents/production.d.ts.map +1 -1
  335. package/dist/runtime/subagents/production.js +494 -170
  336. package/dist/runtime/subagents/production.js.map +1 -1
  337. package/dist/runtime/subagents/receipt-journal.d.ts +20 -0
  338. package/dist/runtime/subagents/receipt-journal.d.ts.map +1 -0
  339. package/dist/runtime/subagents/receipt-journal.js +74 -0
  340. package/dist/runtime/subagents/receipt-journal.js.map +1 -0
  341. package/dist/runtime/subagents/runtime-contract.d.ts +29 -0
  342. package/dist/runtime/subagents/runtime-contract.d.ts.map +1 -0
  343. package/dist/runtime/subagents/runtime-contract.js +3 -0
  344. package/dist/runtime/subagents/runtime-contract.js.map +1 -0
  345. package/dist/runtime/subagents/runtime-integration.d.ts +41 -56
  346. package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
  347. package/dist/runtime/subagents/runtime-integration.js +34 -198
  348. package/dist/runtime/subagents/runtime-integration.js.map +1 -1
  349. package/dist/runtime/subagents/supervisor.d.ts +19 -7
  350. package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
  351. package/dist/runtime/subagents/supervisor.js +83 -40
  352. package/dist/runtime/subagents/supervisor.js.map +1 -1
  353. package/dist/runtime/subagents/types.d.ts +1 -1
  354. package/dist/runtime/subagents/types.js +1 -1
  355. package/dist/runtime/task-context-service.d.ts +91 -0
  356. package/dist/runtime/task-context-service.d.ts.map +1 -0
  357. package/dist/runtime/task-context-service.js +122 -0
  358. package/dist/runtime/task-context-service.js.map +1 -0
  359. package/dist/runtime/thread-admission.d.ts +130 -0
  360. package/dist/runtime/thread-admission.d.ts.map +1 -0
  361. package/dist/runtime/thread-admission.js +276 -0
  362. package/dist/runtime/thread-admission.js.map +1 -0
  363. package/dist/runtime/thread-compact-persistence.d.ts +50 -0
  364. package/dist/runtime/thread-compact-persistence.d.ts.map +1 -0
  365. package/dist/runtime/thread-compact-persistence.js +176 -0
  366. package/dist/runtime/thread-compact-persistence.js.map +1 -0
  367. package/dist/runtime/thread-event-store.d.ts +98 -0
  368. package/dist/runtime/thread-event-store.d.ts.map +1 -0
  369. package/dist/runtime/thread-event-store.js +737 -0
  370. package/dist/runtime/thread-event-store.js.map +1 -0
  371. package/dist/runtime/thread-projection.d.ts +91 -0
  372. package/dist/runtime/thread-projection.d.ts.map +1 -0
  373. package/dist/runtime/thread-projection.js +407 -0
  374. package/dist/runtime/thread-projection.js.map +1 -0
  375. package/dist/runtime/thread-runtime.d.ts +165 -0
  376. package/dist/runtime/thread-runtime.d.ts.map +1 -0
  377. package/dist/runtime/thread-runtime.js +704 -0
  378. package/dist/runtime/thread-runtime.js.map +1 -0
  379. package/dist/runtime/thread-session-view.d.ts +45 -0
  380. package/dist/runtime/thread-session-view.d.ts.map +1 -0
  381. package/dist/runtime/thread-session-view.js +264 -0
  382. package/dist/runtime/thread-session-view.js.map +1 -0
  383. package/dist/runtime/thread-tool-journal.d.ts +11 -0
  384. package/dist/runtime/thread-tool-journal.d.ts.map +1 -0
  385. package/dist/runtime/thread-tool-journal.js +131 -0
  386. package/dist/runtime/thread-tool-journal.js.map +1 -0
  387. package/dist/runtime/thread-ui-adapter.d.ts +87 -0
  388. package/dist/runtime/thread-ui-adapter.d.ts.map +1 -0
  389. package/dist/runtime/thread-ui-adapter.js +580 -0
  390. package/dist/runtime/thread-ui-adapter.js.map +1 -0
  391. package/dist/runtime/tool-gateway.d.ts +159 -0
  392. package/dist/runtime/tool-gateway.d.ts.map +1 -0
  393. package/dist/runtime/tool-gateway.js +311 -0
  394. package/dist/runtime/tool-gateway.js.map +1 -0
  395. package/dist/runtime/turn-commit.d.ts +103 -0
  396. package/dist/runtime/turn-commit.d.ts.map +1 -0
  397. package/dist/runtime/turn-commit.js +321 -0
  398. package/dist/runtime/turn-commit.js.map +1 -0
  399. package/dist/runtime/ui-events.d.ts +15 -5
  400. package/dist/runtime/ui-events.d.ts.map +1 -1
  401. package/dist/runtime/ui-events.js +0 -1
  402. package/dist/runtime/ui-events.js.map +1 -1
  403. package/dist/runtime/ui-view-model.d.ts +2 -1
  404. package/dist/runtime/ui-view-model.d.ts.map +1 -1
  405. package/dist/runtime/ui-view-model.js +6 -5
  406. package/dist/runtime/ui-view-model.js.map +1 -1
  407. package/dist/services/config-dir.d.ts +1 -1
  408. package/dist/services/config-dir.d.ts.map +1 -1
  409. package/dist/services/config-dir.js +2 -1
  410. package/dist/services/config-dir.js.map +1 -1
  411. package/dist/services/config.d.ts +2 -16
  412. package/dist/services/config.d.ts.map +1 -1
  413. package/dist/services/config.js +2 -29
  414. package/dist/services/config.js.map +1 -1
  415. package/dist/services/doctor.d.ts +0 -2
  416. package/dist/services/doctor.d.ts.map +1 -1
  417. package/dist/services/doctor.js +39 -64
  418. package/dist/services/doctor.js.map +1 -1
  419. package/dist/services/file-lock.d.ts.map +1 -1
  420. package/dist/services/file-lock.js +42 -17
  421. package/dist/services/file-lock.js.map +1 -1
  422. package/dist/services/global-config.d.ts +2 -2
  423. package/dist/services/global-config.d.ts.map +1 -1
  424. package/dist/services/session-storage.d.ts +8 -0
  425. package/dist/services/session-storage.d.ts.map +1 -1
  426. package/dist/services/session-storage.js +76 -12
  427. package/dist/services/session-storage.js.map +1 -1
  428. package/dist/skills/builtin/code-review/SKILL.md +51 -0
  429. package/dist/skills/builtin/security-check/SKILL.md +54 -0
  430. package/dist/skills/builtin/test-gen/SKILL.md +49 -0
  431. package/dist/terminal-ui/launch.d.ts +3 -1
  432. package/dist/terminal-ui/launch.d.ts.map +1 -1
  433. package/dist/terminal-ui/launch.js +21 -3
  434. package/dist/terminal-ui/launch.js.map +1 -1
  435. package/dist/tools/core/common.d.ts +34 -0
  436. package/dist/tools/core/common.d.ts.map +1 -0
  437. package/dist/tools/core/common.js +164 -0
  438. package/dist/tools/core/common.js.map +1 -0
  439. package/dist/tools/core/edit-file.d.ts +10 -0
  440. package/dist/tools/core/edit-file.d.ts.map +1 -0
  441. package/dist/tools/core/edit-file.js +301 -0
  442. package/dist/tools/core/edit-file.js.map +1 -0
  443. package/dist/tools/core/exec-command.d.ts +2 -0
  444. package/dist/tools/core/exec-command.d.ts.map +1 -0
  445. package/dist/tools/core/exec-command.js +347 -0
  446. package/dist/tools/core/exec-command.js.map +1 -0
  447. package/dist/tools/core/glob.d.ts +2 -0
  448. package/dist/tools/core/glob.d.ts.map +1 -0
  449. package/dist/tools/core/glob.js +133 -0
  450. package/dist/tools/core/glob.js.map +1 -0
  451. package/dist/tools/core/grep.d.ts +12 -0
  452. package/dist/tools/core/grep.d.ts.map +1 -0
  453. package/dist/tools/core/grep.js +223 -0
  454. package/dist/tools/core/grep.js.map +1 -0
  455. package/dist/tools/core/index.d.ts +15 -0
  456. package/dist/tools/core/index.d.ts.map +1 -0
  457. package/dist/tools/core/index.js +31 -0
  458. package/dist/tools/core/index.js.map +1 -0
  459. package/dist/tools/core/list-files.d.ts +2 -0
  460. package/dist/tools/core/list-files.d.ts.map +1 -0
  461. package/dist/tools/core/list-files.js +87 -0
  462. package/dist/tools/core/list-files.js.map +1 -0
  463. package/dist/tools/core/read-file.d.ts +2 -0
  464. package/dist/tools/core/read-file.d.ts.map +1 -0
  465. package/dist/tools/core/read-file.js +129 -0
  466. package/dist/tools/core/read-file.js.map +1 -0
  467. package/dist/tools/core/write-file.d.ts +2 -0
  468. package/dist/tools/core/write-file.d.ts.map +1 -0
  469. package/dist/tools/core/write-file.js +65 -0
  470. package/dist/tools/core/write-file.js.map +1 -0
  471. package/dist/tools/todo.d.ts +3 -4
  472. package/dist/tools/todo.d.ts.map +1 -1
  473. package/dist/tools/todo.js +80 -79
  474. package/dist/tools/todo.js.map +1 -1
  475. package/dist/tools/web.js +1 -1
  476. package/dist/tools/web.js.map +1 -1
  477. package/dist/tui-ui/chrome-view-model.d.ts.map +1 -1
  478. package/dist/tui-ui/chrome-view-model.js +22 -8
  479. package/dist/tui-ui/chrome-view-model.js.map +1 -1
  480. package/dist/tui-ui/launch.d.ts.map +1 -1
  481. package/dist/tui-ui/launch.js +13 -0
  482. package/dist/tui-ui/launch.js.map +1 -1
  483. package/dist/tui-ui/layout.js +1 -1
  484. package/dist/tui-ui/layout.js.map +1 -1
  485. package/dist/tui-ui/state.d.ts.map +1 -1
  486. package/dist/tui-ui/state.js +2 -0
  487. package/dist/tui-ui/state.js.map +1 -1
  488. package/docs/migration/v0.1.9-to-v0.2.0.md +98 -0
  489. package/docs/orion.example.json +79 -0
  490. package/docs/plan/v0.2.0-dsh-harness-redesign-plan.md +1234 -0
  491. package/docs/plan/v0.2.0-release-checklist.md +91 -0
  492. package/docs/readme.md +8 -8
  493. package/npm-shrinkwrap.json +45 -450
  494. package/package.json +17 -13
  495. package/dist/agents/coder.d.ts +0 -12
  496. package/dist/agents/coder.d.ts.map +0 -1
  497. package/dist/agents/coder.js +0 -48
  498. package/dist/agents/coder.js.map +0 -1
  499. package/dist/agents/coordinator.d.ts +0 -86
  500. package/dist/agents/coordinator.d.ts.map +0 -1
  501. package/dist/agents/coordinator.js +0 -291
  502. package/dist/agents/coordinator.js.map +0 -1
  503. package/dist/agents/fork.d.ts +0 -73
  504. package/dist/agents/fork.d.ts.map +0 -1
  505. package/dist/agents/fork.js +0 -163
  506. package/dist/agents/fork.js.map +0 -1
  507. package/dist/agents/leader.d.ts +0 -12
  508. package/dist/agents/leader.d.ts.map +0 -1
  509. package/dist/agents/leader.js +0 -49
  510. package/dist/agents/leader.js.map +0 -1
  511. package/dist/agents/router.d.ts +0 -59
  512. package/dist/agents/router.d.ts.map +0 -1
  513. package/dist/agents/router.js +0 -193
  514. package/dist/agents/router.js.map +0 -1
  515. package/dist/agents/worker-pool.d.ts +0 -72
  516. package/dist/agents/worker-pool.d.ts.map +0 -1
  517. package/dist/agents/worker-pool.js +0 -229
  518. package/dist/agents/worker-pool.js.map +0 -1
  519. package/dist/commands/legacy-commands.d.ts +0 -4
  520. package/dist/commands/legacy-commands.d.ts.map +0 -1
  521. package/dist/commands/legacy-commands.js +0 -44
  522. package/dist/commands/legacy-commands.js.map +0 -1
  523. package/dist/core/agent.d.ts +0 -84
  524. package/dist/core/agent.d.ts.map +0 -1
  525. package/dist/core/agent.js +0 -58
  526. package/dist/core/agent.js.map +0 -1
  527. package/dist/core/brain.d.ts +0 -50
  528. package/dist/core/brain.d.ts.map +0 -1
  529. package/dist/core/brain.js +0 -95
  530. package/dist/core/brain.js.map +0 -1
  531. package/dist/framework/tool-scheduler.d.ts +0 -191
  532. package/dist/framework/tool-scheduler.d.ts.map +0 -1
  533. package/dist/framework/tool-scheduler.js +0 -573
  534. package/dist/framework/tool-scheduler.js.map +0 -1
  535. package/dist/harness/harness.d.ts +0 -58
  536. package/dist/harness/harness.d.ts.map +0 -1
  537. package/dist/harness/harness.js +0 -195
  538. package/dist/harness/harness.js.map +0 -1
  539. package/dist/harness/safety.d.ts +0 -101
  540. package/dist/harness/safety.d.ts.map +0 -1
  541. package/dist/harness/safety.js +0 -322
  542. package/dist/harness/safety.js.map +0 -1
  543. package/dist/init.d.ts +0 -108
  544. package/dist/init.d.ts.map +0 -1
  545. package/dist/init.js +0 -393
  546. package/dist/init.js.map +0 -1
  547. package/dist/ink-ui/App.d.ts +0 -9
  548. package/dist/ink-ui/App.d.ts.map +0 -1
  549. package/dist/ink-ui/App.js +0 -12
  550. package/dist/ink-ui/App.js.map +0 -1
  551. package/dist/ink-ui/components/Markdown.d.ts +0 -10
  552. package/dist/ink-ui/components/Markdown.d.ts.map +0 -1
  553. package/dist/ink-ui/components/Markdown.js +0 -210
  554. package/dist/ink-ui/components/Markdown.js.map +0 -1
  555. package/dist/ink-ui/components/NativeCursor.d.ts +0 -12
  556. package/dist/ink-ui/components/NativeCursor.d.ts.map +0 -1
  557. package/dist/ink-ui/components/NativeCursor.js +0 -35
  558. package/dist/ink-ui/components/NativeCursor.js.map +0 -1
  559. package/dist/ink-ui/components/PixelHorseBanner.d.ts +0 -8
  560. package/dist/ink-ui/components/PixelHorseBanner.d.ts.map +0 -1
  561. package/dist/ink-ui/components/PixelHorseBanner.js +0 -97
  562. package/dist/ink-ui/components/PixelHorseBanner.js.map +0 -1
  563. package/dist/ink-ui/components/PromptInput.d.ts +0 -13
  564. package/dist/ink-ui/components/PromptInput.d.ts.map +0 -1
  565. package/dist/ink-ui/components/PromptInput.js +0 -30
  566. package/dist/ink-ui/components/PromptInput.js.map +0 -1
  567. package/dist/ink-ui/components/RunningHorseIndicator.d.ts +0 -13
  568. package/dist/ink-ui/components/RunningHorseIndicator.d.ts.map +0 -1
  569. package/dist/ink-ui/components/RunningHorseIndicator.js +0 -53
  570. package/dist/ink-ui/components/RunningHorseIndicator.js.map +0 -1
  571. package/dist/ink-ui/components/SelectList.d.ts +0 -16
  572. package/dist/ink-ui/components/SelectList.d.ts.map +0 -1
  573. package/dist/ink-ui/components/SelectList.js +0 -60
  574. package/dist/ink-ui/components/SelectList.js.map +0 -1
  575. package/dist/ink-ui/components/StatusLine.d.ts +0 -11
  576. package/dist/ink-ui/components/StatusLine.d.ts.map +0 -1
  577. package/dist/ink-ui/components/StatusLine.js +0 -70
  578. package/dist/ink-ui/components/StatusLine.js.map +0 -1
  579. package/dist/ink-ui/components/ToolActivity.d.ts +0 -19
  580. package/dist/ink-ui/components/ToolActivity.d.ts.map +0 -1
  581. package/dist/ink-ui/components/ToolActivity.js +0 -134
  582. package/dist/ink-ui/components/ToolActivity.js.map +0 -1
  583. package/dist/ink-ui/components/Transcript.d.ts +0 -14
  584. package/dist/ink-ui/components/Transcript.d.ts.map +0 -1
  585. package/dist/ink-ui/components/Transcript.js +0 -66
  586. package/dist/ink-ui/components/Transcript.js.map +0 -1
  587. package/dist/ink-ui/controllers/chat-controller.d.ts +0 -2
  588. package/dist/ink-ui/controllers/chat-controller.d.ts.map +0 -1
  589. package/dist/ink-ui/controllers/chat-controller.js.map +0 -1
  590. package/dist/ink-ui/hooks/use-raw-input-bridge.d.ts +0 -6
  591. package/dist/ink-ui/hooks/use-raw-input-bridge.d.ts.map +0 -1
  592. package/dist/ink-ui/hooks/use-raw-input-bridge.js +0 -27
  593. package/dist/ink-ui/hooks/use-raw-input-bridge.js.map +0 -1
  594. package/dist/ink-ui/hooks/use-terminal-size.d.ts +0 -7
  595. package/dist/ink-ui/hooks/use-terminal-size.d.ts.map +0 -1
  596. package/dist/ink-ui/hooks/use-terminal-size.js +0 -34
  597. package/dist/ink-ui/hooks/use-terminal-size.js.map +0 -1
  598. package/dist/ink-ui/launch.d.ts +0 -9
  599. package/dist/ink-ui/launch.d.ts.map +0 -1
  600. package/dist/ink-ui/launch.js +0 -101
  601. package/dist/ink-ui/launch.js.map +0 -1
  602. package/dist/ink-ui/runtime/grapheme.d.ts +0 -10
  603. package/dist/ink-ui/runtime/grapheme.d.ts.map +0 -1
  604. package/dist/ink-ui/runtime/grapheme.js +0 -17
  605. package/dist/ink-ui/runtime/grapheme.js.map +0 -1
  606. package/dist/ink-ui/runtime/input-buffer.d.ts +0 -10
  607. package/dist/ink-ui/runtime/input-buffer.d.ts.map +0 -1
  608. package/dist/ink-ui/runtime/input-buffer.js +0 -18
  609. package/dist/ink-ui/runtime/input-buffer.js.map +0 -1
  610. package/dist/ink-ui/runtime/layout-budget.d.ts +0 -13
  611. package/dist/ink-ui/runtime/layout-budget.d.ts.map +0 -1
  612. package/dist/ink-ui/runtime/layout-budget.js +0 -25
  613. package/dist/ink-ui/runtime/layout-budget.js.map +0 -1
  614. package/dist/ink-ui/runtime/native-cursor.d.ts +0 -62
  615. package/dist/ink-ui/runtime/native-cursor.d.ts.map +0 -1
  616. package/dist/ink-ui/runtime/native-cursor.js +0 -398
  617. package/dist/ink-ui/runtime/native-cursor.js.map +0 -1
  618. package/dist/ink-ui/runtime/prompt-layout.d.ts +0 -10
  619. package/dist/ink-ui/runtime/prompt-layout.d.ts.map +0 -1
  620. package/dist/ink-ui/runtime/prompt-layout.js +0 -21
  621. package/dist/ink-ui/runtime/prompt-layout.js.map +0 -1
  622. package/dist/ink-ui/runtime/raw-input.d.ts +0 -4
  623. package/dist/ink-ui/runtime/raw-input.d.ts.map +0 -1
  624. package/dist/ink-ui/runtime/raw-input.js +0 -15
  625. package/dist/ink-ui/runtime/raw-input.js.map +0 -1
  626. package/dist/ink-ui/runtime/transcript-state.d.ts +0 -37
  627. package/dist/ink-ui/runtime/transcript-state.d.ts.map +0 -1
  628. package/dist/ink-ui/runtime/transcript-state.js +0 -91
  629. package/dist/ink-ui/runtime/transcript-state.js.map +0 -1
  630. package/dist/ink-ui/screens/ReplScreen.d.ts +0 -27
  631. package/dist/ink-ui/screens/ReplScreen.d.ts.map +0 -1
  632. package/dist/ink-ui/screens/ReplScreen.js +0 -781
  633. package/dist/ink-ui/screens/ReplScreen.js.map +0 -1
  634. package/dist/ink-ui/types.d.ts +0 -2
  635. package/dist/ink-ui/types.d.ts.map +0 -1
  636. package/dist/ink-ui/types.js.map +0 -1
  637. package/dist/runtime/chat-checkpoint.d.ts +0 -17
  638. package/dist/runtime/chat-checkpoint.d.ts.map +0 -1
  639. package/dist/runtime/chat-checkpoint.js +0 -105
  640. package/dist/runtime/chat-checkpoint.js.map +0 -1
  641. package/dist/runtime/chat-command-scope.d.ts +0 -5
  642. package/dist/runtime/chat-command-scope.d.ts.map +0 -1
  643. package/dist/runtime/chat-command-scope.js +0 -22
  644. package/dist/runtime/chat-command-scope.js.map +0 -1
  645. package/dist/runtime/chat-compact.d.ts +0 -26
  646. package/dist/runtime/chat-compact.d.ts.map +0 -1
  647. package/dist/runtime/chat-compact.js +0 -132
  648. package/dist/runtime/chat-compact.js.map +0 -1
  649. package/dist/runtime/chat-controller.d.ts +0 -62
  650. package/dist/runtime/chat-controller.d.ts.map +0 -1
  651. package/dist/runtime/chat-controller.js +0 -1620
  652. package/dist/runtime/chat-controller.js.map +0 -1
  653. package/dist/runtime/chat-effort.d.ts +0 -5
  654. package/dist/runtime/chat-effort.d.ts.map +0 -1
  655. package/dist/runtime/chat-effort.js +0 -47
  656. package/dist/runtime/chat-effort.js.map +0 -1
  657. package/dist/runtime/chat-presentation.d.ts +0 -63
  658. package/dist/runtime/chat-presentation.d.ts.map +0 -1
  659. package/dist/runtime/chat-presentation.js +0 -561
  660. package/dist/runtime/chat-presentation.js.map +0 -1
  661. package/dist/runtime/chat-trace.d.ts +0 -52
  662. package/dist/runtime/chat-trace.d.ts.map +0 -1
  663. package/dist/runtime/chat-trace.js +0 -234
  664. package/dist/runtime/chat-trace.js.map +0 -1
  665. package/dist/runtime/chat-workspace.d.ts +0 -22
  666. package/dist/runtime/chat-workspace.d.ts.map +0 -1
  667. package/dist/runtime/chat-workspace.js +0 -154
  668. package/dist/runtime/chat-workspace.js.map +0 -1
  669. package/dist/runtime/goals/accounting.d.ts +0 -45
  670. package/dist/runtime/goals/accounting.d.ts.map +0 -1
  671. package/dist/runtime/goals/accounting.js +0 -114
  672. package/dist/runtime/goals/accounting.js.map +0 -1
  673. package/dist/runtime/goals/coordinator.d.ts +0 -92
  674. package/dist/runtime/goals/coordinator.d.ts.map +0 -1
  675. package/dist/runtime/goals/coordinator.js +0 -1471
  676. package/dist/runtime/goals/coordinator.js.map +0 -1
  677. package/dist/runtime/goals/lifecycle.d.ts +0 -13
  678. package/dist/runtime/goals/lifecycle.d.ts.map +0 -1
  679. package/dist/runtime/goals/lifecycle.js +0 -46
  680. package/dist/runtime/goals/lifecycle.js.map +0 -1
  681. package/dist/runtime/goals/prompt.d.ts +0 -16
  682. package/dist/runtime/goals/prompt.d.ts.map +0 -1
  683. package/dist/runtime/goals/prompt.js +0 -88
  684. package/dist/runtime/goals/prompt.js.map +0 -1
  685. package/dist/runtime/goals/stop-policy.d.ts +0 -9
  686. package/dist/runtime/goals/stop-policy.d.ts.map +0 -1
  687. package/dist/runtime/goals/stop-policy.js +0 -83
  688. package/dist/runtime/goals/stop-policy.js.map +0 -1
  689. package/dist/runtime/goals/tools.d.ts +0 -61
  690. package/dist/runtime/goals/tools.d.ts.map +0 -1
  691. package/dist/runtime/goals/tools.js +0 -568
  692. package/dist/runtime/goals/tools.js.map +0 -1
  693. package/dist/sdk/index.d.ts +0 -10
  694. package/dist/sdk/index.d.ts.map +0 -1
  695. package/dist/sdk/index.js +0 -23
  696. package/dist/sdk/index.js.map +0 -1
  697. package/dist/sdk/init.d.ts +0 -24
  698. package/dist/sdk/init.d.ts.map +0 -1
  699. package/dist/sdk/init.js +0 -48
  700. package/dist/sdk/init.js.map +0 -1
  701. package/dist/sdk/query.d.ts +0 -19
  702. package/dist/sdk/query.d.ts.map +0 -1
  703. package/dist/sdk/query.js +0 -42
  704. package/dist/sdk/query.js.map +0 -1
  705. package/dist/sdk/sessions.d.ts +0 -19
  706. package/dist/sdk/sessions.d.ts.map +0 -1
  707. package/dist/sdk/sessions.js +0 -57
  708. package/dist/sdk/sessions.js.map +0 -1
  709. package/dist/sdk/types.d.ts +0 -47
  710. package/dist/sdk/types.d.ts.map +0 -1
  711. package/dist/sdk/types.js +0 -8
  712. package/dist/sdk/types.js.map +0 -1
  713. package/dist/services/agent-runner.d.ts +0 -71
  714. package/dist/services/agent-runner.d.ts.map +0 -1
  715. package/dist/services/agent-runner.js +0 -185
  716. package/dist/services/agent-runner.js.map +0 -1
  717. package/dist/services/task-manager.d.ts +0 -161
  718. package/dist/services/task-manager.d.ts.map +0 -1
  719. package/dist/services/task-manager.js +0 -315
  720. package/dist/services/task-manager.js.map +0 -1
  721. package/dist/skills/discovery.d.ts +0 -22
  722. package/dist/skills/discovery.d.ts.map +0 -1
  723. package/dist/skills/discovery.js +0 -75
  724. package/dist/skills/discovery.js.map +0 -1
  725. package/dist/skills/index.d.ts +0 -11
  726. package/dist/skills/index.d.ts.map +0 -1
  727. package/dist/skills/index.js.map +0 -1
  728. package/dist/skills/loader.d.ts +0 -53
  729. package/dist/skills/loader.d.ts.map +0 -1
  730. package/dist/skills/loader.js +0 -421
  731. package/dist/skills/loader.js.map +0 -1
  732. package/dist/skills/registry.d.ts +0 -41
  733. package/dist/skills/registry.d.ts.map +0 -1
  734. package/dist/skills/registry.js +0 -157
  735. package/dist/skills/registry.js.map +0 -1
  736. package/dist/skills/runtime.d.ts +0 -46
  737. package/dist/skills/runtime.d.ts.map +0 -1
  738. package/dist/skills/runtime.js +0 -363
  739. package/dist/skills/runtime.js.map +0 -1
  740. package/dist/skills/types.d.ts +0 -112
  741. package/dist/skills/types.d.ts.map +0 -1
  742. package/dist/skills/types.js +0 -24
  743. package/dist/skills/types.js.map +0 -1
  744. package/dist/tools/index.d.ts +0 -52
  745. package/dist/tools/index.d.ts.map +0 -1
  746. package/dist/tools/index.js +0 -2268
  747. package/dist/tools/index.js.map +0 -1
  748. package/dist/tools/mcp.d.ts +0 -99
  749. package/dist/tools/mcp.d.ts.map +0 -1
  750. package/dist/tools/mcp.js +0 -695
  751. package/dist/tools/mcp.js.map +0 -1
  752. package/dist/tools/plan.d.ts +0 -17
  753. package/dist/tools/plan.d.ts.map +0 -1
  754. package/dist/tools/plan.js +0 -84
  755. package/dist/tools/plan.js.map +0 -1
  756. package/docs/migration/v0.1.8-to-v0.1.9.md +0 -60
  757. package/docs/plan/v0.1.9-release-checklist.md +0 -64
@@ -0,0 +1,111 @@
1
+ import { type StopDecision } from '../framework/stop-decision';
2
+ import type { AgentLoopTurnCommitV1 } from './agent-loop';
3
+ import { type GoalLifecycleBudgetV2, type GoalLifecycleStateV2 } from './goal-lifecycle-v2';
4
+ import type { ThreadTurnRequestV1 } from './thread-admission';
5
+ import type { TurnCommitV1 } from './turn-commit';
6
+ export interface GoalRuntimeDefinitionV2 {
7
+ readonly objective: string;
8
+ readonly budget: GoalLifecycleBudgetV2;
9
+ readonly goalId?: string;
10
+ readonly state?: GoalLifecycleStateV2;
11
+ }
12
+ export interface GoalRuntimeTombstoneV2 {
13
+ readonly version: 2;
14
+ readonly kind: 'goal_tombstone';
15
+ readonly goalId?: string;
16
+ readonly generation: number;
17
+ readonly clearedAt: number;
18
+ readonly reason: 'user_clear';
19
+ readonly digest: string;
20
+ }
21
+ export type GoalRuntimePersistedStateV2 = GoalLifecycleStateV2 | GoalRuntimeTombstoneV2;
22
+ export type GoalRuntimeControlV2 = {
23
+ readonly action: 'status';
24
+ } | {
25
+ readonly action: 'create';
26
+ readonly objective: string;
27
+ readonly budget?: GoalLifecycleBudgetV2;
28
+ } | {
29
+ readonly action: 'pause';
30
+ } | {
31
+ readonly action: 'resume';
32
+ } | {
33
+ readonly action: 'clear';
34
+ };
35
+ export interface GoalRuntimeControlResultV2 {
36
+ readonly accepted: boolean;
37
+ readonly action: GoalRuntimeControlV2['action'];
38
+ readonly message: string;
39
+ readonly state?: GoalLifecycleStateV2;
40
+ readonly tombstone?: GoalRuntimeTombstoneV2;
41
+ readonly scheduleContinuation: boolean;
42
+ }
43
+ export interface GoalRuntimeCoordinatorOptionsV2 {
44
+ readonly definition?: GoalRuntimeDefinitionV2;
45
+ readonly restoredCommit?: TurnCommitV1;
46
+ readonly clock?: () => number;
47
+ readonly continuationInput?: (state: GoalLifecycleStateV2) => string;
48
+ }
49
+ export interface GoalRuntimeCommitFieldsV2 {
50
+ readonly goalState?: GoalRuntimePersistedStateV2;
51
+ readonly stopDecision?: StopDecision;
52
+ }
53
+ export interface GoalRuntimeDurableReceiptV2 {
54
+ readonly turnId: string;
55
+ readonly terminal: TurnCommitV1['terminal'];
56
+ readonly goalStateDigest?: string;
57
+ readonly stopDecisionDigest?: string;
58
+ }
59
+ export interface GoalRuntimePersistenceViewV2 {
60
+ readonly state?: GoalLifecycleStateV2;
61
+ readonly tombstone?: GoalRuntimeTombstoneV2;
62
+ }
63
+ /** Validate and expose the Goal fact owned by an authoritative TurnCommit. */
64
+ export declare function readGoalRuntimePersistenceV2(commit: TurnCommitV1 | undefined): GoalRuntimePersistenceViewV2;
65
+ export type GoalRuntimePersistTurnV2 = (fields: GoalRuntimeCommitFieldsV2) => GoalRuntimeDurableReceiptV2;
66
+ /**
67
+ * Production owner that binds GoalLifecycleServiceV2 to the atomic TurnCommit boundary.
68
+ *
69
+ * Finalization is evaluated on a disposable lifecycle clone. The authoritative
70
+ * in-memory state advances only after the caller returns a digest-matching durable
71
+ * receipt, so a failed append can neither advance Goal state nor schedule work.
72
+ */
73
+ export declare class GoalRuntimeCoordinatorV2 {
74
+ readonly serviceId: "goal-runtime-v2";
75
+ private readonly clock;
76
+ private readonly continuationInput;
77
+ private lifecycle;
78
+ private tombstoneValue;
79
+ private readonly turnStartedAt;
80
+ private readonly pendingContinuations;
81
+ private restoredContinuationAvailable;
82
+ private closed;
83
+ constructor(options?: GoalRuntimeCoordinatorOptionsV2);
84
+ get state(): GoalLifecycleStateV2 | undefined;
85
+ get active(): boolean;
86
+ get tombstone(): GoalRuntimeTombstoneV2 | undefined;
87
+ create(definition: GoalRuntimeDefinitionV2): GoalLifecycleStateV2;
88
+ control(control: GoalRuntimeControlV2, turnId: string, persist?: GoalRuntimePersistTurnV2): GoalRuntimeControlResultV2;
89
+ resume(): GoalLifecycleStateV2 | undefined;
90
+ markTurnStarted(turnId: string, startedAt?: number): void;
91
+ /**
92
+ * Finalize Goal state and persist it with transcript/TaskContext in one TurnCommit.
93
+ * The persist callback must synchronously return the authoritative durable receipt.
94
+ */
95
+ commitTurn(turn: AgentLoopTurnCommitV1, persist: GoalRuntimePersistTurnV2): GoalRuntimeDurableReceiptV2;
96
+ /** Release an autonomous continuation only after ThreadRuntime commits the turn terminal. */
97
+ afterDurableTerminal(turnId: string, terminal: TurnCommitV1['terminal']): (ThreadTurnRequestV1 & {
98
+ readonly mode: 'goal';
99
+ readonly kind: 'goal';
100
+ }) | undefined;
101
+ /** One-shot recovery continuation for a previously terminal, active Goal commit. */
102
+ takeRestoredContinuation(): (ThreadTurnRequestV1 & {
103
+ readonly mode: 'goal';
104
+ readonly kind: 'goal';
105
+ }) | undefined;
106
+ close(): void;
107
+ private controlStatus;
108
+ private observeTurn;
109
+ private createContinuationRequest;
110
+ }
111
+ //# sourceMappingURL=goal-runtime-coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal-runtime-coordinator.d.ts","sourceRoot":"","sources":["../../src/runtime/goal-runtime-coordinator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,511 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GoalRuntimeCoordinatorV2 = void 0;
4
+ exports.readGoalRuntimePersistenceV2 = readGoalRuntimePersistenceV2;
5
+ const stop_decision_1 = require("../framework/stop-decision");
6
+ const goal_lifecycle_v2_1 = require("./goal-lifecycle-v2");
7
+ const canonical_1 = require("./protocol/canonical");
8
+ /** Validate and expose the Goal fact owned by an authoritative TurnCommit. */
9
+ function readGoalRuntimePersistenceV2(commit) {
10
+ return deepFreeze(structuredClone(parseGoalPersistence(commit)));
11
+ }
12
+ /**
13
+ * Production owner that binds GoalLifecycleServiceV2 to the atomic TurnCommit boundary.
14
+ *
15
+ * Finalization is evaluated on a disposable lifecycle clone. The authoritative
16
+ * in-memory state advances only after the caller returns a digest-matching durable
17
+ * receipt, so a failed append can neither advance Goal state nor schedule work.
18
+ */
19
+ class GoalRuntimeCoordinatorV2 {
20
+ constructor(options = {}) {
21
+ this.serviceId = 'goal-runtime-v2';
22
+ this.turnStartedAt = new Map();
23
+ this.pendingContinuations = new Map();
24
+ this.restoredContinuationAvailable = false;
25
+ this.closed = false;
26
+ this.clock = options.clock ?? Date.now;
27
+ this.continuationInput = options.continuationInput ?? defaultContinuationInput;
28
+ const restored = parseGoalPersistence(options.restoredCommit);
29
+ this.tombstoneValue = restored.tombstone;
30
+ const definition = restored.state
31
+ ? {
32
+ objective: restored.state.objective,
33
+ budget: restored.state.budget,
34
+ state: restored.state,
35
+ }
36
+ : restored.tombstone
37
+ ? undefined
38
+ : options.definition;
39
+ if (definition)
40
+ this.lifecycle = createLifecycle(definition, this.clock);
41
+ this.restoredContinuationAvailable = Boolean(restored.state?.status === 'active' && options.restoredCommit?.terminal === 'completed');
42
+ }
43
+ get state() {
44
+ return this.lifecycle?.state;
45
+ }
46
+ get active() {
47
+ return !this.closed && this.lifecycle?.state.status === 'active';
48
+ }
49
+ get tombstone() {
50
+ return this.tombstoneValue ? deepFreeze(structuredClone(this.tombstoneValue)) : undefined;
51
+ }
52
+ create(definition) {
53
+ if (this.closed)
54
+ throw new Error('Closed Goal runtime cannot create a Goal.');
55
+ if (this.lifecycle)
56
+ throw new Error('Goal runtime already owns a Goal.');
57
+ this.lifecycle = createLifecycle(definition, this.clock);
58
+ this.tombstoneValue = undefined;
59
+ this.restoredContinuationAvailable = false;
60
+ return this.lifecycle.state;
61
+ }
62
+ control(control, turnId, persist) {
63
+ if (this.closed)
64
+ throw new Error('Closed Goal runtime cannot accept Goal control.');
65
+ if (control.action === 'status')
66
+ return this.controlStatus();
67
+ if (!persist)
68
+ throw new Error(`Goal ${control.action} requires a durable TurnCommit callback.`);
69
+ const current = this.lifecycle?.state;
70
+ let candidate;
71
+ let tombstone = this.tombstoneValue;
72
+ let accepted = true;
73
+ let message;
74
+ let scheduleContinuation = false;
75
+ switch (control.action) {
76
+ case 'create': {
77
+ if (current) {
78
+ accepted = false;
79
+ candidate = createLifecycleFromState(current, this.clock);
80
+ message = 'A Goal already exists; clear it before creating another.';
81
+ break;
82
+ }
83
+ const objective = control.objective.trim();
84
+ if (!objective) {
85
+ accepted = false;
86
+ message = 'Goal objective must not be empty.';
87
+ break;
88
+ }
89
+ candidate = createLifecycle({
90
+ objective,
91
+ budget: control.budget ?? defaultGoalBudget(),
92
+ }, this.clock);
93
+ tombstone = undefined;
94
+ scheduleContinuation = true;
95
+ message = 'Goal created and scheduled from the durable control boundary.';
96
+ break;
97
+ }
98
+ case 'pause': {
99
+ if (!current) {
100
+ accepted = false;
101
+ message = 'No Goal exists to pause.';
102
+ break;
103
+ }
104
+ candidate = createLifecycleFromState(current, this.clock);
105
+ if (current.status === 'active')
106
+ candidate.pause('Goal paused by user control.');
107
+ else if (current.status !== 'paused')
108
+ accepted = false;
109
+ message = accepted ? 'Goal paused.' : `Goal cannot pause from ${current.status}.`;
110
+ break;
111
+ }
112
+ case 'resume': {
113
+ if (!current) {
114
+ accepted = false;
115
+ message = 'No Goal exists to resume.';
116
+ break;
117
+ }
118
+ candidate = createLifecycleFromState(current, this.clock);
119
+ if (current.status === 'paused')
120
+ candidate.resume();
121
+ else if (current.status !== 'active')
122
+ accepted = false;
123
+ scheduleContinuation = accepted && candidate.state.status === 'active';
124
+ message = accepted ? 'Goal resumed.' : `Goal cannot resume from ${current.status}.`;
125
+ break;
126
+ }
127
+ case 'clear': {
128
+ if (!current) {
129
+ accepted = false;
130
+ message = 'No Goal exists to clear.';
131
+ break;
132
+ }
133
+ tombstone = createGoalTombstone(current, this.clock());
134
+ message = 'Goal cleared at the durable control boundary.';
135
+ break;
136
+ }
137
+ }
138
+ const persisted = candidate?.state ?? tombstone;
139
+ const decision = controlDecision(control.action, accepted, message);
140
+ const receipt = persist({
141
+ ...(persisted ? { goalState: persisted } : {}),
142
+ stopDecision: decision,
143
+ });
144
+ assertControlReceipt(turnId, persisted, decision, receipt);
145
+ this.lifecycle = candidate;
146
+ this.tombstoneValue = tombstone;
147
+ this.restoredContinuationAvailable = false;
148
+ this.pendingContinuations.delete(turnId);
149
+ if (accepted && scheduleContinuation && candidate && receipt.terminal === 'completed') {
150
+ this.pendingContinuations.set(turnId, {
151
+ terminal: 'completed',
152
+ request: this.createContinuationRequest(candidate.state),
153
+ });
154
+ }
155
+ return deepFreeze({
156
+ accepted,
157
+ action: control.action,
158
+ message,
159
+ ...(candidate ? { state: candidate.state } : {}),
160
+ ...(tombstone ? { tombstone } : {}),
161
+ scheduleContinuation: accepted && scheduleContinuation,
162
+ });
163
+ }
164
+ resume() {
165
+ if (this.closed || !this.lifecycle)
166
+ return undefined;
167
+ this.restoredContinuationAvailable = false;
168
+ return this.lifecycle.resume();
169
+ }
170
+ markTurnStarted(turnId, startedAt = this.clock()) {
171
+ if (this.closed || !this.lifecycle)
172
+ return;
173
+ if (!Number.isSafeInteger(startedAt) || startedAt < 0)
174
+ return;
175
+ this.turnStartedAt.set(turnId, startedAt);
176
+ }
177
+ /**
178
+ * Finalize Goal state and persist it with transcript/TaskContext in one TurnCommit.
179
+ * The persist callback must synchronously return the authoritative durable receipt.
180
+ */
181
+ commitTurn(turn, persist) {
182
+ if (this.closed)
183
+ throw new Error('Closed Goal runtime cannot commit a turn.');
184
+ const requestDecision = requestDecisionForGoal(turn);
185
+ if (!this.lifecycle) {
186
+ const receipt = persist({
187
+ ...(this.tombstoneValue ? { goalState: this.tombstoneValue } : {}),
188
+ ...(requestDecision ? { stopDecision: requestDecision } : {}),
189
+ });
190
+ if (this.tombstoneValue) {
191
+ assertPersistedStateReceipt(this.tombstoneValue, requestDecision, receipt);
192
+ }
193
+ return receipt;
194
+ }
195
+ const current = this.lifecycle.state;
196
+ const candidate = new goal_lifecycle_v2_1.GoalLifecycleServiceV2({
197
+ objective: current.objective,
198
+ budget: current.budget,
199
+ state: current,
200
+ clock: this.clock,
201
+ });
202
+ const observation = this.observeTurn(turn, requestDecision);
203
+ const resolution = candidate.finalizeTurn(observation);
204
+ const stopDecision = resolution.decision ?? requestDecision;
205
+ const receipt = persist({
206
+ goalState: resolution.state,
207
+ ...(stopDecision ? { stopDecision } : {}),
208
+ });
209
+ assertDurableReceipt(turn.turnId, resolution.state, stopDecision, receipt);
210
+ // Install only after the durable receipt proves that the candidate state is
211
+ // part of the same TurnCommit as transcript and TaskContext.
212
+ this.lifecycle = new goal_lifecycle_v2_1.GoalLifecycleServiceV2({
213
+ objective: resolution.state.objective,
214
+ budget: resolution.state.budget,
215
+ state: resolution.state,
216
+ clock: this.clock,
217
+ });
218
+ this.tombstoneValue = undefined;
219
+ this.turnStartedAt.delete(turn.turnId);
220
+ this.restoredContinuationAvailable = false;
221
+ this.pendingContinuations.delete(turn.turnId);
222
+ if (resolution.scheduleContinuation && receipt.terminal === 'completed') {
223
+ this.pendingContinuations.set(turn.turnId, {
224
+ terminal: receipt.terminal,
225
+ request: this.createContinuationRequest(resolution.state),
226
+ });
227
+ }
228
+ return receipt;
229
+ }
230
+ /** Release an autonomous continuation only after ThreadRuntime commits the turn terminal. */
231
+ afterDurableTerminal(turnId, terminal) {
232
+ const pending = this.pendingContinuations.get(turnId);
233
+ this.pendingContinuations.delete(turnId);
234
+ if (this.closed || !pending || pending.terminal !== terminal || terminal !== 'completed') {
235
+ return undefined;
236
+ }
237
+ return pending.request;
238
+ }
239
+ /** One-shot recovery continuation for a previously terminal, active Goal commit. */
240
+ takeRestoredContinuation() {
241
+ if (!this.restoredContinuationAvailable || !this.active || !this.lifecycle)
242
+ return undefined;
243
+ this.restoredContinuationAvailable = false;
244
+ return this.createContinuationRequest(this.lifecycle.state);
245
+ }
246
+ close() {
247
+ this.closed = true;
248
+ this.restoredContinuationAvailable = false;
249
+ this.turnStartedAt.clear();
250
+ this.pendingContinuations.clear();
251
+ }
252
+ controlStatus() {
253
+ const state = this.lifecycle?.state;
254
+ if (state) {
255
+ return deepFreeze({
256
+ accepted: true,
257
+ action: 'status',
258
+ message: `Goal is ${state.status}.`,
259
+ state,
260
+ scheduleContinuation: false,
261
+ });
262
+ }
263
+ return deepFreeze({
264
+ accepted: true,
265
+ action: 'status',
266
+ message: this.tombstoneValue
267
+ ? 'No Goal exists; the previous Goal was cleared.'
268
+ : 'No Goal exists.',
269
+ ...(this.tombstoneValue ? { tombstone: this.tombstoneValue } : {}),
270
+ scheduleContinuation: false,
271
+ });
272
+ }
273
+ observeTurn(turn, requestDecision) {
274
+ const now = this.clock();
275
+ const startedAt = this.turnStartedAt.get(turn.turnId) ?? now;
276
+ const usage = turn.queryComplete.usage;
277
+ const subagentTokens = turn.queryComplete.stats?.subagentTotalTokens ?? 0;
278
+ const tokenDelta = usage
279
+ ? safeUsageTotal(usage.promptTokens, usage.completionTokens, subagentTokens)
280
+ : 0;
281
+ const failed = turn.queryComplete.stats?.finishReason === 'failed';
282
+ const aborted = turn.queryComplete.stats?.finishReason === 'cancelled';
283
+ const providerFailure = isProviderFailureDecision(requestDecision);
284
+ // A provider stream cancelled by explicit user control commonly has no
285
+ // terminal usage frame. That is an expected abort boundary, not corrupted
286
+ // accounting. Every non-cancelled Goal turn still fails closed when usage
287
+ // is absent, so autonomous work cannot continue on unknown cost.
288
+ const accountingFailure = usage || aborted
289
+ ? undefined
290
+ : 'Goal usage accounting is unavailable; autonomous continuation is stopped fail-closed.';
291
+ const runtimeFailure = failed && !providerFailure
292
+ ? turn.queryComplete.content || 'Goal turn failed before a complete durable observation.'
293
+ : undefined;
294
+ const blocked = requestDecision?.status === 'blocked' ? requestDecision.reason.message : undefined;
295
+ return {
296
+ ...(requestDecision ? { requestDecision } : {}),
297
+ ...(turn.taskContextCompletion ? { taskContextCompletion: turn.taskContextCompletion } : {}),
298
+ madeProgress: madeProgress(turn),
299
+ ...(blocked ? { blocked } : {}),
300
+ tokenDelta,
301
+ elapsedMs: Math.max(0, now - startedAt),
302
+ ...(accountingFailure || runtimeFailure
303
+ ? { persistenceFailure: accountingFailure ?? runtimeFailure }
304
+ : {}),
305
+ aborted,
306
+ };
307
+ }
308
+ createContinuationRequest(state) {
309
+ const input = this.continuationInput(state).trim();
310
+ if (!input)
311
+ throw new Error('Goal continuation input must not be empty.');
312
+ return Object.freeze({ input, mode: 'goal', kind: 'goal' });
313
+ }
314
+ }
315
+ exports.GoalRuntimeCoordinatorV2 = GoalRuntimeCoordinatorV2;
316
+ function createLifecycle(definition, clock) {
317
+ return new goal_lifecycle_v2_1.GoalLifecycleServiceV2({
318
+ objective: definition.objective,
319
+ budget: definition.budget,
320
+ ...(definition.goalId ? { goalId: definition.goalId } : {}),
321
+ ...(definition.state ? { state: definition.state } : {}),
322
+ clock,
323
+ });
324
+ }
325
+ function parseGoalPersistence(commit) {
326
+ if (!commit?.goalState)
327
+ return {};
328
+ let persisted;
329
+ try {
330
+ persisted = JSON.parse(commit.goalState);
331
+ }
332
+ catch {
333
+ throw new Error('Durable TurnCommit Goal state is not valid JSON.');
334
+ }
335
+ if ((0, canonical_1.digestRuntimeValue)(persisted) !== commit.goalStateDigest) {
336
+ throw new Error('Durable TurnCommit Goal state digest does not match its receipt.');
337
+ }
338
+ if (isGoalTombstone(persisted)) {
339
+ assertGoalTombstone(persisted);
340
+ return { tombstone: persisted };
341
+ }
342
+ if (typeof persisted !== 'object' || persisted === null) {
343
+ throw new Error('Durable TurnCommit Goal state has an invalid shape.');
344
+ }
345
+ const state = persisted;
346
+ (0, goal_lifecycle_v2_1.assertGoalLifecycleStateV2)(state);
347
+ return { state };
348
+ }
349
+ function requestDecisionForGoal(turn) {
350
+ const current = turn.queryComplete.stats?.stopDecision;
351
+ const stats = turn.queryComplete.stats;
352
+ const providerFailure = stats?.finishReason === 'failed' &&
353
+ ((stats.providerRetryErrorTypes?.length ?? 0) > 0 || Boolean(stats.providerLastRetryErrorType));
354
+ if (!providerFailure)
355
+ return current;
356
+ return (0, stop_decision_1.createStopDecision)({
357
+ scope: 'request',
358
+ status: 'failed',
359
+ disposition: 'pause_scope',
360
+ reason: {
361
+ code: `provider_${stats?.providerLastRetryErrorType ?? 'failure'}`,
362
+ message: turn.queryComplete.content || 'Provider failed during the Goal turn.',
363
+ },
364
+ evidence: [
365
+ {
366
+ kind: 'provider',
367
+ source: turn.queryComplete.model,
368
+ detail: (stats?.providerRetryErrorTypes ?? []).join(', ') || 'provider failure',
369
+ },
370
+ ],
371
+ nextActions: [{ kind: 'resume', label: 'Resume after provider recovery.' }],
372
+ resources: {
373
+ llmRequests: { used: stats?.llmRequests ?? 0 },
374
+ tokens: {
375
+ used: (turn.queryComplete.usage?.promptTokens ?? 0) +
376
+ (turn.queryComplete.usage?.completionTokens ?? 0),
377
+ },
378
+ },
379
+ });
380
+ }
381
+ function madeProgress(turn) {
382
+ const completionDelta = turn.taskContextCompletion?.progressDelta;
383
+ if (completionDelta)
384
+ return completionDelta.changed;
385
+ const stateDelta = turn.taskContextState.progressState?.lastDelta;
386
+ if (stateDelta)
387
+ return stateDelta.changed;
388
+ return turn.queryComplete.stats?.lastToolSuccess === true;
389
+ }
390
+ function isProviderFailureDecision(decision) {
391
+ return Boolean(decision &&
392
+ (decision.evidence.some(evidence => evidence.kind === 'provider') ||
393
+ /provider|network|auth|rate.?limit/iu.test(decision.reason.code)));
394
+ }
395
+ function safeUsageTotal(...values) {
396
+ let total = 0;
397
+ for (const value of values) {
398
+ if (!Number.isSafeInteger(value) || value < 0 || total > Number.MAX_SAFE_INTEGER - value) {
399
+ throw new Error('Goal usage accounting must contain non-negative safe integers.');
400
+ }
401
+ total += value;
402
+ }
403
+ return total;
404
+ }
405
+ function assertDurableReceipt(turnId, state, decision, receipt) {
406
+ if (receipt.turnId !== turnId)
407
+ throw new Error('Goal TurnCommit receipt has a different turnId.');
408
+ assertPersistedStateReceipt(state, decision, receipt);
409
+ }
410
+ function assertControlReceipt(turnId, persisted, decision, receipt) {
411
+ if (receipt.turnId !== turnId || receipt.terminal !== 'completed') {
412
+ throw new Error('Goal control did not produce its matching completed TurnCommit.');
413
+ }
414
+ if (persisted)
415
+ assertPersistedStateReceipt(persisted, decision, receipt);
416
+ else if (receipt.goalStateDigest !== undefined) {
417
+ throw new Error('Rejected Goal control unexpectedly persisted Goal state.');
418
+ }
419
+ else if (receipt.stopDecisionDigest !== (0, canonical_1.digestRuntimeValue)(decision)) {
420
+ throw new Error('Goal control did not durably bind its StopDecision.');
421
+ }
422
+ }
423
+ function assertPersistedStateReceipt(persisted, decision, receipt) {
424
+ if (receipt.goalStateDigest !== (0, canonical_1.digestRuntimeValue)(persisted)) {
425
+ throw new Error('Goal TurnCommit receipt did not durably bind the finalized Goal state.');
426
+ }
427
+ const expectedDecisionDigest = decision ? (0, canonical_1.digestRuntimeValue)(decision) : undefined;
428
+ if (receipt.stopDecisionDigest !== expectedDecisionDigest) {
429
+ throw new Error('Goal TurnCommit receipt did not durably bind the selected StopDecision.');
430
+ }
431
+ }
432
+ function createLifecycleFromState(state, clock) {
433
+ return new goal_lifecycle_v2_1.GoalLifecycleServiceV2({
434
+ objective: state.objective,
435
+ budget: state.budget,
436
+ state,
437
+ clock,
438
+ });
439
+ }
440
+ function defaultGoalBudget() {
441
+ return {
442
+ maxTokens: Number.MAX_SAFE_INTEGER,
443
+ maxElapsedMs: Number.MAX_SAFE_INTEGER,
444
+ };
445
+ }
446
+ function createGoalTombstone(state, clearedAt) {
447
+ const content = {
448
+ version: 2,
449
+ kind: 'goal_tombstone',
450
+ goalId: state.goalId,
451
+ generation: state.generation + 1,
452
+ clearedAt,
453
+ reason: 'user_clear',
454
+ };
455
+ return deepFreeze({ ...content, digest: (0, canonical_1.digestRuntimeValue)(content) });
456
+ }
457
+ function isGoalTombstone(persisted) {
458
+ return (typeof persisted === 'object' &&
459
+ persisted !== null &&
460
+ 'kind' in persisted &&
461
+ persisted.kind === 'goal_tombstone');
462
+ }
463
+ function assertGoalTombstone(tombstone) {
464
+ const { digest, ...content } = tombstone;
465
+ if (tombstone.version !== 2 ||
466
+ tombstone.kind !== 'goal_tombstone' ||
467
+ !Number.isSafeInteger(tombstone.generation) ||
468
+ tombstone.generation <= 0 ||
469
+ !Number.isSafeInteger(tombstone.clearedAt) ||
470
+ tombstone.clearedAt < 0 ||
471
+ (0, canonical_1.digestRuntimeValue)(content) !== digest) {
472
+ throw new Error('GoalRuntimeTombstoneV2 failed integrity validation.');
473
+ }
474
+ }
475
+ function controlDecision(action, accepted, message) {
476
+ const status = !accepted
477
+ ? 'failed'
478
+ : action === 'pause'
479
+ ? 'stopped'
480
+ : action === 'clear'
481
+ ? 'cancelled'
482
+ : 'completed';
483
+ return (0, stop_decision_1.createStopDecision)({
484
+ scope: action === 'pause' || action === 'clear' ? 'goal' : 'request',
485
+ status,
486
+ disposition: action === 'pause' ? 'pause_scope' : 'finish_scope',
487
+ reason: { code: accepted ? `goal_${action}` : `goal_${action}_rejected`, message },
488
+ evidence: [{ kind: 'runtime', source: 'goal-runtime-v2', detail: message }],
489
+ nextActions: action === 'pause' && accepted
490
+ ? [{ kind: 'resume', label: 'Resume the Goal with /goal resume.' }]
491
+ : [],
492
+ resources: {},
493
+ });
494
+ }
495
+ function defaultContinuationInput(state) {
496
+ const objective = state.objective.slice(0, 8192);
497
+ return [
498
+ 'Continue the active Goal autonomously from the latest durable TaskContext and receipts.',
499
+ `Goal objective: ${objective}`,
500
+ 'Do not claim completion unless the TaskContext completion gate verifies every criterion.',
501
+ ].join('\n');
502
+ }
503
+ function deepFreeze(value) {
504
+ if (typeof value !== 'object' || value === null || Object.isFrozen(value))
505
+ return value;
506
+ Object.freeze(value);
507
+ for (const entry of Object.values(value))
508
+ deepFreeze(entry);
509
+ return value;
510
+ }
511
+ //# sourceMappingURL=goal-runtime-coordinator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal-runtime-coordinator.js","sourceRoot":"","sources":["../../src/runtime/goal-runtime-coordinator.ts"],"names":[],"mappings":"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"}