@relayflows/sdk 2.0.29 → 2.0.31

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 (393) hide show
  1. package/dist/agent-artifacts.d.ts.map +1 -1
  2. package/dist/agent-artifacts.js +2 -9
  3. package/dist/agent-artifacts.js.map +1 -1
  4. package/dist/agent-cwd.d.ts +69 -0
  5. package/dist/agent-cwd.d.ts.map +1 -0
  6. package/dist/agent-cwd.js +140 -0
  7. package/dist/agent-cwd.js.map +1 -0
  8. package/dist/artifact-scan-policy.d.ts +35 -0
  9. package/dist/artifact-scan-policy.d.ts.map +1 -0
  10. package/dist/artifact-scan-policy.js +49 -0
  11. package/dist/artifact-scan-policy.js.map +1 -0
  12. package/dist/authored-completion-record.d.ts +35 -0
  13. package/dist/authored-completion-record.d.ts.map +1 -0
  14. package/dist/authored-completion-record.js +92 -0
  15. package/dist/authored-completion-record.js.map +1 -0
  16. package/dist/authored-completion.d.ts +99 -0
  17. package/dist/authored-completion.d.ts.map +1 -0
  18. package/dist/authored-completion.js +184 -0
  19. package/dist/authored-completion.js.map +1 -0
  20. package/dist/authored-flow-error.d.ts +13 -1
  21. package/dist/authored-flow-error.d.ts.map +1 -1
  22. package/dist/authored-flow-error.js +12 -0
  23. package/dist/authored-flow-error.js.map +1 -1
  24. package/dist/authored-flow-executor.d.ts +7 -30
  25. package/dist/authored-flow-executor.d.ts.map +1 -1
  26. package/dist/authored-flow-executor.js +64 -48
  27. package/dist/authored-flow-executor.js.map +1 -1
  28. package/dist/authored-human.d.ts.map +1 -1
  29. package/dist/authored-human.js +1 -3
  30. package/dist/authored-human.js.map +1 -1
  31. package/dist/authored-node-entry.js +4 -1
  32. package/dist/authored-node-entry.js.map +1 -1
  33. package/dist/authored-node-runner.d.ts +9 -1
  34. package/dist/authored-node-runner.d.ts.map +1 -1
  35. package/dist/authored-node-runner.js +92 -17
  36. package/dist/authored-node-runner.js.map +1 -1
  37. package/dist/authored-root.d.ts +5 -0
  38. package/dist/authored-root.d.ts.map +1 -1
  39. package/dist/authored-root.js +20 -2
  40. package/dist/authored-root.js.map +1 -1
  41. package/dist/authored-step-output.d.ts +35 -10
  42. package/dist/authored-step-output.d.ts.map +1 -1
  43. package/dist/authored-step-output.js +108 -40
  44. package/dist/authored-step-output.js.map +1 -1
  45. package/dist/authored-verdict.d.ts +28 -0
  46. package/dist/authored-verdict.d.ts.map +1 -0
  47. package/dist/authored-verdict.js +79 -0
  48. package/dist/authored-verdict.js.map +1 -0
  49. package/dist/authored-worker-step.d.ts +5 -2
  50. package/dist/authored-worker-step.d.ts.map +1 -1
  51. package/dist/authored-worker-step.js +48 -11
  52. package/dist/authored-worker-step.js.map +1 -1
  53. package/dist/bundle-extensions.d.ts.map +1 -1
  54. package/dist/bundle-extensions.js +4 -7
  55. package/dist/bundle-extensions.js.map +1 -1
  56. package/dist/bundle.d.ts.map +1 -1
  57. package/dist/bundle.js +41 -7
  58. package/dist/bundle.js.map +1 -1
  59. package/dist/canonical.d.ts.map +1 -1
  60. package/dist/canonical.js +18 -6
  61. package/dist/canonical.js.map +1 -1
  62. package/dist/cli/check-worker-surface.d.ts +27 -0
  63. package/dist/cli/check-worker-surface.d.ts.map +1 -0
  64. package/dist/cli/check-worker-surface.js +63 -0
  65. package/dist/cli/check-worker-surface.js.map +1 -0
  66. package/dist/cli/check.d.ts +19 -2
  67. package/dist/cli/check.d.ts.map +1 -1
  68. package/dist/cli/check.js +12 -4
  69. package/dist/cli/check.js.map +1 -1
  70. package/dist/cli/cloud-format.d.ts +9 -0
  71. package/dist/cli/cloud-format.d.ts.map +1 -0
  72. package/dist/cli/cloud-format.js +77 -0
  73. package/dist/cli/cloud-format.js.map +1 -0
  74. package/dist/cli/cloud-live.d.ts +39 -0
  75. package/dist/cli/cloud-live.d.ts.map +1 -0
  76. package/dist/cli/cloud-live.js +325 -0
  77. package/dist/cli/cloud-live.js.map +1 -0
  78. package/dist/cli/cloud-read.d.ts +3 -7
  79. package/dist/cli/cloud-read.d.ts.map +1 -1
  80. package/dist/cli/cloud-read.js +14 -266
  81. package/dist/cli/cloud-read.js.map +1 -1
  82. package/dist/cli/cloud-refusal.d.ts +39 -0
  83. package/dist/cli/cloud-refusal.d.ts.map +1 -0
  84. package/dist/cli/cloud-refusal.js +95 -0
  85. package/dist/cli/cloud-refusal.js.map +1 -0
  86. package/dist/cli/cloud-status-view.d.ts +7 -0
  87. package/dist/cli/cloud-status-view.d.ts.map +1 -0
  88. package/dist/cli/cloud-status-view.js +214 -0
  89. package/dist/cli/cloud-status-view.js.map +1 -0
  90. package/dist/cli/direct-run.d.ts.map +1 -1
  91. package/dist/cli/direct-run.js +16 -2
  92. package/dist/cli/direct-run.js.map +1 -1
  93. package/dist/cli/hn-monitor.d.ts +0 -13
  94. package/dist/cli/hn-monitor.d.ts.map +1 -1
  95. package/dist/cli/hn-monitor.js +2 -1
  96. package/dist/cli/hn-monitor.js.map +1 -1
  97. package/dist/cli/local-agent-remedy.d.ts +80 -0
  98. package/dist/cli/local-agent-remedy.d.ts.map +1 -0
  99. package/dist/cli/local-agent-remedy.js +116 -0
  100. package/dist/cli/local-agent-remedy.js.map +1 -0
  101. package/dist/cli/observer-session.d.ts +41 -0
  102. package/dist/cli/observer-session.d.ts.map +1 -0
  103. package/dist/cli/observer-session.js +78 -0
  104. package/dist/cli/observer-session.js.map +1 -0
  105. package/dist/cli/run.d.ts +30 -2
  106. package/dist/cli/run.d.ts.map +1 -1
  107. package/dist/cli/run.js +186 -24
  108. package/dist/cli/run.js.map +1 -1
  109. package/dist/cli/status.d.ts +9 -0
  110. package/dist/cli/status.d.ts.map +1 -1
  111. package/dist/cli/status.js +31 -2
  112. package/dist/cli/status.js.map +1 -1
  113. package/dist/cli/step-evidence.d.ts +90 -0
  114. package/dist/cli/step-evidence.d.ts.map +1 -0
  115. package/dist/cli/step-evidence.js +259 -0
  116. package/dist/cli/step-evidence.js.map +1 -0
  117. package/dist/cli/step-failure.d.ts +14 -4
  118. package/dist/cli/step-failure.d.ts.map +1 -1
  119. package/dist/cli/step-failure.js +41 -76
  120. package/dist/cli/step-failure.js.map +1 -1
  121. package/dist/cli-commands.d.ts +6 -0
  122. package/dist/cli-commands.d.ts.map +1 -1
  123. package/dist/cli-commands.js +2 -0
  124. package/dist/cli-commands.js.map +1 -1
  125. package/dist/cli.d.ts +10 -0
  126. package/dist/cli.d.ts.map +1 -1
  127. package/dist/cli.js +53 -42
  128. package/dist/cli.js.map +1 -1
  129. package/dist/cloud-read.d.ts +15 -0
  130. package/dist/cloud-read.d.ts.map +1 -1
  131. package/dist/cloud-read.js +20 -1
  132. package/dist/cloud-read.js.map +1 -1
  133. package/dist/cloud-run-record.d.ts +27 -0
  134. package/dist/cloud-run-record.d.ts.map +1 -0
  135. package/dist/cloud-run-record.js +56 -0
  136. package/dist/cloud-run-record.js.map +1 -0
  137. package/dist/cloud-run.d.ts +2 -9
  138. package/dist/cloud-run.d.ts.map +1 -1
  139. package/dist/cloud-run.js +3 -20
  140. package/dist/cloud-run.js.map +1 -1
  141. package/dist/communication/local.d.ts.map +1 -1
  142. package/dist/communication/local.js +2 -1
  143. package/dist/communication/local.js.map +1 -1
  144. package/dist/communication/worker.d.ts +1 -1
  145. package/dist/communication/worker.d.ts.map +1 -1
  146. package/dist/communication/worker.js +13 -5
  147. package/dist/communication/worker.js.map +1 -1
  148. package/dist/compile.d.ts.map +1 -1
  149. package/dist/compile.js +28 -6
  150. package/dist/compile.js.map +1 -1
  151. package/dist/direct-input.d.ts.map +1 -1
  152. package/dist/direct-input.js +21 -1
  153. package/dist/direct-input.js.map +1 -1
  154. package/dist/failure-kinds.d.ts +96 -6
  155. package/dist/failure-kinds.d.ts.map +1 -1
  156. package/dist/failure-kinds.js +29 -2
  157. package/dist/failure-kinds.js.map +1 -1
  158. package/dist/flow-extension-compat.d.ts.map +1 -1
  159. package/dist/flow-extension-compat.js +26 -8
  160. package/dist/flow-extension-compat.js.map +1 -1
  161. package/dist/flow-extension-loader.d.ts +7 -0
  162. package/dist/flow-extension-loader.d.ts.map +1 -1
  163. package/dist/flow-extension-loader.js +48 -22
  164. package/dist/flow-extension-loader.js.map +1 -1
  165. package/dist/flow-requirements.d.ts.map +1 -1
  166. package/dist/flow-requirements.js +24 -9
  167. package/dist/flow-requirements.js.map +1 -1
  168. package/dist/fs-descriptor.d.ts +17 -0
  169. package/dist/fs-descriptor.d.ts.map +1 -0
  170. package/dist/fs-descriptor.js +96 -0
  171. package/dist/fs-descriptor.js.map +1 -0
  172. package/dist/gate-contract.d.ts +7 -0
  173. package/dist/gate-contract.d.ts.map +1 -1
  174. package/dist/gate-contract.js +6 -1
  175. package/dist/gate-contract.js.map +1 -1
  176. package/dist/helper-preflight.d.ts.map +1 -1
  177. package/dist/helper-preflight.js +10 -3
  178. package/dist/helper-preflight.js.map +1 -1
  179. package/dist/helper-reference.d.ts +25 -0
  180. package/dist/helper-reference.d.ts.map +1 -0
  181. package/dist/helper-reference.js +129 -0
  182. package/dist/helper-reference.js.map +1 -0
  183. package/dist/hosted-base-snapshot.d.ts +25 -0
  184. package/dist/hosted-base-snapshot.d.ts.map +1 -0
  185. package/dist/hosted-base-snapshot.js +278 -0
  186. package/dist/hosted-base-snapshot.js.map +1 -0
  187. package/dist/hosted-extension-declarations.d.ts +10 -0
  188. package/dist/hosted-extension-declarations.d.ts.map +1 -0
  189. package/dist/hosted-extension-declarations.js +272 -0
  190. package/dist/hosted-extension-declarations.js.map +1 -0
  191. package/dist/hosted-extension-isolation.d.ts +82 -0
  192. package/dist/hosted-extension-isolation.d.ts.map +1 -0
  193. package/dist/hosted-extension-isolation.js +322 -0
  194. package/dist/hosted-extension-isolation.js.map +1 -0
  195. package/dist/hosted-extension-manifest.d.ts +9 -0
  196. package/dist/hosted-extension-manifest.d.ts.map +1 -0
  197. package/dist/hosted-extension-manifest.js +235 -0
  198. package/dist/hosted-extension-manifest.js.map +1 -0
  199. package/dist/hosted-extension-protocol.d.ts +16 -0
  200. package/dist/hosted-extension-protocol.d.ts.map +1 -0
  201. package/dist/hosted-extension-protocol.js +224 -0
  202. package/dist/hosted-extension-protocol.js.map +1 -0
  203. package/dist/hosted-extension-runtime.d.ts +30 -0
  204. package/dist/hosted-extension-runtime.d.ts.map +1 -0
  205. package/dist/hosted-extension-runtime.js +167 -0
  206. package/dist/hosted-extension-runtime.js.map +1 -0
  207. package/dist/hosted-extension-sandbox-source.d.ts +9 -0
  208. package/dist/hosted-extension-sandbox-source.d.ts.map +1 -0
  209. package/dist/hosted-extension-sandbox-source.js +95 -0
  210. package/dist/hosted-extension-sandbox-source.js.map +1 -0
  211. package/dist/hosted-extension-sandbox.d.ts +39 -0
  212. package/dist/hosted-extension-sandbox.d.ts.map +1 -0
  213. package/dist/hosted-extension-sandbox.js +418 -0
  214. package/dist/hosted-extension-sandbox.js.map +1 -0
  215. package/dist/hosted-project.d.ts +3 -0
  216. package/dist/hosted-project.d.ts.map +1 -0
  217. package/dist/hosted-project.js +19 -0
  218. package/dist/hosted-project.js.map +1 -0
  219. package/dist/hosted-promise-safety.d.ts +12 -0
  220. package/dist/hosted-promise-safety.d.ts.map +1 -0
  221. package/dist/hosted-promise-safety.js +63 -0
  222. package/dist/hosted-promise-safety.js.map +1 -0
  223. package/dist/index.d.ts +3 -1
  224. package/dist/index.d.ts.map +1 -1
  225. package/dist/index.js +2 -0
  226. package/dist/index.js.map +1 -1
  227. package/dist/intrinsic-array.d.ts +3 -0
  228. package/dist/intrinsic-array.d.ts.map +1 -0
  229. package/dist/intrinsic-array.js +14 -0
  230. package/dist/intrinsic-array.js.map +1 -0
  231. package/dist/journal-client.d.ts +3 -1
  232. package/dist/journal-client.d.ts.map +1 -1
  233. package/dist/journal-client.js +17 -2
  234. package/dist/journal-client.js.map +1 -1
  235. package/dist/journal-projection.d.ts +16 -0
  236. package/dist/journal-projection.d.ts.map +1 -0
  237. package/dist/journal-projection.js +108 -0
  238. package/dist/journal-projection.js.map +1 -0
  239. package/dist/json-value.d.ts +6 -1
  240. package/dist/json-value.d.ts.map +1 -1
  241. package/dist/json-value.js +155 -36
  242. package/dist/json-value.js.map +1 -1
  243. package/dist/llm-worker.d.ts +9 -0
  244. package/dist/llm-worker.d.ts.map +1 -1
  245. package/dist/llm-worker.js +16 -2
  246. package/dist/llm-worker.js.map +1 -1
  247. package/dist/local-agent.d.ts +1 -1
  248. package/dist/local-agent.d.ts.map +1 -1
  249. package/dist/local-agent.js +4 -3
  250. package/dist/local-agent.js.map +1 -1
  251. package/dist/named-gate-lowering.js +35 -5
  252. package/dist/named-gate-lowering.js.map +1 -1
  253. package/dist/named-gate-preflight.d.ts +27 -0
  254. package/dist/named-gate-preflight.d.ts.map +1 -0
  255. package/dist/named-gate-preflight.js +47 -0
  256. package/dist/named-gate-preflight.js.map +1 -0
  257. package/dist/named-gates.d.ts +1 -1
  258. package/dist/named-gates.d.ts.map +1 -1
  259. package/dist/named-gates.js +3 -0
  260. package/dist/named-gates.js.map +1 -1
  261. package/dist/observer-link.d.ts +7 -0
  262. package/dist/observer-link.d.ts.map +1 -1
  263. package/dist/observer-link.js +3 -1
  264. package/dist/observer-link.js.map +1 -1
  265. package/dist/plugin-store.d.ts +8 -2
  266. package/dist/plugin-store.d.ts.map +1 -1
  267. package/dist/plugin-store.js +233 -56
  268. package/dist/plugin-store.js.map +1 -1
  269. package/dist/preflight.d.ts.map +1 -1
  270. package/dist/preflight.js +7 -0
  271. package/dist/preflight.js.map +1 -1
  272. package/dist/protocol.d.ts +2 -0
  273. package/dist/protocol.d.ts.map +1 -1
  274. package/dist/redact.d.ts +42 -0
  275. package/dist/redact.d.ts.map +1 -1
  276. package/dist/redact.js +128 -0
  277. package/dist/redact.js.map +1 -1
  278. package/dist/run-projection.d.ts +83 -0
  279. package/dist/run-projection.d.ts.map +1 -0
  280. package/dist/run-projection.js +199 -0
  281. package/dist/run-projection.js.map +1 -0
  282. package/dist/semver-range.d.ts.map +1 -1
  283. package/dist/semver-range.js +27 -15
  284. package/dist/semver-range.js.map +1 -1
  285. package/dist/shell-word.d.ts +19 -0
  286. package/dist/shell-word.d.ts.map +1 -0
  287. package/dist/shell-word.js +23 -0
  288. package/dist/shell-word.js.map +1 -0
  289. package/dist/spec.d.ts +52 -3
  290. package/dist/spec.d.ts.map +1 -1
  291. package/dist/spec.js.map +1 -1
  292. package/dist/step-fields.d.ts +1 -1
  293. package/dist/step-fields.js +1 -1
  294. package/dist/step-fields.js.map +1 -1
  295. package/dist/steps-green.d.ts +27 -0
  296. package/dist/steps-green.d.ts.map +1 -0
  297. package/dist/steps-green.js +164 -0
  298. package/dist/steps-green.js.map +1 -0
  299. package/dist/validate.d.ts.map +1 -1
  300. package/dist/validate.js +39 -8
  301. package/dist/validate.js.map +1 -1
  302. package/dist/worker-lease.d.ts +8 -1
  303. package/dist/worker-lease.d.ts.map +1 -1
  304. package/dist/worker-lease.js +34 -4
  305. package/dist/worker-lease.js.map +1 -1
  306. package/dist/worker.d.ts +8 -0
  307. package/dist/worker.d.ts.map +1 -1
  308. package/dist/worker.js +17 -9
  309. package/dist/worker.js.map +1 -1
  310. package/package.json +3 -7
  311. package/src/agent-artifacts.ts +2 -10
  312. package/src/agent-cwd.ts +139 -0
  313. package/src/artifact-scan-policy.ts +51 -0
  314. package/src/authored-completion-record.ts +119 -0
  315. package/src/authored-completion.ts +203 -0
  316. package/src/authored-flow-error.ts +13 -1
  317. package/src/authored-flow-executor.ts +101 -59
  318. package/src/authored-human.ts +1 -4
  319. package/src/authored-node-entry.ts +4 -1
  320. package/src/authored-node-runner.ts +96 -22
  321. package/src/authored-root.ts +20 -2
  322. package/src/authored-step-output.ts +139 -42
  323. package/src/authored-verdict.ts +87 -0
  324. package/src/authored-worker-step.ts +60 -12
  325. package/src/bundle-extensions.ts +6 -5
  326. package/src/bundle.ts +52 -7
  327. package/src/canonical.ts +20 -6
  328. package/src/cli/check-worker-surface.ts +66 -0
  329. package/src/cli/check.ts +35 -4
  330. package/src/cli/cloud-format.ts +82 -0
  331. package/src/cli/cloud-live.ts +366 -0
  332. package/src/cli/cloud-read.ts +13 -282
  333. package/src/cli/cloud-refusal.ts +113 -0
  334. package/src/cli/cloud-status-view.ts +213 -0
  335. package/src/cli/direct-run.ts +19 -2
  336. package/src/cli/hn-monitor.ts +2 -1
  337. package/src/cli/local-agent-remedy.ts +160 -0
  338. package/src/cli/observer-session.ts +107 -0
  339. package/src/cli/run.ts +233 -28
  340. package/src/cli/status.ts +59 -3
  341. package/src/cli/step-evidence.ts +310 -0
  342. package/src/cli/step-failure.ts +57 -81
  343. package/src/cli-commands.ts +2 -0
  344. package/src/cli.ts +64 -44
  345. package/src/cloud-read.ts +25 -1
  346. package/src/cloud-run-record.ts +64 -0
  347. package/src/cloud-run.ts +5 -24
  348. package/src/communication/local.ts +2 -1
  349. package/src/communication/worker.ts +13 -5
  350. package/src/compile.ts +28 -6
  351. package/src/direct-input.ts +22 -1
  352. package/src/failure-kinds.ts +104 -2
  353. package/src/flow-extension-compat.ts +32 -7
  354. package/src/flow-extension-loader.ts +56 -21
  355. package/src/flow-requirements.ts +24 -9
  356. package/src/fs-descriptor.ts +127 -0
  357. package/src/gate-contract.ts +13 -1
  358. package/src/helper-preflight.ts +10 -3
  359. package/src/helper-reference.ts +130 -0
  360. package/src/hosted-base-snapshot.ts +351 -0
  361. package/src/hosted-extension-declarations.ts +387 -0
  362. package/src/hosted-extension-isolation.ts +457 -0
  363. package/src/hosted-extension-manifest.ts +249 -0
  364. package/src/hosted-extension-protocol.ts +262 -0
  365. package/src/hosted-extension-runtime.ts +266 -0
  366. package/src/hosted-extension-sandbox-source.ts +94 -0
  367. package/src/hosted-extension-sandbox.ts +489 -0
  368. package/src/hosted-project.ts +18 -0
  369. package/src/hosted-promise-safety.ts +68 -0
  370. package/src/index.ts +20 -0
  371. package/src/intrinsic-array.ts +14 -0
  372. package/src/journal-client.ts +19 -2
  373. package/src/journal-projection.ts +106 -0
  374. package/src/json-value.ts +184 -32
  375. package/src/llm-worker.ts +16 -2
  376. package/src/local-agent.ts +4 -2
  377. package/src/named-gate-lowering.ts +35 -5
  378. package/src/named-gate-preflight.ts +47 -0
  379. package/src/named-gates.ts +3 -0
  380. package/src/observer-link.ts +10 -1
  381. package/src/plugin-store.ts +323 -56
  382. package/src/preflight.ts +7 -0
  383. package/src/protocol.ts +2 -0
  384. package/src/redact.ts +111 -0
  385. package/src/run-projection.ts +247 -0
  386. package/src/semver-range.ts +39 -14
  387. package/src/shell-word.ts +24 -0
  388. package/src/spec.ts +54 -3
  389. package/src/step-fields.ts +1 -1
  390. package/src/steps-green.ts +168 -0
  391. package/src/validate.ts +35 -8
  392. package/src/worker-lease.ts +35 -5
  393. package/src/worker.ts +27 -11
