@osolmaz/pi-workflows 0.16.1 → 0.16.3

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 (327) hide show
  1. package/README.md +41 -41
  2. package/dist/builtins/monitor.workflow.d.ts +1 -1
  3. package/dist/builtins/monitor.workflow.js +8 -8
  4. package/dist/builtins/pi-agent-group.js +3 -3
  5. package/dist/builtins/pi-agent-group.js.map +1 -1
  6. package/dist/channels/adapter-entry.js +14 -14
  7. package/dist/channels/adapter-entry.js.map +1 -1
  8. package/dist/client/client.d.ts +6 -6
  9. package/dist/client/client.js +27 -27
  10. package/dist/client/client.js.map +1 -1
  11. package/dist/client/protocol.d.ts +4 -1
  12. package/dist/client/protocol.js +17 -11
  13. package/dist/client/protocol.js.map +1 -1
  14. package/dist/client/resolver.d.ts +4 -4
  15. package/dist/client/view.d.ts +7 -1
  16. package/dist/client/view.js +1 -0
  17. package/dist/client/view.js.map +1 -1
  18. package/dist/extension/index.d.ts +1 -1
  19. package/dist/extension/index.js +66 -47
  20. package/dist/extension/index.js.map +1 -1
  21. package/dist/extension/recorder.d.ts +1 -1
  22. package/dist/extension/recorder.js +1 -1
  23. package/dist/extension/recorder.js.map +1 -1
  24. package/dist/extension/remote-recorder-store.d.ts +1 -1
  25. package/dist/extension/remote-recorder-store.js +2 -2
  26. package/dist/extension/remote-recorder-store.js.map +1 -1
  27. package/dist/extension/{controller-command.d.ts → resource-manager-command.d.ts} +6 -6
  28. package/dist/extension/{controller-command.js → resource-manager-command.js} +7 -7
  29. package/dist/extension/resource-manager-command.js.map +1 -0
  30. package/dist/extension/session-delivery.d.ts +1 -1
  31. package/dist/extension/session-delivery.js +2 -2
  32. package/dist/extension/session-delivery.js.map +1 -1
  33. package/dist/extension/session-view.d.ts +1 -1
  34. package/dist/extension/session-view.js +1 -1
  35. package/dist/extension/session-view.js.map +1 -1
  36. package/dist/extension/workflow-message-coordinator.d.ts +4 -3
  37. package/dist/extension/workflow-message-coordinator.js +81 -29
  38. package/dist/extension/workflow-message-coordinator.js.map +1 -1
  39. package/dist/resource-managers/conditions.d.ts +6 -0
  40. package/dist/{controllers → resource-managers}/conditions.js +3 -3
  41. package/dist/resource-managers/conditions.js.map +1 -0
  42. package/dist/resource-managers/definition.d.ts +6 -0
  43. package/dist/resource-managers/definition.js +45 -0
  44. package/dist/resource-managers/definition.js.map +1 -0
  45. package/dist/resource-managers/effects.d.ts +15 -0
  46. package/dist/{controllers → resource-managers}/effects.js +2 -2
  47. package/dist/resource-managers/effects.js.map +1 -0
  48. package/dist/resource-managers/errors.d.ts +12 -0
  49. package/dist/resource-managers/errors.js +25 -0
  50. package/dist/resource-managers/errors.js.map +1 -0
  51. package/dist/resource-managers/index.d.ts +12 -0
  52. package/dist/resource-managers/index.js +12 -0
  53. package/dist/resource-managers/index.js.map +1 -0
  54. package/dist/resource-managers/json.js.map +1 -0
  55. package/dist/resource-managers/loader.d.ts +23 -0
  56. package/dist/resource-managers/loader.js +75 -0
  57. package/dist/resource-managers/loader.js.map +1 -0
  58. package/dist/resource-managers/results.d.ts +5 -0
  59. package/dist/resource-managers/results.js.map +1 -0
  60. package/dist/resource-managers/runtime.d.ts +59 -0
  61. package/dist/{controllers/manager.js → resource-managers/runtime.js} +57 -57
  62. package/dist/resource-managers/runtime.js.map +1 -0
  63. package/dist/{controllers → resource-managers}/sqlite.d.ts +51 -43
  64. package/dist/{controllers → resource-managers}/sqlite.js +187 -125
  65. package/dist/resource-managers/sqlite.js.map +1 -0
  66. package/dist/{controllers → resource-managers}/store.d.ts +33 -33
  67. package/dist/{controllers → resource-managers}/store.js.map +1 -1
  68. package/dist/{controllers → resource-managers}/types.d.ts +41 -41
  69. package/dist/{controllers → resource-managers}/types.js.map +1 -1
  70. package/dist/resource-managers/workflows.d.ts +34 -0
  71. package/dist/{controllers → resource-managers}/workflows.js +15 -15
  72. package/dist/resource-managers/workflows.js.map +1 -0
  73. package/dist/server/channel-effects.js.map +1 -0
  74. package/dist/{host → server}/channel-supervisor.d.ts +6 -6
  75. package/dist/{host → server}/channel-supervisor.js +3 -3
  76. package/dist/server/channel-supervisor.js.map +1 -0
  77. package/dist/{host/child-worker-supervisor.d.ts → server/child-runner-supervisor.d.ts} +15 -13
  78. package/dist/{host/child-worker-supervisor.js → server/child-runner-supervisor.js} +6 -5
  79. package/dist/server/child-runner-supervisor.js.map +1 -0
  80. package/dist/{host → server}/processes.d.ts +3 -3
  81. package/dist/{host → server}/processes.js +3 -3
  82. package/dist/server/processes.js.map +1 -0
  83. package/dist/{host → server}/resolver-entry.d.ts +6 -6
  84. package/dist/{host → server}/resolver-entry.js +14 -14
  85. package/dist/server/resolver-entry.js.map +1 -0
  86. package/dist/server/resource-runner-entry.d.ts +2 -0
  87. package/dist/{host/controller-worker-entry.js → server/resource-runner-entry.js} +33 -33
  88. package/dist/server/resource-runner-entry.js.map +1 -0
  89. package/dist/server/resource-runner-protocol.d.ts +36 -0
  90. package/dist/server/resource-runner-protocol.js +49 -0
  91. package/dist/server/resource-runner-protocol.js.map +1 -0
  92. package/dist/server/resource-runner-supervisor.d.ts +21 -0
  93. package/dist/{host/worker-supervisor.js → server/resource-runner-supervisor.js} +17 -17
  94. package/dist/server/resource-runner-supervisor.js.map +1 -0
  95. package/dist/{host → server}/rpc-bridge.d.ts +3 -3
  96. package/dist/{host → server}/rpc-bridge.js +3 -3
  97. package/dist/server/rpc-bridge.js.map +1 -0
  98. package/dist/{host → server}/rpc-executor.d.ts +1 -1
  99. package/dist/{host → server}/rpc-executor.js +3 -3
  100. package/dist/server/rpc-executor.js.map +1 -0
  101. package/dist/{host/host-entry.js → server/server-entry.js} +6 -6
  102. package/dist/server/server-entry.js.map +1 -0
  103. package/dist/{host/runner.d.ts → server/server.d.ts} +47 -39
  104. package/dist/{host/runner.js → server/server.js} +624 -535
  105. package/dist/server/server.js.map +1 -0
  106. package/dist/{host → server}/state.d.ts +25 -25
  107. package/dist/{host → server}/state.js +49 -49
  108. package/dist/server/state.js.map +1 -0
  109. package/dist/{host → server}/view.d.ts +7 -7
  110. package/dist/{host → server}/view.js +19 -15
  111. package/dist/server/view.js.map +1 -0
  112. package/dist/server/workflow-runner-content.d.ts +6 -0
  113. package/dist/server/workflow-runner-content.js +96 -0
  114. package/dist/server/workflow-runner-content.js.map +1 -0
  115. package/dist/server/workflow-runner-entry.d.ts +13 -0
  116. package/dist/{host/worker-entry.js → server/workflow-runner-entry.js} +89 -57
  117. package/dist/server/workflow-runner-entry.js.map +1 -0
  118. package/dist/server/workflow-runner-protocol.d.ts +69 -0
  119. package/dist/server/workflow-runner-protocol.js +176 -0
  120. package/dist/server/workflow-runner-protocol.js.map +1 -0
  121. package/dist/{host/worker-store.d.ts → server/workflow-runner-store.d.ts} +11 -11
  122. package/dist/{host/worker-store.js → server/workflow-runner-store.js} +8 -8
  123. package/dist/server/workflow-runner-store.js.map +1 -0
  124. package/dist/server/workflow-runner-supervisor.d.ts +22 -0
  125. package/dist/server/workflow-runner-supervisor.js +56 -0
  126. package/dist/server/workflow-runner-supervisor.js.map +1 -0
  127. package/dist/state/prune.d.ts +1 -1
  128. package/dist/state/prune.js +17 -10
  129. package/dist/state/prune.js.map +1 -1
  130. package/dist/state/schema.js +2 -2
  131. package/dist/state/workflow-messages.d.ts +3 -1
  132. package/dist/state/workflow-messages.js +32 -1
  133. package/dist/state/workflow-messages.js.map +1 -1
  134. package/dist/viewer/backup.js +1 -1
  135. package/dist/viewer/backup.js.map +1 -1
  136. package/dist/viewer/cli.d.ts +2 -2
  137. package/dist/viewer/cli.js +46 -32
  138. package/dist/viewer/cli.js.map +1 -1
  139. package/dist/viewer/tui.d.ts +1 -1
  140. package/dist/viewer/tui.js +1 -1
  141. package/dist/viewer/tui.js.map +1 -1
  142. package/dist/workflows/command-batch.js +2 -2
  143. package/dist/workflows/composition.js +0 -4
  144. package/dist/workflows/composition.js.map +1 -1
  145. package/dist/workflows/definition.js +0 -8
  146. package/dist/workflows/definition.js.map +1 -1
  147. package/dist/workflows/engine.js +18 -20
  148. package/dist/workflows/engine.js.map +1 -1
  149. package/dist/workflows/schema.js +0 -4
  150. package/dist/workflows/schema.js.map +1 -1
  151. package/dist/workflows/store.d.ts +27 -11
  152. package/dist/workflows/store.js +66 -18
  153. package/dist/workflows/store.js.map +1 -1
  154. package/dist/workflows/types.d.ts +3 -5
  155. package/docs/2026-08-20-durable-workflow-launch-plan.md +12 -12
  156. package/docs/2026-08-25-workflow-follow-ups.md +7 -7
  157. package/docs/2026-08-25-workflow-settings.md +3 -3
  158. package/docs/2026-08-30-out-of-process-workflow-host-plan.md +3 -3
  159. package/docs/2026-09-01-restore-session-delivery-controls-plan.md +5 -5
  160. package/docs/2026-09-01-unified-workflow-client-plan.md +6 -6
  161. package/docs/2026-09-02-installed-live-e2e-plan.md +3 -3
  162. package/docs/2026-09-02-unify-workflow-messages-plan.md +8 -8
  163. package/docs/2026-09-04-workflow-run-state-plan.md +363 -0
  164. package/docs/DEFERRED_TURNS.md +7 -7
  165. package/docs/DESIGN_PHILOSOPHY.md +1 -1
  166. package/docs/HUMAN_DECISIONS.md +11 -11
  167. package/docs/HUMAN_DECISION_PRESENTATIONS.md +4 -4
  168. package/docs/MONITOR.md +1 -1
  169. package/docs/RESOURCE_MANAGERS.md +221 -0
  170. package/docs/SQLITE_STATE.md +40 -34
  171. package/docs/WORKFLOW_COMPOSITION.md +1 -1
  172. package/docs/{WORKFLOW_HOST.md → WORKFLOW_SERVER.md} +131 -116
  173. package/docs/WORKFLOW_STEP_MESSAGES.md +18 -18
  174. package/docs/WORKFLOW_UPDATES.md +16 -16
  175. package/docs/development.md +15 -14
  176. package/docs/live-replay-protocol.md +20 -20
  177. package/docs/plans/2026-08-04-controller-runtime-plan.md +25 -25
  178. package/docs/plans/2026-08-05-always-on-workflows-plan.md +8 -8
  179. package/docs/plans/2026-08-10-agent-managed-monitor-workflows-plan.md +2 -2
  180. package/docs/plans/2026-08-13-session-addressed-workflow-notifications-plan.md +1 -1
  181. package/docs/plans/2026-08-16-workflow-updates-plan.md +5 -5
  182. package/docs/plans/2026-08-19-human-decision-gates-plan.md +1 -1
  183. package/docs/plans/2026-08-20-bounded-command-batches-plan.md +1 -1
  184. package/docs/plans/2026-08-21-deferred-turn-intents-plan.md +3 -3
  185. package/docs/plans/2026-08-21-sanity-check-plan.md +2 -2
  186. package/docs/plans/2026-08-23-assistant-agent-completion-plan.md +5 -5
  187. package/docs/plans/2026-08-23-sqlite-state-plan.md +25 -25
  188. package/docs/plans/2026-08-25-live-workflow-settings-plan.md +4 -4
  189. package/docs/plans/2026-08-27-workflow-terminal-restart-plan.md +3 -3
  190. package/docs/plans/2026-09-04-workflow-runner-resume-state-plan.md +318 -0
  191. package/docs/plans/piw-viewer-experience-implementation-plan.md +1 -1
  192. package/docs/tui-viewer.md +9 -9
  193. package/docs/workflows.md +78 -63
  194. package/examples/{controllers/pull-request.controller.ts → resource-managers/pull-request.resource-manager.ts} +12 -12
  195. package/herdr-plugin.toml +1 -1
  196. package/package.json +5 -5
  197. package/protocol/client.v1.schema.json +7 -7
  198. package/protocol/fixtures/client-v1.json +1 -1
  199. package/src/builtins/monitor.workflow.ts +9 -9
  200. package/src/builtins/pi-agent-group.ts +3 -3
  201. package/src/channels/adapter-entry.ts +14 -14
  202. package/src/client/client.ts +33 -32
  203. package/src/client/protocol.ts +16 -11
  204. package/src/client/resolver.ts +4 -4
  205. package/src/client/view.ts +9 -1
  206. package/src/extension/index.ts +81 -53
  207. package/src/extension/recorder.ts +1 -1
  208. package/src/extension/remote-recorder-store.ts +2 -2
  209. package/src/extension/resource-manager-command.ts +45 -0
  210. package/src/extension/session-delivery.ts +2 -2
  211. package/src/extension/session-view.ts +1 -1
  212. package/src/extension/workflow-message-coordinator.ts +94 -30
  213. package/src/{controllers → resource-managers}/conditions.ts +23 -23
  214. package/src/resource-managers/definition.ts +71 -0
  215. package/src/{controllers → resource-managers}/effects.ts +9 -9
  216. package/src/resource-managers/errors.ts +27 -0
  217. package/src/resource-managers/index.ts +88 -0
  218. package/src/resource-managers/loader.ts +111 -0
  219. package/src/{controllers → resource-managers}/results.ts +4 -4
  220. package/src/{controllers/manager.ts → resource-managers/runtime.ts} +95 -92
  221. package/src/{controllers → resource-managers}/sqlite.ts +275 -181
  222. package/src/{controllers → resource-managers}/store.ts +46 -38
  223. package/src/{controllers → resource-managers}/types.ts +50 -41
  224. package/src/{controllers → resource-managers}/workflows.ts +43 -41
  225. package/src/{host → server}/channel-supervisor.ts +8 -8
  226. package/src/{host/child-worker-supervisor.ts → server/child-runner-supervisor.ts} +22 -18
  227. package/src/{host → server}/processes.ts +3 -3
  228. package/src/{host → server}/resolver-entry.ts +28 -25
  229. package/src/{host/controller-worker-entry.ts → server/resource-runner-entry.ts} +67 -65
  230. package/src/server/resource-runner-protocol.ts +103 -0
  231. package/src/server/resource-runner-supervisor.ts +76 -0
  232. package/src/{host → server}/rpc-bridge.ts +3 -3
  233. package/src/{host → server}/rpc-executor.ts +4 -4
  234. package/src/{host/host-entry.ts → server/server-entry.ts} +5 -5
  235. package/src/{host/runner.ts → server/server.ts} +786 -672
  236. package/src/{host → server}/state.ts +78 -67
  237. package/src/{host → server}/view.ts +21 -17
  238. package/src/server/workflow-runner-content.ts +119 -0
  239. package/src/{host/worker-entry.ts → server/workflow-runner-entry.ts} +131 -82
  240. package/src/server/workflow-runner-protocol.ts +241 -0
  241. package/src/{host/worker-store.ts → server/workflow-runner-store.ts} +18 -20
  242. package/src/server/workflow-runner-supervisor.ts +79 -0
  243. package/src/state/prune.ts +27 -9
  244. package/src/state/schema.ts +2 -2
  245. package/src/state/workflow-messages.ts +52 -1
  246. package/src/viewer/backup.ts +1 -1
  247. package/src/viewer/cli.ts +50 -36
  248. package/src/viewer/tui.ts +1 -1
  249. package/src/workflows/command-batch.ts +2 -2
  250. package/src/workflows/composition.ts +0 -5
  251. package/src/workflows/definition.ts +0 -8
  252. package/src/workflows/engine.ts +18 -21
  253. package/src/workflows/schema.ts +0 -6
  254. package/src/workflows/store.ts +95 -28
  255. package/src/workflows/types.ts +3 -5
  256. package/dist/controllers/conditions.d.ts +0 -6
  257. package/dist/controllers/conditions.js.map +0 -1
  258. package/dist/controllers/definition.d.ts +0 -6
  259. package/dist/controllers/definition.js +0 -45
  260. package/dist/controllers/definition.js.map +0 -1
  261. package/dist/controllers/effects.d.ts +0 -15
  262. package/dist/controllers/effects.js.map +0 -1
  263. package/dist/controllers/errors.d.ts +0 -12
  264. package/dist/controllers/errors.js +0 -25
  265. package/dist/controllers/errors.js.map +0 -1
  266. package/dist/controllers/index.d.ts +0 -12
  267. package/dist/controllers/index.js +0 -12
  268. package/dist/controllers/index.js.map +0 -1
  269. package/dist/controllers/json.js.map +0 -1
  270. package/dist/controllers/loader.d.ts +0 -23
  271. package/dist/controllers/loader.js +0 -74
  272. package/dist/controllers/loader.js.map +0 -1
  273. package/dist/controllers/manager.d.ts +0 -59
  274. package/dist/controllers/manager.js.map +0 -1
  275. package/dist/controllers/results.d.ts +0 -5
  276. package/dist/controllers/results.js.map +0 -1
  277. package/dist/controllers/sqlite.js.map +0 -1
  278. package/dist/controllers/workflows.d.ts +0 -34
  279. package/dist/controllers/workflows.js.map +0 -1
  280. package/dist/extension/controller-command.js.map +0 -1
  281. package/dist/host/channel-effects.js.map +0 -1
  282. package/dist/host/channel-supervisor.js.map +0 -1
  283. package/dist/host/child-worker-supervisor.js.map +0 -1
  284. package/dist/host/controller-worker-entry.d.ts +0 -2
  285. package/dist/host/controller-worker-entry.js.map +0 -1
  286. package/dist/host/controller-worker-protocol.d.ts +0 -36
  287. package/dist/host/controller-worker-protocol.js +0 -49
  288. package/dist/host/controller-worker-protocol.js.map +0 -1
  289. package/dist/host/controller-worker-supervisor.d.ts +0 -21
  290. package/dist/host/controller-worker-supervisor.js +0 -54
  291. package/dist/host/controller-worker-supervisor.js.map +0 -1
  292. package/dist/host/host-entry.js.map +0 -1
  293. package/dist/host/processes.js.map +0 -1
  294. package/dist/host/resolver-entry.js.map +0 -1
  295. package/dist/host/rpc-bridge.js.map +0 -1
  296. package/dist/host/rpc-executor.js.map +0 -1
  297. package/dist/host/runner.js.map +0 -1
  298. package/dist/host/state.js.map +0 -1
  299. package/dist/host/view.js.map +0 -1
  300. package/dist/host/worker-entry.d.ts +0 -10
  301. package/dist/host/worker-entry.js.map +0 -1
  302. package/dist/host/worker-protocol.d.ts +0 -31
  303. package/dist/host/worker-protocol.js +0 -122
  304. package/dist/host/worker-protocol.js.map +0 -1
  305. package/dist/host/worker-store.js.map +0 -1
  306. package/dist/host/worker-supervisor.d.ts +0 -22
  307. package/dist/host/worker-supervisor.js.map +0 -1
  308. package/docs/CONTROLLERS.md +0 -217
  309. package/src/controllers/definition.ts +0 -65
  310. package/src/controllers/errors.ts +0 -27
  311. package/src/controllers/index.ts +0 -88
  312. package/src/controllers/loader.ts +0 -104
  313. package/src/extension/controller-command.ts +0 -45
  314. package/src/host/controller-worker-protocol.ts +0 -104
  315. package/src/host/controller-worker-supervisor.ts +0 -79
  316. package/src/host/worker-protocol.ts +0 -165
  317. package/src/host/worker-supervisor.ts +0 -74
  318. /package/dist/{controllers → resource-managers}/json.d.ts +0 -0
  319. /package/dist/{controllers → resource-managers}/json.js +0 -0
  320. /package/dist/{controllers → resource-managers}/results.js +0 -0
  321. /package/dist/{controllers → resource-managers}/store.js +0 -0
  322. /package/dist/{controllers → resource-managers}/types.js +0 -0
  323. /package/dist/{host → server}/channel-effects.d.ts +0 -0
  324. /package/dist/{host → server}/channel-effects.js +0 -0
  325. /package/dist/{host/host-entry.d.ts → server/server-entry.d.ts} +0 -0
  326. /package/src/{controllers → resource-managers}/json.ts +0 -0
  327. /package/src/{host → server}/channel-effects.ts +0 -0
