@orion-agents/orion-code 0.3.2 → 0.3.7

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 (834) hide show
  1. package/CHANGELOG.md +207 -0
  2. package/README.md +102 -18
  3. package/README.zh-CN.md +40 -16
  4. package/dist/commands/context-tool-command-handlers.js +1 -5
  5. package/dist/commands/registry.js +1 -4
  6. package/dist/harness/intent.js +69 -16
  7. package/dist/harness/turn-summary.js +3 -1
  8. package/dist/memory/embeddings.js +2 -3
  9. package/dist/memory/prompts.js +1 -1
  10. package/dist/memory/relevant-finder.js +125 -15
  11. package/dist/memory/vector-store.js +13 -8
  12. package/dist/migration/migrate.js +8 -12
  13. package/dist/runtime/agent-runtime-controller.d.ts +1 -0
  14. package/dist/runtime/agent-runtime-controller.js +92 -41
  15. package/dist/runtime/capability-receipt-journal.js +1 -1
  16. package/dist/runtime/composer/history.js +1 -3
  17. package/dist/runtime/composer/layout.js +7 -4
  18. package/dist/runtime/durable-tool-receipt-reader.js +1 -1
  19. package/dist/runtime/legacy-thread-materializer.d.ts +3 -1
  20. package/dist/runtime/legacy-thread-materializer.js +17 -5
  21. package/dist/runtime/orion-runtime-v1.d.ts +2 -1
  22. package/dist/runtime/orion-runtime-v1.js +18 -16
  23. package/dist/runtime/orion-session-runner.d.ts +2 -0
  24. package/dist/runtime/orion-session-runner.js +12 -4
  25. package/dist/runtime/product-bootstrap.d.ts +18 -0
  26. package/dist/runtime/product-bootstrap.js +402 -335
  27. package/dist/runtime/product-orion-runtime.d.ts +5 -0
  28. package/dist/runtime/product-orion-runtime.js +2 -0
  29. package/dist/runtime/release-receipts.d.ts +7 -3
  30. package/dist/runtime/release-receipts.js +79 -1
  31. package/dist/runtime/rich-text/ansi-parser.js +12 -2
  32. package/dist/runtime/rich-text/layout.js +15 -19
  33. package/dist/runtime/step-snapshot.d.ts +12 -0
  34. package/dist/runtime/step-snapshot.js +14 -1
  35. package/dist/runtime/subagent-thread-runtime.js +1 -1
  36. package/dist/runtime/subagents/budget.js +4 -1
  37. package/dist/runtime/subagents/policy.js +11 -4
  38. package/dist/runtime/subagents/provider-gate.js +6 -4
  39. package/dist/runtime/subagents/research-quality.js +3 -1
  40. package/dist/runtime/subagents/research-renderer.js +9 -2
  41. package/dist/runtime/subagents/result-parser.js +18 -7
  42. package/dist/runtime/thread-event-store.d.ts +14 -3
  43. package/dist/runtime/thread-event-store.js +77 -20
  44. package/dist/runtime/thread-projection.d.ts +36 -0
  45. package/dist/runtime/thread-projection.js +54 -1
  46. package/dist/runtime/thread-runtime.d.ts +2 -2
  47. package/dist/runtime/thread-runtime.js +2 -2
  48. package/dist/runtime/thread-session-index.d.ts +17 -1
  49. package/dist/runtime/thread-session-index.js +89 -6
  50. package/dist/runtime/thread-session-view.d.ts +4 -1
  51. package/dist/runtime/thread-session-view.js +5 -2
  52. package/dist/runtime/thread-ui-adapter.js +10 -3
  53. package/dist/runtime/tool-gateway.js +1 -0
  54. package/dist/runtime/tool-output-presentation.js +7 -7
  55. package/dist/runtime/turn-commit.js +1 -1
  56. package/dist/runtime/turn-controller.js +1 -2
  57. package/dist/runtime/ui-events.d.ts +3 -0
  58. package/dist/runtime/workspace-runtime-kernel.d.ts +67 -0
  59. package/dist/runtime/workspace-runtime-kernel.js +148 -0
  60. package/dist/services/auth/auth.js +1 -4
  61. package/dist/services/auth/aws.js +24 -14
  62. package/dist/services/auto-fix/autoFixRunner.js +1 -1
  63. package/dist/services/auto-fix/index.d.ts +1 -1
  64. package/dist/services/diagnostic-tracking/diagnosticTracking.js +4 -2
  65. package/dist/services/diagnostic-tracking/index.d.ts +1 -1
  66. package/dist/services/effort.js +1 -9
  67. package/dist/services/file-glob.js +3 -4
  68. package/dist/services/global-config.d.ts +2 -0
  69. package/dist/services/global-config.js +7 -1
  70. package/dist/services/mcp/transports.js +4 -4
  71. package/dist/services/model-catalog.js +179 -30
  72. package/dist/services/model-context.js +1 -1
  73. package/dist/services/provider-resilience/coordinator.d.ts +3 -1
  74. package/dist/services/provider-resilience/coordinator.js +23 -1
  75. package/dist/services/provider-resilience/request-gate.js +7 -2
  76. package/dist/services/provider-resilience/stream-recovery.js +1 -3
  77. package/dist/services/redaction.js +19 -2
  78. package/dist/services/session-storage.d.ts +28 -3
  79. package/dist/services/session-storage.js +70 -6
  80. package/dist/services/settings-coordinator.d.ts +3 -1
  81. package/dist/services/settings-coordinator.js +40 -8
  82. package/dist/services/settings-document-repository.d.ts +8 -1
  83. package/dist/services/settings-document-repository.js +22 -1
  84. package/dist/services/smart-routing.js +19 -11
  85. package/dist/services/verification-profile.js +17 -22
  86. package/dist/services/web-search-provider.js +21 -9
  87. package/dist/services/workspace-diff.js +10 -4
  88. package/dist/skills/builtin/code-review/SKILL.md +1 -1
  89. package/dist/skills/builtin/security-check/SKILL.md +1 -1
  90. package/dist/skills/builtin/test-gen/SKILL.md +1 -1
  91. package/dist/terminal-ui/editor.js +6 -2
  92. package/dist/terminal-ui/output-queue.js +9 -3
  93. package/dist/tools/lsp.js +12 -6
  94. package/dist/tui-core/frame.js +9 -7
  95. package/dist/tui-ui/transcript-cache.js +6 -6
  96. package/dist/tui-ui/transcript-inspector-layout.js +13 -6
  97. package/dist/tui-ui/transcript-inspector-surface.js +4 -1
  98. package/dist/tui-ui/transcript-inspector.js +3 -8
  99. package/dist/ui/box.js +14 -7
  100. package/dist/ui/markdown.js +4 -2
  101. package/dist/ui/shared/input-frame.js +12 -8
  102. package/dist/ui/stream-markdown.js +1 -1
  103. package/dist/ui/tool-preview.js +11 -3
  104. package/dist/ui/user-input.js +16 -10
  105. package/dist/web/event-hub.d.ts +2 -0
  106. package/dist/web/event-hub.js +43 -6
  107. package/dist/web/file-read-service.d.ts +2 -0
  108. package/dist/web/file-read-service.js +39 -12
  109. package/dist/web/git-read-model-service.js +7 -0
  110. package/dist/web/protocol.d.ts +53 -3
  111. package/dist/web/protocol.js +39 -2
  112. package/dist/web/review-service.d.ts +1 -0
  113. package/dist/web/review-service.js +1 -0
  114. package/dist/web/server.js +99 -6
  115. package/dist/web/session-runtime-registry.d.ts +138 -0
  116. package/dist/web/session-runtime-registry.js +471 -0
  117. package/dist/web/terminal-manager.js +23 -4
  118. package/dist/web/terminal-server.js +35 -6
  119. package/dist/web/workbench-controller.d.ts +82 -3
  120. package/dist/web/workbench-controller.js +771 -138
  121. package/dist/web/workspace-mutation-arbiter.d.ts +54 -0
  122. package/dist/web/workspace-mutation-arbiter.js +267 -0
  123. package/dist/web-client/assets/{DiffViewer-eaQNsnCh.js → DiffViewer-DqbZ02RN.js} +1 -1
  124. package/dist/web-client/assets/FilesPanel-Bu1Ab2kJ.js +2 -0
  125. package/dist/web-client/assets/{GitPanel-CnU4XVr7.js → GitPanel-BixIWb4k.js} +1 -1
  126. package/dist/web-client/assets/ReviewPanel-DsqJpku_.js +1 -0
  127. package/dist/web-client/assets/{TerminalPanel-Q5mSSsoK.js → TerminalPanel-DdjQP2mp.js} +14 -14
  128. package/dist/web-client/assets/index-30GT9Vnx.js +17 -0
  129. package/dist/web-client/assets/index-DQfpqPTD.css +1 -0
  130. package/dist/web-client/index.html +4 -4
  131. package/docs/architecture/v0.3.3-web-api.yaml +3205 -0
  132. package/docs/architecture/v0.3.4-stabilization-contract.md +32 -0
  133. package/docs/migration/v0.3.2-to-v0.3.3.md +62 -0
  134. package/docs/migration/v0.3.3-to-v0.3.4.md +36 -0
  135. package/docs/plan/v0.3.3-plan.md +1113 -0
  136. package/docs/plan/v0.3.4-stabilization-plan.md +89 -0
  137. package/docs/test/v0.3.3-web-workbench-e2e-plan.md +79 -0
  138. package/docs/test/v0.3.4-stabilization-e2e-plan.md +54 -0
  139. package/npm-shrinkwrap.json +379 -143
  140. package/package.json +12 -1
  141. package/dist/cli.d.ts.map +0 -1
  142. package/dist/cli.js.map +0 -1
  143. package/dist/commands/context-commands.d.ts.map +0 -1
  144. package/dist/commands/context-commands.js.map +0 -1
  145. package/dist/commands/context-tool-command-handlers.d.ts.map +0 -1
  146. package/dist/commands/context-tool-command-handlers.js.map +0 -1
  147. package/dist/commands/core-command-handlers.d.ts.map +0 -1
  148. package/dist/commands/core-command-handlers.js.map +0 -1
  149. package/dist/commands/diagnostic-command-handlers.d.ts.map +0 -1
  150. package/dist/commands/diagnostic-command-handlers.js.map +0 -1
  151. package/dist/commands/diagnostic-commands.d.ts.map +0 -1
  152. package/dist/commands/diagnostic-commands.js.map +0 -1
  153. package/dist/commands/index.d.ts.map +0 -1
  154. package/dist/commands/index.js.map +0 -1
  155. package/dist/commands/model-command-handlers.d.ts.map +0 -1
  156. package/dist/commands/model-command-handlers.js.map +0 -1
  157. package/dist/commands/model-commands.d.ts.map +0 -1
  158. package/dist/commands/model-commands.js.map +0 -1
  159. package/dist/commands/parser.d.ts.map +0 -1
  160. package/dist/commands/parser.js.map +0 -1
  161. package/dist/commands/registry.d.ts.map +0 -1
  162. package/dist/commands/registry.js.map +0 -1
  163. package/dist/commands/session-command-handlers.d.ts.map +0 -1
  164. package/dist/commands/session-command-handlers.js.map +0 -1
  165. package/dist/commands/session-commands.d.ts.map +0 -1
  166. package/dist/commands/session-commands.js.map +0 -1
  167. package/dist/commands/system-commands.d.ts.map +0 -1
  168. package/dist/commands/system-commands.js.map +0 -1
  169. package/dist/commands/target-command.d.ts.map +0 -1
  170. package/dist/commands/target-command.js.map +0 -1
  171. package/dist/commands/tool-commands.d.ts.map +0 -1
  172. package/dist/commands/tool-commands.js.map +0 -1
  173. package/dist/commands/types.d.ts.map +0 -1
  174. package/dist/commands/types.js.map +0 -1
  175. package/dist/commands/workflow-command-handlers.d.ts.map +0 -1
  176. package/dist/commands/workflow-command-handlers.js.map +0 -1
  177. package/dist/commands/workflow-commands.d.ts.map +0 -1
  178. package/dist/commands/workflow-commands.js.map +0 -1
  179. package/dist/core/checkpoint.d.ts.map +0 -1
  180. package/dist/core/checkpoint.js.map +0 -1
  181. package/dist/core/cost-tracker.d.ts.map +0 -1
  182. package/dist/core/cost-tracker.js.map +0 -1
  183. package/dist/core/security-warning.d.ts.map +0 -1
  184. package/dist/core/security-warning.js.map +0 -1
  185. package/dist/core/strategy-tracker.d.ts.map +0 -1
  186. package/dist/core/strategy-tracker.js.map +0 -1
  187. package/dist/core/tool-artifacts.d.ts.map +0 -1
  188. package/dist/core/tool-artifacts.js.map +0 -1
  189. package/dist/core/warn-dedup.d.ts.map +0 -1
  190. package/dist/core/warn-dedup.js.map +0 -1
  191. package/dist/framework/agent-mode.d.ts.map +0 -1
  192. package/dist/framework/agent-mode.js.map +0 -1
  193. package/dist/framework/external-assertion.d.ts.map +0 -1
  194. package/dist/framework/external-assertion.js.map +0 -1
  195. package/dist/framework/index.d.ts.map +0 -1
  196. package/dist/framework/index.js.map +0 -1
  197. package/dist/framework/loop-budget-contract.d.ts.map +0 -1
  198. package/dist/framework/loop-budget-contract.js.map +0 -1
  199. package/dist/framework/prompt.d.ts.map +0 -1
  200. package/dist/framework/prompt.js.map +0 -1
  201. package/dist/framework/query.d.ts.map +0 -1
  202. package/dist/framework/query.js.map +0 -1
  203. package/dist/framework/stop-decision.d.ts.map +0 -1
  204. package/dist/framework/stop-decision.js.map +0 -1
  205. package/dist/framework/store.d.ts.map +0 -1
  206. package/dist/framework/store.js.map +0 -1
  207. package/dist/framework/tool-call-orchestrator.d.ts.map +0 -1
  208. package/dist/framework/tool-call-orchestrator.js.map +0 -1
  209. package/dist/framework/tool-serializer.d.ts.map +0 -1
  210. package/dist/framework/tool-serializer.js.map +0 -1
  211. package/dist/framework/tool-state.d.ts.map +0 -1
  212. package/dist/framework/tool-state.js.map +0 -1
  213. package/dist/framework/tool.d.ts.map +0 -1
  214. package/dist/framework/tool.js.map +0 -1
  215. package/dist/harness/assembler.d.ts.map +0 -1
  216. package/dist/harness/assembler.js.map +0 -1
  217. package/dist/harness/capability-profile.d.ts.map +0 -1
  218. package/dist/harness/capability-profile.js.map +0 -1
  219. package/dist/harness/capsule.d.ts.map +0 -1
  220. package/dist/harness/capsule.js.map +0 -1
  221. package/dist/harness/compact-benchmark-corpus.d.ts.map +0 -1
  222. package/dist/harness/compact-benchmark-corpus.js.map +0 -1
  223. package/dist/harness/context-harness.d.ts.map +0 -1
  224. package/dist/harness/context-harness.js.map +0 -1
  225. package/dist/harness/contract.d.ts.map +0 -1
  226. package/dist/harness/contract.js.map +0 -1
  227. package/dist/harness/drift-guard.d.ts.map +0 -1
  228. package/dist/harness/drift-guard.js.map +0 -1
  229. package/dist/harness/evidence.d.ts.map +0 -1
  230. package/dist/harness/evidence.js.map +0 -1
  231. package/dist/harness/index.d.ts.map +0 -1
  232. package/dist/harness/index.js.map +0 -1
  233. package/dist/harness/intent.d.ts.map +0 -1
  234. package/dist/harness/intent.js.map +0 -1
  235. package/dist/harness/ledger.d.ts.map +0 -1
  236. package/dist/harness/ledger.js.map +0 -1
  237. package/dist/harness/progress-controller.d.ts.map +0 -1
  238. package/dist/harness/progress-controller.js.map +0 -1
  239. package/dist/harness/state.d.ts.map +0 -1
  240. package/dist/harness/state.js.map +0 -1
  241. package/dist/harness/stop-controller.d.ts.map +0 -1
  242. package/dist/harness/stop-controller.js.map +0 -1
  243. package/dist/harness/turn-summary.d.ts.map +0 -1
  244. package/dist/harness/turn-summary.js.map +0 -1
  245. package/dist/harness/types.d.ts.map +0 -1
  246. package/dist/harness/types.js.map +0 -1
  247. package/dist/harness/verification.d.ts.map +0 -1
  248. package/dist/harness/verification.js.map +0 -1
  249. package/dist/index.d.ts.map +0 -1
  250. package/dist/index.js.map +0 -1
  251. package/dist/memory/embeddings.d.ts.map +0 -1
  252. package/dist/memory/embeddings.js.map +0 -1
  253. package/dist/memory/entrypoint.d.ts.map +0 -1
  254. package/dist/memory/entrypoint.js.map +0 -1
  255. package/dist/memory/index.d.ts.map +0 -1
  256. package/dist/memory/index.js.map +0 -1
  257. package/dist/memory/prompt-context.d.ts.map +0 -1
  258. package/dist/memory/prompt-context.js.map +0 -1
  259. package/dist/memory/prompts.d.ts.map +0 -1
  260. package/dist/memory/prompts.js.map +0 -1
  261. package/dist/memory/relevant-finder.d.ts.map +0 -1
  262. package/dist/memory/relevant-finder.js.map +0 -1
  263. package/dist/memory/semantic-config.d.ts.map +0 -1
  264. package/dist/memory/semantic-config.js.map +0 -1
  265. package/dist/memory/semantic-search.d.ts.map +0 -1
  266. package/dist/memory/semantic-search.js.map +0 -1
  267. package/dist/memory/storage.d.ts.map +0 -1
  268. package/dist/memory/storage.js.map +0 -1
  269. package/dist/memory/store.d.ts.map +0 -1
  270. package/dist/memory/store.js.map +0 -1
  271. package/dist/memory/team-paths.d.ts.map +0 -1
  272. package/dist/memory/team-paths.js.map +0 -1
  273. package/dist/memory/types.d.ts.map +0 -1
  274. package/dist/memory/types.js.map +0 -1
  275. package/dist/memory/validation.d.ts.map +0 -1
  276. package/dist/memory/validation.js.map +0 -1
  277. package/dist/memory/vector-store.d.ts.map +0 -1
  278. package/dist/memory/vector-store.js.map +0 -1
  279. package/dist/migration/command.d.ts.map +0 -1
  280. package/dist/migration/command.js.map +0 -1
  281. package/dist/migration/index.d.ts.map +0 -1
  282. package/dist/migration/index.js.map +0 -1
  283. package/dist/migration/migrate.d.ts.map +0 -1
  284. package/dist/migration/migrate.js.map +0 -1
  285. package/dist/migration/types.d.ts.map +0 -1
  286. package/dist/migration/types.js.map +0 -1
  287. package/dist/print-ui/launch.d.ts.map +0 -1
  288. package/dist/print-ui/launch.js.map +0 -1
  289. package/dist/product/environment.d.ts.map +0 -1
  290. package/dist/product/environment.js.map +0 -1
  291. package/dist/product/identity.d.ts.map +0 -1
  292. package/dist/product/identity.js.map +0 -1
  293. package/dist/product/index.d.ts.map +0 -1
  294. package/dist/product/index.js.map +0 -1
  295. package/dist/product/paths.d.ts.map +0 -1
  296. package/dist/product/paths.js.map +0 -1
  297. package/dist/product/version.d.ts.map +0 -1
  298. package/dist/product/version.js.map +0 -1
  299. package/dist/runtime/agent-loop.d.ts.map +0 -1
  300. package/dist/runtime/agent-loop.js.map +0 -1
  301. package/dist/runtime/agent-runtime-controller.d.ts.map +0 -1
  302. package/dist/runtime/agent-runtime-controller.js.map +0 -1
  303. package/dist/runtime/agent-runtime-protocol.d.ts.map +0 -1
  304. package/dist/runtime/agent-runtime-protocol.js.map +0 -1
  305. package/dist/runtime/agent-runtime-runner.d.ts.map +0 -1
  306. package/dist/runtime/agent-runtime-runner.js.map +0 -1
  307. package/dist/runtime/agent-status.d.ts.map +0 -1
  308. package/dist/runtime/agent-status.js.map +0 -1
  309. package/dist/runtime/aggregate-tool-presenter.d.ts.map +0 -1
  310. package/dist/runtime/aggregate-tool-presenter.js.map +0 -1
  311. package/dist/runtime/batch-read-service.d.ts.map +0 -1
  312. package/dist/runtime/batch-read-service.js.map +0 -1
  313. package/dist/runtime/builtin-tool-provider.d.ts.map +0 -1
  314. package/dist/runtime/builtin-tool-provider.js.map +0 -1
  315. package/dist/runtime/capabilities/compiler.d.ts.map +0 -1
  316. package/dist/runtime/capabilities/compiler.js.map +0 -1
  317. package/dist/runtime/capabilities/index.d.ts.map +0 -1
  318. package/dist/runtime/capabilities/index.js.map +0 -1
  319. package/dist/runtime/capabilities/types.d.ts.map +0 -1
  320. package/dist/runtime/capabilities/types.js.map +0 -1
  321. package/dist/runtime/capability-receipt-journal.d.ts.map +0 -1
  322. package/dist/runtime/capability-receipt-journal.js.map +0 -1
  323. package/dist/runtime/capability-step-factory.d.ts.map +0 -1
  324. package/dist/runtime/capability-step-factory.js.map +0 -1
  325. package/dist/runtime/compact-transaction.d.ts.map +0 -1
  326. package/dist/runtime/compact-transaction.js.map +0 -1
  327. package/dist/runtime/composer/buffer.d.ts.map +0 -1
  328. package/dist/runtime/composer/buffer.js.map +0 -1
  329. package/dist/runtime/composer/grapheme.d.ts.map +0 -1
  330. package/dist/runtime/composer/grapheme.js.map +0 -1
  331. package/dist/runtime/composer/history.d.ts.map +0 -1
  332. package/dist/runtime/composer/history.js.map +0 -1
  333. package/dist/runtime/composer/layout.d.ts.map +0 -1
  334. package/dist/runtime/composer/layout.js.map +0 -1
  335. package/dist/runtime/core-tools/descriptors.d.ts.map +0 -1
  336. package/dist/runtime/core-tools/descriptors.js.map +0 -1
  337. package/dist/runtime/durable-tool-receipt-reader.d.ts.map +0 -1
  338. package/dist/runtime/durable-tool-receipt-reader.js.map +0 -1
  339. package/dist/runtime/first-party-core-provider.d.ts.map +0 -1
  340. package/dist/runtime/first-party-core-provider.js.map +0 -1
  341. package/dist/runtime/first-party-long-tail-provider.d.ts.map +0 -1
  342. package/dist/runtime/first-party-long-tail-provider.js.map +0 -1
  343. package/dist/runtime/first-party-tool-services.d.ts.map +0 -1
  344. package/dist/runtime/first-party-tool-services.js.map +0 -1
  345. package/dist/runtime/first-party-tool-universe.d.ts.map +0 -1
  346. package/dist/runtime/first-party-tool-universe.js.map +0 -1
  347. package/dist/runtime/goal-lifecycle-v2.d.ts.map +0 -1
  348. package/dist/runtime/goal-lifecycle-v2.js.map +0 -1
  349. package/dist/runtime/goal-runtime-coordinator.d.ts.map +0 -1
  350. package/dist/runtime/goal-runtime-coordinator.js.map +0 -1
  351. package/dist/runtime/goals/completion-audit.d.ts.map +0 -1
  352. package/dist/runtime/goals/completion-audit.js.map +0 -1
  353. package/dist/runtime/goals/evidence.d.ts.map +0 -1
  354. package/dist/runtime/goals/evidence.js.map +0 -1
  355. package/dist/runtime/goals/objective.d.ts.map +0 -1
  356. package/dist/runtime/goals/objective.js.map +0 -1
  357. package/dist/runtime/goals/presentation.d.ts.map +0 -1
  358. package/dist/runtime/goals/presentation.js.map +0 -1
  359. package/dist/runtime/goals/types.d.ts.map +0 -1
  360. package/dist/runtime/goals/types.js.map +0 -1
  361. package/dist/runtime/harness-confluence.d.ts.map +0 -1
  362. package/dist/runtime/harness-confluence.js.map +0 -1
  363. package/dist/runtime/harness-eval.d.ts.map +0 -1
  364. package/dist/runtime/harness-eval.js.map +0 -1
  365. package/dist/runtime/harness-metrics.d.ts.map +0 -1
  366. package/dist/runtime/harness-metrics.js.map +0 -1
  367. package/dist/runtime/legacy-session-importer.d.ts.map +0 -1
  368. package/dist/runtime/legacy-session-importer.js.map +0 -1
  369. package/dist/runtime/legacy-thread-materializer.d.ts.map +0 -1
  370. package/dist/runtime/legacy-thread-materializer.js.map +0 -1
  371. package/dist/runtime/long-tail-tools/descriptors.d.ts.map +0 -1
  372. package/dist/runtime/long-tail-tools/descriptors.js.map +0 -1
  373. package/dist/runtime/loop-budget.d.ts.map +0 -1
  374. package/dist/runtime/loop-budget.js.map +0 -1
  375. package/dist/runtime/mcp/first-party-mcp-adapter.d.ts.map +0 -1
  376. package/dist/runtime/mcp/first-party-mcp-adapter.js.map +0 -1
  377. package/dist/runtime/mcp/first-party-mcp-config.d.ts.map +0 -1
  378. package/dist/runtime/mcp/first-party-mcp-config.js.map +0 -1
  379. package/dist/runtime/mcp/index.d.ts.map +0 -1
  380. package/dist/runtime/mcp/index.js.map +0 -1
  381. package/dist/runtime/mcp/lazy-mcp-runtime.d.ts.map +0 -1
  382. package/dist/runtime/mcp/lazy-mcp-runtime.js.map +0 -1
  383. package/dist/runtime/mcp/types.d.ts.map +0 -1
  384. package/dist/runtime/mcp/types.js.map +0 -1
  385. package/dist/runtime/model-coordinator.d.ts.map +0 -1
  386. package/dist/runtime/model-coordinator.js.map +0 -1
  387. package/dist/runtime/orion-runtime-v1.d.ts.map +0 -1
  388. package/dist/runtime/orion-runtime-v1.js.map +0 -1
  389. package/dist/runtime/orion-session-runner.d.ts.map +0 -1
  390. package/dist/runtime/orion-session-runner.js.map +0 -1
  391. package/dist/runtime/plan-review.d.ts.map +0 -1
  392. package/dist/runtime/plan-review.js.map +0 -1
  393. package/dist/runtime/product-bootstrap.d.ts.map +0 -1
  394. package/dist/runtime/product-bootstrap.js.map +0 -1
  395. package/dist/runtime/product-orion-runtime.d.ts.map +0 -1
  396. package/dist/runtime/product-orion-runtime.js.map +0 -1
  397. package/dist/runtime/prompts/index.d.ts.map +0 -1
  398. package/dist/runtime/prompts/index.js.map +0 -1
  399. package/dist/runtime/prompts/prompt-registry.d.ts.map +0 -1
  400. package/dist/runtime/prompts/prompt-registry.js.map +0 -1
  401. package/dist/runtime/prompts/types.d.ts.map +0 -1
  402. package/dist/runtime/prompts/types.js.map +0 -1
  403. package/dist/runtime/protocol/canonical.d.ts.map +0 -1
  404. package/dist/runtime/protocol/canonical.js.map +0 -1
  405. package/dist/runtime/protocol/index.d.ts.map +0 -1
  406. package/dist/runtime/protocol/index.js.map +0 -1
  407. package/dist/runtime/protocol/runtime-protocol-v1.d.ts.map +0 -1
  408. package/dist/runtime/protocol/runtime-protocol-v1.js.map +0 -1
  409. package/dist/runtime/release-receipts.d.ts.map +0 -1
  410. package/dist/runtime/release-receipts.js.map +0 -1
  411. package/dist/runtime/resource-scope.d.ts.map +0 -1
  412. package/dist/runtime/resource-scope.js.map +0 -1
  413. package/dist/runtime/rich-text/ansi-parser.d.ts.map +0 -1
  414. package/dist/runtime/rich-text/ansi-parser.js.map +0 -1
  415. package/dist/runtime/rich-text/layout.d.ts.map +0 -1
  416. package/dist/runtime/rich-text/layout.js.map +0 -1
  417. package/dist/runtime/rich-text/markdown-parser.d.ts.map +0 -1
  418. package/dist/runtime/rich-text/markdown-parser.js.map +0 -1
  419. package/dist/runtime/rich-text/sanitizer.d.ts.map +0 -1
  420. package/dist/runtime/rich-text/sanitizer.js.map +0 -1
  421. package/dist/runtime/rich-text/types.d.ts.map +0 -1
  422. package/dist/runtime/rich-text/types.js.map +0 -1
  423. package/dist/runtime/runtime-event-buffer.d.ts.map +0 -1
  424. package/dist/runtime/runtime-event-buffer.js.map +0 -1
  425. package/dist/runtime/runtime-services.d.ts.map +0 -1
  426. package/dist/runtime/runtime-services.js.map +0 -1
  427. package/dist/runtime/session-composer-control.d.ts.map +0 -1
  428. package/dist/runtime/session-composer-control.js.map +0 -1
  429. package/dist/runtime/session-history-recovery.d.ts.map +0 -1
  430. package/dist/runtime/session-history-recovery.js.map +0 -1
  431. package/dist/runtime/skills/bounded-lru-cache.d.ts.map +0 -1
  432. package/dist/runtime/skills/bounded-lru-cache.js.map +0 -1
  433. package/dist/runtime/skills/filesystem-skill-provider.d.ts.map +0 -1
  434. package/dist/runtime/skills/filesystem-skill-provider.js.map +0 -1
  435. package/dist/runtime/skills/index.d.ts.map +0 -1
  436. package/dist/runtime/skills/index.js.map +0 -1
  437. package/dist/runtime/skills/lazy-skill-runtime.d.ts.map +0 -1
  438. package/dist/runtime/skills/lazy-skill-runtime.js.map +0 -1
  439. package/dist/runtime/skills/types.d.ts.map +0 -1
  440. package/dist/runtime/skills/types.js.map +0 -1
  441. package/dist/runtime/step-snapshot.d.ts.map +0 -1
  442. package/dist/runtime/step-snapshot.js.map +0 -1
  443. package/dist/runtime/subagent-thread-runtime.d.ts.map +0 -1
  444. package/dist/runtime/subagent-thread-runtime.js.map +0 -1
  445. package/dist/runtime/subagents/budget.d.ts.map +0 -1
  446. package/dist/runtime/subagents/budget.js.map +0 -1
  447. package/dist/runtime/subagents/child-executor-guard.d.ts.map +0 -1
  448. package/dist/runtime/subagents/child-executor-guard.js.map +0 -1
  449. package/dist/runtime/subagents/context-builder.d.ts.map +0 -1
  450. package/dist/runtime/subagents/context-builder.js.map +0 -1
  451. package/dist/runtime/subagents/index.d.ts.map +0 -1
  452. package/dist/runtime/subagents/index.js.map +0 -1
  453. package/dist/runtime/subagents/parent-step-fork.d.ts.map +0 -1
  454. package/dist/runtime/subagents/parent-step-fork.js.map +0 -1
  455. package/dist/runtime/subagents/policy.d.ts.map +0 -1
  456. package/dist/runtime/subagents/policy.js.map +0 -1
  457. package/dist/runtime/subagents/presets.d.ts.map +0 -1
  458. package/dist/runtime/subagents/presets.js.map +0 -1
  459. package/dist/runtime/subagents/production.d.ts.map +0 -1
  460. package/dist/runtime/subagents/production.js.map +0 -1
  461. package/dist/runtime/subagents/provider-gate.d.ts.map +0 -1
  462. package/dist/runtime/subagents/provider-gate.js.map +0 -1
  463. package/dist/runtime/subagents/receipt-journal.d.ts.map +0 -1
  464. package/dist/runtime/subagents/receipt-journal.js.map +0 -1
  465. package/dist/runtime/subagents/research-artifact.d.ts.map +0 -1
  466. package/dist/runtime/subagents/research-artifact.js.map +0 -1
  467. package/dist/runtime/subagents/research-citation.d.ts.map +0 -1
  468. package/dist/runtime/subagents/research-citation.js.map +0 -1
  469. package/dist/runtime/subagents/research-contract.d.ts.map +0 -1
  470. package/dist/runtime/subagents/research-contract.js.map +0 -1
  471. package/dist/runtime/subagents/research-quality.d.ts.map +0 -1
  472. package/dist/runtime/subagents/research-quality.js.map +0 -1
  473. package/dist/runtime/subagents/research-renderer.d.ts.map +0 -1
  474. package/dist/runtime/subagents/research-renderer.js.map +0 -1
  475. package/dist/runtime/subagents/research-types.d.ts.map +0 -1
  476. package/dist/runtime/subagents/research-types.js.map +0 -1
  477. package/dist/runtime/subagents/result-parser.d.ts.map +0 -1
  478. package/dist/runtime/subagents/result-parser.js.map +0 -1
  479. package/dist/runtime/subagents/runner.d.ts.map +0 -1
  480. package/dist/runtime/subagents/runner.js.map +0 -1
  481. package/dist/runtime/subagents/runtime-contract.d.ts.map +0 -1
  482. package/dist/runtime/subagents/runtime-contract.js.map +0 -1
  483. package/dist/runtime/subagents/runtime-integration.d.ts.map +0 -1
  484. package/dist/runtime/subagents/runtime-integration.js.map +0 -1
  485. package/dist/runtime/subagents/supervisor.d.ts.map +0 -1
  486. package/dist/runtime/subagents/supervisor.js.map +0 -1
  487. package/dist/runtime/subagents/tool.d.ts.map +0 -1
  488. package/dist/runtime/subagents/tool.js.map +0 -1
  489. package/dist/runtime/subagents/types.d.ts.map +0 -1
  490. package/dist/runtime/subagents/types.js.map +0 -1
  491. package/dist/runtime/subagents/web-research-adapter.d.ts.map +0 -1
  492. package/dist/runtime/subagents/web-research-adapter.js.map +0 -1
  493. package/dist/runtime/task-context-service.d.ts.map +0 -1
  494. package/dist/runtime/task-context-service.js.map +0 -1
  495. package/dist/runtime/thread-admission.d.ts.map +0 -1
  496. package/dist/runtime/thread-admission.js.map +0 -1
  497. package/dist/runtime/thread-compact-persistence.d.ts.map +0 -1
  498. package/dist/runtime/thread-compact-persistence.js.map +0 -1
  499. package/dist/runtime/thread-event-store.d.ts.map +0 -1
  500. package/dist/runtime/thread-event-store.js.map +0 -1
  501. package/dist/runtime/thread-projection.d.ts.map +0 -1
  502. package/dist/runtime/thread-projection.js.map +0 -1
  503. package/dist/runtime/thread-runtime.d.ts.map +0 -1
  504. package/dist/runtime/thread-runtime.js.map +0 -1
  505. package/dist/runtime/thread-session-index.d.ts.map +0 -1
  506. package/dist/runtime/thread-session-index.js.map +0 -1
  507. package/dist/runtime/thread-session-view.d.ts.map +0 -1
  508. package/dist/runtime/thread-session-view.js.map +0 -1
  509. package/dist/runtime/thread-tool-journal.d.ts.map +0 -1
  510. package/dist/runtime/thread-tool-journal.js.map +0 -1
  511. package/dist/runtime/thread-ui-adapter.d.ts.map +0 -1
  512. package/dist/runtime/thread-ui-adapter.js.map +0 -1
  513. package/dist/runtime/tool-detail-repository.d.ts.map +0 -1
  514. package/dist/runtime/tool-detail-repository.js.map +0 -1
  515. package/dist/runtime/tool-gateway.d.ts.map +0 -1
  516. package/dist/runtime/tool-gateway.js.map +0 -1
  517. package/dist/runtime/tool-output-presentation.d.ts.map +0 -1
  518. package/dist/runtime/tool-output-presentation.js.map +0 -1
  519. package/dist/runtime/tool-receipt-validator.d.ts.map +0 -1
  520. package/dist/runtime/tool-receipt-validator.js.map +0 -1
  521. package/dist/runtime/turn-commit.d.ts.map +0 -1
  522. package/dist/runtime/turn-commit.js.map +0 -1
  523. package/dist/runtime/turn-controller.d.ts.map +0 -1
  524. package/dist/runtime/turn-controller.js.map +0 -1
  525. package/dist/runtime/ui-events.d.ts.map +0 -1
  526. package/dist/runtime/ui-events.js.map +0 -1
  527. package/dist/runtime/ui-view-model.d.ts.map +0 -1
  528. package/dist/runtime/ui-view-model.js.map +0 -1
  529. package/dist/services/atomic-write.d.ts.map +0 -1
  530. package/dist/services/atomic-write.js.map +0 -1
  531. package/dist/services/auth/auth.d.ts.map +0 -1
  532. package/dist/services/auth/auth.js.map +0 -1
  533. package/dist/services/auth/aws.d.ts.map +0 -1
  534. package/dist/services/auth/aws.js.map +0 -1
  535. package/dist/services/auth/index.d.ts.map +0 -1
  536. package/dist/services/auth/index.js.map +0 -1
  537. package/dist/services/auto-fix/autoFixConfig.d.ts.map +0 -1
  538. package/dist/services/auto-fix/autoFixConfig.js.map +0 -1
  539. package/dist/services/auto-fix/autoFixHook.d.ts.map +0 -1
  540. package/dist/services/auto-fix/autoFixHook.js.map +0 -1
  541. package/dist/services/auto-fix/autoFixRunner.d.ts.map +0 -1
  542. package/dist/services/auto-fix/autoFixRunner.js.map +0 -1
  543. package/dist/services/auto-fix/index.d.ts.map +0 -1
  544. package/dist/services/auto-fix/index.js.map +0 -1
  545. package/dist/services/bounded-response.d.ts.map +0 -1
  546. package/dist/services/bounded-response.js.map +0 -1
  547. package/dist/services/commit-plan.d.ts.map +0 -1
  548. package/dist/services/commit-plan.js.map +0 -1
  549. package/dist/services/compact/auto-compact.d.ts.map +0 -1
  550. package/dist/services/compact/auto-compact.js.map +0 -1
  551. package/dist/services/compact/compact.d.ts.map +0 -1
  552. package/dist/services/compact/compact.js.map +0 -1
  553. package/dist/services/compact/coordinator.d.ts.map +0 -1
  554. package/dist/services/compact/coordinator.js.map +0 -1
  555. package/dist/services/compact/fingerprint.d.ts.map +0 -1
  556. package/dist/services/compact/fingerprint.js.map +0 -1
  557. package/dist/services/compact/index.d.ts.map +0 -1
  558. package/dist/services/compact/index.js.map +0 -1
  559. package/dist/services/compact/planner.d.ts.map +0 -1
  560. package/dist/services/compact/planner.js.map +0 -1
  561. package/dist/services/compact/semantic-summary.d.ts.map +0 -1
  562. package/dist/services/compact/semantic-summary.js.map +0 -1
  563. package/dist/services/compact/summary-generator.d.ts.map +0 -1
  564. package/dist/services/compact/summary-generator.js.map +0 -1
  565. package/dist/services/compact/tool-call-groups.d.ts.map +0 -1
  566. package/dist/services/compact/tool-call-groups.js.map +0 -1
  567. package/dist/services/concurrent-sessions.d.ts.map +0 -1
  568. package/dist/services/concurrent-sessions.js.map +0 -1
  569. package/dist/services/config-dir.d.ts.map +0 -1
  570. package/dist/services/config-dir.js.map +0 -1
  571. package/dist/services/config.d.ts.map +0 -1
  572. package/dist/services/config.js.map +0 -1
  573. package/dist/services/diagnostic-tracking/diagnosticTracking.d.ts.map +0 -1
  574. package/dist/services/diagnostic-tracking/diagnosticTracking.js.map +0 -1
  575. package/dist/services/diagnostic-tracking/formatter.d.ts.map +0 -1
  576. package/dist/services/diagnostic-tracking/formatter.js.map +0 -1
  577. package/dist/services/diagnostic-tracking/index.d.ts.map +0 -1
  578. package/dist/services/diagnostic-tracking/index.js.map +0 -1
  579. package/dist/services/diagnostic-tracking/types.d.ts.map +0 -1
  580. package/dist/services/diagnostic-tracking/types.js.map +0 -1
  581. package/dist/services/doctor.d.ts.map +0 -1
  582. package/dist/services/doctor.js.map +0 -1
  583. package/dist/services/effort.d.ts.map +0 -1
  584. package/dist/services/effort.js.map +0 -1
  585. package/dist/services/file-context.d.ts.map +0 -1
  586. package/dist/services/file-context.js.map +0 -1
  587. package/dist/services/file-glob.d.ts.map +0 -1
  588. package/dist/services/file-glob.js.map +0 -1
  589. package/dist/services/file-lock.d.ts.map +0 -1
  590. package/dist/services/file-lock.js.map +0 -1
  591. package/dist/services/format.d.ts.map +0 -1
  592. package/dist/services/format.js.map +0 -1
  593. package/dist/services/global-config.d.ts.map +0 -1
  594. package/dist/services/global-config.js.map +0 -1
  595. package/dist/services/goal-storage.d.ts.map +0 -1
  596. package/dist/services/goal-storage.js.map +0 -1
  597. package/dist/services/llm.d.ts.map +0 -1
  598. package/dist/services/llm.js.map +0 -1
  599. package/dist/services/mcp/index.d.ts.map +0 -1
  600. package/dist/services/mcp/index.js.map +0 -1
  601. package/dist/services/mcp/transports.d.ts.map +0 -1
  602. package/dist/services/mcp/transports.js.map +0 -1
  603. package/dist/services/memory.d.ts.map +0 -1
  604. package/dist/services/memory.js.map +0 -1
  605. package/dist/services/model-catalog.d.ts.map +0 -1
  606. package/dist/services/model-catalog.js.map +0 -1
  607. package/dist/services/model-client-pool.d.ts.map +0 -1
  608. package/dist/services/model-client-pool.js.map +0 -1
  609. package/dist/services/model-context.d.ts.map +0 -1
  610. package/dist/services/model-context.js.map +0 -1
  611. package/dist/services/model-registry.d.ts.map +0 -1
  612. package/dist/services/model-registry.js.map +0 -1
  613. package/dist/services/project-instructions.d.ts.map +0 -1
  614. package/dist/services/project-instructions.js.map +0 -1
  615. package/dist/services/prompt-context.d.ts.map +0 -1
  616. package/dist/services/prompt-context.js.map +0 -1
  617. package/dist/services/provider-diagnostics.d.ts.map +0 -1
  618. package/dist/services/provider-diagnostics.js.map +0 -1
  619. package/dist/services/provider-resilience/circuit-breaker.d.ts.map +0 -1
  620. package/dist/services/provider-resilience/circuit-breaker.js.map +0 -1
  621. package/dist/services/provider-resilience/coordinator.d.ts.map +0 -1
  622. package/dist/services/provider-resilience/coordinator.js.map +0 -1
  623. package/dist/services/provider-resilience/error-classifier.d.ts.map +0 -1
  624. package/dist/services/provider-resilience/error-classifier.js.map +0 -1
  625. package/dist/services/provider-resilience/index.d.ts.map +0 -1
  626. package/dist/services/provider-resilience/index.js.map +0 -1
  627. package/dist/services/provider-resilience/request-gate.d.ts.map +0 -1
  628. package/dist/services/provider-resilience/request-gate.js.map +0 -1
  629. package/dist/services/provider-resilience/stream-recovery.d.ts.map +0 -1
  630. package/dist/services/provider-resilience/stream-recovery.js.map +0 -1
  631. package/dist/services/provider-resilience/types.d.ts.map +0 -1
  632. package/dist/services/provider-resilience/types.js.map +0 -1
  633. package/dist/services/redaction.d.ts.map +0 -1
  634. package/dist/services/redaction.js.map +0 -1
  635. package/dist/services/safe-project-reader.d.ts.map +0 -1
  636. package/dist/services/safe-project-reader.js.map +0 -1
  637. package/dist/services/session-index.d.ts.map +0 -1
  638. package/dist/services/session-index.js.map +0 -1
  639. package/dist/services/session-memory/index.d.ts.map +0 -1
  640. package/dist/services/session-memory/index.js.map +0 -1
  641. package/dist/services/session-memory/prompts.d.ts.map +0 -1
  642. package/dist/services/session-memory/prompts.js.map +0 -1
  643. package/dist/services/session-memory/sessionMemory.d.ts.map +0 -1
  644. package/dist/services/session-memory/sessionMemory.js.map +0 -1
  645. package/dist/services/session-storage.d.ts.map +0 -1
  646. package/dist/services/session-storage.js.map +0 -1
  647. package/dist/services/settings-coordinator.d.ts.map +0 -1
  648. package/dist/services/settings-coordinator.js.map +0 -1
  649. package/dist/services/settings-document-repository.d.ts.map +0 -1
  650. package/dist/services/settings-document-repository.js.map +0 -1
  651. package/dist/services/smart-routing.d.ts.map +0 -1
  652. package/dist/services/smart-routing.js.map +0 -1
  653. package/dist/services/storage-maintenance.d.ts.map +0 -1
  654. package/dist/services/storage-maintenance.js.map +0 -1
  655. package/dist/services/tool-allowlist.d.ts.map +0 -1
  656. package/dist/services/tool-allowlist.js.map +0 -1
  657. package/dist/services/usage-state.d.ts.map +0 -1
  658. package/dist/services/usage-state.js.map +0 -1
  659. package/dist/services/verification-profile.d.ts.map +0 -1
  660. package/dist/services/verification-profile.js.map +0 -1
  661. package/dist/services/web-search-adapters.d.ts.map +0 -1
  662. package/dist/services/web-search-adapters.js.map +0 -1
  663. package/dist/services/web-search-mcp.d.ts.map +0 -1
  664. package/dist/services/web-search-mcp.js.map +0 -1
  665. package/dist/services/web-search-provider.d.ts.map +0 -1
  666. package/dist/services/web-search-provider.js.map +0 -1
  667. package/dist/services/workspace-containment.d.ts.map +0 -1
  668. package/dist/services/workspace-containment.js.map +0 -1
  669. package/dist/services/workspace-diff.d.ts.map +0 -1
  670. package/dist/services/workspace-diff.js.map +0 -1
  671. package/dist/services/workspace-registry.d.ts.map +0 -1
  672. package/dist/services/workspace-registry.js.map +0 -1
  673. package/dist/services/workspace-state.d.ts.map +0 -1
  674. package/dist/services/workspace-state.js.map +0 -1
  675. package/dist/services/yaml-config.d.ts.map +0 -1
  676. package/dist/services/yaml-config.js.map +0 -1
  677. package/dist/terminal-ui/completion.d.ts.map +0 -1
  678. package/dist/terminal-ui/completion.js.map +0 -1
  679. package/dist/terminal-ui/editor.d.ts.map +0 -1
  680. package/dist/terminal-ui/editor.js.map +0 -1
  681. package/dist/terminal-ui/launch.d.ts.map +0 -1
  682. package/dist/terminal-ui/launch.js.map +0 -1
  683. package/dist/terminal-ui/output-queue.d.ts.map +0 -1
  684. package/dist/terminal-ui/output-queue.js.map +0 -1
  685. package/dist/terminal-ui/raw-editor.d.ts.map +0 -1
  686. package/dist/terminal-ui/raw-editor.js.map +0 -1
  687. package/dist/tools/_validate.d.ts.map +0 -1
  688. package/dist/tools/_validate.js.map +0 -1
  689. package/dist/tools/bash_security.d.ts.map +0 -1
  690. package/dist/tools/bash_security.js.map +0 -1
  691. package/dist/tools/core/common.d.ts.map +0 -1
  692. package/dist/tools/core/common.js.map +0 -1
  693. package/dist/tools/core/edit-file.d.ts.map +0 -1
  694. package/dist/tools/core/edit-file.js.map +0 -1
  695. package/dist/tools/core/exec-command.d.ts.map +0 -1
  696. package/dist/tools/core/exec-command.js.map +0 -1
  697. package/dist/tools/core/glob.d.ts.map +0 -1
  698. package/dist/tools/core/glob.js.map +0 -1
  699. package/dist/tools/core/grep.d.ts.map +0 -1
  700. package/dist/tools/core/grep.js.map +0 -1
  701. package/dist/tools/core/index.d.ts.map +0 -1
  702. package/dist/tools/core/index.js.map +0 -1
  703. package/dist/tools/core/list-files.d.ts.map +0 -1
  704. package/dist/tools/core/list-files.js.map +0 -1
  705. package/dist/tools/core/read-file.d.ts.map +0 -1
  706. package/dist/tools/core/read-file.js.map +0 -1
  707. package/dist/tools/core/write-file.d.ts.map +0 -1
  708. package/dist/tools/core/write-file.js.map +0 -1
  709. package/dist/tools/git.d.ts.map +0 -1
  710. package/dist/tools/git.js.map +0 -1
  711. package/dist/tools/lsp.d.ts.map +0 -1
  712. package/dist/tools/lsp.js.map +0 -1
  713. package/dist/tools/sandbox.d.ts.map +0 -1
  714. package/dist/tools/sandbox.js.map +0 -1
  715. package/dist/tools/todo.d.ts.map +0 -1
  716. package/dist/tools/todo.js.map +0 -1
  717. package/dist/tools/web.d.ts.map +0 -1
  718. package/dist/tools/web.js.map +0 -1
  719. package/dist/tui-core/frame.d.ts.map +0 -1
  720. package/dist/tui-core/frame.js.map +0 -1
  721. package/dist/tui-core/input-parser.d.ts.map +0 -1
  722. package/dist/tui-core/input-parser.js.map +0 -1
  723. package/dist/tui-core/style.d.ts.map +0 -1
  724. package/dist/tui-core/style.js.map +0 -1
  725. package/dist/tui-core/terminal-writer.d.ts.map +0 -1
  726. package/dist/tui-core/terminal-writer.js.map +0 -1
  727. package/dist/tui-ui/chrome-view-model.d.ts.map +0 -1
  728. package/dist/tui-ui/chrome-view-model.js.map +0 -1
  729. package/dist/tui-ui/inline-surface.d.ts.map +0 -1
  730. package/dist/tui-ui/inline-surface.js.map +0 -1
  731. package/dist/tui-ui/input-ownership.d.ts.map +0 -1
  732. package/dist/tui-ui/input-ownership.js.map +0 -1
  733. package/dist/tui-ui/launch.d.ts.map +0 -1
  734. package/dist/tui-ui/launch.js.map +0 -1
  735. package/dist/tui-ui/layout.d.ts.map +0 -1
  736. package/dist/tui-ui/layout.js.map +0 -1
  737. package/dist/tui-ui/pickers.d.ts.map +0 -1
  738. package/dist/tui-ui/pickers.js.map +0 -1
  739. package/dist/tui-ui/pixel-mascot.d.ts.map +0 -1
  740. package/dist/tui-ui/pixel-mascot.js.map +0 -1
  741. package/dist/tui-ui/render-scheduler.d.ts.map +0 -1
  742. package/dist/tui-ui/render-scheduler.js.map +0 -1
  743. package/dist/tui-ui/runner.d.ts.map +0 -1
  744. package/dist/tui-ui/runner.js.map +0 -1
  745. package/dist/tui-ui/state.d.ts.map +0 -1
  746. package/dist/tui-ui/state.js.map +0 -1
  747. package/dist/tui-ui/terminal-image.d.ts.map +0 -1
  748. package/dist/tui-ui/terminal-image.js.map +0 -1
  749. package/dist/tui-ui/theme-profile.d.ts.map +0 -1
  750. package/dist/tui-ui/theme-profile.js.map +0 -1
  751. package/dist/tui-ui/theme.d.ts.map +0 -1
  752. package/dist/tui-ui/theme.js.map +0 -1
  753. package/dist/tui-ui/transcript-cache.d.ts.map +0 -1
  754. package/dist/tui-ui/transcript-cache.js.map +0 -1
  755. package/dist/tui-ui/transcript-inspector-layout.d.ts.map +0 -1
  756. package/dist/tui-ui/transcript-inspector-layout.js.map +0 -1
  757. package/dist/tui-ui/transcript-inspector-surface.d.ts.map +0 -1
  758. package/dist/tui-ui/transcript-inspector-surface.js.map +0 -1
  759. package/dist/tui-ui/transcript-inspector.d.ts.map +0 -1
  760. package/dist/tui-ui/transcript-inspector.js.map +0 -1
  761. package/dist/tui-ui/transcript-layout.d.ts.map +0 -1
  762. package/dist/tui-ui/transcript-layout.js.map +0 -1
  763. package/dist/ui/box.d.ts.map +0 -1
  764. package/dist/ui/box.js.map +0 -1
  765. package/dist/ui/command-panel.d.ts.map +0 -1
  766. package/dist/ui/command-panel.js.map +0 -1
  767. package/dist/ui/file-completion.d.ts.map +0 -1
  768. package/dist/ui/file-completion.js.map +0 -1
  769. package/dist/ui/markdown.d.ts.map +0 -1
  770. package/dist/ui/markdown.js.map +0 -1
  771. package/dist/ui/multiline-input.d.ts.map +0 -1
  772. package/dist/ui/multiline-input.js.map +0 -1
  773. package/dist/ui/progress.d.ts.map +0 -1
  774. package/dist/ui/progress.js.map +0 -1
  775. package/dist/ui/shared/command-palette.d.ts.map +0 -1
  776. package/dist/ui/shared/command-palette.js.map +0 -1
  777. package/dist/ui/shared/command-suggestions.d.ts.map +0 -1
  778. package/dist/ui/shared/command-suggestions.js.map +0 -1
  779. package/dist/ui/shared/input-frame.d.ts.map +0 -1
  780. package/dist/ui/shared/input-frame.js.map +0 -1
  781. package/dist/ui/shared/text.d.ts.map +0 -1
  782. package/dist/ui/shared/text.js.map +0 -1
  783. package/dist/ui/shared/types.d.ts.map +0 -1
  784. package/dist/ui/shared/types.js.map +0 -1
  785. package/dist/ui/status-bar.d.ts.map +0 -1
  786. package/dist/ui/status-bar.js.map +0 -1
  787. package/dist/ui/stream-markdown.d.ts.map +0 -1
  788. package/dist/ui/stream-markdown.js.map +0 -1
  789. package/dist/ui/suggestions.d.ts.map +0 -1
  790. package/dist/ui/suggestions.js.map +0 -1
  791. package/dist/ui/tool-preview.d.ts.map +0 -1
  792. package/dist/ui/tool-preview.js.map +0 -1
  793. package/dist/ui/user-input.d.ts.map +0 -1
  794. package/dist/ui/user-input.js.map +0 -1
  795. package/dist/utils/debug-log.d.ts.map +0 -1
  796. package/dist/utils/debug-log.js.map +0 -1
  797. package/dist/utils/errors.d.ts.map +0 -1
  798. package/dist/utils/errors.js.map +0 -1
  799. package/dist/utils/json.d.ts.map +0 -1
  800. package/dist/utils/json.js.map +0 -1
  801. package/dist/utils/mask.d.ts.map +0 -1
  802. package/dist/utils/mask.js.map +0 -1
  803. package/dist/utils/observability.d.ts.map +0 -1
  804. package/dist/utils/observability.js.map +0 -1
  805. package/dist/utils/token-estimate.d.ts.map +0 -1
  806. package/dist/utils/token-estimate.js.map +0 -1
  807. package/dist/web/errors.d.ts.map +0 -1
  808. package/dist/web/errors.js.map +0 -1
  809. package/dist/web/event-hub.d.ts.map +0 -1
  810. package/dist/web/event-hub.js.map +0 -1
  811. package/dist/web/file-read-service.d.ts.map +0 -1
  812. package/dist/web/file-read-service.js.map +0 -1
  813. package/dist/web/git-read-model-service.d.ts.map +0 -1
  814. package/dist/web/git-read-model-service.js.map +0 -1
  815. package/dist/web/index.d.ts.map +0 -1
  816. package/dist/web/index.js.map +0 -1
  817. package/dist/web/launch.d.ts.map +0 -1
  818. package/dist/web/launch.js.map +0 -1
  819. package/dist/web/protocol.d.ts.map +0 -1
  820. package/dist/web/protocol.js.map +0 -1
  821. package/dist/web/review-service.d.ts.map +0 -1
  822. package/dist/web/review-service.js.map +0 -1
  823. package/dist/web/server.d.ts.map +0 -1
  824. package/dist/web/server.js.map +0 -1
  825. package/dist/web/terminal-manager.d.ts.map +0 -1
  826. package/dist/web/terminal-manager.js.map +0 -1
  827. package/dist/web/terminal-server.d.ts.map +0 -1
  828. package/dist/web/terminal-server.js.map +0 -1
  829. package/dist/web/workbench-controller.d.ts.map +0 -1
  830. package/dist/web/workbench-controller.js.map +0 -1
  831. package/dist/web-client/assets/FilesPanel-DYs1MhoM.js +0 -2
  832. package/dist/web-client/assets/ReviewPanel-BDxG670T.js +0 -1
  833. package/dist/web-client/assets/index-BWV5sIvw.css +0 -1
  834. package/dist/web-client/assets/index-VVUKj6FE.js +0 -17