@@ -0,0 +1,184 @@
1
+ // The authored verdict: which completions this runtime lowers, the durable
2
+ // marker that carries one, and the optional detail that says why.
3
+ //
4
+ // Split out of `authored-flow-executor.ts` so the CLI report and the status
5
+ // projection can read this vocabulary without importing the executor — and
6
+ // with it every provider adapter, MCP client and helper the executor pulls
7
+ // in. Nothing here does I/O or reads a clock.
8
+ import { AuthoredFlowExecutionError } from './authored-flow-error.js';
9
+ import { redact } from './redact.js';
10
+ /**
11
+ * The completion reasons an authored body may declare and this executor lowers.
12
+ *
13
+ * `FlowCompletionReason` is wider than this on purpose — it is the journal's
14
+ * run vocabulary plus authored verdicts — but the two sets drifting silently is
15
+ * exactly what made a type-valid `done("step_failed")` die at runtime as
16
+ * `unsupported_completion`. Every gate that asks "is this a completion this
17
+ * runtime can lower?" now asks this one function, so a reason cannot be
18
+ * accepted in one place and rejected in another.
19
+ *
20
+ * These are internal cross-module helpers for the authored seam (the executor,
21
+ * the durable root, the IPC verifier, the CLI report and `flows status`), NOT
22
+ * public SDK surface. `src/index.ts` deliberately re-exports nothing from this
23
+ * module — keep it that way, or the whole authored seam leaks with them.
24
+ */
25
+ export const LOWERED_COMPLETIONS = ['success', 'needs_human', 'step_failed', 'declined'];
26
+ export function isLoweredCompletion(value) {
27
+ return typeof value === 'string' && LOWERED_COMPLETIONS.includes(value);
28
+ }
29
+ /**
30
+ * The bound on a normalized completion detail: 2,000 Unicode code points in
31
+ * the FINAL string, {@link COMPLETION_DETAIL_TRUNCATED_SUFFIX} included.
32
+ *
33
+ * Code points, not `String.length`: `.length` counts UTF-16 code units, so an
34
+ * emoji-heavy detail measured that way is half the length a reader would call
35
+ * it. The number matches `@relayflows/surface`'s
36
+ * `COMPLETION_DETAIL_MAX_CODE_POINTS`, which is what an author sees; it is the
37
+ * same order as the kernel's gate-detail cap
38
+ * (`kernel/relayflowd/src/engine/remote.rs`) but deliberately NOT the same
39
+ * bound — that one takes 2,000 characters and then appends its suffix, so its
40
+ * final string is longer than the number it advertises.
41
+ */
42
+ export const COMPLETION_DETAIL_MAX_CODE_POINTS = 2000;
43
+ /** Fixed width, so the bound above can reserve exactly its room. */
44
+ export const COMPLETION_DETAIL_TRUNCATED_SUFFIX = '… (truncated)';
45
+ /**
46
+ * Read `done()`'s optional second argument into the detail the marker carries.
47
+ *
48
+ * Absence has four spellings — no argument, `undefined`, `{}`, and
49
+ * `{ detail: undefined }` — and all four mean the same thing: no detail, and a
50
+ * marker command byte-identical to the one the one-argument call has always
51
+ * produced. Whitespace-only joins them: say nothing, or say something.
52
+ *
53
+ * A `detail` that is present and not a string is a programming error the type
54
+ * system already catches for TypeScript callers; the runtime check is here for
55
+ * the same reason `isSurfaceFlowCompletionReason` is, and it refuses with the
56
+ * existing closed `unsupported_completion` code rather than widening the
57
+ * taxonomy. Refusals name the type they got, never the value — a malformed
58
+ * detail is exactly the kind of text that may carry a credential.
59
+ *
60
+ * Redaction runs BEFORE truncation, and the order is load-bearing rather than
61
+ * cosmetic: truncating first can split a token so no pattern matches it any
62
+ * more, which is a truncation that *causes* a leak. What redaction recognises
63
+ * is the SDK's existing policy — known token shapes, named credential fields,
64
+ * and the values of secret-looking environment variables (`redact.ts`) — not a
65
+ * guarantee to recognise every possible secret.
66
+ *
67
+ * Lone surrogates are substituted here too, so what leaves this function is a
68
+ * well-formed string the journal protocol can carry — see {@link wellFormed}.
69
+ */
70
+ export function normalizeCompletionDetail(options, env = process.env) {
71
+ if (options === undefined)
72
+ return undefined;
73
+ if (typeof options !== 'object' || options === null || Array.isArray(options)) {
74
+ throw new AuthoredFlowExecutionError('unsupported_completion', `done() options must be an object with an optional string "detail"; received ${typeName(options)}`);
75
+ }
76
+ const detail = options.detail;
77
+ if (detail === undefined)
78
+ return undefined;
79
+ if (typeof detail !== 'string') {
80
+ throw new AuthoredFlowExecutionError('unsupported_completion', `done() detail must be a string; received ${typeName(detail)}`);
81
+ }
82
+ const redacted = wellFormed(redact(detail, env)).trim();
83
+ return redacted.length === 0 ? undefined : bound(redacted);
84
+ }
85
+ /**
86
+ * Lone UTF-16 surrogates, as code points.
87
+ *
88
+ * Under `u` a subject string is iterated by CODE POINT, so a well-formed pair
89
+ * is one code point above U+FFFF and never enters this class. What the class
90
+ * matches is exactly a surrogate with no partner.
91
+ */
92
+ const LONE_SURROGATE = /[\uD800-\uDFFF]/u;
93
+ const LONE_SURROGATES = /[\uD800-\uDFFF]/gu;
94
+ /**
95
+ * Replace every lone surrogate with U+FFFD, the replacement character.
96
+ *
97
+ * A JavaScript string is UTF-16 code units, not text. Slicing a character off
98
+ * the end of an agent's output — `(prose + '\u{1F642}').slice(0, -1)` — leaves
99
+ * a high surrogate with no partner, and the type system calls the result a
100
+ * `string`. Nothing downstream does.
101
+ * `JSON.stringify` escapes it, so the marker COMMAND is admitted; the raw
102
+ * detail then travels in the root's `step.complete` output, where the kernel's
103
+ * JSON decoder refuses it ("unexpected end of hex escape") and answers with a
104
+ * `bad_request` carrying a null request id — which resolves no pending
105
+ * request, so the call hangs and the authored explanation never lands.
106
+ *
107
+ * Substituting is right here where refusing is not: the flow has already done
108
+ * its work and reached a verdict, and losing the whole explanation over one
109
+ * broken code unit destroys more than it protects. One code unit in, one code
110
+ * unit out, so the bound below still counts what a reader would count.
111
+ */
112
+ function wellFormed(text) {
113
+ return LONE_SURROGATE.test(text) ? text.replace(LONE_SURROGATES, '\uFFFD') : text;
114
+ }
115
+ /**
116
+ * Is this a detail a durable record may carry?
117
+ *
118
+ * The gate every read boundary uses — the completed root's output, and the
119
+ * IPC frame the Bun runner returns — so an over-long or wrong-typed value
120
+ * fails closed there instead of flowing into a report as if it had been
121
+ * journaled by this process.
122
+ */
123
+ export function isDurableCompletionDetail(value) {
124
+ return typeof value === 'string'
125
+ && value.length > 0
126
+ && !LONE_SURROGATE.test(value)
127
+ && [...value].length <= COMPLETION_DETAIL_MAX_CODE_POINTS;
128
+ }
129
+ /**
130
+ * The detail as ONE line, for a diagnostic message.
131
+ *
132
+ * Cloud renders a run's `error` through a line-oriented view that elides the
133
+ * middle of a long one (`cli/cloud-read.ts` `errorLines`), so a forty-line
134
+ * detail can lose the very finding it exists to carry. Escaping the breaks
135
+ * keeps the whole detail on the single line that renderer cannot elide, and
136
+ * keeps control characters out of a terminal. The unescaped normalized detail
137
+ * still travels in the structured fields beside it.
138
+ */
139
+ export function singleLineCompletionDetail(detail) {
140
+ return detail.replace(/[\u0000-\u001F\u007F-\u009F]/gu, (char) => NAMED_ESCAPE[char] ?? `\\u${char.codePointAt(0).toString(16).padStart(4, '0')}`);
141
+ }
142
+ const NAMED_ESCAPE = { '\n': '\\n', '\r': '\\r', '\t': '\\t' };
143
+ /**
144
+ * The deterministic command that carries an authored verdict into the journal.
145
+ *
146
+ * `success` with no detail lowers to `:` because success needs no marker: the
147
+ * marker run's own kernel `success` already IS that record. Every other
148
+ * lowered verdict is something the kernel's completion vocabulary cannot
149
+ * express on a step that *succeeded*, so it travels as data on stdout and is
150
+ * read back from `step.completed`. It is deliberately not lowered as a failing
151
+ * command: no step failed here, and a fabricated failure would put bogus
152
+ * evidence in the journal for a flow whose steps all ran correctly.
153
+ *
154
+ * A detail rides in the same JSON object, so the marker stays the one durable
155
+ * record of the verdict and the IPC verifier's existing command comparison
156
+ * checks the detail against the journal for free. With no detail the command
157
+ * is byte-identical to the one this function has always returned, which is
158
+ * what keeps `spec_hash` stable for every flow that does not opt in.
159
+ */
160
+ export function completionMarker(reason, detail) {
161
+ if (detail === undefined) {
162
+ return reason === 'success' ? ':' : `printf '%s' '{"completionReason":"${reason}"}'`;
163
+ }
164
+ // `JSON.stringify` escapes quotes, backslashes and every control character,
165
+ // so the command is one line and the only shell-significant character left
166
+ // in it is `'` — which the single-quote escape below closes.
167
+ const json = JSON.stringify({ completionReason: reason, detail });
168
+ return `printf '%s' '${json.replaceAll("'", "'\\''")}'`;
169
+ }
170
+ function typeName(value) {
171
+ if (value === null)
172
+ return 'null';
173
+ if (Array.isArray(value))
174
+ return 'an array';
175
+ return `a ${typeof value}`;
176
+ }
177
+ function bound(text) {
178
+ const points = [...text];
179
+ if (points.length <= COMPLETION_DETAIL_MAX_CODE_POINTS)
180
+ return text;
181
+ const keep = COMPLETION_DETAIL_MAX_CODE_POINTS - [...COMPLETION_DETAIL_TRUNCATED_SUFFIX].length;
182
+ return `${points.slice(0, keep).join('')}${COMPLETION_DETAIL_TRUNCATED_SUFFIX}`;
183
+ }
184
+ //# sourceMappingURL=authored-completion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authored-completion.js","sourceRoot":"","sources":["../src/authored-completion.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { HumanRecipient } from './human-to.js';
2
- import type { StepFailedDetails } from './failure-kinds.js';
2
+ import type { ParkCause, StepFailedDetails } from './failure-kinds.js';
3
3
  import type { CompletionReason as ProtocolCompletionReason, RunCompletionReason as ProtocolRunCompletionReason } from './protocol.js';