@@ -8,15 +8,15 @@ import { canonicalJson, parseJson } from "../state/json.js";
8
8
  import { errorMessage } from "../workflows/errors.js";
9
9
  import { discoverWorkflows } from "../workflows/loader.js";
10
10
  import { createRunId } from "../workflows/store.js";
11
- import { parseControllerArgs } from "./controller-command.js";
12
11
  import { HerdrWorkflowViewer, PIW_SHORTCUT, PIW_SHORTCUT_HINT, VIEWER_PLACEMENTS, } from "./herdr-viewer.js";
13
12
  import { SessionRecorder } from "./recorder.js";
14
13
  import { RemoteSessionRecordingStore } from "./remote-recorder-store.js";
14
+ import { parseResourceManagerArgs, } from "./resource-manager-command.js";
15
15
  import { SessionWorkflowView } from "./session-view.js";
16
16
  import { recoverAssistantStep, registerWorkflowAgentStepMessageRenderer } from "./step-message.js";
17
17
  import { responseEntryId, WorkflowMessageCoordinator } from "./workflow-message-coordinator.js";
18
18
  import { parseWorkflowToolInput, WorkflowToolParameters } from "./workflow-tool.js";
19
- export { parseControllerArgs } from "./controller-command.js";
19
+ export { parseResourceManagerArgs, } from "./resource-manager-command.js";
20
20
  export { audienceChannels, decisionConfigDir, loadDecisionChannelConfig, verifyTelegramTokenFile, writeDecisionChannelProfile, } from "../channels/config.js";
