@orion-agents/orion-code 0.3.1 → 0.3.4

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 (800) hide show
  1. package/CHANGELOG.md +126 -0
  2. package/README.md +71 -32
  3. package/README.zh-CN.md +56 -29
  4. package/dist/commands/model-command-handlers.js +59 -14
  5. package/dist/commands/types.d.ts +6 -0
  6. package/dist/commands/workflow-command-handlers.d.ts +1 -1
  7. package/dist/commands/workflow-command-handlers.js +42 -3
  8. package/dist/commands/workflow-commands.js +2 -2
  9. package/dist/runtime/agent-runtime-controller.d.ts +17 -2
  10. package/dist/runtime/agent-runtime-controller.js +207 -47
  11. package/dist/runtime/agent-runtime-protocol.d.ts +3 -0
  12. package/dist/runtime/agent-runtime-runner.d.ts +8 -0
  13. package/dist/runtime/capability-receipt-journal.js +1 -1
  14. package/dist/runtime/durable-tool-receipt-reader.js +1 -1
  15. package/dist/runtime/legacy-thread-materializer.js +2 -2
  16. package/dist/runtime/orion-runtime-v1.d.ts +2 -1
  17. package/dist/runtime/orion-runtime-v1.js +18 -16
  18. package/dist/runtime/orion-session-runner.d.ts +6 -0
  19. package/dist/runtime/orion-session-runner.js +27 -4
  20. package/dist/runtime/plan-review.d.ts +38 -0
  21. package/dist/runtime/plan-review.js +173 -0
  22. package/dist/runtime/product-bootstrap.d.ts +6 -0
  23. package/dist/runtime/product-bootstrap.js +388 -314
  24. package/dist/runtime/product-orion-runtime.d.ts +5 -0
  25. package/dist/runtime/product-orion-runtime.js +16 -35
  26. package/dist/runtime/protocol/runtime-protocol-v1.d.ts +73 -0
  27. package/dist/runtime/protocol/runtime-protocol-v1.js +37 -0
  28. package/dist/runtime/release-receipts.d.ts +9 -3
  29. package/dist/runtime/release-receipts.js +120 -1
  30. package/dist/runtime/session-composer-control.d.ts +136 -0
  31. package/dist/runtime/session-composer-control.js +532 -0
  32. package/dist/runtime/step-snapshot.d.ts +12 -0
  33. package/dist/runtime/step-snapshot.js +14 -1
  34. package/dist/runtime/subagent-thread-runtime.js +1 -1
  35. package/dist/runtime/thread-event-store.d.ts +10 -1
  36. package/dist/runtime/thread-event-store.js +48 -12
  37. package/dist/runtime/thread-projection.d.ts +36 -0
  38. package/dist/runtime/thread-projection.js +99 -0
  39. package/dist/runtime/thread-runtime.d.ts +2 -2
  40. package/dist/runtime/thread-runtime.js +2 -2
  41. package/dist/runtime/thread-session-index.d.ts +17 -1
  42. package/dist/runtime/thread-session-index.js +89 -6
  43. package/dist/runtime/thread-session-view.d.ts +4 -1
  44. package/dist/runtime/thread-session-view.js +5 -2
  45. package/dist/runtime/thread-ui-adapter.js +10 -3
  46. package/dist/runtime/tool-gateway.js +1 -0
  47. package/dist/runtime/turn-commit.js +1 -1
  48. package/dist/runtime/ui-events.d.ts +9 -1
  49. package/dist/runtime/workspace-runtime-kernel.d.ts +67 -0
  50. package/dist/runtime/workspace-runtime-kernel.js +148 -0
  51. package/dist/services/global-config.d.ts +2 -0
  52. package/dist/services/global-config.js +7 -1
  53. package/dist/services/provider-resilience/coordinator.d.ts +3 -1
  54. package/dist/services/provider-resilience/coordinator.js +23 -1
  55. package/dist/services/provider-resilience/request-gate.js +7 -2
  56. package/dist/services/redaction.js +19 -2
  57. package/dist/services/session-storage.d.ts +36 -0
  58. package/dist/services/session-storage.js +77 -1
  59. package/dist/services/settings-coordinator.d.ts +3 -1
  60. package/dist/services/settings-coordinator.js +40 -8
  61. package/dist/services/settings-document-repository.d.ts +8 -1
  62. package/dist/services/settings-document-repository.js +22 -1
  63. package/dist/tui-ui/transcript-inspector-layout.js +13 -6
  64. package/dist/web/event-hub.d.ts +2 -0
  65. package/dist/web/event-hub.js +53 -6
  66. package/dist/web/file-read-service.d.ts +11 -0
  67. package/dist/web/file-read-service.js +56 -19
  68. package/dist/web/git-read-model-service.d.ts +8 -0
  69. package/dist/web/git-read-model-service.js +35 -2
  70. package/dist/web/protocol.d.ts +193 -3
  71. package/dist/web/protocol.js +245 -2
  72. package/dist/web/review-service.d.ts +1 -0
  73. package/dist/web/review-service.js +1 -0
  74. package/dist/web/server.js +75 -14
  75. package/dist/web/session-runtime-registry.d.ts +124 -0
  76. package/dist/web/session-runtime-registry.js +448 -0
  77. package/dist/web/terminal-manager.d.ts +1 -0
  78. package/dist/web/terminal-manager.js +60 -9
  79. package/dist/web/terminal-server.js +35 -6
  80. package/dist/web/workbench-controller.d.ts +52 -11
  81. package/dist/web/workbench-controller.js +1049 -110
  82. package/dist/web/workspace-mutation-arbiter.d.ts +54 -0
  83. package/dist/web/workspace-mutation-arbiter.js +267 -0
  84. package/dist/web-client/assets/{DiffViewer-DpKoD07C.js → DiffViewer-D6mG729y.js} +1 -1
  85. package/dist/web-client/assets/FilesPanel-CCDoAZ1J.js +2 -0
  86. package/dist/web-client/assets/{GitPanel-D20StcdG.js → GitPanel-DtNgiH7A.js} +1 -1
  87. package/dist/web-client/assets/ReviewPanel-CKEBSt6P.js +1 -0
  88. package/dist/web-client/assets/{TerminalPanel-BLQ592Fb.js → TerminalPanel-CNxMaBLp.js} +15 -13
  89. package/dist/web-client/assets/index-BBvNg3By.css +1 -0
  90. package/dist/web-client/assets/index-C6TDJwMC.js +17 -0
  91. package/dist/web-client/index.html +4 -4
  92. package/docs/architecture/agent-mode-permission-contract.md +87 -0
  93. package/docs/architecture/v0.3.1-web-api.yaml +53 -5
  94. package/docs/architecture/v0.3.2-web-api.yaml +3029 -0
  95. package/docs/architecture/v0.3.3-web-api.yaml +3205 -0
  96. package/docs/architecture/v0.3.4-stabilization-contract.md +32 -0
  97. package/docs/migration/v0.3.1-to-v0.3.2.md +94 -0
  98. package/docs/migration/v0.3.2-to-v0.3.3.md +62 -0
  99. package/docs/migration/v0.3.3-to-v0.3.4.md +36 -0
  100. package/docs/plan/v0.3.1-web-workbench-professional-shell-plan.md +1 -1
  101. package/docs/plan/v0.3.2-web-workbench-layout-and-composer-plan.md +869 -0
  102. package/docs/plan/v0.3.3-plan.md +1113 -0
  103. package/docs/plan/v0.3.4-stabilization-plan.md +89 -0
  104. package/docs/readme.md +12 -2
  105. package/docs/test/v0.3.1-web-workbench-e2e-plan.md +1 -1
  106. package/docs/test/v0.3.2-web-workbench-e2e-plan.md +100 -0
  107. package/docs/test/v0.3.3-web-workbench-e2e-plan.md +79 -0
  108. package/docs/test/v0.3.4-stabilization-e2e-plan.md +54 -0
  109. package/npm-shrinkwrap.json +25 -25
  110. package/package.json +15 -1
  111. package/dist/cli.d.ts.map +0 -1
  112. package/dist/cli.js.map +0 -1
  113. package/dist/commands/context-commands.d.ts.map +0 -1
  114. package/dist/commands/context-commands.js.map +0 -1
  115. package/dist/commands/context-tool-command-handlers.d.ts.map +0 -1
  116. package/dist/commands/context-tool-command-handlers.js.map +0 -1
  117. package/dist/commands/core-command-handlers.d.ts.map +0 -1
  118. package/dist/commands/core-command-handlers.js.map +0 -1
  119. package/dist/commands/diagnostic-command-handlers.d.ts.map +0 -1
  120. package/dist/commands/diagnostic-command-handlers.js.map +0 -1
  121. package/dist/commands/diagnostic-commands.d.ts.map +0 -1
  122. package/dist/commands/diagnostic-commands.js.map +0 -1
  123. package/dist/commands/index.d.ts.map +0 -1
  124. package/dist/commands/index.js.map +0 -1
  125. package/dist/commands/model-command-handlers.d.ts.map +0 -1
  126. package/dist/commands/model-command-handlers.js.map +0 -1
  127. package/dist/commands/model-commands.d.ts.map +0 -1
  128. package/dist/commands/model-commands.js.map +0 -1
  129. package/dist/commands/parser.d.ts.map +0 -1
  130. package/dist/commands/parser.js.map +0 -1
  131. package/dist/commands/registry.d.ts.map +0 -1
  132. package/dist/commands/registry.js.map +0 -1
  133. package/dist/commands/session-command-handlers.d.ts.map +0 -1
  134. package/dist/commands/session-command-handlers.js.map +0 -1
  135. package/dist/commands/session-commands.d.ts.map +0 -1
  136. package/dist/commands/session-commands.js.map +0 -1
  137. package/dist/commands/system-commands.d.ts.map +0 -1
  138. package/dist/commands/system-commands.js.map +0 -1
  139. package/dist/commands/target-command.d.ts.map +0 -1
  140. package/dist/commands/target-command.js.map +0 -1
  141. package/dist/commands/tool-commands.d.ts.map +0 -1
  142. package/dist/commands/tool-commands.js.map +0 -1
  143. package/dist/commands/types.d.ts.map +0 -1
  144. package/dist/commands/types.js.map +0 -1
  145. package/dist/commands/workflow-command-handlers.d.ts.map +0 -1
  146. package/dist/commands/workflow-command-handlers.js.map +0 -1
  147. package/dist/commands/workflow-commands.d.ts.map +0 -1
  148. package/dist/commands/workflow-commands.js.map +0 -1
  149. package/dist/core/checkpoint.d.ts.map +0 -1
  150. package/dist/core/checkpoint.js.map +0 -1
  151. package/dist/core/cost-tracker.d.ts.map +0 -1
  152. package/dist/core/cost-tracker.js.map +0 -1
  153. package/dist/core/security-warning.d.ts.map +0 -1
  154. package/dist/core/security-warning.js.map +0 -1
  155. package/dist/core/strategy-tracker.d.ts.map +0 -1
  156. package/dist/core/strategy-tracker.js.map +0 -1
  157. package/dist/core/tool-artifacts.d.ts.map +0 -1
  158. package/dist/core/tool-artifacts.js.map +0 -1
  159. package/dist/core/warn-dedup.d.ts.map +0 -1
  160. package/dist/core/warn-dedup.js.map +0 -1
  161. package/dist/framework/agent-mode.d.ts.map +0 -1
  162. package/dist/framework/agent-mode.js.map +0 -1
  163. package/dist/framework/external-assertion.d.ts.map +0 -1
  164. package/dist/framework/external-assertion.js.map +0 -1
  165. package/dist/framework/index.d.ts.map +0 -1
  166. package/dist/framework/index.js.map +0 -1
  167. package/dist/framework/loop-budget-contract.d.ts.map +0 -1
  168. package/dist/framework/loop-budget-contract.js.map +0 -1
  169. package/dist/framework/prompt.d.ts.map +0 -1
  170. package/dist/framework/prompt.js.map +0 -1
  171. package/dist/framework/query.d.ts.map +0 -1
  172. package/dist/framework/query.js.map +0 -1
  173. package/dist/framework/stop-decision.d.ts.map +0 -1
  174. package/dist/framework/stop-decision.js.map +0 -1
  175. package/dist/framework/store.d.ts.map +0 -1
  176. package/dist/framework/store.js.map +0 -1
  177. package/dist/framework/tool-call-orchestrator.d.ts.map +0 -1
  178. package/dist/framework/tool-call-orchestrator.js.map +0 -1
  179. package/dist/framework/tool-serializer.d.ts.map +0 -1
  180. package/dist/framework/tool-serializer.js.map +0 -1
  181. package/dist/framework/tool-state.d.ts.map +0 -1
  182. package/dist/framework/tool-state.js.map +0 -1
  183. package/dist/framework/tool.d.ts.map +0 -1
  184. package/dist/framework/tool.js.map +0 -1
  185. package/dist/harness/assembler.d.ts.map +0 -1
  186. package/dist/harness/assembler.js.map +0 -1
  187. package/dist/harness/capability-profile.d.ts.map +0 -1
  188. package/dist/harness/capability-profile.js.map +0 -1
  189. package/dist/harness/capsule.d.ts.map +0 -1
  190. package/dist/harness/capsule.js.map +0 -1
  191. package/dist/harness/compact-benchmark-corpus.d.ts.map +0 -1
  192. package/dist/harness/compact-benchmark-corpus.js.map +0 -1
  193. package/dist/harness/context-harness.d.ts.map +0 -1
  194. package/dist/harness/context-harness.js.map +0 -1
  195. package/dist/harness/contract.d.ts.map +0 -1
  196. package/dist/harness/contract.js.map +0 -1
  197. package/dist/harness/drift-guard.d.ts.map +0 -1
  198. package/dist/harness/drift-guard.js.map +0 -1
  199. package/dist/harness/evidence.d.ts.map +0 -1
  200. package/dist/harness/evidence.js.map +0 -1
  201. package/dist/harness/index.d.ts.map +0 -1
  202. package/dist/harness/index.js.map +0 -1
  203. package/dist/harness/intent.d.ts.map +0 -1
  204. package/dist/harness/intent.js.map +0 -1
  205. package/dist/harness/ledger.d.ts.map +0 -1
  206. package/dist/harness/ledger.js.map +0 -1
  207. package/dist/harness/progress-controller.d.ts.map +0 -1
  208. package/dist/harness/progress-controller.js.map +0 -1
  209. package/dist/harness/state.d.ts.map +0 -1
  210. package/dist/harness/state.js.map +0 -1
  211. package/dist/harness/stop-controller.d.ts.map +0 -1
  212. package/dist/harness/stop-controller.js.map +0 -1
  213. package/dist/harness/turn-summary.d.ts.map +0 -1
  214. package/dist/harness/turn-summary.js.map +0 -1
  215. package/dist/harness/types.d.ts.map +0 -1
  216. package/dist/harness/types.js.map +0 -1
  217. package/dist/harness/verification.d.ts.map +0 -1
  218. package/dist/harness/verification.js.map +0 -1
  219. package/dist/index.d.ts.map +0 -1
  220. package/dist/index.js.map +0 -1
  221. package/dist/memory/embeddings.d.ts.map +0 -1
  222. package/dist/memory/embeddings.js.map +0 -1
  223. package/dist/memory/entrypoint.d.ts.map +0 -1
  224. package/dist/memory/entrypoint.js.map +0 -1
  225. package/dist/memory/index.d.ts.map +0 -1
  226. package/dist/memory/index.js.map +0 -1
  227. package/dist/memory/prompt-context.d.ts.map +0 -1
  228. package/dist/memory/prompt-context.js.map +0 -1
  229. package/dist/memory/prompts.d.ts.map +0 -1
  230. package/dist/memory/prompts.js.map +0 -1
  231. package/dist/memory/relevant-finder.d.ts.map +0 -1
  232. package/dist/memory/relevant-finder.js.map +0 -1
  233. package/dist/memory/semantic-config.d.ts.map +0 -1
  234. package/dist/memory/semantic-config.js.map +0 -1
  235. package/dist/memory/semantic-search.d.ts.map +0 -1
  236. package/dist/memory/semantic-search.js.map +0 -1
  237. package/dist/memory/storage.d.ts.map +0 -1
  238. package/dist/memory/storage.js.map +0 -1
  239. package/dist/memory/store.d.ts.map +0 -1
  240. package/dist/memory/store.js.map +0 -1
  241. package/dist/memory/team-paths.d.ts.map +0 -1
  242. package/dist/memory/team-paths.js.map +0 -1
  243. package/dist/memory/types.d.ts.map +0 -1
  244. package/dist/memory/types.js.map +0 -1
  245. package/dist/memory/validation.d.ts.map +0 -1
  246. package/dist/memory/validation.js.map +0 -1
  247. package/dist/memory/vector-store.d.ts.map +0 -1
  248. package/dist/memory/vector-store.js.map +0 -1
  249. package/dist/migration/command.d.ts.map +0 -1
  250. package/dist/migration/command.js.map +0 -1
  251. package/dist/migration/index.d.ts.map +0 -1
  252. package/dist/migration/index.js.map +0 -1
  253. package/dist/migration/migrate.d.ts.map +0 -1
  254. package/dist/migration/migrate.js.map +0 -1
  255. package/dist/migration/types.d.ts.map +0 -1
  256. package/dist/migration/types.js.map +0 -1
  257. package/dist/print-ui/launch.d.ts.map +0 -1
  258. package/dist/print-ui/launch.js.map +0 -1
  259. package/dist/product/environment.d.ts.map +0 -1
  260. package/dist/product/environment.js.map +0 -1
  261. package/dist/product/identity.d.ts.map +0 -1
  262. package/dist/product/identity.js.map +0 -1
  263. package/dist/product/index.d.ts.map +0 -1
  264. package/dist/product/index.js.map +0 -1
  265. package/dist/product/paths.d.ts.map +0 -1
  266. package/dist/product/paths.js.map +0 -1
  267. package/dist/product/version.d.ts.map +0 -1
  268. package/dist/product/version.js.map +0 -1
  269. package/dist/runtime/agent-loop.d.ts.map +0 -1
  270. package/dist/runtime/agent-loop.js.map +0 -1
  271. package/dist/runtime/agent-runtime-controller.d.ts.map +0 -1
  272. package/dist/runtime/agent-runtime-controller.js.map +0 -1
  273. package/dist/runtime/agent-runtime-protocol.d.ts.map +0 -1
  274. package/dist/runtime/agent-runtime-protocol.js.map +0 -1
  275. package/dist/runtime/agent-runtime-runner.d.ts.map +0 -1
  276. package/dist/runtime/agent-runtime-runner.js.map +0 -1
  277. package/dist/runtime/agent-status.d.ts.map +0 -1
  278. package/dist/runtime/agent-status.js.map +0 -1
  279. package/dist/runtime/aggregate-tool-presenter.d.ts.map +0 -1
  280. package/dist/runtime/aggregate-tool-presenter.js.map +0 -1
  281. package/dist/runtime/batch-read-service.d.ts.map +0 -1
  282. package/dist/runtime/batch-read-service.js.map +0 -1
  283. package/dist/runtime/builtin-tool-provider.d.ts.map +0 -1
  284. package/dist/runtime/builtin-tool-provider.js.map +0 -1
  285. package/dist/runtime/capabilities/compiler.d.ts.map +0 -1
  286. package/dist/runtime/capabilities/compiler.js.map +0 -1
  287. package/dist/runtime/capabilities/index.d.ts.map +0 -1
  288. package/dist/runtime/capabilities/index.js.map +0 -1
  289. package/dist/runtime/capabilities/types.d.ts.map +0 -1
  290. package/dist/runtime/capabilities/types.js.map +0 -1
  291. package/dist/runtime/capability-receipt-journal.d.ts.map +0 -1
  292. package/dist/runtime/capability-receipt-journal.js.map +0 -1
  293. package/dist/runtime/capability-step-factory.d.ts.map +0 -1
  294. package/dist/runtime/capability-step-factory.js.map +0 -1
  295. package/dist/runtime/compact-transaction.d.ts.map +0 -1
  296. package/dist/runtime/compact-transaction.js.map +0 -1
  297. package/dist/runtime/composer/buffer.d.ts.map +0 -1
  298. package/dist/runtime/composer/buffer.js.map +0 -1
  299. package/dist/runtime/composer/grapheme.d.ts.map +0 -1
  300. package/dist/runtime/composer/grapheme.js.map +0 -1
  301. package/dist/runtime/composer/history.d.ts.map +0 -1
  302. package/dist/runtime/composer/history.js.map +0 -1
  303. package/dist/runtime/composer/layout.d.ts.map +0 -1
  304. package/dist/runtime/composer/layout.js.map +0 -1
  305. package/dist/runtime/core-tools/descriptors.d.ts.map +0 -1
  306. package/dist/runtime/core-tools/descriptors.js.map +0 -1
  307. package/dist/runtime/durable-tool-receipt-reader.d.ts.map +0 -1
  308. package/dist/runtime/durable-tool-receipt-reader.js.map +0 -1
  309. package/dist/runtime/first-party-core-provider.d.ts.map +0 -1
  310. package/dist/runtime/first-party-core-provider.js.map +0 -1
  311. package/dist/runtime/first-party-long-tail-provider.d.ts.map +0 -1
  312. package/dist/runtime/first-party-long-tail-provider.js.map +0 -1
  313. package/dist/runtime/first-party-tool-services.d.ts.map +0 -1
  314. package/dist/runtime/first-party-tool-services.js.map +0 -1
  315. package/dist/runtime/first-party-tool-universe.d.ts.map +0 -1
  316. package/dist/runtime/first-party-tool-universe.js.map +0 -1
  317. package/dist/runtime/goal-lifecycle-v2.d.ts.map +0 -1
  318. package/dist/runtime/goal-lifecycle-v2.js.map +0 -1
  319. package/dist/runtime/goal-runtime-coordinator.d.ts.map +0 -1
  320. package/dist/runtime/goal-runtime-coordinator.js.map +0 -1
  321. package/dist/runtime/goals/completion-audit.d.ts.map +0 -1
  322. package/dist/runtime/goals/completion-audit.js.map +0 -1
  323. package/dist/runtime/goals/evidence.d.ts.map +0 -1
  324. package/dist/runtime/goals/evidence.js.map +0 -1
  325. package/dist/runtime/goals/objective.d.ts.map +0 -1
  326. package/dist/runtime/goals/objective.js.map +0 -1
  327. package/dist/runtime/goals/presentation.d.ts.map +0 -1
  328. package/dist/runtime/goals/presentation.js.map +0 -1
  329. package/dist/runtime/goals/types.d.ts.map +0 -1
  330. package/dist/runtime/goals/types.js.map +0 -1
  331. package/dist/runtime/harness-confluence.d.ts.map +0 -1
  332. package/dist/runtime/harness-confluence.js.map +0 -1
  333. package/dist/runtime/harness-eval.d.ts.map +0 -1
  334. package/dist/runtime/harness-eval.js.map +0 -1
  335. package/dist/runtime/harness-metrics.d.ts.map +0 -1
  336. package/dist/runtime/harness-metrics.js.map +0 -1
  337. package/dist/runtime/legacy-session-importer.d.ts.map +0 -1
  338. package/dist/runtime/legacy-session-importer.js.map +0 -1
  339. package/dist/runtime/legacy-thread-materializer.d.ts.map +0 -1
  340. package/dist/runtime/legacy-thread-materializer.js.map +0 -1
  341. package/dist/runtime/long-tail-tools/descriptors.d.ts.map +0 -1
  342. package/dist/runtime/long-tail-tools/descriptors.js.map +0 -1
  343. package/dist/runtime/loop-budget.d.ts.map +0 -1
  344. package/dist/runtime/loop-budget.js.map +0 -1
  345. package/dist/runtime/mcp/first-party-mcp-adapter.d.ts.map +0 -1
  346. package/dist/runtime/mcp/first-party-mcp-adapter.js.map +0 -1
  347. package/dist/runtime/mcp/first-party-mcp-config.d.ts.map +0 -1
  348. package/dist/runtime/mcp/first-party-mcp-config.js.map +0 -1
  349. package/dist/runtime/mcp/index.d.ts.map +0 -1
  350. package/dist/runtime/mcp/index.js.map +0 -1
  351. package/dist/runtime/mcp/lazy-mcp-runtime.d.ts.map +0 -1
  352. package/dist/runtime/mcp/lazy-mcp-runtime.js.map +0 -1
  353. package/dist/runtime/mcp/types.d.ts.map +0 -1
  354. package/dist/runtime/mcp/types.js.map +0 -1
  355. package/dist/runtime/model-coordinator.d.ts.map +0 -1
  356. package/dist/runtime/model-coordinator.js.map +0 -1
  357. package/dist/runtime/orion-runtime-v1.d.ts.map +0 -1
  358. package/dist/runtime/orion-runtime-v1.js.map +0 -1
  359. package/dist/runtime/orion-session-runner.d.ts.map +0 -1
  360. package/dist/runtime/orion-session-runner.js.map +0 -1
  361. package/dist/runtime/product-bootstrap.d.ts.map +0 -1
  362. package/dist/runtime/product-bootstrap.js.map +0 -1
  363. package/dist/runtime/product-orion-runtime.d.ts.map +0 -1
  364. package/dist/runtime/product-orion-runtime.js.map +0 -1
  365. package/dist/runtime/prompts/index.d.ts.map +0 -1
  366. package/dist/runtime/prompts/index.js.map +0 -1
  367. package/dist/runtime/prompts/prompt-registry.d.ts.map +0 -1
  368. package/dist/runtime/prompts/prompt-registry.js.map +0 -1
  369. package/dist/runtime/prompts/types.d.ts.map +0 -1
  370. package/dist/runtime/prompts/types.js.map +0 -1
  371. package/dist/runtime/protocol/canonical.d.ts.map +0 -1
  372. package/dist/runtime/protocol/canonical.js.map +0 -1
  373. package/dist/runtime/protocol/index.d.ts.map +0 -1
  374. package/dist/runtime/protocol/index.js.map +0 -1
  375. package/dist/runtime/protocol/runtime-protocol-v1.d.ts.map +0 -1
  376. package/dist/runtime/protocol/runtime-protocol-v1.js.map +0 -1
  377. package/dist/runtime/release-receipts.d.ts.map +0 -1
  378. package/dist/runtime/release-receipts.js.map +0 -1
  379. package/dist/runtime/resource-scope.d.ts.map +0 -1
  380. package/dist/runtime/resource-scope.js.map +0 -1
  381. package/dist/runtime/rich-text/ansi-parser.d.ts.map +0 -1
  382. package/dist/runtime/rich-text/ansi-parser.js.map +0 -1
  383. package/dist/runtime/rich-text/layout.d.ts.map +0 -1
  384. package/dist/runtime/rich-text/layout.js.map +0 -1
  385. package/dist/runtime/rich-text/markdown-parser.d.ts.map +0 -1
  386. package/dist/runtime/rich-text/markdown-parser.js.map +0 -1
  387. package/dist/runtime/rich-text/sanitizer.d.ts.map +0 -1
  388. package/dist/runtime/rich-text/sanitizer.js.map +0 -1
  389. package/dist/runtime/rich-text/types.d.ts.map +0 -1
  390. package/dist/runtime/rich-text/types.js.map +0 -1
  391. package/dist/runtime/runtime-event-buffer.d.ts.map +0 -1
  392. package/dist/runtime/runtime-event-buffer.js.map +0 -1
  393. package/dist/runtime/runtime-services.d.ts.map +0 -1
  394. package/dist/runtime/runtime-services.js.map +0 -1
  395. package/dist/runtime/session-history-recovery.d.ts.map +0 -1
  396. package/dist/runtime/session-history-recovery.js.map +0 -1
  397. package/dist/runtime/skills/bounded-lru-cache.d.ts.map +0 -1
  398. package/dist/runtime/skills/bounded-lru-cache.js.map +0 -1
  399. package/dist/runtime/skills/filesystem-skill-provider.d.ts.map +0 -1
  400. package/dist/runtime/skills/filesystem-skill-provider.js.map +0 -1
  401. package/dist/runtime/skills/index.d.ts.map +0 -1
  402. package/dist/runtime/skills/index.js.map +0 -1
  403. package/dist/runtime/skills/lazy-skill-runtime.d.ts.map +0 -1
  404. package/dist/runtime/skills/lazy-skill-runtime.js.map +0 -1
  405. package/dist/runtime/skills/types.d.ts.map +0 -1
  406. package/dist/runtime/skills/types.js.map +0 -1
  407. package/dist/runtime/step-snapshot.d.ts.map +0 -1
  408. package/dist/runtime/step-snapshot.js.map +0 -1
  409. package/dist/runtime/subagent-thread-runtime.d.ts.map +0 -1
  410. package/dist/runtime/subagent-thread-runtime.js.map +0 -1
  411. package/dist/runtime/subagents/budget.d.ts.map +0 -1
  412. package/dist/runtime/subagents/budget.js.map +0 -1
  413. package/dist/runtime/subagents/child-executor-guard.d.ts.map +0 -1
  414. package/dist/runtime/subagents/child-executor-guard.js.map +0 -1
  415. package/dist/runtime/subagents/context-builder.d.ts.map +0 -1
  416. package/dist/runtime/subagents/context-builder.js.map +0 -1
  417. package/dist/runtime/subagents/index.d.ts.map +0 -1
  418. package/dist/runtime/subagents/index.js.map +0 -1
  419. package/dist/runtime/subagents/parent-step-fork.d.ts.map +0 -1
  420. package/dist/runtime/subagents/parent-step-fork.js.map +0 -1
  421. package/dist/runtime/subagents/policy.d.ts.map +0 -1
  422. package/dist/runtime/subagents/policy.js.map +0 -1
  423. package/dist/runtime/subagents/presets.d.ts.map +0 -1
  424. package/dist/runtime/subagents/presets.js.map +0 -1
  425. package/dist/runtime/subagents/production.d.ts.map +0 -1
  426. package/dist/runtime/subagents/production.js.map +0 -1
  427. package/dist/runtime/subagents/provider-gate.d.ts.map +0 -1
  428. package/dist/runtime/subagents/provider-gate.js.map +0 -1
  429. package/dist/runtime/subagents/receipt-journal.d.ts.map +0 -1
  430. package/dist/runtime/subagents/receipt-journal.js.map +0 -1
  431. package/dist/runtime/subagents/research-artifact.d.ts.map +0 -1
  432. package/dist/runtime/subagents/research-artifact.js.map +0 -1
  433. package/dist/runtime/subagents/research-citation.d.ts.map +0 -1
  434. package/dist/runtime/subagents/research-citation.js.map +0 -1
  435. package/dist/runtime/subagents/research-contract.d.ts.map +0 -1
  436. package/dist/runtime/subagents/research-contract.js.map +0 -1
  437. package/dist/runtime/subagents/research-quality.d.ts.map +0 -1
  438. package/dist/runtime/subagents/research-quality.js.map +0 -1
  439. package/dist/runtime/subagents/research-renderer.d.ts.map +0 -1
  440. package/dist/runtime/subagents/research-renderer.js.map +0 -1
  441. package/dist/runtime/subagents/research-types.d.ts.map +0 -1
  442. package/dist/runtime/subagents/research-types.js.map +0 -1
  443. package/dist/runtime/subagents/result-parser.d.ts.map +0 -1
  444. package/dist/runtime/subagents/result-parser.js.map +0 -1
  445. package/dist/runtime/subagents/runner.d.ts.map +0 -1
  446. package/dist/runtime/subagents/runner.js.map +0 -1
  447. package/dist/runtime/subagents/runtime-contract.d.ts.map +0 -1
  448. package/dist/runtime/subagents/runtime-contract.js.map +0 -1
  449. package/dist/runtime/subagents/runtime-integration.d.ts.map +0 -1
  450. package/dist/runtime/subagents/runtime-integration.js.map +0 -1
  451. package/dist/runtime/subagents/supervisor.d.ts.map +0 -1
  452. package/dist/runtime/subagents/supervisor.js.map +0 -1
  453. package/dist/runtime/subagents/tool.d.ts.map +0 -1
  454. package/dist/runtime/subagents/tool.js.map +0 -1
  455. package/dist/runtime/subagents/types.d.ts.map +0 -1
  456. package/dist/runtime/subagents/types.js.map +0 -1
  457. package/dist/runtime/subagents/web-research-adapter.d.ts.map +0 -1
  458. package/dist/runtime/subagents/web-research-adapter.js.map +0 -1
  459. package/dist/runtime/task-context-service.d.ts.map +0 -1
  460. package/dist/runtime/task-context-service.js.map +0 -1
  461. package/dist/runtime/thread-admission.d.ts.map +0 -1
  462. package/dist/runtime/thread-admission.js.map +0 -1
  463. package/dist/runtime/thread-compact-persistence.d.ts.map +0 -1
  464. package/dist/runtime/thread-compact-persistence.js.map +0 -1
  465. package/dist/runtime/thread-event-store.d.ts.map +0 -1
  466. package/dist/runtime/thread-event-store.js.map +0 -1
  467. package/dist/runtime/thread-projection.d.ts.map +0 -1
  468. package/dist/runtime/thread-projection.js.map +0 -1
  469. package/dist/runtime/thread-runtime.d.ts.map +0 -1
  470. package/dist/runtime/thread-runtime.js.map +0 -1
  471. package/dist/runtime/thread-session-index.d.ts.map +0 -1
  472. package/dist/runtime/thread-session-index.js.map +0 -1
  473. package/dist/runtime/thread-session-view.d.ts.map +0 -1
  474. package/dist/runtime/thread-session-view.js.map +0 -1
  475. package/dist/runtime/thread-tool-journal.d.ts.map +0 -1
  476. package/dist/runtime/thread-tool-journal.js.map +0 -1
  477. package/dist/runtime/thread-ui-adapter.d.ts.map +0 -1
  478. package/dist/runtime/thread-ui-adapter.js.map +0 -1
  479. package/dist/runtime/tool-detail-repository.d.ts.map +0 -1
  480. package/dist/runtime/tool-detail-repository.js.map +0 -1
  481. package/dist/runtime/tool-gateway.d.ts.map +0 -1
  482. package/dist/runtime/tool-gateway.js.map +0 -1
  483. package/dist/runtime/tool-output-presentation.d.ts.map +0 -1
  484. package/dist/runtime/tool-output-presentation.js.map +0 -1
  485. package/dist/runtime/tool-receipt-validator.d.ts.map +0 -1
  486. package/dist/runtime/tool-receipt-validator.js.map +0 -1
  487. package/dist/runtime/turn-commit.d.ts.map +0 -1
  488. package/dist/runtime/turn-commit.js.map +0 -1
  489. package/dist/runtime/turn-controller.d.ts.map +0 -1
  490. package/dist/runtime/turn-controller.js.map +0 -1
  491. package/dist/runtime/ui-events.d.ts.map +0 -1
  492. package/dist/runtime/ui-events.js.map +0 -1
  493. package/dist/runtime/ui-view-model.d.ts.map +0 -1
  494. package/dist/runtime/ui-view-model.js.map +0 -1
  495. package/dist/services/atomic-write.d.ts.map +0 -1
  496. package/dist/services/atomic-write.js.map +0 -1
  497. package/dist/services/auth/auth.d.ts.map +0 -1
  498. package/dist/services/auth/auth.js.map +0 -1
  499. package/dist/services/auth/aws.d.ts.map +0 -1
  500. package/dist/services/auth/aws.js.map +0 -1
  501. package/dist/services/auth/index.d.ts.map +0 -1
  502. package/dist/services/auth/index.js.map +0 -1
  503. package/dist/services/auto-fix/autoFixConfig.d.ts.map +0 -1
  504. package/dist/services/auto-fix/autoFixConfig.js.map +0 -1
  505. package/dist/services/auto-fix/autoFixHook.d.ts.map +0 -1
  506. package/dist/services/auto-fix/autoFixHook.js.map +0 -1
  507. package/dist/services/auto-fix/autoFixRunner.d.ts.map +0 -1
  508. package/dist/services/auto-fix/autoFixRunner.js.map +0 -1
  509. package/dist/services/auto-fix/index.d.ts.map +0 -1
  510. package/dist/services/auto-fix/index.js.map +0 -1
  511. package/dist/services/bounded-response.d.ts.map +0 -1
  512. package/dist/services/bounded-response.js.map +0 -1
  513. package/dist/services/commit-plan.d.ts.map +0 -1
  514. package/dist/services/commit-plan.js.map +0 -1
  515. package/dist/services/compact/auto-compact.d.ts.map +0 -1
  516. package/dist/services/compact/auto-compact.js.map +0 -1
  517. package/dist/services/compact/compact.d.ts.map +0 -1
  518. package/dist/services/compact/compact.js.map +0 -1
  519. package/dist/services/compact/coordinator.d.ts.map +0 -1
  520. package/dist/services/compact/coordinator.js.map +0 -1
  521. package/dist/services/compact/fingerprint.d.ts.map +0 -1
  522. package/dist/services/compact/fingerprint.js.map +0 -1
  523. package/dist/services/compact/index.d.ts.map +0 -1
  524. package/dist/services/compact/index.js.map +0 -1
  525. package/dist/services/compact/planner.d.ts.map +0 -1
  526. package/dist/services/compact/planner.js.map +0 -1
  527. package/dist/services/compact/semantic-summary.d.ts.map +0 -1
  528. package/dist/services/compact/semantic-summary.js.map +0 -1
  529. package/dist/services/compact/summary-generator.d.ts.map +0 -1
  530. package/dist/services/compact/summary-generator.js.map +0 -1
  531. package/dist/services/compact/tool-call-groups.d.ts.map +0 -1
  532. package/dist/services/compact/tool-call-groups.js.map +0 -1
  533. package/dist/services/concurrent-sessions.d.ts.map +0 -1
  534. package/dist/services/concurrent-sessions.js.map +0 -1
  535. package/dist/services/config-dir.d.ts.map +0 -1
  536. package/dist/services/config-dir.js.map +0 -1
  537. package/dist/services/config.d.ts.map +0 -1
  538. package/dist/services/config.js.map +0 -1
  539. package/dist/services/diagnostic-tracking/diagnosticTracking.d.ts.map +0 -1
  540. package/dist/services/diagnostic-tracking/diagnosticTracking.js.map +0 -1
  541. package/dist/services/diagnostic-tracking/formatter.d.ts.map +0 -1
  542. package/dist/services/diagnostic-tracking/formatter.js.map +0 -1
  543. package/dist/services/diagnostic-tracking/index.d.ts.map +0 -1
  544. package/dist/services/diagnostic-tracking/index.js.map +0 -1
  545. package/dist/services/diagnostic-tracking/types.d.ts.map +0 -1
  546. package/dist/services/diagnostic-tracking/types.js.map +0 -1
  547. package/dist/services/doctor.d.ts.map +0 -1
  548. package/dist/services/doctor.js.map +0 -1
  549. package/dist/services/effort.d.ts.map +0 -1
  550. package/dist/services/effort.js.map +0 -1
  551. package/dist/services/file-context.d.ts.map +0 -1
  552. package/dist/services/file-context.js.map +0 -1
  553. package/dist/services/file-glob.d.ts.map +0 -1
  554. package/dist/services/file-glob.js.map +0 -1
  555. package/dist/services/file-lock.d.ts.map +0 -1
  556. package/dist/services/file-lock.js.map +0 -1
  557. package/dist/services/format.d.ts.map +0 -1
  558. package/dist/services/format.js.map +0 -1
  559. package/dist/services/global-config.d.ts.map +0 -1
  560. package/dist/services/global-config.js.map +0 -1
  561. package/dist/services/goal-storage.d.ts.map +0 -1
  562. package/dist/services/goal-storage.js.map +0 -1
  563. package/dist/services/llm.d.ts.map +0 -1
  564. package/dist/services/llm.js.map +0 -1
  565. package/dist/services/mcp/index.d.ts.map +0 -1
  566. package/dist/services/mcp/index.js.map +0 -1
  567. package/dist/services/mcp/transports.d.ts.map +0 -1
  568. package/dist/services/mcp/transports.js.map +0 -1
  569. package/dist/services/memory.d.ts.map +0 -1
  570. package/dist/services/memory.js.map +0 -1
  571. package/dist/services/model-catalog.d.ts.map +0 -1
  572. package/dist/services/model-catalog.js.map +0 -1
  573. package/dist/services/model-client-pool.d.ts.map +0 -1
  574. package/dist/services/model-client-pool.js.map +0 -1
  575. package/dist/services/model-context.d.ts.map +0 -1
  576. package/dist/services/model-context.js.map +0 -1
  577. package/dist/services/model-registry.d.ts.map +0 -1
  578. package/dist/services/model-registry.js.map +0 -1
  579. package/dist/services/project-instructions.d.ts.map +0 -1
  580. package/dist/services/project-instructions.js.map +0 -1
  581. package/dist/services/prompt-context.d.ts.map +0 -1
  582. package/dist/services/prompt-context.js.map +0 -1
  583. package/dist/services/provider-diagnostics.d.ts.map +0 -1
  584. package/dist/services/provider-diagnostics.js.map +0 -1
  585. package/dist/services/provider-resilience/circuit-breaker.d.ts.map +0 -1
  586. package/dist/services/provider-resilience/circuit-breaker.js.map +0 -1
  587. package/dist/services/provider-resilience/coordinator.d.ts.map +0 -1
  588. package/dist/services/provider-resilience/coordinator.js.map +0 -1
  589. package/dist/services/provider-resilience/error-classifier.d.ts.map +0 -1
  590. package/dist/services/provider-resilience/error-classifier.js.map +0 -1
  591. package/dist/services/provider-resilience/index.d.ts.map +0 -1
  592. package/dist/services/provider-resilience/index.js.map +0 -1
  593. package/dist/services/provider-resilience/request-gate.d.ts.map +0 -1
  594. package/dist/services/provider-resilience/request-gate.js.map +0 -1
  595. package/dist/services/provider-resilience/stream-recovery.d.ts.map +0 -1
  596. package/dist/services/provider-resilience/stream-recovery.js.map +0 -1
  597. package/dist/services/provider-resilience/types.d.ts.map +0 -1
  598. package/dist/services/provider-resilience/types.js.map +0 -1
  599. package/dist/services/redaction.d.ts.map +0 -1
  600. package/dist/services/redaction.js.map +0 -1
  601. package/dist/services/safe-project-reader.d.ts.map +0 -1
  602. package/dist/services/safe-project-reader.js.map +0 -1
  603. package/dist/services/session-index.d.ts.map +0 -1
  604. package/dist/services/session-index.js.map +0 -1
  605. package/dist/services/session-memory/index.d.ts.map +0 -1
  606. package/dist/services/session-memory/index.js.map +0 -1
  607. package/dist/services/session-memory/prompts.d.ts.map +0 -1
  608. package/dist/services/session-memory/prompts.js.map +0 -1
  609. package/dist/services/session-memory/sessionMemory.d.ts.map +0 -1
  610. package/dist/services/session-memory/sessionMemory.js.map +0 -1
  611. package/dist/services/session-storage.d.ts.map +0 -1
  612. package/dist/services/session-storage.js.map +0 -1
  613. package/dist/services/settings-coordinator.d.ts.map +0 -1
  614. package/dist/services/settings-coordinator.js.map +0 -1
  615. package/dist/services/settings-document-repository.d.ts.map +0 -1
  616. package/dist/services/settings-document-repository.js.map +0 -1
  617. package/dist/services/smart-routing.d.ts.map +0 -1
  618. package/dist/services/smart-routing.js.map +0 -1
  619. package/dist/services/storage-maintenance.d.ts.map +0 -1
  620. package/dist/services/storage-maintenance.js.map +0 -1
  621. package/dist/services/tool-allowlist.d.ts.map +0 -1
  622. package/dist/services/tool-allowlist.js.map +0 -1
  623. package/dist/services/usage-state.d.ts.map +0 -1
  624. package/dist/services/usage-state.js.map +0 -1
  625. package/dist/services/verification-profile.d.ts.map +0 -1
  626. package/dist/services/verification-profile.js.map +0 -1
  627. package/dist/services/web-search-adapters.d.ts.map +0 -1
  628. package/dist/services/web-search-adapters.js.map +0 -1
  629. package/dist/services/web-search-mcp.d.ts.map +0 -1
  630. package/dist/services/web-search-mcp.js.map +0 -1
  631. package/dist/services/web-search-provider.d.ts.map +0 -1
  632. package/dist/services/web-search-provider.js.map +0 -1
  633. package/dist/services/workspace-containment.d.ts.map +0 -1
  634. package/dist/services/workspace-containment.js.map +0 -1
  635. package/dist/services/workspace-diff.d.ts.map +0 -1
  636. package/dist/services/workspace-diff.js.map +0 -1
  637. package/dist/services/workspace-registry.d.ts.map +0 -1
  638. package/dist/services/workspace-registry.js.map +0 -1
  639. package/dist/services/workspace-state.d.ts.map +0 -1
  640. package/dist/services/workspace-state.js.map +0 -1
  641. package/dist/services/yaml-config.d.ts.map +0 -1
  642. package/dist/services/yaml-config.js.map +0 -1
  643. package/dist/terminal-ui/completion.d.ts.map +0 -1
  644. package/dist/terminal-ui/completion.js.map +0 -1
  645. package/dist/terminal-ui/editor.d.ts.map +0 -1
  646. package/dist/terminal-ui/editor.js.map +0 -1
  647. package/dist/terminal-ui/launch.d.ts.map +0 -1
  648. package/dist/terminal-ui/launch.js.map +0 -1
  649. package/dist/terminal-ui/output-queue.d.ts.map +0 -1
  650. package/dist/terminal-ui/output-queue.js.map +0 -1
  651. package/dist/terminal-ui/raw-editor.d.ts.map +0 -1
  652. package/dist/terminal-ui/raw-editor.js.map +0 -1
  653. package/dist/tools/_validate.d.ts.map +0 -1
  654. package/dist/tools/_validate.js.map +0 -1
  655. package/dist/tools/bash_security.d.ts.map +0 -1
  656. package/dist/tools/bash_security.js.map +0 -1
  657. package/dist/tools/core/common.d.ts.map +0 -1
  658. package/dist/tools/core/common.js.map +0 -1
  659. package/dist/tools/core/edit-file.d.ts.map +0 -1
  660. package/dist/tools/core/edit-file.js.map +0 -1
  661. package/dist/tools/core/exec-command.d.ts.map +0 -1
  662. package/dist/tools/core/exec-command.js.map +0 -1
  663. package/dist/tools/core/glob.d.ts.map +0 -1
  664. package/dist/tools/core/glob.js.map +0 -1
  665. package/dist/tools/core/grep.d.ts.map +0 -1
  666. package/dist/tools/core/grep.js.map +0 -1
  667. package/dist/tools/core/index.d.ts.map +0 -1
  668. package/dist/tools/core/index.js.map +0 -1
  669. package/dist/tools/core/list-files.d.ts.map +0 -1
  670. package/dist/tools/core/list-files.js.map +0 -1
  671. package/dist/tools/core/read-file.d.ts.map +0 -1
  672. package/dist/tools/core/read-file.js.map +0 -1
  673. package/dist/tools/core/write-file.d.ts.map +0 -1
  674. package/dist/tools/core/write-file.js.map +0 -1
  675. package/dist/tools/git.d.ts.map +0 -1
  676. package/dist/tools/git.js.map +0 -1
  677. package/dist/tools/lsp.d.ts.map +0 -1
  678. package/dist/tools/lsp.js.map +0 -1
  679. package/dist/tools/sandbox.d.ts.map +0 -1
  680. package/dist/tools/sandbox.js.map +0 -1
  681. package/dist/tools/todo.d.ts.map +0 -1
  682. package/dist/tools/todo.js.map +0 -1
  683. package/dist/tools/web.d.ts.map +0 -1
  684. package/dist/tools/web.js.map +0 -1
  685. package/dist/tui-core/frame.d.ts.map +0 -1
  686. package/dist/tui-core/frame.js.map +0 -1
  687. package/dist/tui-core/input-parser.d.ts.map +0 -1
  688. package/dist/tui-core/input-parser.js.map +0 -1
  689. package/dist/tui-core/style.d.ts.map +0 -1
  690. package/dist/tui-core/style.js.map +0 -1
  691. package/dist/tui-core/terminal-writer.d.ts.map +0 -1
  692. package/dist/tui-core/terminal-writer.js.map +0 -1
  693. package/dist/tui-ui/chrome-view-model.d.ts.map +0 -1
  694. package/dist/tui-ui/chrome-view-model.js.map +0 -1
  695. package/dist/tui-ui/inline-surface.d.ts.map +0 -1
  696. package/dist/tui-ui/inline-surface.js.map +0 -1
  697. package/dist/tui-ui/input-ownership.d.ts.map +0 -1
  698. package/dist/tui-ui/input-ownership.js.map +0 -1
  699. package/dist/tui-ui/launch.d.ts.map +0 -1
  700. package/dist/tui-ui/launch.js.map +0 -1
  701. package/dist/tui-ui/layout.d.ts.map +0 -1
  702. package/dist/tui-ui/layout.js.map +0 -1
  703. package/dist/tui-ui/pickers.d.ts.map +0 -1
  704. package/dist/tui-ui/pickers.js.map +0 -1
  705. package/dist/tui-ui/pixel-mascot.d.ts.map +0 -1
  706. package/dist/tui-ui/pixel-mascot.js.map +0 -1
  707. package/dist/tui-ui/render-scheduler.d.ts.map +0 -1
  708. package/dist/tui-ui/render-scheduler.js.map +0 -1
  709. package/dist/tui-ui/runner.d.ts.map +0 -1
  710. package/dist/tui-ui/runner.js.map +0 -1
  711. package/dist/tui-ui/state.d.ts.map +0 -1
  712. package/dist/tui-ui/state.js.map +0 -1
  713. package/dist/tui-ui/terminal-image.d.ts.map +0 -1
  714. package/dist/tui-ui/terminal-image.js.map +0 -1
  715. package/dist/tui-ui/theme-profile.d.ts.map +0 -1
  716. package/dist/tui-ui/theme-profile.js.map +0 -1
  717. package/dist/tui-ui/theme.d.ts.map +0 -1
  718. package/dist/tui-ui/theme.js.map +0 -1
  719. package/dist/tui-ui/transcript-cache.d.ts.map +0 -1
  720. package/dist/tui-ui/transcript-cache.js.map +0 -1
  721. package/dist/tui-ui/transcript-inspector-layout.d.ts.map +0 -1
  722. package/dist/tui-ui/transcript-inspector-layout.js.map +0 -1
  723. package/dist/tui-ui/transcript-inspector-surface.d.ts.map +0 -1
  724. package/dist/tui-ui/transcript-inspector-surface.js.map +0 -1
  725. package/dist/tui-ui/transcript-inspector.d.ts.map +0 -1
  726. package/dist/tui-ui/transcript-inspector.js.map +0 -1
  727. package/dist/tui-ui/transcript-layout.d.ts.map +0 -1
  728. package/dist/tui-ui/transcript-layout.js.map +0 -1
  729. package/dist/ui/box.d.ts.map +0 -1
  730. package/dist/ui/box.js.map +0 -1
  731. package/dist/ui/command-panel.d.ts.map +0 -1
  732. package/dist/ui/command-panel.js.map +0 -1
  733. package/dist/ui/file-completion.d.ts.map +0 -1
  734. package/dist/ui/file-completion.js.map +0 -1
  735. package/dist/ui/markdown.d.ts.map +0 -1
  736. package/dist/ui/markdown.js.map +0 -1
  737. package/dist/ui/multiline-input.d.ts.map +0 -1
  738. package/dist/ui/multiline-input.js.map +0 -1
  739. package/dist/ui/progress.d.ts.map +0 -1
  740. package/dist/ui/progress.js.map +0 -1
  741. package/dist/ui/shared/command-palette.d.ts.map +0 -1
  742. package/dist/ui/shared/command-palette.js.map +0 -1
  743. package/dist/ui/shared/command-suggestions.d.ts.map +0 -1
  744. package/dist/ui/shared/command-suggestions.js.map +0 -1
  745. package/dist/ui/shared/input-frame.d.ts.map +0 -1
  746. package/dist/ui/shared/input-frame.js.map +0 -1
  747. package/dist/ui/shared/text.d.ts.map +0 -1
  748. package/dist/ui/shared/text.js.map +0 -1
  749. package/dist/ui/shared/types.d.ts.map +0 -1
  750. package/dist/ui/shared/types.js.map +0 -1
  751. package/dist/ui/status-bar.d.ts.map +0 -1
  752. package/dist/ui/status-bar.js.map +0 -1
  753. package/dist/ui/stream-markdown.d.ts.map +0 -1
  754. package/dist/ui/stream-markdown.js.map +0 -1
  755. package/dist/ui/suggestions.d.ts.map +0 -1
  756. package/dist/ui/suggestions.js.map +0 -1
  757. package/dist/ui/tool-preview.d.ts.map +0 -1
  758. package/dist/ui/tool-preview.js.map +0 -1
  759. package/dist/ui/user-input.d.ts.map +0 -1
  760. package/dist/ui/user-input.js.map +0 -1
  761. package/dist/utils/debug-log.d.ts.map +0 -1
  762. package/dist/utils/debug-log.js.map +0 -1
  763. package/dist/utils/errors.d.ts.map +0 -1
  764. package/dist/utils/errors.js.map +0 -1
  765. package/dist/utils/json.d.ts.map +0 -1
  766. package/dist/utils/json.js.map +0 -1
  767. package/dist/utils/mask.d.ts.map +0 -1
  768. package/dist/utils/mask.js.map +0 -1
  769. package/dist/utils/observability.d.ts.map +0 -1
  770. package/dist/utils/observability.js.map +0 -1
  771. package/dist/utils/token-estimate.d.ts.map +0 -1
  772. package/dist/utils/token-estimate.js.map +0 -1
  773. package/dist/web/errors.d.ts.map +0 -1
  774. package/dist/web/errors.js.map +0 -1
  775. package/dist/web/event-hub.d.ts.map +0 -1
  776. package/dist/web/event-hub.js.map +0 -1
  777. package/dist/web/file-read-service.d.ts.map +0 -1
  778. package/dist/web/file-read-service.js.map +0 -1
  779. package/dist/web/git-read-model-service.d.ts.map +0 -1
  780. package/dist/web/git-read-model-service.js.map +0 -1
  781. package/dist/web/index.d.ts.map +0 -1
  782. package/dist/web/index.js.map +0 -1
  783. package/dist/web/launch.d.ts.map +0 -1
  784. package/dist/web/launch.js.map +0 -1
  785. package/dist/web/protocol.d.ts.map +0 -1
  786. package/dist/web/protocol.js.map +0 -1
  787. package/dist/web/review-service.d.ts.map +0 -1
  788. package/dist/web/review-service.js.map +0 -1
  789. package/dist/web/server.d.ts.map +0 -1
  790. package/dist/web/server.js.map +0 -1
  791. package/dist/web/terminal-manager.d.ts.map +0 -1
  792. package/dist/web/terminal-manager.js.map +0 -1
  793. package/dist/web/terminal-server.d.ts.map +0 -1
  794. package/dist/web/terminal-server.js.map +0 -1
  795. package/dist/web/workbench-controller.d.ts.map +0 -1
  796. package/dist/web/workbench-controller.js.map +0 -1
  797. package/dist/web-client/assets/FilesPanel-BkoLmgjR.js +0 -2
  798. package/dist/web-client/assets/ReviewPanel-3MVWbMQV.js +0 -1
  799. package/dist/web-client/assets/index-BkIDl_xk.js +0 -16
  800. package/dist/web-client/assets/index-DXMpnWE8.css +0 -1