4
4
  export type AuthoredFlowExecutionErrorCode = 'helper_provider.mount_required' | 'helper_provider.unsupported' | 'helper_slack.credential_missing' | 'helper_slack.mount_required' | 'budget_syntax_invalid' | 'agent_cli_unresolved' | 'agent_parked' | 'llm_cli_unresolved' | 'llm_parked' | 'duplicate_completion' | 'journal_protocol_violation' | 'missing_completion' | 'memory_unreachable' | 'operation_after_completion' | 'operation_callback_failed' | 'step_failed' | 'lease_exceeded' | 'unsupported_completion' | 'unsupported_gate' | 'gate_failed'
5
5
  /** The body reached an unanswered `f.human`; the root parked on it. */
@@ -28,6 +28,18 @@ export declare class AuthoredFlowExecutionError extends Error {
28
28
  readonly details?: StepFailedDetails | undefined;
29
29
  /** Set by the durable root driver after the child error crosses any IPC boundary. */
30
30
  rootRunId?: string;
31
+ /**
32
+ * Why an `agent_parked`/`llm_parked` child run parked, as the child's own
33
+ * classification established it (`RunReport.parkCause`).
34
+ *
35
+ * Set by the worker runner beside the code, because the code alone does not
36
+ * say: `agent_parked` covers both "nothing is attached to run this step" and
37
+ * the kernel's `needs_human` recovery wait, and only the first is fixed by
38
+ * attaching a worker. The CLI boundary reads this field rather than matching
39
+ * the message, so the remedy it prints cannot drift from the cause. Absent
40
+ * means unestablished — the boundary then says nothing about workers.
41
+ */
42
+ parkCause?: ParkCause;
31
43
  constructor(code: AuthoredFlowExecutionErrorCode, message: string, completionReason?: (ProtocolCompletionReason | ProtocolRunCompletionReason) | undefined,
32
44
  /**
33
45
  * The CHILD run whose journal holds the evidence — an authored operation
@@ -1 +1 @@
1
- {"version":3,"file":"authored-flow-error.d.ts","sourceRoot":"","sources":["../src/authored-flow-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EACV,gBAAgB,IAAI,wBAAwB,EAC5C,mBAAmB,IAAI,2BAA2B,EACnD,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,8BAA8B,GACtC,gCAAgC,GAChC,6BAA6B,GAC7B,iCAAiC,GACjC,6BAA6B,GAC7B,uBAAuB,GACvB,sBAAsB,GACtB,cAAc,GACd,oBAAoB,GACpB,YAAY,GACZ,sBAAsB,GACtB,4BAA4B,GAC5B,oBAAoB,GACpB,oBAAoB,GACpB,4BAA4B,GAC5B,2BAA2B,GAC3B,aAAa,GACb,gBAAgB,GAChB,wBAAwB,GACxB,kBAAkB,GAClB,aAAa;AACf,uEAAuE;GACrE,cAAc;AAChB,oEAAoE;GAClE,sBAAsB;AACxB,mFAAmF;GACjF,kBAAkB,GAClB,oBAAoB,GACpB,wBAAwB,GACxB,+BAA+B,GAC/B,kCAAkC,GAClC,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB,qBAAa,0BAA2B,SAAQ,KAAK;IAIjD,QAAQ,CAAC,IAAI,EAAE,8BAA8B;IAE7C,QAAQ,CAAC,gBAAgB,CAAC,GAAE,wBAAwB,GAAG,2BAA2B;IAClF;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;IACvB;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB;IApBtC,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,8BAA8B,EAC7C,OAAO,EAAE,MAAM,EACN,gBAAgB,CAAC,GAAE,wBAAwB,GAAG,2BAA2B,aAAA;IAClF;;;;OAIG;IACM,KAAK,CAAC,EAAE,MAAM,YAAA;IACvB;;;;;;;OAOG;IACM,OAAO,CAAC,EAAE,iBAAiB,YAAA;CAKvC;AAED,0EAA0E;AAC1E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,0BAA0B;IACrD,QAAQ,CAAC,IAAI,EAAE,iBAAiB;gBAAvB,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM;CAShE"}
1
+ {"version":3,"file":"authored-flow-error.d.ts","sourceRoot":"","sources":["../src/authored-flow-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,KAAK,EACV,gBAAgB,IAAI,wBAAwB,EAC5C,mBAAmB,IAAI,2BAA2B,EACnD,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,8BAA8B,GACtC,gCAAgC,GAChC,6BAA6B,GAC7B,iCAAiC,GACjC,6BAA6B,GAC7B,uBAAuB,GACvB,sBAAsB,GACtB,cAAc,GACd,oBAAoB,GACpB,YAAY,GACZ,sBAAsB,GACtB,4BAA4B,GAC5B,oBAAoB,GACpB,oBAAoB,GACpB,4BAA4B,GAC5B,2BAA2B,GAC3B,aAAa,GACb,gBAAgB,GAChB,wBAAwB,GACxB,kBAAkB,GAClB,aAAa;AACf,uEAAuE;GACrE,cAAc;AAChB,oEAAoE;GAClE,sBAAsB;AACxB,mFAAmF;GACjF,kBAAkB,GAClB,oBAAoB,GACpB,wBAAwB,GACxB,+BAA+B,GAC/B,kCAAkC,GAClC,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB,qBAAa,0BAA2B,SAAQ,KAAK;IAgBjD,QAAQ,CAAC,IAAI,EAAE,8BAA8B;IAE7C,QAAQ,CAAC,gBAAgB,CAAC,GAAE,wBAAwB,GAAG,2BAA2B;IAClF;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;IACvB;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAhCtC,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;gBAEX,IAAI,EAAE,8BAA8B,EAC7C,OAAO,EAAE,MAAM,EACN,gBAAgB,CAAC,GAAE,wBAAwB,GAAG,2BAA2B,aAAA;IAClF;;;;OAIG;IACM,KAAK,CAAC,EAAE,MAAM,YAAA;IACvB;;;;;;;OAOG;IACM,OAAO,CAAC,EAAE,iBAAiB,YAAA;CAKvC;AAED,0EAA0E;AAC1E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,0BAA0B;IACrD,QAAQ,CAAC,IAAI,EAAE,iBAAiB;gBAAvB,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM;CAShE"}
@@ -5,6 +5,18 @@ export class AuthoredFlowExecutionError extends Error {
5
5
  details;
6
6
  /** Set by the durable root driver after the child error crosses any IPC boundary. */
7
7
  rootRunId;
8
+ /**
9
+ * Why an `agent_parked`/`llm_parked` child run parked, as the child's own
10
+ * classification established it (`RunReport.parkCause`).
11
+ *
12
+ * Set by the worker runner beside the code, because the code alone does not
13
+ * say: `agent_parked` covers both "nothing is attached to run this step" and
14
+ * the kernel's `needs_human` recovery wait, and only the first is fixed by
15
+ * attaching a worker. The CLI boundary reads this field rather than matching
16
+ * the message, so the remedy it prints cannot drift from the cause. Absent
17
+ * means unestablished — the boundary then says nothing about workers.
18
+ */
19
+ parkCause;
8
20
  constructor(code, message, completionReason,
9
21
  /**
10
22
  * The CHILD run whose journal holds the evidence — an authored operation
@@ -1 +1 @@
1
- {"version":3,"file":"authored-flow-error.js","sourceRoot":"","sources":["../src/authored-flow-error.ts"],"names":[],"mappings":"AAyCA,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAIxC;IAEA;IAMA;IASA;IApBX,qFAAqF;IACrF,SAAS,CAAU;IACnB,YACW,IAAoC,EAC7C,OAAe,EACN,gBAAyE;IAClF;;;;OAIG;IACM,KAAc;IACvB;;;;;;;OAOG;IACM,OAA2B;QAEpC,KAAK,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;QAnBpB,SAAI,GAAJ,IAAI,CAAgC;QAEpC,qBAAgB,GAAhB,gBAAgB,CAAyD;QAMzE,UAAK,GAAL,KAAK,CAAS;QASd,YAAO,GAAP,OAAO,CAAoB;QAGpC,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAWD;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,0BAA0B;IAC5C;IAArB,YAAqB,IAAuB,EAAE,SAAiB;QAC7D,KAAK,CACH,cAAc,EACd,uBAAuB,IAAI,CAAC,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,EAC5F,SAAS,EACT,SAAS,CACV,CAAC;QANiB,SAAI,GAAJ,IAAI,CAAmB;QAO1C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF"}
1
+ {"version":3,"file":"authored-flow-error.js","sourceRoot":"","sources":["../src/authored-flow-error.ts"],"names":[],"mappings":"AAyCA,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAgBxC;IAEA;IAMA;IASA;IAhCX,qFAAqF;IACrF,SAAS,CAAU;IACnB;;;;;;;;;;OAUG;IACH,SAAS,CAAa;IACtB,YACW,IAAoC,EAC7C,OAAe,EACN,gBAAyE;IAClF;;;;OAIG;IACM,KAAc;IACvB;;;;;;;OAOG;IACM,OAA2B;QAEpC,KAAK,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;QAnBpB,SAAI,GAAJ,IAAI,CAAgC;QAEpC,qBAAgB,GAAhB,gBAAgB,CAAyD;QAMzE,UAAK,GAAL,KAAK,CAAS;QASd,YAAO,GAAP,OAAO,CAAoB;QAGpC,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAWD;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,0BAA0B;IAC5C;IAArB,YAAqB,IAAuB,EAAE,SAAiB;QAC7D,KAAK,CACH,cAAc,EACd,uBAAuB,IAAI,CAAC,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,EAC5F,SAAS,EACT,SAAS,CACV,CAAC;QANiB,SAAI,GAAJ,IAAI,CAAmB;QAO1C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF"}
@@ -1,3 +1,4 @@
1
+ import { type LoweredCompletionReason } from './authored-completion.js';
1
2
  import { type FlowHandle } from '@relayflows/surface/runtime';
2
3
  import { type ProgressEvent } from './progress.js';
3
4
  import type { GetFlowDefinition } from './authored-flow-loader.js';
@@ -24,6 +25,12 @@ export interface AuthoredFlowExecutionResult {
24
25
  readonly rootRunId?: string;
25
26
  readonly name: string;
26
27
  readonly completionReason: LoweredCompletionReason;
28
+ /**
29
+ * Why, when the body said. Normalized at `done()` — redacted, trimmed and
30
+ * bounded — and absent for every one-argument call, so the durable output,
31
+ * the IPC frame and the report keep the shapes they had.
32
+ */
33
+ readonly completionDetail?: string;
27
34
  readonly journalSteps: readonly AuthoredFlowJournalStep[];
28
35
  }
29
36
  /**
@@ -82,34 +89,4 @@ export interface ExecuteAuthoredFlowOptions {
82
89
  readonly extensionDispatch?: HostedExtensionDispatch;
83
90
  }
84
91
  export declare function executeAuthoredFlow<Input = undefined>(handle: FlowHandle, journal: JournalClient, input?: Input, options?: ExecuteAuthoredFlowOptions): Promise<AuthoredFlowExecutionResult>;
85
- /**
86
- * The completion reasons an authored body may declare and this executor lowers.
87
- *
88
- * `FlowCompletionReason` is wider than this on purpose — it is the journal's
89
- * run vocabulary plus authored verdicts — but the two sets drifting silently is
90
- * exactly what made a type-valid `done("step_failed")` die at runtime as
91
- * `unsupported_completion`. Every gate that asks "is this a completion this
92
- * runtime can lower?" now asks this one function, so a reason cannot be
93
- * accepted in one place and rejected in another.
94
- *
95
- * These three are internal cross-module helpers for the authored seam (the
96
- * executor, the durable root, the IPC verifier and the CLI report), NOT public
97
- * SDK surface. `src/index.ts` deliberately re-exports nothing from this module
98
- * — keep it that way, or the whole authored seam leaks with them.
99
- */
100
- export declare const LOWERED_COMPLETIONS: readonly ["success", "needs_human", "step_failed", "declined"];
101
- export type LoweredCompletionReason = (typeof LOWERED_COMPLETIONS)[number];
102
- export declare function isLoweredCompletion(value: unknown): value is LoweredCompletionReason;
103
- /**
104
- * The deterministic command that carries an authored verdict into the journal.
105
- *
106
- * `success` lowers to `:` because success needs no marker: the marker run's own
107
- * kernel `success` already IS that record. Every other lowered verdict is
108
- * something the kernel's completion vocabulary cannot express on a step that
109
- * *succeeded*, so it travels as data on stdout and is read back from
110
- * `step.completed`. It is deliberately not lowered as a failing command: no
111
- * step failed here, and a fabricated failure would put bogus evidence in the
112
- * journal for a flow whose steps all ran correctly.
113
- */
114
- export declare function completionMarker(reason: LoweredCompletionReason): string;
115
92
  //# sourceMappingURL=authored-flow-executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"authored-flow-executor.d.ts","sourceRoot":"","sources":["../src/authored-flow-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authored-flow-executor.d.ts","sourceRoot":"","sources":["../src/authored-flow-executor.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ import { AuthoredBudget } from './authored-budget.js';
12
12
  import { assertMemoryReachable, authoredMemory, scriptMemoryScope } from './authored-memory.js';
13
13
  import { authoredDeterministicRunner, authoredWorkerRunner } from './authored-worker-step.js';
14
14
  import { isSurfaceFlowCompletionReason, isSurfaceRunCompletionReason } from './authored-step-output.js';
15
+ import { completionMarker, isLoweredCompletion, normalizeCompletionDetail, } from './authored-completion.js';
16
+ import { commitAuthoredVerdict } from './authored-completion-record.js';
15
17
  import { createHelpers, helperProviders } from '@relayflows/surface/runtime';
16
18
  import { join } from 'node:path';
17
19
  import { observeStep } from './progress.js';
@@ -88,6 +90,7 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
88
90
  const stepEdges = (step) => lifecycle.stepEdges(step);
89
91
  let nextStep = 1;
90
92
  let requestedCompletion;
93
+ let requestedDetail;
91
94
  const lowerDeterministic = authoredDeterministicRunner(definition.name, journal, journalSteps, budget, {
92
95
  ...(options.rootRunId === undefined ? {} : { rootRunId: options.rootRunId }),
93
96
  ...(options.dataDir === undefined ? {} : { dataDir: options.dataDir }),
@@ -165,7 +168,16 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
165
168
  (await recordedVerdicts)?.set(id, record);
166
169
  }
167
170
  }
168
- const literal = `'${JSON.stringify(record).replaceAll("'", "'\\''")}'`;
171
+ // Fixed field order, never the record as it came back: the journal stores
172
+ // stream messages with sorted keys, so JSON.stringify of a resumed record
173
+ // would lower a different command than the first run did, and the gate
174
+ // run's admission key would refuse it as bound to a different spec.
175
+ const canonical = {
176
+ gate: 'predicate', step: record.step, verdict: record.verdict,
177
+ ...(record.because === undefined ? {} : { because: record.because }),
178
+ ...(record.threw === undefined ? {} : { threw: record.threw }),
179
+ };
180
+ const literal = `'${JSON.stringify(canonical).replaceAll("'", "'\\''")}'`;
169
181
  const command = record.verdict === 'pass' ? `printf '%s' ${literal}` : `printf '%s' ${literal} >&2; exit 1`;
170
182
  try {
171
183
  await observeStep(`${id}.gate`, 'deterministic', () => lowerDeterministic(`${id}.gate`, command, false), options.onProgress);
@@ -200,6 +212,32 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
200
212
  }, onProgress), lifecycle, {});