@@ -86,13 +86,17 @@ class TerminalOutputQueue {
86
86
  try {
87
87
  this.writer.off('drain', drainListener);
88
88
  }
89
- catch { /* ok */ }
89
+ catch {
90
+ /* ok */
91
+ }
90
92
  drainListener = null;
91
93
  }
92
94
  try {
93
95
  this.writer.off('error', onError);
94
96
  }
95
- catch { /* ok */ }
97
+ catch {
98
+ /* ok */
99
+ }
96
100
  };
97
101
  const onError = (error) => {
98
102
  cleanup();
@@ -114,7 +118,9 @@ class TerminalOutputQueue {
114
118
  try {
115
119
  this.writer.off('drain', listener);
116
120
  }
117
- catch { /* ok */ }
121
+ catch {
122
+ /* ok */
123
+ }
118
124
  writeNext();
119
125
  };
120
126
  this.writer.on('drain', drainListener);
package/dist/tools/lsp.js CHANGED
@@ -32,7 +32,9 @@ class LspClient extends events_1.EventEmitter {
32
32
  * Uses spawnSync with `which`/`where` to avoid async ENOENT race.
33
33
  */
34
34
  static probeBinary(cmd) {
35
- const res = (0, child_process_1.spawnSync)(process.platform === 'win32' ? 'where' : 'which', [cmd], { stdio: 'ignore' });
35
+ const res = (0, child_process_1.spawnSync)(process.platform === 'win32' ? 'where' : 'which', [cmd], {
36
+ stdio: 'ignore',
37
+ });
36
38
  return res.status === 0;
37
39
  }
38
40
  async start() {
@@ -267,7 +269,7 @@ class LspManager {
267
269
  const client = new LspClient(language, projectRoot);
268
270
  // Fallback error listener — ensures the client NEVER crashes the process
269
271
  // due to an unhandled 'error' event emission.
270
- client.on('error', (msg) => {
272
+ client.on('error', msg => {
271
273
  console.warn(`[LSP:${language}] ${msg}`);
272
274
  });
273
275
  try {
@@ -326,12 +328,14 @@ function formatLocationResult(location) {
326
328
  const locations = Array.isArray(location) ? location : [location];
327
329
  if (locations.length === 0)
328
330
  return 'No definition found';
329
- return locations.map(loc => {
331
+ return locations
332
+ .map(loc => {
330
333
  const path = loc.uri.replace('file://', '');
331
334
  const line = loc.range.start.line + 1;
332
335
  const char = loc.range.start.character + 1;
333
336
  return `${path}:${line}:${char}`;
334
- }).join('\n');
337
+ })
338
+ .join('\n');
335
339
  }
336
340
  /**
337
341
  * 解析 Hover 结果
@@ -543,12 +547,14 @@ exports.lspGetDiagnosticsTool = (0, tool_1.buildTool)({
543
547
  3: 'Information',
544
548
  4: 'Hint',
545
549
  };
546
- const output = diagnostics.map(d => {
550
+ const output = diagnostics
551
+ .map(d => {
547
552
  const sev = severityMap[d.severity] || 'Unknown';
548
553
  const line = d.range.start.line + 1;
549
554
  const char = d.range.start.character + 1;
550
555
  return `[${sev}] ${file_path}:${line}:${char}: ${d.message}`;
551
- }).join('\n');
556
+ })
557
+ .join('\n');
552
558
  return { success: true, output };
553
559
  }
554
560
  catch (err) {
@@ -58,9 +58,7 @@ function setFrameCursor(frame, row, column, visible = true) {
58
58
  };
59
59
  }
60
60
  function renderFrameRows(frame) {
61
- return frame.rows.map(row => row
62
- .map(cell => cell.width === 0 ? '' : cell.char)
63
- .join(''));
61
+ return frame.rows.map(row => row.map(cell => (cell.width === 0 ? '' : cell.char)).join(''));
64
62
  }
65
63
  function diffTuiFrames(previous, next) {
66
64
  if (!previous || previous.width !== next.width || previous.height !== next.height) {
@@ -78,9 +76,9 @@ function diffTuiFrames(previous, next) {
78
76
  }
79
77
  return {
80
78
  changedRows,
81
- cursorChanged: previous.cursor.row !== next.cursor.row
82
- || previous.cursor.column !== next.cursor.column
83
- || previous.cursor.visible !== next.cursor.visible,
79
+ cursorChanged: previous.cursor.row !== next.cursor.row ||
80
+ previous.cursor.column !== next.cursor.column ||
81
+ previous.cursor.visible !== next.cursor.visible,
84
82
  };
85
83
  }
86
84
  function rowsDifferent(prev, next) {
@@ -97,7 +95,11 @@ function rowsDifferent(prev, next) {
97
95
  return false;
98
96
  }
99
97
  function createEmptyRow(width) {
100
- return Array.from({ length: width }, () => ({ char: ' ', width: 1, style: style_1.DEFAULT_STYLE }));
98
+ return Array.from({ length: width }, () => ({
99
+ char: ' ',
100
+ width: 1,
101
+ style: style_1.DEFAULT_STYLE,
102
+ }));
101
103
  }
102
104
  function charWidth(char) {
103
105
  const width = (0, string_width_1.default)(char);
@@ -22,9 +22,9 @@ class TranscriptLayoutCache {
22
22
  }
23
23
  /** Get cached rows for an entry, or null if not cached / stale. */
24
24
  get(id, revision, generation, width, themeId = 'default') {
25
- if (generation !== this.lastGeneration
26
- || width !== this.lastWidth
27
- || themeId !== this.lastThemeId) {
25
+ if (generation !== this.lastGeneration ||
26
+ width !== this.lastWidth ||
27
+ themeId !== this.lastThemeId) {
28
28
  this.invalidate(generation, width, themeId);
29
29
  return null;
30
30
  }
@@ -38,9 +38,9 @@ class TranscriptLayoutCache {
38
38
  }
39
39
  /** Store layout result for an entry. */
40
40
  set(id, revision, rows, generation, width, themeId = 'default') {
41
- if (generation !== this.lastGeneration
42
- || width !== this.lastWidth
43
- || themeId !== this.lastThemeId) {
41
+ if (generation !== this.lastGeneration ||
42
+ width !== this.lastWidth ||
43
+ themeId !== this.lastThemeId) {
44
44
  this.invalidate(generation, width, themeId);
45
45
  }
46
46
  // Evict oldest if at capacity.
@@ -15,7 +15,9 @@ function renderTranscriptInspectorFrame(view, options) {
15
15
  const width = frame.width;
16
16
  const height = frame.height;
17
17
  (0, frame_1.writeFrameText)(frame, 0, 0, ' Orion Code Tool Inspector', theme.heading);
18
- const search = view.searchQuery ? `search: ${view.searchQuery}` : `${view.entries.length} tools`;
18
+ const search = view.searchQuery
19
+ ? `search: ${sanitizeInlineIdentifier(view.searchQuery)}`
20
+ : `${view.entries.length} tools`;
19
21
  (0, frame_1.writeFrameText)(frame, 1, 1, search, theme.toolMeta);
20
22
  if (width < 60) {
21
23
  const listRows = Math.max(2, Math.min(6, Math.floor((height - 4) / 3)));
@@ -43,10 +45,12 @@ function renderList(frame, view, top, maxRows, width, theme) {
43
45
  const entry = view.entries[index];
44
46
  const selected = index === view.selectedIndex;
45
47
  const marker = entry.state === 'success' ? '✓' : entry.state === 'error' ? '✗' : '-';
46
- const text = `${selected ? '›' : ' '} ${marker} #${entry.sequence} ${entry.toolName}`;
48
+ const text = `${selected ? '›' : ' '} ${marker} #${entry.sequence} ${sanitizeInlineIdentifier(entry.toolName)}`;
47
49
  (0, frame_1.writeFrameText)(frame, top + row, 0, truncateWidth(text, Math.max(1, width - 1)), selected
48
50
  ? { ...theme.toolName, inverse: true }
49
- : entry.state === 'error' ? theme.toolError : theme.toolMeta);
51
+ : entry.state === 'error'
52
+ ? theme.toolError
53
+ : theme.toolMeta);
50
54
  }
51
55
  }
52
56
  function renderDetail(frame, view, top, maxRows, left, width, theme) {
@@ -55,17 +59,17 @@ function renderDetail(frame, view, top, maxRows, left, width, theme) {
55
59
  const entry = view.selected;
56
60
  if (!entry)
57
61
  return;
58
- const heading = ` ${entry.toolName} · ${formatBytes(entry.outputBytes)}${entry.artifactId ? '' : ' · legacy'}`;
62
+ const heading = ` ${sanitizeInlineIdentifier(entry.toolName)} · ${formatBytes(entry.outputBytes)}${entry.artifactId ? '' : ' · legacy'}`;
59
63
  (0, frame_1.writeFrameText)(frame, top, left, heading, theme.toolName);
60
64
  const expanded = view.expandedCallIds.includes(entry.callId);
61
65
  const detail = view.detail;
62
66
  const body = !expanded
63
- ? entry.summary ?? 'Press Enter to expand detail.'
67
+ ? (entry.summary ?? 'Press Enter to expand detail.')
64
68
  : detail?.loading
65
69
  ? 'Loading detail...'
66
70
  : detail?.error
67
71
  ? `Detail error: ${detail.error}`
68
- : detail?.content ?? entry.summary ?? 'Press Enter to load detail.';
72
+ : (detail?.content ?? entry.summary ?? 'Press Enter to load detail.');
69
73
  const lines = (0, style_1.sanitizeTerminalText)(body).split('\n');
70
74
  const detailOffset = expanded ? Math.max(0, view.detailOffset) : 0;
71
75
  for (let index = 0; index < maxRows - 1 && detailOffset + index < lines.length; index += 1) {
@@ -82,6 +86,9 @@ function formatBytes(bytes) {
82
86
  return `${(bytes / 1024).toFixed(1)} KB`;
83
87
  return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
84
88
  }
89
+ function sanitizeInlineIdentifier(value) {
90
+ return (0, style_1.sanitizeTerminalText)(value, 2).replace(/\s+/gu, ' ').trim();
91
+ }
85
92
  function truncateWidth(value, maxWidth) {
86
93
  let output = '';
87
94
  let width = 0;
@@ -72,7 +72,10 @@ class TranscriptInspectorSurface {
72
72
  this.output.off('error', onError);
73
73
  this.output.off('close', onClose);
74
74
  };
75
- const onDrain = () => { cleanup(); resolve(); };
75
+ const onDrain = () => {
76
+ cleanup();
77
+ resolve();
78
+ };
76
79
  const onError = (error) => {
77
80
  cleanup();
78
81
  reject(error instanceof Error ? error : new Error(String(error ?? 'terminal output error')));
@@ -14,12 +14,7 @@ class TranscriptInspectorController {
14
14
  view(entries, inspector) {
15
15
  const query = inspector.searchQuery.trim().toLowerCase();
16
16
  const filtered = query
17
- ? entries.filter(entry => [
18
- entry.toolName,
19
- entry.callId,
20
- entry.summary,
21
- this.details.get(entry.callId)?.content,
22
- ]
17
+ ? entries.filter(entry => [entry.toolName, entry.callId, entry.summary, this.details.get(entry.callId)?.content]
23
18
  .filter(Boolean)
24
19
  .some(value => String(value).toLowerCase().includes(query)))
25
20
  : entries;
@@ -43,7 +38,7 @@ class TranscriptInspectorController {
43
38
  return;
44
39
  const generation = ++this.requestGeneration;
45
40
  this.details.set(entry.callId, {
46
- content: append ? current?.content ?? '' : '',
41
+ content: append ? (current?.content ?? '') : '',
47
42
  totalBytes: current?.totalBytes ?? entry.outputBytes,
48
43
  nextOffsetBytes: current?.nextOffsetBytes,
49
44
  redacted: current?.redacted ?? false,
@@ -72,7 +67,7 @@ class TranscriptInspectorController {
72
67
  if (generation !== this.requestGeneration)
73
68
  return;
74
69
  this.details.set(entry.callId, {
75
- content: append ? current?.content ?? '' : '',
70
+ content: append ? (current?.content ?? '') : '',
76
71
  totalBytes: current?.totalBytes ?? entry.outputBytes,
77
72
  redacted: current?.redacted ?? false,
78
73
  loading: false,
package/dist/ui/box.js CHANGED
@@ -40,18 +40,25 @@ function renderHeaderBox(config) {
40
40
  // Model name
41
41
  parts.push(ACCENT(config.model));
42
42
  // Provider (shortened)
43
- const providerShort = config.provider === 'Alibaba Cloud' ? 'Qwen'
44
- : config.provider === 'Anthropic' ? 'Anthropic'
45
- : config.provider === 'OpenAI' ? 'OpenAI'
43
+ const providerShort = config.provider === 'Alibaba Cloud'
44
+ ? 'Qwen'
45
+ : config.provider === 'Anthropic'
46
+ ? 'Anthropic'
47
+ : config.provider === 'OpenAI'
48
+ ? 'OpenAI'
46
49
  : config.provider;
47
50
  if (providerShort) {
48
51
  parts.push(DIM(providerShort));
49
52
  }
50
53
  // Status
51
- const statusIcon = config.status === 'ready' ? GREEN('●')
52
- : config.status === 'loading' ? YELLOW('')
53
- : config.status === 'error' ? RED('●')
54
- : config.status === 'processing' ? ACCENT('')
54
+ const statusIcon = config.status === 'ready'
55
+ ? GREEN('')
56
+ : config.status === 'loading'
57
+ ? YELLOW('')
58
+ : config.status === 'error'
59
+ ? RED('●')
60
+ : config.status === 'processing'
61
+ ? ACCENT('◌')
55
62
  : DIM('○');
56
63
  parts.push(statusIcon);
57
64
  return ` ${BRAND('orion')} ${DIM('v' + config.version)} ${DIM('│')} ${parts.join(` ${DIM('│')} `)}`;
@@ -149,8 +149,10 @@ function renderMarkdownFallback(text, maxWidth = DEFAULT_MAX_WIDTH) {
149
149
  const level = headingMatch[1].length;
150
150
  const headingText = headingMatch[2].trim();
151
151
  const prefix = ' '.repeat(level - 1);
152
- const styled = level <= 2 ? BOLD(CYAN(prefix + ' ' + headingText))
153
- : level <= 4 ? BOLD(CYAN(prefix + headingText))
152
+ const styled = level <= 2
153
+ ? BOLD(CYAN(prefix + ' ' + headingText))
154
+ : level <= 4
155
+ ? BOLD(CYAN(prefix + headingText))
154
156
  : BOLD(DIM(headingText));
155
157
  result.push(styled);
156
158
  result.push(DIM('─'.repeat(Math.min(headingText.length + prefix.length + 2, maxWidth - 2))));
@@ -9,13 +9,15 @@ exports.renderFramedInputFrame = renderFramedInputFrame;
9
9
  const chalk_1 = __importDefault(require("chalk"));
10
10
  const text_1 = require("./text");
11
11
  const NO_COLOR = process.env.NO_COLOR !== undefined || process.env.TERM === 'dumb';
12
- const colorize = NO_COLOR ? {
13
- accent: (s) => s,
14
- dim: (s) => s,
15
- } : {
16
- accent: chalk_1.default.hex('#00D4AA'),
17
- dim: chalk_1.default.dim,
18
- };
12
+ const colorize = NO_COLOR
13
+ ? {
14
+ accent: (s) => s,
15
+ dim: (s) => s,
16
+ }
17
+ : {
18
+ accent: chalk_1.default.hex('#00D4AA'),
19
+ dim: chalk_1.default.dim,
20
+ };
19
21
  const INPUT_BG = '\x1b[48;2;56;56;56m';
20
22
  const INPUT_FG = '\x1b[38;2;226;232;240m';
21
23
  const RESET_COLORS = '\x1b[39;49m';
@@ -34,7 +36,9 @@ function renderFramedInputFrame(options) {
34
36
  const prefix = index === 0 ? firstPrompt : continuationPrompt;
35
37
  return renderInputLine((0, text_1.truncateVisible)(prefix + line, inputWidth));
36
38
  });
37
- const statusLine = options.statusText ? renderInputStatusLine(inputWidth, options.statusText) : undefined;
39
+ const statusLine = options.statusText
40
+ ? renderInputStatusLine(inputWidth, options.statusText)
41
+ : undefined;
38
42
  const rowSpans = logicalLines.map((line, index) => {
39
43
  const prefix = index === 0 ? firstPrompt : continuationPrompt;
40
44
  return terminalRowsFor((0, text_1.visualWidth)(prefix) + (0, text_1.visualWidth)(line), width);
@@ -157,7 +157,7 @@ class StreamMarkdownRenderer {
157
157
  // Ordered list
158
158
  const orderedMatch = line.match(/^(\s*)(\d+)\.\s+(.*)$/);
159
159
  if (orderedMatch) {
160
- return orderedMatch[1] + CYAN(orderedMatch[2] + '.') + ' ' + this.renderInline(orderedMatch[3]);
160
+ return (orderedMatch[1] + CYAN(orderedMatch[2] + '.') + ' ' + this.renderInline(orderedMatch[3]));
161
161
  }
162
162
  return this.renderInline(line);
163
163
  }
@@ -46,7 +46,9 @@ function renderToolCard(tool) {
46
46
  lines.push(DIM('│ ') + truncated.padEnd(maxWidth - 4) + DIM(' │'));
47
47
  }
48
48
  if (tool.result.split('\n').length > 6) {
49
- lines.push(DIM('│ ') + DIM(`... ${tool.result.split('\n').length - 6} more lines`).padEnd(maxWidth - 4) + DIM(' │'));
49
+ lines.push(DIM('│ ') +
50
+ DIM(`... ${tool.result.split('\n').length - 6} more lines`).padEnd(maxWidth - 4) +
51
+ DIM(' │'));
50
52
  }
51
53
  // 底部
52
54
  lines.push(DIM('└') + '─'.repeat(maxWidth - 2) + DIM('┘'));
@@ -92,7 +94,11 @@ function renderReadPreview(path, content, success) {
92
94
  const maxWidth = 60;
93
95
  const icon = success ? SUCCESS('📖') : ERROR('📖');
94
96
  const title = `${icon} Read: ${path}`;
95
- lines.push(DIM('┌─ ') + title.slice(0, maxWidth - 5) + DIM(' ') + '─'.repeat(Math.max(0, maxWidth - title.length - 5)) + DIM('┐'));
97
+ lines.push(DIM('┌─ ') +
98
+ title.slice(0, maxWidth - 5) +
99
+ DIM(' ') +
100
+ '─'.repeat(Math.max(0, maxWidth - title.length - 5)) +
101
+ DIM('┐'));
96
102
  if (success && content) {
97
103
  const contentLines = content.split('\n').slice(0, 8);
98
104
  for (const line of contentLines) {
@@ -100,7 +106,9 @@ function renderReadPreview(path, content, success) {
100
106
  lines.push(DIM('│ ') + truncated.padEnd(maxWidth - 4) + DIM(' │'));
101
107
  }
102
108
  if (content.split('\n').length > 8) {
103
- lines.push(DIM('│ ') + DIM(`... ${content.split('\n').length - 8} more lines`).padEnd(maxWidth - 4) + DIM(' │'));
109
+ lines.push(DIM('│ ') +
110
+ DIM(`... ${content.split('\n').length - 8} more lines`).padEnd(maxWidth - 4) +
111
+ DIM(' │'));
104
112
  }
105
113
  }
106
114
  lines.push(DIM('└') + '─'.repeat(maxWidth - 2) + DIM('┘'));
@@ -33,16 +33,22 @@ function visualWidth(text) {
33
33
  let width = 0;
34
34
  for (const ch of text) {
35
35
  const cp = ch.codePointAt(0) || 0;
36
- width += (cp >= 0x1100 && (cp <= 0x115f || cp === 0x2329 || cp === 0x232a ||
37
- (cp >= 0x2e80 && cp <= 0xa4cf && cp !== 0x303f) ||
38
- (cp >= 0xac00 && cp <= 0xd7a3) ||
39
- (cp >= 0xf900 && cp <= 0xfaff) ||
40
- (cp >= 0xfe10 && cp <= 0xfe19) ||
41
- (cp >= 0xfe30 && cp <= 0xfe6f) ||
42
- (cp >= 0xff01 && cp <= 0xff60) ||
43
- (cp >= 0xffe0 && cp <= 0xffe6) ||
44
- (cp >= 0x20000 && cp <= 0x2fffd) ||
45
- (cp >= 0x30000 && cp <= 0x3fffd))) ? 2 : 1;
36
+ width +=
37
+ cp >= 0x1100 &&
38
+ (cp <= 0x115f ||
39
+ cp === 0x2329 ||
40
+ cp === 0x232a ||
41
+ (cp >= 0x2e80 && cp <= 0xa4cf && cp !== 0x303f) ||
42
+ (cp >= 0xac00 && cp <= 0xd7a3) ||
43
+ (cp >= 0xf900 && cp <= 0xfaff) ||
44
+ (cp >= 0xfe10 && cp <= 0xfe19) ||
45
+ (cp >= 0xfe30 && cp <= 0xfe6f) ||
46
+ (cp >= 0xff01 && cp <= 0xff60) ||
47
+ (cp >= 0xffe0 && cp <= 0xffe6) ||
48
+ (cp >= 0x20000 && cp <= 0x2fffd) ||
49
+ (cp >= 0x30000 && cp <= 0x3fffd))
50
+ ? 2
51
+ : 1;
46
52
  }
47
53
  return width;
48
54
  }
@@ -18,6 +18,7 @@ export declare class WebEventHub {
18
18
  private nextCursor;
19
19
  private retainedBytes;
20
20
  private discardedDurableThrough;
21
+ private replayResetCount;
21
22
  constructor(options?: WebEventHubOptions);
22
23
  emitRuntime(event: AgentRuntimeEvent, context?: {
23
24
  readonly sessionId?: string;
@@ -35,6 +36,7 @@ export declare class WebEventHub {
35
36
  readonly earliest: number;
36
37
  readonly latest: number;
37
38
  readonly retained: number;
39
+ readonly replayResets: number;
38
40
  };
39
41
  private trim;
40
42
  private compactRuntimeEvent;
@@ -31,12 +31,16 @@ class WebEventHub {
31
31
  this.nextCursor = 1;
32
32
  this.retainedBytes = 0;
33
33
  this.discardedDurableThrough = 0;
34
+ this.replayResetCount = 0;
34
35
  this.maxEvents = positiveInteger(options.maxEvents ?? DEFAULT_MAX_EVENTS, 'maxEvents');
35
36
  this.maxBytes = positiveInteger(options.maxBytes ?? DEFAULT_MAX_BYTES, 'maxBytes');
36
37
  this.now = options.now ?? Date.now;
37
38
  }
38
39
  emitRuntime(event, context = {}) {
39
- return this.emit({ type: 'runtime_event', value: this.compactRuntimeEvent(sanitizeRuntimeEvent(event)) }, isDurableRuntimeEvent(event), context);
40
+ return this.emit({
41
+ type: 'runtime_event',
42
+ value: this.compactRuntimeEvent(sanitizeRuntimeEvent(event), context.sessionId),
43
+ }, isDurableRuntimeEvent(event), context);
40
44
  }
41
45
  emitThread(event, sessionId) {
42
46
  return this.emit({ type: 'thread_event', value: sanitizeThreadEvent(event) }, true, {
@@ -73,6 +77,7 @@ class WebEventHub {
73
77
  attach(response, cursor) {
74
78
  const latest = this.nextCursor - 1;
75
79
  if (cursor > latest || cursor < this.discardedDurableThrough) {
80
+ this.replayResetCount += 1;
76
81
  const reset = {
77
82
  apiVersion: protocol_1.WEB_API_VERSION,
78
83
  eventId: (0, crypto_1.randomUUID)(),
@@ -117,6 +122,7 @@ class WebEventHub {
117
122
  earliest: this.retained[0]?.envelope.cursor ?? this.nextCursor,
118
123
  latest: this.nextCursor - 1,
119
124
  retained: this.retained.length,
125
+ replayResets: this.replayResetCount,
120
126
  });
121
127
  }
122
128
  trim() {
@@ -128,11 +134,12 @@ class WebEventHub {
128
134
  this.discardedDurableThrough = Math.max(this.discardedDurableThrough, removed.envelope.cursor);
129
135
  }
130
136
  }
131
- compactRuntimeEvent(event) {
137
+ compactRuntimeEvent(event, sessionId) {
132
138
  if (event.type === 'transcript_update' && typeof event.patch.content === 'string') {
133
139
  const content = event.patch.content;
134
- const previous = this.transcriptContents.get(event.id);
135
- this.rememberTranscriptContent(event.id, content);
140
+ const key = transcriptContentKey(sessionId, event.id);
141
+ const previous = this.transcriptContents.get(key);
142
+ this.rememberTranscriptContent(key, content);
136
143
  if (previous !== undefined && content.startsWith(previous)) {
137
144
  const patch = { ...event.patch };
138
145
  delete patch.content;
@@ -146,10 +153,14 @@ class WebEventHub {
146
153
  return event;
147
154
  }
148
155
  if (event.type === 'transcript_finalize' || event.type === 'transcript_remove') {
149
- this.transcriptContents.delete(event.id);
156
+ this.transcriptContents.delete(transcriptContentKey(sessionId, event.id));
150
157
  }
151
158
  else if (event.type === 'transcript_clear' || event.type === 'transcript_replace') {
152
- this.transcriptContents.clear();
159
+ const prefix = transcriptSessionPrefix(sessionId);
160
+ for (const key of this.transcriptContents.keys()) {
161
+ if (key.startsWith(prefix))
162
+ this.transcriptContents.delete(key);
163
+ }
153
164
  }
154
165
  return event;
155
166
  }
@@ -165,6 +176,12 @@ class WebEventHub {
165
176
  }
166
177
  }
167
178
  exports.WebEventHub = WebEventHub;
179
+ function transcriptSessionPrefix(sessionId) {
180
+ return `${sessionId ?? '<surface>'}\u0000`;
181
+ }
182
+ function transcriptContentKey(sessionId, id) {
183
+ return `${transcriptSessionPrefix(sessionId)}${id}`;
184
+ }
168
185
  function toEnvelope(base, event) {
169
186
  switch (event.type) {
170
187
  case 'runtime_event':
@@ -232,6 +249,26 @@ function toEnvelope(base, event) {
232
249
  type: event.type,
233
250
  payload: { state: event.state },
234
251
  };
252
+ case 'session_runtime_changed':
253
+ if (!base.sessionId)
254
+ throw new Error('Session Runtime events require Session identity');
255
+ return {
256
+ ...base,
257
+ sessionId: base.sessionId,
258
+ durable: true,
259
+ type: event.type,
260
+ payload: { runtime: event.runtime },
261
+ };
262
+ case 'workspace_mutation_changed':
263
+ if (!base.sessionId)
264
+ throw new Error('Workspace mutation events require Session identity');
265
+ return {
266
+ ...base,
267
+ sessionId: base.sessionId,
268
+ durable: false,
269
+ type: event.type,
270
+ payload: { state: event.state },
271
+ };
235
272
  case 'replay_reset':
236
273
  return {
237
274
  ...base,
@@ -5,6 +5,8 @@ export interface WebFileNodeV1 {
5
5
  /** Sanitized Workspace-relative display path. Requests must continue to use the opaque id. */
6
6
  readonly displayPath: string;
7
7
  readonly kind: WebFileKindV1;
8
+ /** Effective target kind for a readable symbolic link. */
9
+ readonly targetKind?: 'file' | 'directory';
8
10
  readonly sizeBytes?: number;
9
11
  readonly modifiedAt: string;
10
12
  readonly sensitive: boolean;
@@ -114,7 +114,7 @@ class FileReadServiceV1 {
114
114
  if (!node.stat.isFile()) {
115
115
  throw new errors_1.WebWorkbenchError(409, 'File node is not a regular file.', 'file_not_regular');
116
116
  }
117
- const sensitive = (0, redaction_1.isSensitiveFilePath)(node.relativePath);
117
+ const sensitive = isSensitiveResolvedPath(this.root, node.relativePath, node.canonicalPath);
118
118
  if (sensitive) {
119
119
  throw new errors_1.WebWorkbenchError(403, 'Sensitive file content is not available in the Web Workbench.', 'sensitive_file_blocked');
120
120
  }
@@ -152,6 +152,19 @@ class FileReadServiceV1 {
152
152
  const remaining = Math.max(0, Number(before.size) - offset);
153
153
  const page = readLineSafePage(descriptor, offset, remaining, limitBytes);
154
154
  this.performance.bytesRead += page.bytesRead;
155
+ if (isBinary(page.content)) {
156
+ return Object.freeze({
157
+ fileId: input.fileId,
158
+ name: (0, path_1.basename)(node.relativePath),
159
+ revision,
160
+ sizeBytes: Number(before.size),
161
+ binary: true,
162
+ sensitive: false,
163
+ mediaType: 'application/octet-stream',
164
+ offsetBytes: offset,
165
+ nextCursor: null,
166
+ });
167
+ }
155
168
  const contentBuffer = validUtf8Prefix(page.content);
156
169
  if (page.consumedBytes > 0 && contentBuffer.length === 0) {
157
170
  throw new errors_1.WebWorkbenchError(415, 'File is not valid UTF-8 text.', 'file_binary');
@@ -192,25 +205,32 @@ class FileReadServiceV1 {
192
205
  const symlink = lexicalStat.isSymbolicLink();
193
206
  let readable = true;
194
207
  let effectiveStat = lexicalStat;
195
- if (symlink) {
196
- try {
197
- const canonicalPath = (0, fs_1.realpathSync)(lexicalPath);
198
- readable = isWithinRoot(canonicalPath, this.root);
199
- if (readable)
200
- effectiveStat = (0, fs_1.statSync)(canonicalPath, { bigint: true });
201
- }
202
- catch {
203
- readable = false;
204
- }
208
+ let canonicalPath;
209
+ try {
210
+ canonicalPath = (0, fs_1.realpathSync)(lexicalPath);
211
+ readable = isWithinRoot(canonicalPath, this.root);
212
+ if (readable)
213
+ effectiveStat = (0, fs_1.statSync)(canonicalPath, { bigint: true });
205
214
  }
215
+ catch {
216
+ readable = false;
217
+ }
218
+ const targetKind = readable
219
+ ? effectiveStat.isDirectory()
220
+ ? 'directory'
221
+ : effectiveStat.isFile()
222
+ ? 'file'
223
+ : undefined
224
+ : undefined;
206
225
  return Object.freeze({
207
226
  id: this.remember(relativePath),
208
227
  name: (0, path_1.basename)(relativePath),
209
228
  displayPath: normalizeRelativePath(relativePath),
210
229
  kind: symlink ? 'symlink' : effectiveStat.isDirectory() ? 'directory' : 'file',
230
+ ...(symlink && targetKind ? { targetKind } : {}),
211
231
  ...(effectiveStat.isFile() ? { sizeBytes: Number(effectiveStat.size) } : {}),
212
232
  modifiedAt: new Date(Number(effectiveStat.mtimeMs)).toISOString(),
213
- sensitive: (0, redaction_1.isSensitiveFilePath)(relativePath),
233
+ sensitive: isSensitiveResolvedPath(this.root, relativePath, canonicalPath),
214
234
  readable,
215
235
  });
216
236
  }
@@ -360,6 +380,13 @@ function isWithinRoot(candidate, root) {
360
380
  const rel = (0, path_1.relative)(root, candidate);
361
381
  return rel === '' || (!rel.startsWith(`..${path_1.sep}`) && rel !== '..' && !(0, path_1.isAbsolute)(rel));
362
382
  }
383
+ function isSensitiveResolvedPath(root, aliasRelativePath, canonicalPath) {
384
+ if ((0, redaction_1.isSensitiveFilePath)(aliasRelativePath))
385
+ return true;
386
+ if (!canonicalPath || !isWithinRoot(canonicalPath, root))
387
+ return false;
388
+ return (0, redaction_1.isSensitiveFilePath)((0, path_1.relative)(root, canonicalPath));
389
+ }
363
390
  function fingerprintStat(stat) {
364
391
  return (0, crypto_1.createHash)('sha256')
365
392
  .update([stat.dev, stat.ino, stat.mode, stat.size, stat.mtimeNs, stat.ctimeNs]
@@ -122,6 +122,9 @@ class GitReadModelServiceV1 {
122
122
  if (!record) {
123
123
  throw new errors_1.WebWorkbenchError(409, 'Git file changed before diff.', 'git_revision_conflict');
124
124
  }
125
+ if (isSensitiveGitRecord(record)) {
126
+ throw new errors_1.WebWorkbenchError(403, 'Sensitive file content is not available in the Web Workbench.', 'sensitive_file_blocked');
127
+ }
125
128
  const lineLimit = boundedInteger(input.lineLimit ?? DEFAULT_DIFF_LINES, 1, MAX_DIFF_LINES, 'lineLimit');
126
129
  const byteLimit = boundedInteger(input.byteLimit ?? DEFAULT_DIFF_BYTES, 1024, MAX_DIFF_BYTES, 'byteLimit');
127
130
  const offset = input.cursor
@@ -440,6 +443,10 @@ function isConflictRecord(record) {
440
443
  `${record.indexStatus}${record.worktreeStatus}` === 'AA' ||
441
444
  `${record.indexStatus}${record.worktreeStatus}` === 'DD');
442
445
  }
446
+ function isSensitiveGitRecord(record) {
447
+ return ((0, redaction_1.isSensitiveFilePath)(record.path) ||
448
+ (record.renamedFrom !== undefined && (0, redaction_1.isSensitiveFilePath)(record.renamedFrom)));
449
+ }
443
450
  async function streamDiffPage(input) {
444
451
  const lines = [];
445
452
  let virtualLine = 0;