@inhuman.tools/harness 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/compact.prompt +12 -2
  2. package/dist/builtin-tools/catalog-entry.d.ts.map +1 -1
  3. package/dist/builtin-tools/catalog-entry.js +1 -0
  4. package/dist/builtin-tools/catalog-entry.js.map +1 -1
  5. package/dist/builtin-tools/index.d.ts +1 -2
  6. package/dist/builtin-tools/index.d.ts.map +1 -1
  7. package/dist/builtin-tools/index.js +1 -2
  8. package/dist/builtin-tools/index.js.map +1 -1
  9. package/dist/builtin-tools/metadata/context-need.d.ts +1 -0
  10. package/dist/builtin-tools/metadata/context-need.d.ts.map +1 -1
  11. package/dist/builtin-tools/metadata/context-need.js +13 -6
  12. package/dist/builtin-tools/metadata/context-need.js.map +1 -1
  13. package/dist/builtin-tools/metadata/context-recall.d.ts +1 -5
  14. package/dist/builtin-tools/metadata/context-recall.d.ts.map +1 -1
  15. package/dist/builtin-tools/metadata/context-recall.js +10 -7
  16. package/dist/builtin-tools/metadata/context-recall.js.map +1 -1
  17. package/dist/builtin-tools/metadata/update-metadata.d.ts +1 -0
  18. package/dist/builtin-tools/metadata/update-metadata.d.ts.map +1 -1
  19. package/dist/builtin-tools/metadata/update-metadata.js +12 -12
  20. package/dist/builtin-tools/metadata/update-metadata.js.map +1 -1
  21. package/dist/builtin-tools/named-agents/agent-catalog.d.ts.map +1 -1
  22. package/dist/builtin-tools/named-agents/agent-catalog.js +9 -9
  23. package/dist/builtin-tools/named-agents/agent-catalog.js.map +1 -1
  24. package/dist/builtin-tools/named-agents/agent-stdlib.d.ts.map +1 -1
  25. package/dist/builtin-tools/named-agents/agent-stdlib.js +2 -0
  26. package/dist/builtin-tools/named-agents/agent-stdlib.js.map +1 -1
  27. package/dist/builtin-tools/schemas/tool-result.d.ts +2 -0
  28. package/dist/builtin-tools/schemas/tool-result.d.ts.map +1 -1
  29. package/dist/builtin-tools/schemas/tool-result.js +2 -0
  30. package/dist/builtin-tools/schemas/tool-result.js.map +1 -1
  31. package/dist/builtin-tools/shell/job-stop.d.ts +1 -0
  32. package/dist/builtin-tools/shell/job-stop.d.ts.map +1 -1
  33. package/dist/builtin-tools/shell/shell-tool.d.ts +1 -0
  34. package/dist/builtin-tools/shell/shell-tool.d.ts.map +1 -1
  35. package/dist/builtin-tools/toolkit/dist-tools.d.ts +1 -0
  36. package/dist/builtin-tools/toolkit/dist-tools.d.ts.map +1 -1
  37. package/dist/builtin-tools/toolkit/dist-tools.js +1 -0
  38. package/dist/builtin-tools/toolkit/dist-tools.js.map +1 -1
  39. package/dist/connections/adopt.d.ts +2 -0
  40. package/dist/connections/adopt.d.ts.map +1 -1
  41. package/dist/connections/adopt.js.map +1 -1
  42. package/dist/connections/index.d.ts +1 -1
  43. package/dist/connections/index.d.ts.map +1 -1
  44. package/dist/extensions/behavior.d.ts.map +1 -1
  45. package/dist/extensions/behavior.js +17 -4
  46. package/dist/extensions/behavior.js.map +1 -1
  47. package/dist/extensions/consent.d.ts +0 -68
  48. package/dist/extensions/consent.d.ts.map +1 -1
  49. package/dist/extensions/consent.js +0 -69
  50. package/dist/extensions/consent.js.map +1 -1
  51. package/dist/extensions/contributions.d.ts.map +1 -1
  52. package/dist/extensions/contributions.js +1 -0
  53. package/dist/extensions/contributions.js.map +1 -1
  54. package/dist/extensions/dispatch.d.ts +1 -9
  55. package/dist/extensions/dispatch.d.ts.map +1 -1
  56. package/dist/extensions/dispatch.js +5 -7
  57. package/dist/extensions/dispatch.js.map +1 -1
  58. package/dist/extensions/eval.d.ts.map +1 -1
  59. package/dist/extensions/eval.js +2 -0
  60. package/dist/extensions/eval.js.map +1 -1
  61. package/dist/extensions/hook-deadline.d.ts +28 -0
  62. package/dist/extensions/hook-deadline.d.ts.map +1 -0
  63. package/dist/extensions/hook-deadline.js +72 -0
  64. package/dist/extensions/hook-deadline.js.map +1 -0
  65. package/dist/extensions/host.d.ts +2 -0
  66. package/dist/extensions/host.d.ts.map +1 -1
  67. package/dist/extensions/host.js +15 -0
  68. package/dist/extensions/host.js.map +1 -1
  69. package/dist/extensions/inventory.d.ts +9 -0
  70. package/dist/extensions/inventory.d.ts.map +1 -1
  71. package/dist/extensions/inventory.js +15 -1
  72. package/dist/extensions/inventory.js.map +1 -1
  73. package/dist/extensions/notes.d.ts +1 -0
  74. package/dist/extensions/notes.d.ts.map +1 -1
  75. package/dist/extensions/notes.js +1 -0
  76. package/dist/extensions/notes.js.map +1 -1
  77. package/dist/extensions/schemas/bot-definition.d.ts +1 -1
  78. package/dist/extensions/schemas/bot-definition.d.ts.map +1 -1
  79. package/dist/extensions/schemas/plugin-manifest.d.ts +4 -4
  80. package/dist/extensions/schemas/plugin-manifest.d.ts.map +1 -1
  81. package/dist/extensions/schemas/plugin-manifest.js +13 -1
  82. package/dist/extensions/schemas/plugin-manifest.js.map +1 -1
  83. package/dist/extensions/state.d.ts.map +1 -1
  84. package/dist/extensions/state.js +5 -0
  85. package/dist/extensions/state.js.map +1 -1
  86. package/dist/extensions/value.d.ts +4 -0
  87. package/dist/extensions/value.d.ts.map +1 -1
  88. package/dist/extensions/value.js.map +1 -1
  89. package/dist/protocol/schemas/health.d.ts +1 -3
  90. package/dist/protocol/schemas/health.d.ts.map +1 -1
  91. package/dist/protocol/schemas/health.js.map +1 -1
  92. package/dist/protocol/schemas/identity.d.ts +0 -4
  93. package/dist/protocol/schemas/identity.d.ts.map +1 -1
  94. package/dist/protocol/schemas/identity.js.map +1 -1
  95. package/dist/protocol/schemas/loss.d.ts +0 -2
  96. package/dist/protocol/schemas/loss.d.ts.map +1 -1
  97. package/dist/protocol/schemas/loss.js.map +1 -1
  98. package/dist/protocol/schemas/message.d.ts +0 -1
  99. package/dist/protocol/schemas/message.d.ts.map +1 -1
  100. package/dist/protocol/supervision/loss.d.ts +0 -1
  101. package/dist/protocol/supervision/loss.d.ts.map +1 -1
  102. package/dist/protocol/supervision/loss.js +0 -3
  103. package/dist/protocol/supervision/loss.js.map +1 -1
  104. package/dist/providers/auth/index.d.ts +2 -2
  105. package/dist/providers/auth/index.d.ts.map +1 -1
  106. package/dist/providers/auth/index.js +2 -2
  107. package/dist/providers/auth/index.js.map +1 -1
  108. package/dist/providers/auth/loopback.d.ts +0 -2
  109. package/dist/providers/auth/loopback.d.ts.map +1 -1
  110. package/dist/providers/auth/loopback.js.map +1 -1
  111. package/dist/providers/chatgpt/connection.d.ts +1 -0
  112. package/dist/providers/chatgpt/connection.d.ts.map +1 -1
  113. package/dist/providers/chatgpt/connection.js +1 -1
  114. package/dist/providers/chatgpt/connection.js.map +1 -1
  115. package/dist/providers/grok/connection.d.ts +2 -1
  116. package/dist/providers/grok/connection.d.ts.map +1 -1
  117. package/dist/providers/grok/connection.js +1 -1
  118. package/dist/providers/grok/connection.js.map +1 -1
  119. package/dist/providers/mcp/fetch.d.ts.map +1 -1
  120. package/dist/providers/mcp/fetch.js +2 -6
  121. package/dist/providers/mcp/fetch.js.map +1 -1
  122. package/dist/providers/nous/driver.d.ts +1 -0
  123. package/dist/providers/nous/driver.d.ts.map +1 -1
  124. package/dist/providers/openai-compat/actor.d.ts.map +1 -1
  125. package/dist/providers/openai-compat/actor.js +167 -39
  126. package/dist/providers/openai-compat/actor.js.map +1 -1
  127. package/dist/providers/openai-compat/adopt.d.ts +2 -0
  128. package/dist/providers/openai-compat/adopt.d.ts.map +1 -1
  129. package/dist/providers/openai-compat/adopt.js.map +1 -1
  130. package/dist/providers/openai-compat/connection.d.ts +9 -2
  131. package/dist/providers/openai-compat/connection.d.ts.map +1 -1
  132. package/dist/providers/openai-compat/connection.js +35 -27
  133. package/dist/providers/openai-compat/connection.js.map +1 -1
  134. package/dist/providers/openai-compat/fetch-types.d.ts.map +1 -1
  135. package/dist/providers/openai-compat/fetch-types.js +2 -6
  136. package/dist/providers/openai-compat/fetch-types.js.map +1 -1
  137. package/dist/providers/openai-compat/index.d.ts +2 -2
  138. package/dist/providers/openai-compat/index.d.ts.map +1 -1
  139. package/dist/providers/openai-compat/index.js +2 -2
  140. package/dist/providers/openai-compat/index.js.map +1 -1
  141. package/dist/providers/openai-compat/model-capabilities.d.ts +7 -0
  142. package/dist/providers/openai-compat/model-capabilities.d.ts.map +1 -0
  143. package/dist/providers/openai-compat/model-capabilities.js +24 -0
  144. package/dist/providers/openai-compat/model-capabilities.js.map +1 -0
  145. package/dist/providers/openai-compat/schema.d.ts +1 -1
  146. package/dist/providers/web/registrations/ids.d.ts +0 -2
  147. package/dist/providers/web/registrations/ids.d.ts.map +1 -1
  148. package/dist/providers/web/registrations/ids.js +0 -1
  149. package/dist/providers/web/registrations/ids.js.map +1 -1
  150. package/dist/runtime/bot-mcp.d.ts.map +1 -1
  151. package/dist/runtime/bot-mcp.js +1 -4
  152. package/dist/runtime/bot-mcp.js.map +1 -1
  153. package/dist/runtime/intent-recovery.d.ts +3 -20
  154. package/dist/runtime/intent-recovery.d.ts.map +1 -1
  155. package/dist/runtime/intent-recovery.js +1 -122
  156. package/dist/runtime/intent-recovery.js.map +1 -1
  157. package/dist/server/ask-answer.d.ts.map +1 -1
  158. package/dist/server/ask-answer.js +3 -3
  159. package/dist/server/ask-answer.js.map +1 -1
  160. package/dist/server/daemon/kernel/KernelDaemon.d.ts +4 -0
  161. package/dist/server/daemon/kernel/KernelDaemon.d.ts.map +1 -1
  162. package/dist/server/daemon/kernel/KernelDaemon.js +100 -40
  163. package/dist/server/daemon/kernel/KernelDaemon.js.map +1 -1
  164. package/dist/server/daemon/kernel/completion-catalog.d.ts +8 -0
  165. package/dist/server/daemon/kernel/completion-catalog.d.ts.map +1 -1
  166. package/dist/server/daemon/kernel/completion-catalog.js +16 -0
  167. package/dist/server/daemon/kernel/completion-catalog.js.map +1 -1
  168. package/dist/server/daemon/kernel/fs-reflection/reflectKernel.d.ts.map +1 -1
  169. package/dist/server/daemon/kernel/fs-reflection/reflectKernel.js +47 -1
  170. package/dist/server/daemon/kernel/fs-reflection/reflectKernel.js.map +1 -1
  171. package/dist/server/daemon/kernel/glance-ask-line.d.ts +1 -6
  172. package/dist/server/daemon/kernel/glance-ask-line.d.ts.map +1 -1
  173. package/dist/server/daemon/kernel/glance-ask-line.js +1 -35
  174. package/dist/server/daemon/kernel/glance-ask-line.js.map +1 -1
  175. package/dist/server/daemon/kernel/settings-files.d.ts +1 -1
  176. package/dist/server/daemon/kernel/settings-files.d.ts.map +1 -1
  177. package/dist/server/daemon/kernel/settings-files.js +3 -6
  178. package/dist/server/daemon/kernel/settings-files.js.map +1 -1
  179. package/dist/server/daemon/project/ProjectDaemon.d.ts +4 -0
  180. package/dist/server/daemon/project/ProjectDaemon.d.ts.map +1 -1
  181. package/dist/server/daemon/project/ProjectDaemon.js +11 -0
  182. package/dist/server/daemon/project/ProjectDaemon.js.map +1 -1
  183. package/dist/server/daemon/session/SessionDaemon.d.ts +5 -3
  184. package/dist/server/daemon/session/SessionDaemon.d.ts.map +1 -1
  185. package/dist/server/daemon/session/SessionDaemon.js +54 -37
  186. package/dist/server/daemon/session/SessionDaemon.js.map +1 -1
  187. package/dist/server/daemon/session/SessionOrchestrator.d.ts +1 -0
  188. package/dist/server/daemon/session/SessionOrchestrator.d.ts.map +1 -1
  189. package/dist/server/daemon/session/SessionOrchestrator.js +1371 -1146
  190. package/dist/server/daemon/session/SessionOrchestrator.js.map +1 -1
  191. package/dist/server/daemon/session/agent-runtime.d.ts +2 -0
  192. package/dist/server/daemon/session/agent-runtime.d.ts.map +1 -1
  193. package/dist/server/daemon/session/agent-runtime.js +55 -6
  194. package/dist/server/daemon/session/agent-runtime.js.map +1 -1
  195. package/dist/server/daemon/session/ambient-compact.d.ts +3 -21
  196. package/dist/server/daemon/session/ambient-compact.d.ts.map +1 -1
  197. package/dist/server/daemon/session/ambient-compact.js +7 -116
  198. package/dist/server/daemon/session/ambient-compact.js.map +1 -1
  199. package/dist/server/daemon/session/behavior-host.d.ts +9 -3
  200. package/dist/server/daemon/session/behavior-host.d.ts.map +1 -1
  201. package/dist/server/daemon/session/behavior-host.js +222 -47
  202. package/dist/server/daemon/session/behavior-host.js.map +1 -1
  203. package/dist/server/daemon/session/compact.d.ts +0 -1
  204. package/dist/server/daemon/session/compact.d.ts.map +1 -1
  205. package/dist/server/daemon/session/compact.js +7 -1
  206. package/dist/server/daemon/session/compact.js.map +1 -1
  207. package/dist/server/daemon/session/plugin-abi.d.ts.map +1 -1
  208. package/dist/server/daemon/session/plugin-abi.js +7 -11
  209. package/dist/server/daemon/session/plugin-abi.js.map +1 -1
  210. package/dist/server/daemon/session/prompt-message-of.d.ts +1 -8
  211. package/dist/server/daemon/session/prompt-message-of.d.ts.map +1 -1
  212. package/dist/server/daemon/session/prompt-message-of.js +2 -12
  213. package/dist/server/daemon/session/prompt-message-of.js.map +1 -1
  214. package/dist/server/daemon/session/re-act-loop-intent-detected-trigger.d.ts +3 -42
  215. package/dist/server/daemon/session/re-act-loop-intent-detected-trigger.d.ts.map +1 -1
  216. package/dist/server/daemon/session/re-act-loop-intent-detected-trigger.js +4 -145
  217. package/dist/server/daemon/session/re-act-loop-intent-detected-trigger.js.map +1 -1
  218. package/dist/server/daemon/session/round-boundary.d.ts +13 -0
  219. package/dist/server/daemon/session/round-boundary.d.ts.map +1 -0
  220. package/dist/server/daemon/session/round-boundary.js +196 -0
  221. package/dist/server/daemon/session/round-boundary.js.map +1 -0
  222. package/dist/server/daemon/session/round-stop.d.ts +1 -25
  223. package/dist/server/daemon/session/round-stop.d.ts.map +1 -1
  224. package/dist/server/daemon/session/round-stop.js +1 -75
  225. package/dist/server/daemon/session/round-stop.js.map +1 -1
  226. package/dist/server/daemon/session/turn-iterator.d.ts +1 -44
  227. package/dist/server/daemon/session/turn-iterator.d.ts.map +1 -1
  228. package/dist/server/daemon/session/turn-iterator.js +1 -435
  229. package/dist/server/daemon/session/turn-iterator.js.map +1 -1
  230. package/dist/server/daemon/session/turn-resolvers.d.ts +1 -16
  231. package/dist/server/daemon/session/turn-resolvers.d.ts.map +1 -1
  232. package/dist/server/daemon/session/turn-resolvers.js +1 -28
  233. package/dist/server/daemon/session/turn-resolvers.js.map +1 -1
  234. package/dist/server/daemon/session/visual-store.d.ts +2 -2
  235. package/dist/server/daemon/session/visual-store.d.ts.map +1 -1
  236. package/dist/server/daemon/session/visual-store.js +19 -20
  237. package/dist/server/daemon/session/visual-store.js.map +1 -1
  238. package/dist/server/drivers/request-timeout.d.ts +1 -0
  239. package/dist/server/drivers/request-timeout.d.ts.map +1 -1
  240. package/dist/server/drivers/request-timeout.js +2 -1
  241. package/dist/server/drivers/request-timeout.js.map +1 -1
  242. package/dist/server/runtime-bin.js +5 -8
  243. package/dist/server/runtime-bin.js.map +1 -1
  244. package/dist/server/schemas/index.d.ts +0 -1
  245. package/dist/server/schemas/index.d.ts.map +1 -1
  246. package/dist/server/schemas/index.js +0 -1
  247. package/dist/server/schemas/index.js.map +1 -1
  248. package/dist/server/schemas/json-record.d.ts +0 -6
  249. package/dist/server/schemas/json-record.d.ts.map +1 -1
  250. package/dist/server/schemas/json-record.js +0 -16
  251. package/dist/server/schemas/json-record.js.map +1 -1
  252. package/dist/server/schemas/well-known.d.ts +0 -2
  253. package/dist/server/schemas/well-known.d.ts.map +1 -1
  254. package/dist/server/schemas/well-known.js +0 -1
  255. package/dist/server/schemas/well-known.js.map +1 -1
  256. package/dist/server/testkit/scripted-model.d.ts +11 -0
  257. package/dist/server/testkit/scripted-model.d.ts.map +1 -1
  258. package/dist/server/testkit/scripted-model.js +42 -3
  259. package/dist/server/testkit/scripted-model.js.map +1 -1
  260. package/dist/server/toolkit/actor.d.ts +0 -1
  261. package/dist/server/toolkit/actor.d.ts.map +1 -1
  262. package/dist/server/toolkit/actor.js +2 -5
  263. package/dist/server/toolkit/actor.js.map +1 -1
  264. package/dist/server/toolkit/catalog.d.ts +0 -2
  265. package/dist/server/toolkit/catalog.d.ts.map +1 -1
  266. package/dist/server/toolkit/catalog.js +0 -81
  267. package/dist/server/toolkit/catalog.js.map +1 -1
  268. package/dist/server/toolkit/pack-catalog.d.ts +2 -1
  269. package/dist/server/toolkit/pack-catalog.d.ts.map +1 -1
  270. package/dist/server/toolkit/pack-catalog.js +1 -0
  271. package/dist/server/toolkit/pack-catalog.js.map +1 -1
  272. package/dist/server/toolkit/tool-entry.d.ts.map +1 -1
  273. package/dist/server/toolkit/tool-entry.js +1 -0
  274. package/dist/server/toolkit/tool-entry.js.map +1 -1
  275. package/dist/server/toolkit/tool-table.d.ts +0 -1
  276. package/dist/server/toolkit/tool-table.d.ts.map +1 -1
  277. package/dist/server/toolkit/tool-table.js +0 -3
  278. package/dist/server/toolkit/tool-table.js.map +1 -1
  279. package/dist/server/util/read-field.d.ts +0 -2
  280. package/dist/server/util/read-field.d.ts.map +1 -1
  281. package/dist/server/util/read-field.js +0 -9
  282. package/dist/server/util/read-field.js.map +1 -1
  283. package/dist/server/util/tool-call-json.d.ts +0 -1
  284. package/dist/server/util/tool-call-json.d.ts.map +1 -1
  285. package/dist/server/util/tool-call-json.js +0 -25
  286. package/dist/server/util/tool-call-json.js.map +1 -1
  287. package/dist/session/index.d.ts +4 -1
  288. package/dist/session/index.d.ts.map +1 -1
  289. package/dist/session/index.js +10 -1
  290. package/dist/session/index.js.map +1 -1
  291. package/dist/tool-runtime/guard-tool.d.ts +3 -0
  292. package/dist/tool-runtime/guard-tool.d.ts.map +1 -1
  293. package/dist/tool-runtime/guard-tool.js +37 -3
  294. package/dist/tool-runtime/guard-tool.js.map +1 -1
  295. package/dist/yjs/document-service.d.ts +2 -4
  296. package/dist/yjs/document-service.d.ts.map +1 -1
  297. package/dist/yjs/document-service.js +0 -6
  298. package/dist/yjs/document-service.js.map +1 -1
  299. package/package.json +40 -40