201
213
  return trackStep(authoredSteps, llmOp);
202
214
  }
215
+ function runOperation(command, runOptions) {
216
+ assertOperationAllowed('run', definition.name, requestedCompletion);
217
+ const leaseMs = runOptions?.timeout === undefined ? undefined : parseStepTimeout(runOptions.timeout);
218
+ // Refused before an ordinal is consumed or anything is journaled. A
219
+ // misspelled policy must not quietly fall back to the fatal default and
220
+ // take away the very branch the author wrote below this line.
221
+ const policy = runOptions?.onNonZero;
222
+ if (policy !== undefined && policy !== 'fail' && policy !== 'record') {
223
+ throw new AuthoredFlowExecutionError('unsupported_verb', `f.run options.onNonZero must be 'fail' or 'record' (got ${JSON.stringify(policy)}).`);
224
+ }
225
+ const id = `run-${nextStep++}`;
226
+ if (policy === 'record') {
227
+ let recordOp;
228
+ recordOp = new AuthoredFlowOperation(id, 'run', () => assertOperationAllowed('run', definition.name, requestedCompletion), () => observeStep(id, 'deterministic', () => lowerDeterministic.recording(id, command, leaseMs, recordOp.namedGate), options.onProgress), lifecycle,
229
+ // No label: a command is not a display name. It carries literal
230
+ // tokens and URLs, and no prefix of it is safe to show (displayLabel).
231
+ {});
232
+ return trackStep(authoredSteps, recordOp);
233
+ }
234
+ let runOp;
235
+ runOp = new AuthoredFlowOperation(id, 'run', () => assertOperationAllowed('run', definition.name, requestedCompletion), () => observeStep(id, 'deterministic', () => lowerDeterministic(id, command, false, leaseMs, runOp.namedGate), options.onProgress), lifecycle,
236
+ // No label: a command is not a display name. It carries literal
237
+ // tokens and URLs, and no prefix of it is safe to show (displayLabel).
238
+ {});
239
+ return trackStep(authoredSteps, runOp);
240
+ }
203
241
  const slackRun = options.rootRunId ?? randomUUID();
