@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,110 @@
1
+ export declare const RELEASE_RECEIPT_VERSION_V1: 1;
2
+ export declare const SUPPORTED_RELEASE_NODE_MAJORS_V1: readonly [20, 22, 24];
3
+ export declare const SUPPORTED_RELEASE_VERSION_LINE_V1: "0.2.x";
4
+ export type ReleaseGateDecisionV1 = 'GO' | 'NO_GO';
5
+ export interface TarballArtifactReceiptV1 {
6
+ readonly version: typeof RELEASE_RECEIPT_VERSION_V1;
7
+ readonly kind: 'orion.tarball-artifact';
8
+ readonly createdAt: string;
9
+ readonly source: {
10
+ readonly gitSha: string;
11
+ readonly dirty: boolean;
12
+ };
13
+ readonly package: {
14
+ readonly name: string;
15
+ readonly version: string;
16
+ };
17
+ readonly tarball: {
18
+ readonly filename: string;
19
+ readonly sha256: string;
20
+ readonly npmIntegrity: string;
21
+ readonly bytes: number;
22
+ readonly unpackedBytes: number;
23
+ readonly entryCount: number;
24
+ readonly manifestDigest: string;
25
+ };
26
+ readonly receiptDigest: string;
27
+ }
28
+ export type RuntimeMatrixProbeIdV1 = 'clean_install' | 'package_identity' | 'version' | 'help' | 'public_exports' | 'builtin_skill_assets' | 'native_sqlite' | 'tui_journey' | 'terminal_journey' | 'print_journey' | 'goal_journey' | 'subagent_journey' | 'skill_journey' | 'mcp_journey' | 'compact_resume_journey';
29
+ export interface RuntimeMatrixProbeV1 {
30
+ readonly id: RuntimeMatrixProbeIdV1;
31
+ readonly status: 'pass' | 'fail';
32
+ readonly detail: string;
33
+ readonly durationMs: number;
34
+ readonly runnerDigest: string;
35
+ readonly targetDigest: string;
36
+ }
37
+ export interface RuntimeMatrixReceiptV1 {
38
+ readonly version: typeof RELEASE_RECEIPT_VERSION_V1;
39
+ readonly kind: 'orion.runtime-matrix';
40
+ readonly createdAt: string;
41
+ readonly artifactReceiptDigest: string;
42
+ readonly tarballSha256: string;
43
+ readonly package: TarballArtifactReceiptV1['package'];
44
+ readonly environment: {
45
+ readonly node: string;
46
+ readonly nodeMajor: number;
47
+ readonly npm: string;
48
+ readonly platform: NodeJS.Platform;
49
+ readonly arch: string;
50
+ };
51
+ readonly probes: readonly RuntimeMatrixProbeV1[];
52
+ readonly decision: ReleaseGateDecisionV1;
53
+ readonly receiptDigest: string;
54
+ }
55
+ export interface HarnessReleaseEvidenceV1 {
56
+ readonly benchmarkComparisonDigest: string;
57
+ readonly benchmarkOk: boolean;
58
+ readonly taskEvalComparisonDigest: string;
59
+ readonly taskEvalDecision: ReleaseGateDecisionV1;
60
+ readonly architectureConfluenceDigest: string;
61
+ readonly architectureDecision: ReleaseGateDecisionV1;
62
+ readonly fullTestDigest: string;
63
+ readonly fullTestsPassed: boolean;
64
+ }
65
+ export interface GateEvidenceReceiptV1 {
66
+ readonly version: typeof RELEASE_RECEIPT_VERSION_V1;
67
+ readonly kind: 'orion.gate-evidence';
68
+ readonly createdAt: string;
69
+ readonly gateId: string;
70
+ readonly source: {
71
+ readonly gitSha: string;
72
+ readonly packageVersion: string;
73
+ };
74
+ readonly commandDigest: string;
75
+ readonly outputDigest: string;
76
+ readonly durationMs: number;
77
+ readonly status: 'pass' | 'fail';
78
+ readonly receiptDigest: string;
79
+ }
80
+ export interface ReleaseReceiptV1 {
81
+ readonly version: typeof RELEASE_RECEIPT_VERSION_V1;
82
+ readonly kind: 'orion.release';
83
+ readonly createdAt: string;
84
+ readonly artifact: TarballArtifactReceiptV1;
85
+ readonly runtimeMatrix: readonly RuntimeMatrixReceiptV1[];
86
+ readonly evidence: HarnessReleaseEvidenceV1;
87
+ readonly checks: readonly {
88
+ readonly id: string;
89
+ readonly status: 'pass' | 'fail';
90
+ readonly detail: string;
91
+ }[];
92
+ readonly decision: ReleaseGateDecisionV1;
93
+ readonly receiptDigest: string;
94
+ }
95
+ type UnsignedArtifactReceiptV1 = Omit<TarballArtifactReceiptV1, 'receiptDigest'>;
96
+ type UnsignedRuntimeMatrixReceiptV1 = Omit<RuntimeMatrixReceiptV1, 'receiptDigest' | 'decision'>;
97
+ export declare function createTarballArtifactReceiptV1(input: UnsignedArtifactReceiptV1): TarballArtifactReceiptV1;
98
+ export declare function verifyTarballArtifactReceiptV1(value: unknown): TarballArtifactReceiptV1;
99
+ export declare function createRuntimeMatrixReceiptV1(input: UnsignedRuntimeMatrixReceiptV1): RuntimeMatrixReceiptV1;
100
+ export declare function verifyRuntimeMatrixReceiptV1(value: unknown): RuntimeMatrixReceiptV1;
101
+ export declare function createReleaseReceiptV1(input: {
102
+ readonly createdAt: string;
103
+ readonly artifact: TarballArtifactReceiptV1;
104
+ readonly runtimeMatrix: readonly RuntimeMatrixReceiptV1[];
105
+ readonly evidence: HarnessReleaseEvidenceV1;
106
+ }): ReleaseReceiptV1;
107
+ export declare function createGateEvidenceReceiptV1(input: Omit<GateEvidenceReceiptV1, 'receiptDigest'>): GateEvidenceReceiptV1;
108
+ export declare function verifyGateEvidenceReceiptV1(value: unknown): GateEvidenceReceiptV1;
109
+ export {};
110
+ //# sourceMappingURL=release-receipts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-receipts.d.ts","sourceRoot":"","sources":["../../src/runtime/release-receipts.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,EAAG,CAAU,CAAC;AACrD,eAAO,MAAM,gCAAgC,uBAAuC,CAAC;AACrF,eAAO,MAAM,iCAAiC,EAAG,OAAgB,CAAC;AAElE,MAAM,MAAM,qBAAqB,GAAG,IAAI,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,0BAA0B,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;KACzB,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;KACjC,CAAC;IACF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,sBAAsB,GAC9B,eAAe,GACf,kBAAkB,GAClB,SAAS,GACT,MAAM,GACN,gBAAgB,GAChB,sBAAsB,GACtB,eAAe,GACf,aAAa,GACb,kBAAkB,GAClB,eAAe,GACf,cAAc,GACd,kBAAkB,GAClB,eAAe,GACf,aAAa,GACb,wBAAwB,CAAC;AAE7B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,sBAAsB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,0BAA0B,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACtD,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;QACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACjD,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACjD,QAAQ,CAAC,4BAA4B,EAAE,MAAM,CAAC;IAC9C,QAAQ,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IACrD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,0BAA0B,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;KACjC,CAAC;IACF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,0BAA0B,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC1D,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;IACJ,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,KAAK,yBAAyB,GAAG,IAAI,CAAC,wBAAwB,EAAE,eAAe,CAAC,CAAC;AACjF,KAAK,8BAA8B,GAAG,IAAI,CAAC,sBAAsB,EAAE,eAAe,GAAG,UAAU,CAAC,CAAC;AAEjG,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,yBAAyB,GAC/B,wBAAwB,CAc1B;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,wBAAwB,CAiBvF;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,8BAA8B,GACpC,sBAAsB,CAmDxB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAmBnF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC1D,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;CAC7C,GAAG,gBAAgB,CAsInB;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,eAAe,CAAC,GAClD,qBAAqB,CAevB;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAoBjF"}
@@ -0,0 +1,305 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SUPPORTED_RELEASE_VERSION_LINE_V1 = exports.SUPPORTED_RELEASE_NODE_MAJORS_V1 = exports.RELEASE_RECEIPT_VERSION_V1 = void 0;
4
+ exports.createTarballArtifactReceiptV1 = createTarballArtifactReceiptV1;
5
+ exports.verifyTarballArtifactReceiptV1 = verifyTarballArtifactReceiptV1;
6
+ exports.createRuntimeMatrixReceiptV1 = createRuntimeMatrixReceiptV1;
7
+ exports.verifyRuntimeMatrixReceiptV1 = verifyRuntimeMatrixReceiptV1;
8
+ exports.createReleaseReceiptV1 = createReleaseReceiptV1;
9
+ exports.createGateEvidenceReceiptV1 = createGateEvidenceReceiptV1;
10
+ exports.verifyGateEvidenceReceiptV1 = verifyGateEvidenceReceiptV1;
11
+ const canonical_1 = require("./protocol/canonical");
12
+ exports.RELEASE_RECEIPT_VERSION_V1 = 1;
13
+ exports.SUPPORTED_RELEASE_NODE_MAJORS_V1 = Object.freeze([20, 22, 24]);
14
+ exports.SUPPORTED_RELEASE_VERSION_LINE_V1 = '0.2.x';
15
+ function createTarballArtifactReceiptV1(input) {
16
+ assertIsoTimestamp(input.createdAt, 'artifact createdAt');
17
+ assertHexDigest(input.source.gitSha, 'source gitSha', 40, 64);
18
+ assertNonEmpty(input.package.name, 'package name');
19
+ assertNonEmpty(input.package.version, 'package version');
20
+ assertNonEmpty(input.tarball.filename, 'tarball filename');
21
+ assertHexDigest(input.tarball.sha256, 'tarball sha256', 64, 64);
22
+ assertNonEmpty(input.tarball.npmIntegrity, 'tarball npm integrity');
23
+ assertPositiveInteger(input.tarball.bytes, 'tarball bytes');
24
+ assertPositiveInteger(input.tarball.unpackedBytes, 'tarball unpacked bytes');
25
+ assertPositiveInteger(input.tarball.entryCount, 'tarball entry count');
26
+ assertHexDigest(input.tarball.manifestDigest, 'tarball manifest digest', 64, 64);
27
+ const content = deepFreeze({ ...input });
28
+ return deepFreeze({ ...content, receiptDigest: (0, canonical_1.digestRuntimeValue)(content) });
29
+ }
30
+ function verifyTarballArtifactReceiptV1(value) {
31
+ const receipt = value;
32
+ if (!receipt || receipt.version !== 1 || receipt.kind !== 'orion.tarball-artifact') {
33
+ throw new Error('Invalid TarballArtifactReceiptV1 envelope.');
34
+ }
35
+ const expected = createTarballArtifactReceiptV1({
36
+ version: receipt.version,
37
+ kind: receipt.kind,
38
+ createdAt: receipt.createdAt,
39
+ source: receipt.source,
40
+ package: receipt.package,
41
+ tarball: receipt.tarball,
42
+ });
43
+ if (expected.receiptDigest !== receipt.receiptDigest) {
44
+ throw new Error('Tarball artifact receipt digest mismatch.');
45
+ }
46
+ return expected;
47
+ }
48
+ function createRuntimeMatrixReceiptV1(input) {
49
+ assertIsoTimestamp(input.createdAt, 'runtime receipt createdAt');
50
+ assertHexDigest(input.artifactReceiptDigest, 'artifact receipt digest', 64, 64);
51
+ assertHexDigest(input.tarballSha256, 'runtime tarball sha256', 64, 64);
52
+ assertNonEmpty(input.package.name, 'runtime package name');
53
+ assertNonEmpty(input.package.version, 'runtime package version');
54
+ assertNonEmpty(input.environment.node, 'Node version');
55
+ assertNonEmpty(input.environment.npm, 'npm version');
56
+ if (!exports.SUPPORTED_RELEASE_NODE_MAJORS_V1.includes(input.environment.nodeMajor)) {
57
+ throw new Error(`Unsupported release Node major ${input.environment.nodeMajor}.`);
58
+ }
59
+ const expectedProbeIds = [
60
+ 'clean_install',
61
+ 'package_identity',
62
+ 'version',
63
+ 'help',
64
+ 'public_exports',
65
+ 'builtin_skill_assets',
66
+ 'native_sqlite',
67
+ 'tui_journey',
68
+ 'terminal_journey',
69
+ 'print_journey',
70
+ 'goal_journey',
71
+ 'subagent_journey',
72
+ 'skill_journey',
73
+ 'mcp_journey',
74
+ 'compact_resume_journey',
75
+ ];
76
+ const observedIds = input.probes.map(probe => probe.id);
77
+ if (observedIds.length !== expectedProbeIds.length ||
78
+ expectedProbeIds.some((id, index) => observedIds[index] !== id)) {
79
+ throw new Error(`Runtime probes must be complete and ordered: ${expectedProbeIds.join(', ')}.`);
80
+ }
81
+ for (const probe of input.probes) {
82
+ if (probe.status !== 'pass' && probe.status !== 'fail') {
83
+ throw new Error(`Runtime probe ${probe.id} has an invalid status.`);
84
+ }
85
+ assertNonEmpty(probe.detail, `runtime probe ${probe.id} detail`);
86
+ if (!Number.isFinite(probe.durationMs) || probe.durationMs < 0) {
87
+ throw new Error(`Runtime probe ${probe.id} duration must be finite and non-negative.`);
88
+ }
89
+ assertHexDigest(probe.runnerDigest, `runtime probe ${probe.id} runner digest`, 64, 64);
90
+ assertHexDigest(probe.targetDigest, `runtime probe ${probe.id} target digest`, 64, 64);
91
+ }
92
+ const decision = input.probes.every(probe => probe.status === 'pass')
93
+ ? 'GO'
94
+ : 'NO_GO';
95
+ const content = deepFreeze({ ...input, decision });
96
+ return deepFreeze({ ...content, receiptDigest: (0, canonical_1.digestRuntimeValue)(content) });
97
+ }
98
+ function verifyRuntimeMatrixReceiptV1(value) {
99
+ const receipt = value;
100
+ if (!receipt || receipt.version !== 1 || receipt.kind !== 'orion.runtime-matrix') {
101
+ throw new Error('Invalid RuntimeMatrixReceiptV1 envelope.');
102
+ }
103
+ const expected = createRuntimeMatrixReceiptV1({
104
+ version: receipt.version,
105
+ kind: receipt.kind,
106
+ createdAt: receipt.createdAt,
107
+ artifactReceiptDigest: receipt.artifactReceiptDigest,
108
+ tarballSha256: receipt.tarballSha256,
109
+ package: receipt.package,
110
+ environment: receipt.environment,
111
+ probes: receipt.probes,
112
+ });
113
+ if (expected.decision !== receipt.decision || expected.receiptDigest !== receipt.receiptDigest) {
114
+ throw new Error('Runtime matrix receipt decision or digest mismatch.');
115
+ }
116
+ return expected;
117
+ }
118
+ function createReleaseReceiptV1(input) {
119
+ assertIsoTimestamp(input.createdAt, 'release receipt createdAt');
120
+ assertHexDigest(input.evidence.benchmarkComparisonDigest, 'benchmark comparison digest', 64, 64);
121
+ assertHexDigest(input.evidence.taskEvalComparisonDigest, 'task eval comparison digest', 64, 64);
122
+ assertHexDigest(input.evidence.architectureConfluenceDigest, 'architecture confluence digest', 64, 64);
123
+ assertHexDigest(input.evidence.fullTestDigest, 'full test digest', 64, 64);
124
+ if (!['GO', 'NO_GO'].includes(input.evidence.taskEvalDecision)) {
125
+ throw new Error('Task evaluation decision must be GO or NO_GO.');
126
+ }
127
+ if (!['GO', 'NO_GO'].includes(input.evidence.architectureDecision)) {
128
+ throw new Error('Architecture decision must be GO or NO_GO.');
129
+ }
130
+ const artifact = verifyTarballArtifactReceiptV1(input.artifact);
131
+ const runtimeMatrix = input.runtimeMatrix
132
+ .map(verifyRuntimeMatrixReceiptV1)
133
+ .sort((left, right) => left.environment.nodeMajor - right.environment.nodeMajor);
134
+ const checks = [];
135
+ const expectedMajors = [...exports.SUPPORTED_RELEASE_NODE_MAJORS_V1];
136
+ const observedMajors = runtimeMatrix.map(receipt => receipt.environment.nodeMajor);
137
+ checks.push({
138
+ id: 'source_clean',
139
+ status: artifact.source.dirty ? 'fail' : 'pass',
140
+ detail: artifact.source.dirty ? 'release artifact was built from a dirty tree' : 'clean source',
141
+ });
142
+ checks.push({
143
+ id: 'release_version',
144
+ status: /^0\.2\.(0|[1-9]\d*)$/.test(artifact.package.version) ? 'pass' : 'fail',
145
+ detail: `expected=${exports.SUPPORTED_RELEASE_VERSION_LINE_V1} observed=${artifact.package.version}`,
146
+ });
147
+ checks.push({
148
+ id: 'runtime_matrix_complete',
149
+ status: observedMajors.length === expectedMajors.length &&
150
+ expectedMajors.every((major, index) => observedMajors[index] === major)
151
+ ? 'pass'
152
+ : 'fail',
153
+ detail: `expected=${expectedMajors.join(',')} observed=${observedMajors.join(',') || 'none'}`,
154
+ });
155
+ const artifactBindingOk = runtimeMatrix.every(receipt => receipt.artifactReceiptDigest === artifact.receiptDigest &&
156
+ receipt.tarballSha256 === artifact.tarball.sha256 &&
157
+ receipt.package.name === artifact.package.name &&
158
+ receipt.package.version === artifact.package.version);
159
+ checks.push({
160
+ id: 'task_eval',
161
+ status: input.evidence.taskEvalDecision === 'GO' ? 'pass' : 'fail',
162
+ detail: input.evidence.taskEvalComparisonDigest,
163
+ });
164
+ checks.push({
165
+ id: 'single_exact_tarball',
166
+ status: artifactBindingOk ? 'pass' : 'fail',
167
+ detail: artifactBindingOk
168
+ ? `all runtimes verified sha256=${artifact.tarball.sha256}`
169
+ : 'one or more runtime receipts are not bound to the exact release artifact',
170
+ });
171
+ checks.push({
172
+ id: 'runtime_probes',
173
+ status: runtimeMatrix.every(receipt => receipt.decision === 'GO') ? 'pass' : 'fail',
174
+ detail: runtimeMatrix
175
+ .map(receipt => `node${receipt.environment.nodeMajor}=${receipt.decision}`)
176
+ .join(' '),
177
+ });
178
+ const probeIds = runtimeMatrix[0]?.probes.map(probe => probe.id) ?? [];
179
+ const mismatchedProbeIdentities = probeIds.filter(id => {
180
+ const matching = runtimeMatrix
181
+ .map(receipt => receipt.probes.find(probe => probe.id === id))
182
+ .filter((probe) => probe !== undefined);
183
+ return (matching.length !== runtimeMatrix.length ||
184
+ new Set(matching.map(probe => probe.runnerDigest)).size !== 1 ||
185
+ new Set(matching.map(probe => probe.targetDigest)).size !== 1);
186
+ });
187
+ checks.push({
188
+ id: 'runtime_probe_identity',
189
+ status: mismatchedProbeIdentities.length === 0 ? 'pass' : 'fail',
190
+ detail: mismatchedProbeIdentities.length === 0
191
+ ? 'all Node runtimes used identical probe runners and installed targets'
192
+ : `runner/target digest mismatch: ${mismatchedProbeIdentities.join(', ')}`,
193
+ });
194
+ checks.push({
195
+ id: 'harness_benchmark',
196
+ status: input.evidence.benchmarkOk ? 'pass' : 'fail',
197
+ detail: input.evidence.benchmarkComparisonDigest,
198
+ });
199
+ checks.push({
200
+ id: 'architecture_confluence',
201
+ status: input.evidence.architectureDecision === 'GO' ? 'pass' : 'fail',
202
+ detail: input.evidence.architectureConfluenceDigest,
203
+ });
204
+ checks.push({
205
+ id: 'full_tests',
206
+ status: input.evidence.fullTestsPassed ? 'pass' : 'fail',
207
+ detail: input.evidence.fullTestDigest,
208
+ });
209
+ const ptyProbeIds = [
210
+ 'tui_journey',
211
+ 'terminal_journey',
212
+ 'print_journey',
213
+ 'goal_journey',
214
+ 'subagent_journey',
215
+ ];
216
+ const ptyJourneysPassed = runtimeMatrix.every(receipt => ptyProbeIds.every(id => receipt.probes.find(probe => probe.id === id)?.status === 'pass'));
217
+ checks.push({
218
+ id: 'pty_journeys',
219
+ status: ptyJourneysPassed ? 'pass' : 'fail',
220
+ detail: ptyJourneysPassed
221
+ ? `installed journeys passed on Node ${observedMajors.join(',')}`
222
+ : 'one or more installed renderer/Goal/subagent journeys failed or are missing',
223
+ });
224
+ const decision = checks.every(check => check.status === 'pass')
225
+ ? 'GO'
226
+ : 'NO_GO';
227
+ const content = deepFreeze({
228
+ version: exports.RELEASE_RECEIPT_VERSION_V1,
229
+ kind: 'orion.release',
230
+ createdAt: input.createdAt,
231
+ artifact,
232
+ runtimeMatrix,
233
+ evidence: deepFreeze({ ...input.evidence }),
234
+ checks: deepFreeze(checks),
235
+ decision,
236
+ });
237
+ return deepFreeze({ ...content, receiptDigest: (0, canonical_1.digestRuntimeValue)(content) });
238
+ }
239
+ function createGateEvidenceReceiptV1(input) {
240
+ assertIsoTimestamp(input.createdAt, 'gate evidence createdAt');
241
+ assertNonEmpty(input.gateId, 'gate evidence id');
242
+ assertHexDigest(input.source.gitSha, 'gate evidence gitSha', 40, 64);
243
+ assertNonEmpty(input.source.packageVersion, 'gate evidence package version');
244
+ assertHexDigest(input.commandDigest, 'gate evidence command digest', 64, 64);
245
+ assertHexDigest(input.outputDigest, 'gate evidence output digest', 64, 64);
246
+ if (!Number.isFinite(input.durationMs) || input.durationMs < 0) {
247
+ throw new Error('Gate evidence duration must be finite and non-negative.');
248
+ }
249
+ if (input.status !== 'pass' && input.status !== 'fail') {
250
+ throw new Error('Gate evidence status must be pass or fail.');
251
+ }
252
+ const content = deepFreeze({ ...input });
253
+ return deepFreeze({ ...content, receiptDigest: (0, canonical_1.digestRuntimeValue)(content) });
254
+ }
255
+ function verifyGateEvidenceReceiptV1(value) {
256
+ const receipt = value;
257
+ if (!receipt || receipt.version !== 1 || receipt.kind !== 'orion.gate-evidence') {
258
+ throw new Error('Invalid GateEvidenceReceiptV1 envelope.');
259
+ }
260
+ const expected = createGateEvidenceReceiptV1({
261
+ version: receipt.version,
262
+ kind: receipt.kind,
263
+ createdAt: receipt.createdAt,
264
+ gateId: receipt.gateId,
265
+ source: receipt.source,
266
+ commandDigest: receipt.commandDigest,
267
+ outputDigest: receipt.outputDigest,
268
+ durationMs: receipt.durationMs,
269
+ status: receipt.status,
270
+ });
271
+ if (expected.receiptDigest !== receipt.receiptDigest) {
272
+ throw new Error('Gate evidence receipt digest mismatch.');
273
+ }
274
+ return expected;
275
+ }
276
+ function assertIsoTimestamp(value, label) {
277
+ if (!value || Number.isNaN(Date.parse(value)))
278
+ throw new Error(`${label} must be ISO-8601.`);
279
+ }
280
+ function assertNonEmpty(value, label) {
281
+ if (typeof value !== 'string' || !value.trim())
282
+ throw new Error(`${label} must not be empty.`);
283
+ }
284
+ function assertPositiveInteger(value, label) {
285
+ if (!Number.isSafeInteger(value) || value <= 0) {
286
+ throw new Error(`${label} must be a positive safe integer.`);
287
+ }
288
+ }
289
+ function assertHexDigest(value, label, minLength, maxLength) {
290
+ if (typeof value !== 'string' ||
291
+ value.length < minLength ||
292
+ value.length > maxLength ||
293
+ !/^[a-f0-9]+$/u.test(value)) {
294
+ throw new Error(`${label} must be a lowercase hexadecimal digest.`);
295
+ }
296
+ }
297
+ function deepFreeze(value) {
298
+ if (value && typeof value === 'object' && !Object.isFrozen(value)) {
299
+ Object.freeze(value);
300
+ for (const nested of Object.values(value))
301
+ deepFreeze(nested);
302
+ }
303
+ return value;
304
+ }
305
+ //# sourceMappingURL=release-receipts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-receipts.js","sourceRoot":"","sources":["../../src/runtime/release-receipts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,123 @@
1
+ export type ResourceScopeState = 'active' | 'draining' | 'closed';
2
+ export interface ResourceScopeOptions {
3
+ /** Stable diagnostic identity. A UUID is generated when omitted. */
4
+ id?: string;
5
+ /** Total time allowed for lease draining and teardown. */
6
+ deadlineMs?: number;
7
+ /** Closing the parent signal closes this scope. */
8
+ parentSignal?: AbortSignal;
9
+ }
10
+ export interface ResourceActivationContext {
11
+ readonly scopeId: string;
12
+ readonly resourceId: string;
13
+ readonly epoch: number;
14
+ readonly signal: AbortSignal;
15
+ }
16
+ export interface ResourceDisposalContext {
17
+ readonly scopeId: string;
18
+ readonly resourceId: string;
19
+ readonly reason: string;
20
+ readonly deadlineAt: number;
21
+ /** Aborted when the teardown deadline expires. */
22
+ readonly signal: AbortSignal;
23
+ }
24
+ export type ResourceDisposer = (context: ResourceDisposalContext) => void | Promise<void>;
25
+ export interface ResourceActivation<T> {
26
+ readonly value: T;
27
+ readonly dispose: ResourceDisposer;
28
+ }
29
+ export interface ResourceRegistration<T> {
30
+ readonly id: string;
31
+ readonly activate: (context: ResourceActivationContext) => ResourceActivation<T> | Promise<ResourceActivation<T>>;
32
+ }
33
+ export interface ResourceLease {
34
+ readonly id: string;
35
+ readonly label?: string;
36
+ readonly epoch: number;
37
+ readonly released: boolean;
38
+ release(): void;
39
+ }
40
+ export interface ResourceDisposalError {
41
+ readonly resourceId: string;
42
+ readonly message: string;
43
+ }
44
+ export interface ResourceScopeCloseOptions {
45
+ readonly reason?: string;
46
+ readonly deadlineMs?: number;
47
+ }
48
+ export interface ResourceScopeCloseReport {
49
+ readonly scopeId: string;
50
+ readonly reason: string;
51
+ readonly startedAt: number;
52
+ readonly completedAt: number;
53
+ readonly timedOut: boolean;
54
+ readonly leaseTimedOut: boolean;
55
+ readonly disposed: readonly string[];
56
+ readonly errors: readonly ResourceDisposalError[];
57
+ }
58
+ /** Raised when an operation attempts to mutate a scope outside its active lifetime. */
59
+ export declare class ResourceScopeStateError extends Error {
60
+ readonly scopeId: string;
61
+ readonly state: ResourceScopeState;
62
+ constructor(scopeId: string, state: ResourceScopeState, operation: string);
63
+ }
64
+ /** Raised when an async activation completes after its owning epoch has moved on. */
65
+ export declare class StaleResourceEpochError extends Error {
66
+ readonly scopeId: string;
67
+ readonly resourceId: string;
68
+ readonly expectedEpoch: number;
69
+ readonly actualEpoch: number;
70
+ constructor(scopeId: string, resourceId: string, expectedEpoch: number, actualEpoch: number);
71
+ }
72
+ /** Activation failures include the deterministic rollback report. */
73
+ export declare class ResourceActivationError extends Error {
74
+ readonly scopeId: string;
75
+ readonly resourceId: string;
76
+ readonly activationCause: unknown;
77
+ readonly rollback: ResourceScopeCloseReport;
78
+ constructor(scopeId: string, resourceId: string, activationCause: unknown, rollback: ResourceScopeCloseReport);
79
+ }
80
+ /**
81
+ * Owns cancellable runtime resources for one bounded lifetime.
82
+ *
83
+ * Business side effects do not belong here. This scope only guarantees LIFO
84
+ * rollback, lease draining, deadline-bounded teardown and stale-result rejection.
85
+ */
86
+ export declare class ResourceScope {
87
+ readonly id: string;
88
+ private readonly defaultDeadlineMs;
89
+ private readonly abortController;
90
+ private readonly resources;
91
+ private readonly resourceIds;
92
+ private readonly pendingResourceIds;
93
+ private readonly leases;
94
+ private readonly leaseWaiters;
95
+ private readonly detachParentSignal?;
96
+ private stateValue;
97
+ private epochValue;
98
+ private closePromise?;
99
+ constructor(options?: ResourceScopeOptions);
100
+ get state(): ResourceScopeState;
101
+ get epoch(): number;
102
+ get signal(): AbortSignal;
103
+ get activeLeaseCount(): number;
104
+ get activeResourceCount(): number;
105
+ captureEpoch(): number;
106
+ isCurrentEpoch(epoch: number): boolean;
107
+ advanceEpoch(): number;
108
+ commitIfCurrent<T>(epoch: number, commit: () => T): T | undefined;
109
+ register(id: string, dispose: ResourceDisposer): void;
110
+ activate<T>(registration: ResourceRegistration<T>): Promise<T>;
111
+ acquireLease(label?: string): ResourceLease;
112
+ createChild(id: string, options?: Omit<ResourceScopeOptions, 'id' | 'parentSignal'>): ResourceScope;
113
+ close(options?: ResourceScopeCloseOptions): Promise<ResourceScopeCloseReport>;
114
+ private performClose;
115
+ private disposeStaleActivation;
116
+ private settleBeforeDeadline;
117
+ private waitForLeases;
118
+ private notifyLeaseWaiters;
119
+ private validateResourceId;
120
+ private assertResourceIdAvailable;
121
+ private assertActive;
122
+ }
123
+ //# sourceMappingURL=resource-scope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-scope.d.ts","sourceRoot":"","sources":["../../src/runtime/resource-scope.ts"],"names":[],"mappings":"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"}