@@ -5,13 +5,14 @@ import { asUserPrompt, asSystemPrompt } from "@inhuman.tools/harness-commons";
5
5
  import { connectAdoptOutput, contract, isUiForm } from "@inhuman.tools/harness-contract";
6
6
  import { fail, step, trace } from "@inhuman.tools/harness-diagnostics";
7
7
  import { SCHEME_REPL_TOOL_NAME, CallJob, AskAgentSpec, bindSessionProjections, clampChars, evalProgramOf, findEvalTurnByRequestId, HARNESS_CONSTITUTION, HOST_QUEUE_VERBS, isEvalRequestCancelled, mcpConnectionsEqual, mcpToolListStamp, parseStatuslineRefresh, ProgrammaticJob, refreshSystemPrompt, RegisteredToolsSet, resolvedTip, retractLastQueued, SESSION_TITLE_MAX_CHARS, sessionMintPermissionMode, steerFirstQueued, SessionSystemPrompt, SessionTurn, SessionTurnEvalSpec, layerErrors, parseAuthorizationConfig, SystemToolJob, ToolSpec, } from "@inhuman.tools/harness-model";
8
- import { applyKv, sessionMintKvs, sessionMintLastUsedConnectionModel, } from "@inhuman.tools/harness-model/shared";
8
+ import { sessionMintKvs, sessionMintLastUsedConnectionModel, } from "@inhuman.tools/harness-model/shared";
9
9
  import { schemeReplDescription, liveModelsOf } from "@inhuman.tools/harness-scheme";