204
242
  function slackOperation(call) {
205
243
  assertOperationAllowed(`slack.${call.verb}`, definition.name, requestedCompletion);
@@ -240,17 +278,7 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
240
278
  return trackStep(authoredSteps, new AuthoredFlowOperation(id, 'mcp', () => assertOperationAllowed('mcp', definition.name, requestedCompletion), () => runMcpEffect(journal, definition.name, id, server, tool, args, known, checkedMcp.servers[server], journalSteps, options.rootRunId), lifecycle));
241
279
  }),
242
280
  memory: authoredMemory(scriptMemoryScope(flowPath, definition.name), () => assertOperationAllowed('memory', definition.name, requestedCompletion), definition.header.memory?.script !== false),
243
- run(command, runOptions) {
244
- assertOperationAllowed('run', definition.name, requestedCompletion);
245
- const leaseMs = runOptions?.timeout === undefined ? undefined : parseStepTimeout(runOptions.timeout);
246
- const id = `run-${nextStep++}`;
247
- let runOp;
248
- runOp = new AuthoredFlowOperation(id, 'run', () => assertOperationAllowed('run', definition.name, requestedCompletion), () => observeStep(id, 'deterministic', () => lowerDeterministic(id, command, false, leaseMs, runOp.namedGate), options.onProgress), lifecycle,
249
- // No label: a command is not a display name. It carries literal
250
- // tokens and URLs, and no prefix of it is safe to show (displayLabel).
251
- {});
252
- return trackStep(authoredSteps, runOp);
253
- },
281
+ run: runOperation,
254
282
  llm: llmOperation,