@@ -8,8 +8,47 @@ exports.continueAsSlashChat = continueAsSlashChat;
8
8
  const workspace_diff_1 = require("../services/workspace-diff");
9
9
  const commit_plan_1 = require("../services/commit-plan");
10
10
  const agent_mode_1 = require("../framework/agent-mode");
11
- function handlePlan(ctx, args) {
11
+ async function handlePlan(ctx, args) {
12
12
  const task = args.trim();
13
+ const [subcommand = '', ...tail] = task.split(/\s+/);
14
+ if (['status', 'approve', 'continue', 'cancel'].includes(subcommand)) {
15
+ if (!ctx.getPlanReviewState || !ctx.reviewPlan) {
16
+ return { success: false, error: 'Durable Plan review is unavailable in this Runtime.' };
17
+ }
18
+ const state = await ctx.getPlanReviewState();
19
+ if (!state)
20
+ return { success: false, error: 'No durable Plan review exists for this Session.' };
21
+ if (subcommand === 'status') {
22
+ return {
23
+ success: true,
24
+ output: `Plan ${state.planDigest.slice(0, 12)} · ${state.status} · revision ${state.revision}`,
25
+ };
26
+ }
27
+ if (state.status !== 'awaiting_review') {
28
+ return { success: false, error: `Plan review is already ${state.status}.` };
29
+ }
30
+ const feedback = tail.join(' ').trim();
31
+ if (subcommand === 'continue' && !feedback) {
32
+ return { success: false, error: 'Usage: /plan continue <feedback>' };
33
+ }
34
+ const action = subcommand === 'approve' ? 'approve' : subcommand === 'continue' ? 'continue' : 'cancel';
35
+ const receipt = await ctx.reviewPlan({
36
+ planDigest: state.planDigest,
37
+ action,
38
+ ...(feedback ? { feedback } : {}),
39
+ });
40
+ const nextMode = action === 'approve' ? 'interactive' : action === 'continue' ? 'plan' : null;
41
+ if (nextMode) {
42
+ if (ctx.agentModeLifecycle)
43
+ ctx.agentModeLifecycle.setMode(nextMode);
44
+ else
45
+ (0, agent_mode_1.setAgentMode)(ctx.store, nextMode);
46
+ }
47
+ return {
48
+ success: true,
49
+ output: `Plan review ${receipt.state.status}; follow-on ${receipt.admission.status}.`,
50
+ };
51
+ }
13
52
  const snapshot = ctx.store.getSnapshot();
14
53
  if (!snapshot.planMode || snapshot.agentMode !== 'plan') {
15
54
  if (ctx.agentModeLifecycle)
@@ -20,12 +59,12 @@ function handlePlan(ctx, args) {
20
59
  if (!task) {
21
60
  return {
22
61
  success: true,
23
- output: 'Plan mode started with the current tool permission policy. Send the task; Orion will save the plan, exit Plan, and execute it in the next logical request.',
62
+ output: 'Plan mode started with the current tool permission policy. Send the task; Orion will save the plan and wait for explicit review.',
24
63
  };
25
64
  }
26
65
  return {
27
66
  success: true,
28
- output: 'Plan mode started with full tool availability under the current permission policy. Orion will save the plan, then execute it in a separate request.',
67
+ output: 'Plan mode started with full tool availability under the current permission policy. Orion will save the plan, then wait for approve, continue, or cancel.',
29
68
  continueAsChat: true,
30
69
  chatInput: task,
31
70
  };
@@ -21,8 +21,8 @@ exports.WORKFLOW_COMMANDS = [
21
21
  },
22
22
  {
23
23
  name: 'plan',
24
- description: 'Plan with normal tool access, save a decision-complete plan, then exit automatically',
25
- argumentHint: '[task description]',
24
+ description: 'Plan with normal tool access, then review the durable result before execution',
25
+ argumentHint: '[task | status | approve | continue <feedback> | cancel]',
26
26
  category: 'workflow',
27
27
  priority: 4,
28
28
  type: 'builtin',
@@ -1,10 +1,10 @@
1
1
  import type { AgentMode } from '../commands/types';
2
2
  import type { AgentRuntimeEventSink, AgentRuntimeInput, AgentRuntimeInputResult, AgentRuntimeInterruptResult, AgentRuntimeSubmitResult } from './agent-runtime-protocol';
3
3
  import type { AgentRuntimeRunnerV1, AgentRuntimeRunInputOptionsV1 } from './agent-runtime-runner';
4
- import type { OrionCodeUiRuntime, FollowupQueueItem, UiEventSink, UiRendererCapabilities } from './ui-events';
4
+ import type { OrionCodeUiRuntime, FollowupQueueItem, FollowupQueueSnapshot, UiEventSink, UiRendererCapabilities } from './ui-events';
5
5
  import type { CommandUiRenderer } from '../commands/types';
6
6
  import { type TurnControllerOptions } from './turn-controller';
7
- import { AgentModeLifecycleController } from '../framework/agent-mode';
7
+ import { AgentModeLifecycleController, type AgentModeSnapshot } from '../framework/agent-mode';
8
8
  export type { AgentRuntimeInput, AgentRuntimeInputResult, AgentRuntimeInterruptResult, AgentRuntimeSubmitResult, } from './agent-runtime-protocol';
9
9
  export type AgentRuntimeRunner = AgentRuntimeRunnerV1;
10
10
  export type RunInputOptions = AgentRuntimeRunInputOptionsV1;
@@ -21,6 +21,11 @@ export interface AgentRuntimePendingPermissionSnapshot {
21
21
  readonly reason?: string;
22
22
  readonly args: Readonly<Record<string, unknown>>;
23
23
  }
24
+ /** Item-local queue CAS failure used by Web and renderer adapters. */
25
+ export declare class FollowupQueueConflictError extends Error {
26
+ readonly code = "queue_item_conflict";
27
+ constructor(message: string);
28
+ }
24
29
  /** Exact agent-mode input used by renderers with a three-state selector. */
25
30
  export interface AgentRuntimeSetAgentModeInput {
26
31
  readonly type: 'set_agent_mode';
@@ -83,6 +88,11 @@ export declare class AgentRuntimeController {
83
88
  constructor(options: AgentRuntimeControllerOptions);
84
89
  hasActiveTurn(): boolean;
85
90
  getFollowupQueue(): readonly FollowupQueueItem[];
91
+ getAgentModeSnapshot(): AgentModeSnapshot;
92
+ getFollowupQueueSnapshot(): FollowupQueueSnapshot;
93
+ editFollowupQueueItem(itemId: string, expectedRevision: number, text: string): AgentRuntimeInputResult;
94
+ moveFollowupQueueItem(itemId: string, expectedRevision: number, targetIndex: number): AgentRuntimeInputResult;
95
+ removeFollowupQueueItem(itemId: string, expectedRevision: number): AgentRuntimeInputResult;
86
96
  /**
87
97
  * Return a detached read model for browser refresh/reconnect recovery.
88
98
  * AbortSignal and resolver ownership remain private to the controller.
@@ -116,8 +126,13 @@ export declare class AgentRuntimeController {
116
126
  interrupt(): AgentRuntimeInterruptResult;
117
127
  stopActiveTurn(): Promise<void>;
118
128
  waitForIdle(): Promise<void>;
129
+ compactContext(): Promise<import('./agent-runtime-runner').AgentRuntimeCompactResultV1>;
130
+ canCompactContext(): boolean;
131
+ planReviewState(): Promise<import('./thread-projection').PlanReviewProjectionV1 | undefined>;
132
+ reviewPlan(input: Parameters<NonNullable<import('./agent-runtime-runner').AgentRuntimeRunnerV1['reviewPlan']>>[0]): Promise<import('./plan-review').PlanReviewResolutionReceiptV1>;
119
133
  private runTurn;
120
134
  private handleRunLoopError;
135
+ private handleCommandError;
121
136
  private synchronizeSettingsAtLogicalBoundary;
122
137
  private emitAppend;
123
138
  private emitStatus;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentRuntimeController = void 0;
3
+ exports.AgentRuntimeController = exports.FollowupQueueConflictError = void 0;
4
+ const async_hooks_1 = require("async_hooks");
4
5
  const crypto_1 = require("crypto");
5
6
  const commands_1 = require("../commands");
6
7
  const parser_1 = require("../commands/parser");
@@ -13,6 +14,15 @@ const tool_allowlist_1 = require("../services/tool-allowlist");
13
14
  const agent_mode_1 = require("../framework/agent-mode");
14
15
  const redaction_1 = require("../services/redaction");
15
16
  const style_1 = require("../tui-core/style");
17
+ /** Item-local queue CAS failure used by Web and renderer adapters. */
18
+ class FollowupQueueConflictError extends Error {
19
+ constructor(message) {
20
+ super(message);
21
+ this.code = 'queue_item_conflict';
22
+ this.name = 'FollowupQueueConflictError';
23
+ }
24
+ }
25
+ exports.FollowupQueueConflictError = FollowupQueueConflictError;
16
26
  function isExitInput(input) {
17
27
  const parsed = (0, parser_1.parseInput)(input.trim());
18
28
  return parsed.isCommand && ['exit', 'quit', 'q'].includes(parsed.name);
@@ -102,7 +112,56 @@ class AgentRuntimeController {
102
112
  return this.turnController.hasActiveTurn();
103
113
  }
104
114
  getFollowupQueue() {
105
- return this.followupQueue;
115
+ return Object.freeze(this.followupQueue.map(item => projectFollowupQueueItem(item)));
116
+ }
117
+ getAgentModeSnapshot() {
118
+ return this.agentModeSnapshot();
119
+ }
120
+ getFollowupQueueSnapshot() {
121
+ return Object.freeze({
122
+ items: Object.freeze(this.followupQueue.map(item => projectFollowupQueueItem(item))),
123
+ limit: this.followupQueueLimit,
124
+ });
125
+ }
126
+ editFollowupQueueItem(itemId, expectedRevision, text) {
127
+ const next = text.trim();
128
+ if (!next)
129
+ return { type: 'empty' };
130
+ const index = this.followupQueue.findIndex(item => item.id === itemId);
131
+ if (index < 0 || this.followupQueue[index].revision !== expectedRevision) {
132
+ throw new FollowupQueueConflictError('The queued message changed before it was edited.');
133
+ }
134
+ const current = this.followupQueue[index];
135
+ this.followupQueue[index] = {
136
+ ...current,
137
+ text: next,
138
+ resolvedText: `${next}${current.contextSuffix}`,
139
+ revision: current.revision + 1,
140
+ };
141
+ this.emitFollowupQueue();
142
+ return { type: 'followup_queue_changed' };
143
+ }
144
+ moveFollowupQueueItem(itemId, expectedRevision, targetIndex) {
145
+ const index = this.followupQueue.findIndex(item => item.id === itemId);
146
+ if (index < 0 ||
147
+ this.followupQueue[index].revision !== expectedRevision ||
148
+ !Number.isSafeInteger(targetIndex)) {
149
+ throw new FollowupQueueConflictError('The queued message changed before it was moved.');
150
+ }
151
+ const bounded = Math.max(0, Math.min(this.followupQueue.length - 1, targetIndex));
152
+ const [item] = this.followupQueue.splice(index, 1);
153
+ this.followupQueue.splice(bounded, 0, { ...item, revision: item.revision + 1 });
154
+ this.emitFollowupQueue();
155
+ return { type: 'followup_queue_changed' };
156
+ }
157
+ removeFollowupQueueItem(itemId, expectedRevision) {
158
+ const index = this.followupQueue.findIndex(item => item.id === itemId);
159
+ if (index < 0 || this.followupQueue[index].revision !== expectedRevision) {
160
+ throw new FollowupQueueConflictError('The queued message changed before it was removed.');
161
+ }
162
+ this.followupQueue.splice(index, 1);
163
+ this.emitFollowupQueue();
164
+ return { type: 'followup_queue_changed' };
106
165
  }
107
166
  /**
108
167
  * Return a detached read model for browser refresh/reconnect recovery.
@@ -165,7 +224,7 @@ class AgentRuntimeController {
165
224
  case 'submit':
166
225
  return this.submit(input.text);
167
226
  case 'queue_followup':
168
- return this.queueFollowup(input.text);
227
+ return this.queueFollowup(input.text, input.resolvedText);
169
228
  case 'manage_followup_queue':
170
229
  return this.manageFollowupQueue(input.action, input.itemId);
171
230
  case 'select_session':
@@ -208,7 +267,7 @@ class AgentRuntimeController {
208
267
  appliesFrom: 'next-logical-request',
209
268
  };
210
269
  }
211
- queueFollowup(input) {
270
+ queueFollowup(input, resolvedInput) {
212
271
  const text = input.trim();
213
272
  if (!text)
214
273
  return { type: 'empty' };
@@ -220,10 +279,15 @@ class AgentRuntimeController {
220
279
  this.emitStatus(`Follow-up queue is full (${this.followupQueueLimit}).`);
221
280
  return { type: 'followup_queue_full' };
222
281
  }
282
+ const resolvedText = resolvedInput?.trim() || text;
283
+ const contextSuffix = resolvedText.startsWith(text) ? resolvedText.slice(text.length) : '';
223
284
  const item = {
224
285
  id: `followup-${this.nextFollowupId++}`,
225
286
  text,
287
+ resolvedText,
288
+ contextSuffix,
226
289
  queuedAt: Date.now(),
290
+ revision: 1,
227
291
  };
228
292
  this.followupQueue.push(item);
229
293
  this.emitFollowupQueue();
@@ -270,21 +334,7 @@ class AgentRuntimeController {
270
334
  }
271
335
  if (parsedInput.isCommand) {
272
336
  const command = (0, commands_1.findCommand)(parsedInput.name);
273
- this.activeRun = this.runCommand(command, parsedInput.args)
274
- .catch(error => this.handleRunLoopError(error))
275
- .finally(() => {
276
- this.activeRun = null;
277
- });
278
- return { type: 'command_handled' };
279
- }
280
- if (this.turnController.hasActiveTurn()) {
281
- const parsed = (0, parser_1.parseInput)(submitted);
282
- if (parsed.isCommand) {
283
- const command = (0, commands_1.findCommand)(parsed.name);
284
- if (!command) {
285
- this.emitStatus(`Unknown command /${parsed.name}; active turn continues.`);
286
- return { type: 'command_ignored' };
287
- }
337
+ if (this.turnController.hasActiveTurn()) {
288
338
  if (command.busyPolicy === 'reject-busy') {
289
339
  this.emitStatus(`/${command.name} rejected: an agent turn is active.`);
290
340
  return { type: 'command_rejected_busy', commandId: command.id };
@@ -302,6 +352,16 @@ class AgentRuntimeController {
302
352
  this.emitStatus(`Queued /${command.name}; it will apply after the active logical request.`);
303
353
  return { type: 'command_queued', commandId: command.id };
304
354
  }
355
+ const run = this.runCommand(command, parsedInput.args)
356
+ .catch(error => this.handleCommandError(command, error))
357
+ .finally(() => {
358
+ if (this.activeRun === run)
359
+ this.activeRun = null;
360
+ });
361
+ this.activeRun = run;
362
+ return { type: 'command_handled' };
363
+ }
364
+ if (this.turnController.hasActiveTurn()) {
305
365
  this.turnController.clearExitIntent();
306
366
  this.turnController.requestRevision(submitted);
307
367
  // v0.1.3 (G1): echo the incremental input to the transcript immediately,
@@ -429,6 +489,7 @@ class AgentRuntimeController {
429
489
  llm: this.options.runtime.llm,
430
490
  compactCoordinator: this.options.runtime.compactCoordinator,
431
491
  modelCoordinator: this.options.runtime.modelCoordinator,
492
+ sessionComposerControls: this.options.runtime.sessionComposerControls,
432
493
  sessionId: this.options.runtime.getSession()?.id,
433
494
  ensureSession: this.options.runtime.ensureSession,
434
495
  setSession: session => this.options.runtime.setSession(session),
@@ -458,6 +519,10 @@ class AgentRuntimeController {
458
519
  describeSettings: this.options.runtime.describeSettings,
459
520
  updateSettings: this.options.runtime.updateSettings,
460
521
  compact: this.runner.compact ? input => this.runner.compact(input) : undefined,
522
+ reviewPlan: this.runner.reviewPlan ? input => this.runner.reviewPlan(input) : undefined,
523
+ getPlanReviewState: this.runner.planReviewState
524
+ ? () => this.runner.planReviewState()
525
+ : undefined,
461
526
  };
462
527
  }
463
528
  submitTurnRequest(request) {
@@ -501,6 +566,23 @@ class AgentRuntimeController {
501
566
  async waitForIdle() {
502
567
  await Promise.all([this.activeRun ?? Promise.resolve(), ...this.goalControlRuns]);
503
568
  }
569
+ async compactContext() {
570
+ if (this.turnController.hasActiveTurn() || !this.runner.compact) {
571
+ return { status: 'rejected', reason: 'runtime_busy' };
572
+ }
573
+ return this.runner.compact({});
574
+ }
575
+ canCompactContext() {
576
+ return Boolean(this.runner.compact);
577
+ }
578
+ async planReviewState() {
579
+ return this.runner.planReviewState?.();
580
+ }
581
+ async reviewPlan(input) {
582
+ if (!this.runner.reviewPlan)
583
+ throw new Error('Plan review is unavailable for this Runtime.');
584
+ return this.runner.reviewPlan(input);
585
+ }
504
586
  async runTurn(firstRequest) {
505
587
  let nextRequest = firstRequest;
506
588
  while (nextRequest && !this.stopping) {
@@ -558,6 +640,19 @@ class AgentRuntimeController {
558
640
  ? undefined
559
641
  : (this.agentModeLifecycle.completedPlanSince(planCompletionBeforeRequest) ?? undefined);
560
642
  this.applyPendingAgentMode(Boolean(completedPlan));
643
+ try {
644
+ await this.options.runtime.sessionComposerControls?.applyPendingAtLogicalBoundary();
645
+ }
646
+ catch (error) {
647
+ const message = error instanceof Error ? error.message : String(error);
648
+ this.emitAppend({
649
+ role: 'error',
650
+ title: 'composer controls',
651
+ content: `Deferred Composer control failed: ${message}`,
652
+ errorLayer: 'runtime',
653
+ });
654
+ this.emitStatus(`Composer control rollback: ${message}`);
655
+ }
561
656
  if (revision?.trim()) {
562
657
  this.emitStatus(this.options.restartingStatus ?? '根据补充调整方向中…');
563
658
  nextRequest = {
@@ -586,7 +681,7 @@ class AgentRuntimeController {
586
681
  const queuedFollowup = queuedCommand ? undefined : this.followupQueue.shift();
587
682
  if (queuedFollowup)
588
683
  this.emitFollowupQueue();
589
- const queuedInput = queuedCommand ?? queuedFollowup?.text;
684
+ const queuedInput = queuedCommand ?? queuedFollowup?.resolvedText;
590
685
  nextRequest = queuedInput
591
686
  ? {
592
687
  inputKind: 'user',
@@ -633,6 +728,17 @@ class AgentRuntimeController {
633
728
  this.emitStatus(readyStatus);
634
729
  this.options.afterTurnLoop?.();
635
730
  }
731
+ handleCommandError(command, error) {
732
+ const message = (0, style_1.sanitizeTerminalText)((0, redaction_1.redactTraceText)(error instanceof Error ? error.message : String(error)));
733
+ this.emitAppend({
734
+ role: 'error',
735
+ title: `/${command.name}`,
736
+ content: message,
737
+ errorLayer: 'runtime',
738
+ command: commandIdentity(command, false),
739
+ });
740
+ this.emitStatus(`/${command.name} failed; the active turn state was not changed.`);
741
+ }
636
742
  async synchronizeSettingsAtLogicalBoundary() {
637
743
  const synchronize = this.options.runtime.synchronizeSettings;
638
744
  if (!synchronize)
@@ -657,7 +763,10 @@ class AgentRuntimeController {
657
763
  emitFollowupQueue() {
658
764
  this.eventSink.emit({
659
765
  type: 'followup_queue_changed',
660
- snapshot: { items: [...this.followupQueue], limit: this.followupQueueLimit },
766
+ snapshot: {
767
+ items: this.followupQueue.map(item => projectFollowupQueueItem(item)),
768
+ limit: this.followupQueueLimit,
769
+ },
661
770
  });
662
771
  }
663
772
  agentModeSnapshot() {
@@ -975,36 +1084,87 @@ function commandIdentity(command, success) {
975
1084
  };
976
1085
  }
977
1086
  async function captureCommandOutput(execute) {
978
- const lines = [];
979
- const originalLog = console.log;
980
- const originalError = console.error;
981
- const originalWarn = console.warn;
982
- const capture = (...values) => {
983
- const line = values
984
- .map(value => {
985
- if (typeof value === 'string')
986
- return value;
987
- try {
988
- return JSON.stringify(value);
989
- }
990
- catch {
991
- return String(value);
992
- }
993
- })
994
- .join(' ');
995
- lines.push((0, style_1.sanitizeTerminalText)(line));
996
- };
997
- console.log = capture;
998
- console.error = capture;
999
- console.warn = capture;
1087
+ const capture = { active: true, lines: [] };
1088
+ acquireCommandConsoleBridge();
1000
1089
  try {
1001
- return { result: await execute(), output: lines.join('\n').trim() };
1090
+ const result = await commandOutputCaptureStorage.run(capture, execute);
1091
+ return { result, output: capture.lines.join('\n').trim() };
1002
1092
  }
1003
1093
  finally {
1004
- console.log = originalLog;
1005
- console.error = originalError;
1006
- console.warn = originalWarn;
1094
+ capture.active = false;
1095
+ releaseCommandConsoleBridge();
1096
+ }
1097
+ }
1098
+ const commandOutputCaptureStorage = new async_hooks_1.AsyncLocalStorage();
1099
+ let commandConsoleBridgeReferences = 0;
1100
+ let commandConsoleOriginalMethods;
1101
+ const commandConsoleBridge = {
1102
+ log: (...values) => routeCommandConsole('log', values),
1103
+ error: (...values) => routeCommandConsole('error', values),
1104
+ warn: (...values) => routeCommandConsole('warn', values),
1105
+ };
1106
+ function acquireCommandConsoleBridge() {
1107
+ if (commandConsoleBridgeReferences === 0) {
1108
+ commandConsoleOriginalMethods = {
1109
+ log: originalConsoleMethod('log'),
1110
+ error: originalConsoleMethod('error'),
1111
+ warn: originalConsoleMethod('warn'),
1112
+ };
1113
+ console.log = commandConsoleBridge.log;
1114
+ console.error = commandConsoleBridge.error;
1115
+ console.warn = commandConsoleBridge.warn;
1116
+ }
1117
+ commandConsoleBridgeReferences += 1;
1118
+ }
1119
+ function releaseCommandConsoleBridge() {
1120
+ commandConsoleBridgeReferences = Math.max(0, commandConsoleBridgeReferences - 1);
1121
+ if (commandConsoleBridgeReferences !== 0 || !commandConsoleOriginalMethods)
1122
+ return;
1123
+ if (console.log === commandConsoleBridge.log)
1124
+ console.log = commandConsoleOriginalMethods.log;
1125
+ if (console.error === commandConsoleBridge.error)
1126
+ console.error = commandConsoleOriginalMethods.error;
1127
+ if (console.warn === commandConsoleBridge.warn)
1128
+ console.warn = commandConsoleOriginalMethods.warn;
1129
+ }
1130
+ function originalConsoleMethod(method) {
1131
+ const current = console[method];
1132
+ if (current !== commandConsoleBridge[method] || !commandConsoleOriginalMethods)
1133
+ return current;
1134
+ return commandConsoleOriginalMethods[method];
1135
+ }
1136
+ function routeCommandConsole(method, values) {
1137
+ const capture = commandOutputCaptureStorage.getStore();
1138
+ if (capture?.active) {
1139
+ capture.lines.push((0, style_1.sanitizeTerminalText)((0, redaction_1.redactTraceText)(formatConsoleValues(values))));
1140
+ return;
1007
1141
  }
1142
+ const original = commandConsoleOriginalMethods?.[method];
1143
+ if (original && original !== commandConsoleBridge[method]) {
1144
+ Reflect.apply(original, console, values);
1145
+ }
1146
+ }
1147
+ function formatConsoleValues(values) {
1148
+ return values
1149
+ .map(value => {
1150
+ if (typeof value === 'string')
1151
+ return value;
1152
+ try {
1153
+ return JSON.stringify(value) ?? String(value);
1154
+ }
1155
+ catch {
1156
+ return String(value);
1157
+ }
1158
+ })
1159
+ .join(' ');
1160
+ }
1161
+ function projectFollowupQueueItem(item) {
1162
+ return Object.freeze({
1163
+ id: item.id,
1164
+ text: item.text,
1165
+ queuedAt: item.queuedAt,
1166
+ revision: item.revision,
1167
+ });
1008
1168
  }
1009
1169
  function createUnavailableRunner() {
1010
1170
  return {
@@ -11,7 +11,10 @@ export type AgentRuntimeInput = {
11
11
  metadata?: Record<string, unknown>;
12
12
  } | {
13
13
  type: 'queue_followup';
14
+ /** User-visible text retained by queue editors and renderer snapshots. */
14
15
  text: string;
16
+ /** Optional Host-resolved execution text; never projected back to renderers. */
17
+ resolvedText?: string;
15
18
  source?: 'composer' | 'programmatic';
16
19
  } | {
17
20
  type: 'manage_followup_queue';
@@ -1,6 +1,8 @@
1
1
  import type { AgentInputKind, AgentTurnRequest } from './goals/types';
2
2
  import type { GoalRuntimeControlResultV2, GoalRuntimeControlV2 } from './goal-runtime-coordinator';
3
3
  import type { ThreadSessionRuntimeActivationV1 } from './thread-session-view';
4
+ import type { PlanReviewActionV1, PlanReviewResolutionReceiptV1 } from './plan-review';
5
+ import type { PlanReviewProjectionV1 } from './thread-projection';
4
6
  /** Renderer-neutral options for one admitted runtime request. */
5
7
  export interface AgentRuntimeRunInputOptionsV1 {
6
8
  readonly abortSignal?: AbortSignal;
@@ -31,6 +33,12 @@ export interface AgentRuntimeRunnerV1 {
31
33
  restoreSession?(activation?: ThreadSessionRuntimeActivationV1): Promise<void>;
32
34
  controlGoal?(control: GoalRuntimeControlV2): Promise<GoalRuntimeControlResultV2>;
33
35
  compact?(input?: AgentRuntimeCompactInputV1): Promise<AgentRuntimeCompactResultV1>;
36
+ planReviewState?(): Promise<PlanReviewProjectionV1 | undefined>;
37
+ reviewPlan?(input: {
38
+ readonly planDigest: string;
39
+ readonly action: PlanReviewActionV1;
40
+ readonly feedback?: string;
41
+ }): Promise<PlanReviewResolutionReceiptV1>;
34
42
  interrupt?(reason?: string): void;
35
43
  close?(reason?: string): void | Promise<void>;
36
44
  }
@@ -223,7 +223,7 @@ function replayAll(store) {
223
223
  const events = [];
224
224
  let cursor = 0;
225
225
  while (true) {
226
- const page = store.replay(cursor);
226
+ const page = store.replay(cursor, undefined, 'capability_receipt_journal');
227
227
  events.push(...page.events);
228
228
  if (!page.hasMore)
229
229
  return events;
@@ -72,7 +72,7 @@ function readItemReceipt(sessionId, store, item) {
72
72
  if (!terminalSeq || terminalSeq < 2 || !toolName || !item.receipt) {
73
73
  throw new tool_receipt_validator_1.DurableToolReceiptValidationError('Terminal tool projection is missing its canonical receipt identity.');
74
74
  }
75
- const pair = store.replay(terminalSeq - 2, 2).events;
75
+ const pair = store.replay(terminalSeq - 2, 2, 'durable_tool_receipt').events;
76
76
  const factEvent = pair.find(event => event.seq === terminalSeq - 1);
77
77
  const terminalEvent = pair.find(event => event.seq === terminalSeq);
78
78
  if (!factEvent || !terminalEvent || terminalEvent.itemId !== item.itemId) {
@@ -477,7 +477,7 @@ function materializeFacts(threadsDir, plan) {
477
477
  if (cursor > plan.events.length) {
478
478
  throw diverged(`Existing Thread has ${cursor} events, expected ${plan.events.length}`);
479
479
  }
480
- const existing = cursor === 0 ? [] : store.replay(0, cursor).events;
480
+ const existing = cursor === 0 ? [] : store.replay(0, cursor, 'legacy_materializer').events;
481
481
  for (let index = 0; index < existing.length; index += 1) {
482
482
  if ((0, canonical_1.canonicalRuntimeJson)(existing[index]) !== (0, canonical_1.canonicalRuntimeJson)(plan.events[index])) {
483
483
  throw diverged(`Existing Thread diverges from import plan at seq ${index + 1}`);
@@ -490,7 +490,7 @@ function materializeFacts(threadsDir, plan) {
490
490
  return store;
491
491
  }
492
492
  function verifyMaterializedStore(store, plan) {
493
- const replay = store.replay(0, Math.max(1, plan.events.length));
493
+ const replay = store.replay(0, Math.max(1, plan.events.length), 'legacy_materializer');
494
494
  if (replay.hasMore ||
495
495
  replay.events.length !== plan.events.length ||
496
496
  (0, canonical_1.digestRuntimeValue)(replay.events) !== plan.eventDigest) {
@@ -14,7 +14,7 @@ import { PromptRegistryV1 } from './prompts';
14
14
  import { ResourceScope, type ResourceScopeCloseReport } from './resource-scope';
15
15
  import { type RuntimeContributorSlots, type RuntimeContributors, type RuntimeServicePort, type RuntimeServices, type RuntimeServiceSlots } from './runtime-services';
16
16
  import { LazySkillRuntime, type LazySkillRuntimeOptions, type LazySkillRuntimeStatsV1 } from './skills';
17
- import { ExecutionService, type AuthoritySnapshotV1, type ToolBindingV1 } from './step-snapshot';
17
+ import { ExecutionService, type AuthoritySnapshotV1, type ToolBindingV1, type WorkspaceMutationCoordinatorV1 } from './step-snapshot';
18
18
  import { ThreadCompactMaintenanceRunnerV1, ThreadCompactTransactionPersistenceV1, type ThreadCompactMaintenanceRunnerOptionsV1 } from './thread-compact-persistence';
19
19
  import { type TaskContextService, type TaskContextServiceOptions } from './task-context-service';
20
20
  import { ThreadEventStore, type ThreadEventStoreOptionsV1 } from './thread-event-store';
@@ -116,6 +116,7 @@ export interface OrionRuntimeV1Options {
116
116
  readonly mcp: Omit<LazyMcpRuntimeOptions, 'signal'>;
117
117
  readonly resolveCapabilityConfiguration: OrionCapabilityConfigurationResolverV1;
118
118
  readonly approvalHandler?: FirstPartyApprovalHandlerV1;
119
+ readonly workspaceMutationCoordinator?: WorkspaceMutationCoordinatorV1;
119
120
  readonly contributors?: RuntimeContributorSlots;
120
121
  readonly subagents?: OrionSubagentCompositionV1;
121
122
  readonly thread?: Omit<ThreadRuntimeOptionsV1, 'store' | 'runner' | 'maintenanceRunner' | 'projectPath' | 'requireTurnCommit'>;
@@ -82,22 +82,24 @@ class OrionRuntimeV1 {
82
82
  const projection = graph.thread.getProjection();
83
83
  const admission = graph.thread.getAdmissionSnapshot();
84
84
  const eventCursor = graph.eventStore.getCursor();
85
- const recent = graph.eventStore.replay(Math.max(0, eventCursor - 256), 256).events;
86
- const latestCapabilityEvent = [...recent]
87
- .reverse()
88
- .find(event => event.payload.type === 'capability.receipt');
89
- const latestSnapshotEvent = [...recent]
90
- .reverse()
91
- .find(event => event.payload.type === 'step.snapshot');
92
- const latestCommitEvent = [...recent]
93
- .reverse()
94
- .find(event => event.payload.type === 'turn.committed');
95
- const latestCompactEvent = [...recent]
96
- .reverse()
97
- .find(event => event.payload.type.startsWith('compact.'));
85
+ const legacyRecent = projection.diagnosticEvents && projection.compactEvents
86
+ ? []
87
+ : graph.eventStore.replay(Math.max(0, eventCursor - 256), 256, 'runtime_diagnostics_legacy')
88
+ .events;
89
+ const latestCapabilityEvent = projection.diagnosticEvents?.latestCapability ??
90
+ [...legacyRecent].reverse().find(event => event.payload.type === 'capability.receipt');
91
+ const latestSnapshotEvent = projection.diagnosticEvents?.latestStepSnapshot ??
92
+ [...legacyRecent].reverse().find(event => event.payload.type === 'step.snapshot');
93
+ const latestCommitProjection = Object.values(projection.turns)
94
+ .map(turn => turn.commit)
95
+ .filter((commit) => Boolean(commit))
96
+ .sort((left, right) => left.seq - right.seq)
97
+ .at(-1);
98
+ const latestCompactEvent = projection.compactEvents?.at(-1) ??
99
+ [...legacyRecent].reverse().find(event => event.payload.type.startsWith('compact.'));
98
100
  const capability = parseCapabilityDiagnostics(latestCapabilityEvent, latestSnapshotEvent);
99
- const latestCommit = latestCommitEvent?.payload.type === 'turn.committed'
100
- ? (0, turn_commit_1.parseTurnCommitV1)(latestCommitEvent.payload.data.receipt)
101
+ const latestCommit = latestCommitProjection
102
+ ? (0, turn_commit_1.parseTurnCommitV1)(latestCommitProjection.receipt)
101
103
  : undefined;
102
104
  const task = graph.taskContext.snapshot();
103
105
  const activeTurn = projection.activeTurnId
@@ -354,7 +356,7 @@ class OrionRuntimeV1 {
354
356
  });
355
357
  const approval = new first_party_tool_services_1.FirstPartyToolApprovalServiceV1(this.options.approvalHandler);
356
358
  const sandbox = new first_party_tool_services_1.FirstPartySandboxServiceV1();
357
- const execution = new step_snapshot_1.ExecutionService();
359
+ const execution = new step_snapshot_1.ExecutionService(this.options.workspaceMutationCoordinator);
358
360
  const toolJournal = new thread_tool_journal_1.ThreadToolInvocationJournalV1(eventStore);
359
361
  const gateway = new tool_gateway_1.ToolGateway({
360
362
  policy,