21
21
  export { renderDecisionText, renderTelegramParts } from "../channels/telegram.js";
22
22
  const INTERACTION_POLL_MS = 1_000;
@@ -135,14 +135,16 @@ export default function piWorkflows(pi) {
135
135
  let sessionGeneration = 0;
136
136
  let sessionUnsubscribe = null;
137
137
  let sessionConnectTask = null;
138
- let hostUnavailableNotified = false;
138
+ let serverUnavailableNotified = false;
139
139
  let pollTimer = null;
140
140
  let presentationTail = Promise.resolve();
141
141
  let toolTail = Promise.resolve();
142
142
  const workflowMessages = new WorkflowMessageCoordinator();
143
143
  const sessionView = new SessionWorkflowView();
144
144
  const sessionRecorders = new Map();
145
+ let agentRunning = false;
145
146
  let activeRecorder = null;
147
+ let activeRecorderMessageId = null;
146
148
  const ensureRecorder = async (message, ctx) => {
147
149
  let recorder = sessionRecorders.get(message.runId);
148
150
  if (recorder === undefined) {
@@ -154,6 +156,30 @@ export default function piWorkflows(pi) {
154
156
  }
155
157
  return recorder;
156
158
  };
159
+ const activateRecorder = async (ctx) => {
160
+ if (!agentRunning)
161
+ return;
162
+ const message = workflowMessages.activeTurnMessage();
163
+ if (message === undefined || activeRecorderMessageId === message.workflowMessageId)
164
+ return;
165
+ const contract = agentContractForWorkflowMessage(message);
166
+ if (contract === undefined && message.kind !== "terminal" && message.kind !== "followUp") {
167
+ return;
168
+ }
169
+ const recorder = await ensureRecorder(message, ctx);
170
+ if (!agentRunning ||
171
+ workflowMessages.activeTurnMessage()?.workflowMessageId !== message.workflowMessageId) {
172
+ return;
173
+ }
174
+ if (contract === undefined) {
175
+ recorder.beginWorkflowMessage(message.workflowMessageId, message.kind);
176
+ }
177
+ else {
178
+ recorder.beginAttempt(contract);
179
+ }
180
+ activeRecorder = recorder;
181
+ activeRecorderMessageId = message.workflowMessageId;
182
+ };
157
183
  const presentInOrder = async (ctx) => {
158
184
  const prior = presentationTail;
159
185
  let release;
@@ -163,6 +189,7 @@ export default function piWorkflows(pi) {
163
189
  await prior;
164
190
  try {
165
191
  await workflowMessages.synchronize(pi, client, ctx);
192
+ await activateRecorder(ctx);
166
193
  }
167
194
  finally {
168
195
  sessionView.refresh(ctx);
@@ -360,8 +387,8 @@ export default function piWorkflows(pi) {
360
387
  }
361
388
  },
362
389
  });
363
- pi.registerCommand("controller", {
364
- description: "Manage hosted controller resources: list, get, apply, reconcile, or delete",
390
+ pi.registerCommand("resource-manager", {
391
+ description: "Manage hosted managed resources: list, get, apply, reconcile, or delete",
365
392
  getArgumentCompletions: (prefix) => {
366
393
  const items = ["list", "get", "apply", "reconcile", "delete"]
367
394
  .filter((value) => value.startsWith(prefix))
@@ -370,7 +397,7 @@ export default function piWorkflows(pi) {
370
397
  },
371
398
  handler: async (args, ctx) => {
372
399
  try {
373
- const result = await executeControllerCommand(client, ctx, parseControllerArgs(args));
400
+ const result = await executeResourceManagerCommand(client, ctx, parseResourceManagerArgs(args));
374
401
  ctx.ui.notify(result.message, result.level ?? "info");
375
402
  }
376
403
  catch (error) {
@@ -474,7 +501,7 @@ export default function piWorkflows(pi) {
474
501
  });
475
502
  pi.on("session_start", (_event, ctx) => {
476
503
  sessionContext = ctx;
477
- hostUnavailableNotified = false;
504
+ serverUnavailableNotified = false;
478
505
  const sessionId = ctx.sessionManager.getSessionId();
479
506
  const generation = ++sessionGeneration;
480
507
  let snapshotGeneration = 0;
@@ -529,7 +556,7 @@ export default function piWorkflows(pi) {
529
556
  return;
530
557
  }
531
558
  sessionUnsubscribe = unsubscribe;
532
- hostUnavailableNotified = false;
559
+ serverUnavailableNotified = false;
533
560
  const capability = await herdrViewer.probe();
534
561
  if (generation !== sessionGeneration || sessionContext !== ctx)
535
562
  return;
@@ -539,9 +566,9 @@ export default function piWorkflows(pi) {
539
566
  catch (error) {
540
567
  if (generation === sessionGeneration &&
541
568
  sessionContext === ctx &&
542
- !hostUnavailableNotified) {
543
- hostUnavailableNotified = true;
544
- ctx.ui.notify(`Workflow host is unavailable: ${errorMessage(error)}`, "warning");
569
+ !serverUnavailableNotified) {
570
+ serverUnavailableNotified = true;
571
+ ctx.ui.notify(`Workflow server is unavailable: ${errorMessage(error)}`, "warning");
545
572
  }
546
573
  }
547
574
  })();
@@ -564,23 +591,11 @@ export default function piWorkflows(pi) {
564
591
  await presentInOrder(ctx).catch(() => undefined);
565
592
  });
566
593
  pi.on("agent_start", async (_event, ctx) => {
594
+ agentRunning = true;
595
+ activeRecorder = null;
596
+ activeRecorderMessageId = null;
567
597
  workflowMessages.startTurn();
568
598
  await presentInOrder(ctx).catch(() => undefined);
569
- const message = workflowMessages.activeTurnMessage();
570
- const contract = message === undefined ? undefined : agentContractForWorkflowMessage(message);
571
- if (message === undefined ||
572
- (contract === undefined && message.kind !== "terminal" && message.kind !== "followUp")) {
573
- activeRecorder = null;
574
- return;
575
- }
576
- const recorder = await ensureRecorder(message, ctx);
577
- if (contract === undefined) {
578
- recorder.beginWorkflowMessage(message.workflowMessageId, message.kind);
579
- }
580
- else {
581
- recorder.beginAttempt(contract);
582
- }
583
- activeRecorder = recorder;
584
599
  });
585
600
  pi.on("agent_end", async (event, ctx) => {
586
601
  try {
@@ -590,6 +605,8 @@ export default function piWorkflows(pi) {
590
605
  ctx.ui.notify(`Workflow response was rejected: ${errorMessage(error)}`, "error");
591
606
  }
592
607
  const finishedMessage = workflowMessages.activeTurnMessage();
608
+ agentRunning = false;
609
+ activeRecorderMessageId = null;
593
610
  workflowMessages.endTurn(workflowTurnStopReason(event.messages, ctx.signal?.aborted === true), responseEntryId(ctx.sessionManager.getBranch()));
594
611
  if (activeRecorder !== null &&
595
612
  finishedMessage !== undefined &&
@@ -642,7 +659,9 @@ export default function piWorkflows(pi) {
642
659
  pi.on("session_shutdown", async (_event, ctx) => {
643
660
  sessionGeneration += 1;
644
661
  sessionContext = null;
662
+ agentRunning = false;
645
663
  activeRecorder = null;
664
+ activeRecorderMessageId = null;
646
665
  await Promise.allSettled([...sessionRecorders.values()].map(async (recorder) => recorder.stop()));
647
666
  sessionRecorders.clear();
648
667
  workflowMessages.clear();
@@ -655,7 +674,7 @@ export default function piWorkflows(pi) {
655
674
  await sessionUnsubscribe().catch(() => undefined);
656
675
  sessionUnsubscribe = null;
657
676
  sessionConnectTask = null;
658
- hostUnavailableNotified = false;
677
+ serverUnavailableNotified = false;
659
678
  await client.close();
660
679
  client = new WorkflowClient({ clientId: `pi-extension-${randomUUID()}` });
661
680
  });
@@ -945,51 +964,51 @@ async function executeCommand(client, ctx, command, idempotencyKey = randomUUID(
945
964
  }
946
965
  }
947
966
  }
948
- async function executeControllerCommand(client, ctx, command) {
967
+ async function executeResourceManagerCommand(client, ctx, command) {
949
968
  const projectPath = path.resolve(ctx.cwd);
950
969
  if (command.kind === "list") {
951
970
  const response = await requestAccepted(client, {
952
- operation: "controller.list",
971
+ operation: "resourceManager.list",
953
972
  payload: { projectPath },
954
973
  });
955
974
  return {
956
- message: summarizeControllerResources(response.receipt),
975
+ message: summarizeManagedResources(response.receipt),
957
976
  details: { action: "list", resources: response.receipt ?? [] },
958
977
  };
959
978
  }
960
979
  const idempotencyKey = randomUUID();
961
980
  if (command.kind === "apply") {
962
- const resolved = await client.resolveControllerInitialization({
981
+ const resolved = await client.resolveResourceManagerInitialization({
963
982
  cwd: projectPath,
964
- controllerName: command.controller,
983
+ resourceManagerName: command.resourceManager,
965
984
  spec: command.spec,
966
985
  });
967
986
  const response = await requestAccepted(client, {
968
- operation: "controller.apply",
969
- requestId: `controller-apply-${idempotencyKey}`,
987
+ operation: "resourceManager.apply",
988
+ requestId: `resource-manager-apply-${idempotencyKey}`,
970
989
  idempotencyKey,
971
990
  payload: {
972
991
  projectPath,
973
- controller: resolved.controllerName,
992
+ resourceManager: resolved.resourceManagerName,
974
993
  key: command.key,
975
994
  spec: command.spec,
976
995
  initialStatus: resolved.initialStatus,
977
- controllerPath: resolved.controllerPath,
996
+ resourceManagerPath: resolved.resourceManagerPath,
978
997
  sourceHash: resolved.sourceHash,
979
998
  },
980
999
  });
981
1000
  return {
982
- message: `Applied controller resource ${command.controller}/${command.key}.`,
1001
+ message: `Applied managed resource ${command.resourceManager}/${command.key}.`,
983
1002
  details: { action: "apply", resource: response.receipt ?? null },
984
1003
  };
985
1004
  }
986
1005
  const response = await requestAccepted(client, {
987
- operation: `controller.${command.kind}`,
988
- requestId: `controller-${command.kind}-${idempotencyKey}`,
1006
+ operation: `resourceManager.${command.kind}`,
1007
+ requestId: `resource-manager-${command.kind}-${idempotencyKey}`,
989
1008
  idempotencyKey,
990
1009
  payload: {
991
1010
  projectPath,
992
- controller: command.controller,
1011
+ resourceManager: command.resourceManager,
993
1012
  key: command.key,
994
1013
  },
995
1014
  });
@@ -1000,7 +1019,7 @@ async function executeControllerCommand(client, ctx, command) {
1000
1019
  };
1001
1020
  }
1002
1021
  return {
1003
- message: `Controller resource ${command.controller}/${command.key} ${command.kind} request accepted.`,
1022
+ message: `Managed resource ${command.resourceManager}/${command.key} ${command.kind} request accepted.`,
1004
1023
  details: { action: command.kind, resource: response.receipt ?? null },
1005
1024
  };
1006
1025
  }
@@ -1163,7 +1182,7 @@ async function requestAccepted(client, options) {
1163
1182
  ? await client.request(options)
1164
1183
  : await client.requestDurable({ ...options, idempotencyKey: options.idempotencyKey });
1165
1184
  if (response.outcome !== "accepted" && response.outcome !== "adopted") {
1166
- throw new Error(response.error ?? `Workflow host rejected ${options.operation}`);
1185
+ throw new Error(response.error ?? `Workflow server rejected ${options.operation}`);
1167
1186
  }
1168
1187
  return response;
1169
1188
  }
@@ -1239,18 +1258,18 @@ function summarizeRun(value) {
1239
1258
  .filter(Boolean)
1240
1259
  .join(" ");
1241
1260
  }
1242
- function summarizeControllerResources(value) {
1261
+ function summarizeManagedResources(value) {
1243
1262
  if (!Array.isArray(value) || value.length === 0)
1244
- return "No controller resources.";
1263
+ return "No managed resources.";
1245
1264
  const resources = value.map((item) => {
1246
1265
  if (!isRecord(item) || !isRecord(item.metadata))
1247
1266
  return "unknown";
1248
- const controller = typeof item.metadata.controller === "string" ? item.metadata.controller : "unknown";
1267
+ const resourceManager = typeof item.metadata.resourceManager === "string" ? item.metadata.resourceManager : "unknown";
1249
1268
  const key = typeof item.metadata.key === "string" ? item.metadata.key : "unknown";
1250
1269
  const generation = typeof item.metadata.generation === "number" ? item.metadata.generation : "unknown";
1251
- return `${controller}/${key} generation=${generation}`;
1270
+ return `${resourceManager}/${key} generation=${generation}`;
1252
1271
  });
1253
- return `Controller resources: ${resources.join(", ")}.`;
1272
+ return `Managed resources: ${resources.join(", ")}.`;
1254
1273
  }
1255
1274
  function jsonValue(value) {
1256
1275
  return parseJson(canonicalJson(value));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extension/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extension/index.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export type SessionRecordingStore = {
18
18
  lastEventSeq: number;
19
19
  }>;
20
20
  };
21
- /** Records settled Pi entries and normalized temporal events through the workflow host. */
21
+ /** Records settled Pi entries and normalized temporal events through the workflow server. */
22
22
  export declare class SessionRecorder {
23
23
  private readonly store;
24
24
  private readonly runId;
@@ -31,7 +31,7 @@ function entryRole(entry) {
31
31
  function failureMessage(error) {
32
32
  return error instanceof Error ? error.message : String(error);
33
33
  }
34
- /** Records settled Pi entries and normalized temporal events through the workflow host. */
34
+ /** Records settled Pi entries and normalized temporal events through the workflow server. */
35
35
  export class SessionRecorder {
36
36
  store;
37
37
  runId;