255
283
  agent(name, options) {
256
284
  assertOperationAllowed('agent', definition.name, requestedCompletion);
@@ -331,7 +359,7 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
331
359
  return verdict;
332
360
  }, lifecycle, displayLabel(typeof name === 'string' ? name : undefined)));
333
361
  },
334
- done(reason) {
362
+ done(reason, doneOptions) {
335
363
  if (!isSurfaceFlowCompletionReason(reason)) {
336
364
  throw new AuthoredFlowExecutionError('unsupported_completion', `unknown completion reason: ${String(reason)}`);
337
365
  }
@@ -354,8 +382,13 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
354
382
  + 'cannot declare it. Use done("step_failed") to declare that the flow\'s own '
355
383
  + 'checks did not pass, or done("declined") to deliberately choose not to act.', reason);
356
384
  }
385
+ // Validated before the completion is marked, so a malformed `detail`
386
+ // leaves the flow exactly as any other refused `done()` does: not
387
+ // completed, and still able to report the real refusal.
388
+ const detail = normalizeCompletionDetail(doneOptions);
357
389
  lifecycle.markCompletion();
358
390
  requestedCompletion = reason;
391
+ requestedDetail = detail;
359
392
  },
360
393
  cloud: unsupportedCloud(() => assertOperationAllowed('cloud', definition.name, requestedCompletion)),