10
10
  import { discoverProjectSkills, expandSkillPrompt } from "@inhuman.tools/project-skills";
11
11
  import { isGitShellCommand, runStatusline } from "@inhuman.tools/statusline";
12
12
  import { DoorSession } from "@inhuman.tools/substrate/doors";
13
13
  import { inspectAgentCall, listAgentCalls, namedWorkerIds, settleCancelledTurn } from "@inhuman.tools/turn/agent-calls";
14
14
  import { turnRetentionJson } from "@inhuman.tools/turn/context";
15
+ import { SessionRuntime } from "@inhuman.tools/turn/runtime";
15
16
  import { writeBlob } from "@inhuman.tools/turn/tool-runtime";
16
17
  import { observable, reaction, runInAction } from "mobx";
17
18
  import { pluginStateSnapshotFromHead, restoreSessionPluginState, Refusal, toJS } from "../../../extensions/index.js";
@@ -20,8 +21,6 @@ import { scopes } from "../../../policy-processor/scope.js";
20
21
  import { documentImageSegments } from "../../../protocol/document/index.js";
21
22
  import { isMcpDriver } from "../../../providers/mcp/index.js";
22
23
  import { bindCompletionFace, OpenAiCompatActor } from "../../../providers/openai-compat/index.js";
23
- import { recoverSessionJobs } from "../../../runtime/index.js";
24
- import { admitCompact, admitTurn, cancelTurnCommand, drainPromptQueue, retryTurn, rewindTurn, } from "../../../session/index.js";
25
24
  import { behaviorEntriesOf, bindSessionCatalog } from "../../../tool-catalog/index.js";