361
394
  };
@@ -420,11 +453,27 @@ export async function executeAuthoredFlow(handle, journal, input, options = {})
420
453
  // not as a fabricated kernel run.completed reason. The marker step reports
421
454
  // what the body decided; it is not itself a step that failed. The CLI turns
422
455
  // the verdict into the exit code (success/declined 0, needs_human 3, step_failed 1).
423
- await lowerDeterministic(`complete-${nextStep}`, completionMarker(requestedCompletion), true);
456
+ //
457
+ // The verdict is committed to the root BEFORE the marker run is opened, and
458
+ // a resumed body reuses what was committed rather than recomputing it
459
+ // (authored-completion-record.ts). A detail is redacted against
460
+ // `process.env`, so a credential rotated while this process was down would
461
+ // otherwise re-normalize the same authored sentence differently, retry the
462
+ // marker's stable admission key with a drifted spec, and lose the
463
+ // explanation the root had already journaled to `run_admission_conflict`.
464
+ // With no detail there is no environment in the command and nothing to
465
+ // commit, so that path is untouched.
466
+ const terminalId = `complete-${nextStep}`;
467
+ const verdict = await commitAuthoredVerdict(journal, options.rootRunId, terminalId, {
468
+ reason: requestedCompletion,
469
+ ...(requestedDetail === undefined ? {} : { detail: requestedDetail }),
470
+ });
471
+ await lowerDeterministic(terminalId, completionMarker(verdict.reason, verdict.detail), true);
424
472
  return Object.freeze({
425
473
  ...(options.rootRunId === undefined ? {} : { rootRunId: options.rootRunId }),
426
474
  name: definition.name,
427
- completionReason: requestedCompletion,
475
+ completionReason: verdict.reason,
476
+ ...(verdict.detail === undefined ? {} : { completionDetail: verdict.detail }),
428
477
  journalSteps: Object.freeze([...journalSteps]),
429
478
  });