26
25
  import { resolveEvalPermissionMode, unattendedFailureText } from "../../../tool-runtime/index.js";
27
26
  import { attachLens } from "../../../yjs/index.js";
@@ -79,6 +78,7 @@ export class SessionDaemon extends RequestHost {
79
78
  sessionId;
80
79
  plexus;
81
80
  orchestrator;
81
+ sessionRuntime;
82
82
  ready;
83
83
  /** Teaching verbosity for scheme-repl envelope doors. Process-local, not a Plexus field. */
84
84
  doors = new DoorSession((line) => step(line));
@@ -202,7 +202,7 @@ export class SessionDaemon extends RequestHost {
202
202
  warnings,
203
203
  };
204
204
  }),
205
- DaemonRpcMethod.fromContract(contract.session.turn.send, (args) => {
205
+ DaemonRpcMethod.fromContract(contract.session.turn.send, async (args) => {
206
206
  const incoming = args.visuals ?? [];
207
207
  const named = args.kind;
208
208
  const kind = named === "queue" || named === "continue" ? named : undefined;
@@ -210,15 +210,17 @@ export class SessionDaemon extends RequestHost {
210
210
  if (named === "steer" || named === "queue" || named === "continue" || this.root.findRunningTurn() != null) {
211
211
  throw new RpcInvalidParams("an image can't be sent with that");
212
212
  }
213
- if (!modelSeesImages(this.root.kvs.model ?? "")) {
214
- throw new RpcInvalidParams("this model can't see images");
215
- }
216
- if ((this.root.kvs.connection ?? "").trim() === "") {
213
+ const connectionId = (this.root.kvs.connection ?? "").trim();
214
+ if (connectionId === "") {
217
215
  throw new RpcInvalidParams("connection is required");
218
216
  }
217
+ const spec = this.kernel.connections[connectionId];
218
+ if (!modelSeesImages(this.root.kvs.model ?? "", spec?.live.modelCapabilities)) {
219
+ throw new RpcInvalidParams("this model can't see images");
220
+ }
219
221
  }
220
222
  const visuals = incoming.length === 0 ? undefined : this.#seatVisuals(incoming);
221
- const result = admitTurn(this.#commandHost(), {
223
+ const result = await this.sessionRuntime.admit(this.#commandHost(), {
222
224
  prompt: args.prompt,
223
225
  kind,
224
226
  ...(visuals === undefined ? {} : { visuals }),
@@ -230,8 +232,8 @@ export class SessionDaemon extends RequestHost {
230
232
  }
231
233
  return { ok: true };
232
234
  }),
233
- DaemonRpcMethod.fromContract(contract.session.compact, (args) => {
234
- const result = admitCompact(this.#commandHost(), args.focus ?? "");
235
+ DaemonRpcMethod.fromContract(contract.session.compact, async (args) => {
236
+ const result = await this.sessionRuntime.compact(this.#commandHost(), args.focus ?? "");
235
237
  if (!result.ok && result.invalid)
236
238
  throw new RpcInvalidParams(result.reason);
237
239
  if (!result.ok)
@@ -311,7 +313,7 @@ export class SessionDaemon extends RequestHost {
311
313
  });
312
314
  });
313
315
  if (isEvalRequestCancelled(this.root, args.requestId)) {
314
- cancelTurnCommand(this.#commandHost(), { requestId: args.requestId });
316
+ await this.sessionRuntime.cancel(this.#commandHost(), { requestId: args.requestId });
315
317
  }
316
318
  await this.kernel.flushSession(this.plexus);
317
319
  }
@@ -330,7 +332,7 @@ export class SessionDaemon extends RequestHost {
330
332
  };
331
333
  }),
332
334
  DaemonRpcMethod.fromContract(contract.session.turn.cancel, async (args) => {
333
- const result = cancelTurnCommand(this.#commandHost(), args);
335
+ const result = await this.sessionRuntime.cancel(this.#commandHost(), args);
334
336
  await this.kernel.flushSession(this.plexus);
335
337
  return result;
336
338
  }),
@@ -386,14 +388,15 @@ export class SessionDaemon extends RequestHost {
386
388
  await this.kernel.flushSession(this.plexus, { force: true });
387
389
  return { dryRun, ...counts, imageBytesBefore, imageBytesAfter: dryRun ? imageBytesBefore : this.#imageBytes() };
388
390
  }),
389
- DaemonRpcMethod.fromContract(contract.session.turn.rewind, (args) => {
390
- const result = rewindTurn(this.#commandHost(), args.turnId);
391
+ DaemonRpcMethod.fromContract(contract.session.turn.rewind, async (args) => {
392
+ const result = await this.sessionRuntime.rewind(this.#commandHost(), args.turnId);
391
393
  if (!result.ok)
392
394
  throw new RpcInvalidParams(result.reason);
393
395
  return { ok: true, turnId: result.turnId };
394
396
  }),
395
- DaemonRpcMethod.fromContract(contract.session.turn.retry, () => {
396
- return retryTurn(this.#commandHost());
397
+ DaemonRpcMethod.fromContract(contract.session.turn.retry, async () => {
398
+ await this.sessionRuntime.flush();
399
+ return this.sessionRuntime.retry(this.#commandHost());
397
400
  }),
398
401
  DaemonRpcMethod.fromContract(contract.session.ask.answer, (args) => {
399
402
  const target = this.#rootFor(args.sessionId);
@@ -510,6 +513,17 @@ export class SessionDaemon extends RequestHost {
510
513
  this.#syncSkills();
511
514
  });
512
515
  }
516
+ this.sessionRuntime = new SessionRuntime(this.plexus, {
517
+ kind: "durable",
518
+ commit: async (checkpoint) => {
519
+ await this.kernel.flushSession(this.plexus);
520
+ return {
521
+ sessionId: checkpoint.sessionId,
522
+ incarnation: checkpoint.incarnation,
523
+ revision: checkpoint.revision,
524
+ };
525
+ },
526
+ });
513
527
  this.orchestrator = new SessionOrchestrator(this);
514
528
  bindSessionCatalog(this.plexus.root, project.kernel.catalog);
515
529
  bindSessionProjections(this.plexus.root, project.kernel.projections);
@@ -542,7 +556,7 @@ export class SessionDaemon extends RequestHost {
542
556
  if (this.#recovered)
543
557
  return;
544
558
  if (this.#hydrated) {
545
- recoverSessionJobs(this.plexus.root, {
559
+ this.sessionRuntime.recover({ kind: "resume" }, {
546
560
  catalog: this.project.kernel.catalog,
547
561
  releaseCall: (call) => completeCallExceptionally(call, {
548
562
  kernel: this.project.kernel,
@@ -557,6 +571,8 @@ export class SessionDaemon extends RequestHost {
557
571
  this.root.tip = resolved;
558
572
  });
559
573
  }
574
+ if (!this.#hydrated)
575
+ this.sessionRuntime.recover();
560
576
  // A peer that cannot open (overload, corrupt image) must not block this session.
561
577
  for (const id of new Set([...namedWorkerIds(this.root), ...Object.values(this.root.agentCallbacks)])) {
562
578
  if (id === "" || id === this.sessionId)
@@ -568,6 +584,7 @@ export class SessionDaemon extends RequestHost {
568
584
  fail(`recover peer ${id}`, error);
569
585
  }
570
586
  }
587
+ await this.sessionRuntime.flush();
571
588
  this.#recovered = true;
572
589
  }
573
590
  /** Recovered replica is interned; honor stays off until {@link activate}. */
@@ -585,6 +602,7 @@ export class SessionDaemon extends RequestHost {
585
602
  return;
586
603
  }
587
604
  this.#activated = true;
605
+ this.sessionRuntime.activate();
588
606
  this.orchestrator.activate();
589
607
  this.#statuslineRefreshWatch = reaction(() => `${this.kernel.plexus.root.statusline}\0${this.kernel.plexus.root.statuslineRefresh}`, () => {
590
608
  this.#bindStatuslineClock();
@@ -688,8 +706,12 @@ export class SessionDaemon extends RequestHost {
688
706
  }
689
707
  /** Serialized with the door so a concurrent `turn` cannot twin-mint. */
690
708
  drainPromptQueue() {
691
- return this.#serialize(() => {
692
- drainPromptQueue(this.#commandHost());
709
+ return this.#serialize(async () => {
710
+ if (this.#closed || this.#parked || this.root.promptQueue.length === 0)
711
+ return;
712
+ if (this.root.findRunningTurn() != null || this.root.kvs.connection.trim() === "")
713
+ return;
714
+ await this.sessionRuntime.drain(this.#commandHost());
693
715
  });
694
716
  }
695
717
  /** Standing instructions plus project and user instruction files. */
@@ -801,6 +823,7 @@ export class SessionDaemon extends RequestHost {
801
823
  this.#stopGitWatch();
802
824
  this.kernel.dropReservation(this.sessionId);
803
825
  this.#parked = true;
826
+ this.sessionRuntime.park();
804
827
  const keep = this.kernel.graphEligibleSessionIds();
805
828
  const workers = [];
806
829
  for (const id of namedWorkerIds(this.root)) {
@@ -834,6 +857,7 @@ export class SessionDaemon extends RequestHost {
834
857
  delete this.project.sessions[this.sessionId];
835
858
  });
836
859
  this.kernel.dropDaemon(this.sessionId);
860
+ void this.sessionRuntime[Symbol.asyncDispose]();
837
861
  this.#closed = true;
838
862
  }
839
863
  [Symbol.dispose]() {
@@ -1035,12 +1059,12 @@ export class SessionDaemon extends RequestHost {
1035
1059
  */
1036
1060
  #write(scope, proposals, remember = false) {
1037
1061
  if (scope === "kernel") {
1038
- this.#writeKernel(proposals);
1062
+ this.kernel.writeKvs(proposals);
1039
1063
  this.#stampModelUsage("kernel", this.kernel.plexus.root.kvs, proposals);
1040
1064
  return;
1041
1065
  }
1042
1066
  if (scope === "project") {
1043
- this.project.root.applyKvs(proposals);
1067
+ this.project.writeKvs(proposals);
1044
1068
  this.#stampModelUsage("project", this.project.root.kvs, proposals);
1045
1069
  return;
1046
1070
  }
@@ -1051,8 +1075,8 @@ export class SessionDaemon extends RequestHost {
1051
1075
  const projected = remember ? assigned : assigned.filter((proposal) => !isModelChoiceKey(proposal.key));
1052
1076
  if (projected.length === 0)
1053
1077
  return;
1054
- this.project.root.applyKvs(projected);
1055
- this.#writeKernel(projected);
1078
+ this.project.writeKvs(projected);
1079
+ this.kernel.writeKvs(projected);
1056
1080
  if (remember)
1057
1081
  this.#stampModelUsage("session", this.root.kvs, projected);
1058
1082
  }
@@ -1066,22 +1090,16 @@ export class SessionDaemon extends RequestHost {
1066
1090
  if (connection === "")
1067
1091
  return;
1068
1092
  // Global recency; also the kernel last-used index.
1069
- this.kernel.plexus.root.stampModelUsage(connection, modelSet.value);
1093
+ this.kernel.rememberModelChoice(connection, modelSet.value);
1070
1094
  // Per-connection last-used mirrors the remembered kv write.
1071
1095
  if (scope === "session") {
1072
1096
  this.root.stampLastUsedConnectionModel(connection, modelSet.value);
1073
- this.project.root.stampLastUsedConnectionModel(connection, modelSet.value);
1097
+ this.project.rememberModelChoice(connection, modelSet.value);
1074
1098
  }
1075
1099
  else if (scope === "project") {
1076
- this.project.root.stampLastUsedConnectionModel(connection, modelSet.value);
1100
+ this.project.rememberModelChoice(connection, modelSet.value);
1077
1101
  }
1078
1102
  }
1079
- #writeKernel(proposals) {
1080
- this.kernel.adjustKv((bag) => {
1081
- applyKv(bag, proposals);
1082
- });
1083
- this.kernel.plexus.root.applyKvs(proposals);
1084
- }
1085
1103
  #syncSkills() {
1086
1104
  const next = discoverProjectSkills(this.root.path, undefined, this.#queuedVerbs());
1087
1105
  const current = this.root.skills;
@@ -1100,10 +1118,9 @@ export class SessionDaemon extends RequestHost {
1100
1118
  * the turn and does not call this. Attach does not re-seed.
1101
1119
  */
1102
1120
  #writeDefaultPermissionMode(policy) {
1103
- this.root.writeChoicePermissionMode(policy, this.project.root);
1104
- this.kernel.adjustConfig((config) => {
1105
- config.defaultPermissionMode = policy;
1106
- });
1121
+ this.root.writeChoicePermissionMode(policy);
1122
+ this.project.writeDefaultPermissionMode(policy);
1123
+ this.kernel.writeDefaultPermissionMode(policy);
1107
1124
  }
1108
1125
  }
1109
1126
  function seatedVisual(head, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"SessionDaemon.js","sourceRoot":"","sources":["../../../../src/server/daemon/session/SessionDaemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionDaemon.js","sourceRoot":"","sources":["../../../../src/server/daemon/session/SessionDaemon.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export declare class SessionOrchestrator extends Orchestrator implements Disposa
29
29
  */
30
30
  protected stampCrash(job: Job, phase: "license" | "body", detail: string): void;
31
31
  protected shouldHonor(node: WorkExpectation): boolean;
32
+ protected get canApplyResults(): boolean;
32
33
  loadDriverModule(driver: DriverSpec): Promise<DriverConnectionClass>;
33
34
  get holdingEval(): boolean;
34
35
  /** Honor still running after last-seat park: on-wire MCP or an unsealed eval bag. */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionOrchestrator.d.ts","sourceRoot":"","sources":["../../../../src/server/daemon/session/SessionOrchestrator.ts"],"names":[],"mappings":"AAIA,OAAO,EAmBL,KAAK,YAAY,EAQjB,KAAK,aAAa,EAElB,WAAW,EAOZ,MAAM,8BAA8B,CAAC;AAKtC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,KAAK,UAAU,EAAE,GAAG,EAAY,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrG,OAAO,EAAkB,KAAK,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACvH,OAAO,EAAkB,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAiF3F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAkBxD,qBAAa,mBAAoB,SAAQ,YAAa,YAAW,UAAU;;IAgC7D,QAAQ,CAAC,aAAa,EAAE,aAAa;IA/BjD,SAAiB,MAAM,EAAE,YAAY,CAAC;IACtC,SAAiB,OAAO,EAAE,aAAa,CAAC;gBA8BnB,aAAa,EAAE,aAAa;IAg2BxC,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;cAqCtC,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;cAWjE,iBAAiB,CAAC,YAAY,EAAE,MAAM;qBAIxC,MAAM;;2BAEA,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;IAMvD;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAuEvD;;;;OAIG;cACgB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;cAOrE,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IAOxD,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAO1E,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,qFAAqF;IACrF,IAAI,OAAO,IAAI,OAAO,CAErB;IAOD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuErB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IA0BxB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;CA6IrC"}
1
+ {"version":3,"file":"SessionOrchestrator.d.ts","sourceRoot":"","sources":["../../../../src/server/daemon/session/SessionOrchestrator.ts"],"names":[],"mappings":"AAIA,OAAO,EAoBL,KAAK,YAAY,EASjB,KAAK,aAAa,EAElB,WAAW,EAOZ,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,KAAK,UAAU,EAAE,GAAG,EAAY,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrG,OAAO,EAAkB,KAAK,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACvH,OAAO,EAAkB,YAAY,EAAE,MAAM,6CAA6C,CAAC;AA8E3F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAgBxD,qBAAa,mBAAoB,SAAQ,YAAa,YAAW,UAAU;;IAiC7D,QAAQ,CAAC,aAAa,EAAE,aAAa;IAhCjD,SAAiB,MAAM,EAAE,YAAY,CAAC;IACtC,SAAiB,OAAO,EAAE,aAAa,CAAC;gBA+BnB,aAAa,EAAE,aAAa;IA65BxC,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;cAqCtC,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;cAWjE,iBAAiB,CAAC,YAAY,EAAE,MAAM;qBAIxC,MAAM;;2BAEA,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;IAMvD;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IA4FvD;;;;OAIG;cACgB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;cAOrE,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IAS9D,cAAuB,eAAe,IAAI,OAAO,CAEhD;IAMK,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQ1E,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,qFAAqF;IACrF,IAAI,OAAO,IAAI,OAAO,CAErB;IAgBD;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiFrB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IA6BxB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;CA+JrC"}