430
479
  }
@@ -435,39 +484,6 @@ function trackStep(tracked, operation) {
435
484
  function unsupportedVerb(verb) {
436
485
  return new AuthoredFlowExecutionError('unsupported_verb', `the initial authored executor does not lower f.${verb}`);
437
486
  }
438
- /**
439
- * The completion reasons an authored body may declare and this executor lowers.
440
- *
441
- * `FlowCompletionReason` is wider than this on purpose — it is the journal's
442
- * run vocabulary plus authored verdicts — but the two sets drifting silently is
443
- * exactly what made a type-valid `done("step_failed")` die at runtime as
444
- * `unsupported_completion`. Every gate that asks "is this a completion this
445
- * runtime can lower?" now asks this one function, so a reason cannot be
446
- * accepted in one place and rejected in another.
447
- *
448
- * These three are internal cross-module helpers for the authored seam (the
449
- * executor, the durable root, the IPC verifier and the CLI report), NOT public
450
- * SDK surface. `src/index.ts` deliberately re-exports nothing from this module
451
- * — keep it that way, or the whole authored seam leaks with them.
452
- */
453
- export const LOWERED_COMPLETIONS = ['success', 'needs_human', 'step_failed', 'declined'];
454
- export function isLoweredCompletion(value) {
455
- return typeof value === 'string' && LOWERED_COMPLETIONS.includes(value);
456
- }
457
- /**
458
- * The deterministic command that carries an authored verdict into the journal.
459
- *
460
- * `success` lowers to `:` because success needs no marker: the marker run's own
461
- * kernel `success` already IS that record. Every other lowered verdict is
462
- * something the kernel's completion vocabulary cannot express on a step that
463
- * *succeeded*, so it travels as data on stdout and is read back from
464
- * `step.completed`. It is deliberately not lowered as a failing command: no
465
- * step failed here, and a fabricated failure would put bogus evidence in the
466
- * journal for a flow whose steps all ran correctly.
467
- */
468
- export function completionMarker(reason) {
469
- return reason === 'success' ? ':' : `printf '%s' '{"completionReason":"${reason}"}'`;
470
- }
471
487
  function assertOperationAllowed(verb, flowName, completion) {
472
488
  if (completion !== undefined) {
473
489
  throw new AuthoredFlowExecutionError('operation_after_completion', `flow "${flowName}" called f.${verb} after done()`, isSurfaceRunCompletionReason(completion) ? completion : undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"authored-flow-executor.js","sourceRoot":"","sources":["../src/authored-flow-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authored-flow-executor.js","sourceRoot":"","sources":["../src/authored-flow-executor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"authored-human.d.ts","sourceRoot":"","sources":["../src/authored-human.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC,CAAC;AAErF,8DAA8D;AAC9D,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,aAAa,QAAwB,CAAC;AAEnD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CASpH;AAED,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAmB5E;AA6BD;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAQlC;AAED,yEAAyE;AACzE,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAkBxG;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,MAAM,CAGzF"}
1
+ {"version":3,"file":"authored-human.d.ts","sourceRoot":"","sources":["../src/authored-human.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC,CAAC;AAErF,8DAA8D;AAC9D,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,aAAa,QAAwB,CAAC;AAEnD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CASpH;AAED,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAmB5E;AA6BD;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAQlC;AAED,yEAAyE;AACzE,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAkBxG;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,MAAM,CAGzF"}