@stigmer/server 3.15.3-dev.20260914121148 → 3.16.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 (680) hide show
  1. package/README.md +3 -3
  2. package/dist/archive/content-store.d.ts +35 -0
  3. package/dist/archive/content-store.d.ts.map +1 -0
  4. package/dist/archive/content-store.js +98 -0
  5. package/dist/archive/content-store.js.map +1 -0
  6. package/dist/archive/inflate.d.ts +22 -0
  7. package/dist/archive/inflate.d.ts.map +1 -0
  8. package/dist/archive/inflate.js +75 -0
  9. package/dist/archive/inflate.js.map +1 -0
  10. package/dist/archive/limits.d.ts +33 -0
  11. package/dist/archive/limits.d.ts.map +1 -0
  12. package/dist/archive/limits.js +31 -0
  13. package/dist/archive/limits.js.map +1 -0
  14. package/dist/archive/open.d.ts +24 -0
  15. package/dist/archive/open.d.ts.map +1 -0
  16. package/dist/archive/open.js +93 -0
  17. package/dist/archive/open.js.map +1 -0
  18. package/dist/{domain/skill/storage → archive}/prefilter.d.ts +5 -0
  19. package/dist/archive/prefilter.d.ts.map +1 -0
  20. package/dist/archive/prefilter.js.map +1 -0
  21. package/dist/archive/write.d.ts +8 -0
  22. package/dist/archive/write.d.ts.map +1 -0
  23. package/dist/archive/write.js +44 -0
  24. package/dist/archive/write.js.map +1 -0
  25. package/dist/authorization/authorizer.d.ts +98 -0
  26. package/dist/authorization/authorizer.d.ts.map +1 -0
  27. package/dist/authorization/authorizer.js +156 -0
  28. package/dist/authorization/authorizer.js.map +1 -0
  29. package/dist/authorization/derived-tuples.d.ts +42 -0
  30. package/dist/authorization/derived-tuples.d.ts.map +1 -0
  31. package/dist/authorization/derived-tuples.js +240 -0
  32. package/dist/authorization/derived-tuples.js.map +1 -0
  33. package/dist/authorization/evaluator.d.ts +66 -0
  34. package/dist/authorization/evaluator.d.ts.map +1 -0
  35. package/dist/authorization/evaluator.js +153 -0
  36. package/dist/authorization/evaluator.js.map +1 -0
  37. package/dist/authorization/facts.d.ts +29 -0
  38. package/dist/authorization/facts.d.ts.map +1 -0
  39. package/dist/authorization/facts.js +17 -0
  40. package/dist/authorization/facts.js.map +1 -0
  41. package/dist/authorization/lane-admission.d.ts +50 -0
  42. package/dist/authorization/lane-admission.d.ts.map +1 -0
  43. package/dist/authorization/lane-admission.js +13 -0
  44. package/dist/authorization/lane-admission.js.map +1 -0
  45. package/dist/authorization/list-read-scope.d.ts +18 -0
  46. package/dist/authorization/list-read-scope.d.ts.map +1 -0
  47. package/dist/authorization/list-read-scope.js +155 -0
  48. package/dist/authorization/list-read-scope.js.map +1 -0
  49. package/dist/authorization/model/agent.d.ts +2 -0
  50. package/dist/authorization/model/agent.d.ts.map +1 -0
  51. package/dist/authorization/model/agent.js +42 -0
  52. package/dist/authorization/model/agent.js.map +1 -0
  53. package/dist/authorization/model/agent_channel.d.ts +2 -0
  54. package/dist/authorization/model/agent_channel.d.ts.map +1 -0
  55. package/dist/authorization/model/agent_channel.js +38 -0
  56. package/dist/authorization/model/agent_channel.js.map +1 -0
  57. package/dist/authorization/model/agent_execution.d.ts +2 -0
  58. package/dist/authorization/model/agent_execution.d.ts.map +1 -0
  59. package/dist/authorization/model/agent_execution.js +25 -0
  60. package/dist/authorization/model/agent_execution.js.map +1 -0
  61. package/dist/authorization/model/agent_instance.d.ts +2 -0
  62. package/dist/authorization/model/agent_instance.d.ts.map +1 -0
  63. package/dist/authorization/model/agent_instance.js +47 -0
  64. package/dist/authorization/model/agent_instance.js.map +1 -0
  65. package/dist/authorization/model/agent_share.d.ts +2 -0
  66. package/dist/authorization/model/agent_share.d.ts.map +1 -0
  67. package/dist/authorization/model/agent_share.js +29 -0
  68. package/dist/authorization/model/agent_share.js.map +1 -0
  69. package/dist/authorization/model/api_key.d.ts +2 -0
  70. package/dist/authorization/model/api_key.d.ts.map +1 -0
  71. package/dist/authorization/model/api_key.js +27 -0
  72. package/dist/authorization/model/api_key.js.map +1 -0
  73. package/dist/authorization/model/artifact.d.ts +2 -0
  74. package/dist/authorization/model/artifact.d.ts.map +1 -0
  75. package/dist/authorization/model/artifact.js +27 -0
  76. package/dist/authorization/model/artifact.js.map +1 -0
  77. package/dist/authorization/model/channel_app.d.ts +2 -0
  78. package/dist/authorization/model/channel_app.d.ts.map +1 -0
  79. package/dist/authorization/model/channel_app.js +28 -0
  80. package/dist/authorization/model/channel_app.js.map +1 -0
  81. package/dist/authorization/model/default-of.d.ts +38 -0
  82. package/dist/authorization/model/default-of.d.ts.map +1 -0
  83. package/dist/authorization/model/default-of.js +39 -0
  84. package/dist/authorization/model/default-of.js.map +1 -0
  85. package/dist/authorization/model/environment.d.ts +2 -0
  86. package/dist/authorization/model/environment.d.ts.map +1 -0
  87. package/dist/authorization/model/environment.js +33 -0
  88. package/dist/authorization/model/environment.js.map +1 -0
  89. package/dist/authorization/model/execution_context.d.ts +2 -0
  90. package/dist/authorization/model/execution_context.d.ts.map +1 -0
  91. package/dist/authorization/model/execution_context.js +19 -0
  92. package/dist/authorization/model/execution_context.js.map +1 -0
  93. package/dist/authorization/model/iam_policy.d.ts +2 -0
  94. package/dist/authorization/model/iam_policy.d.ts.map +1 -0
  95. package/dist/authorization/model/iam_policy.js +31 -0
  96. package/dist/authorization/model/iam_policy.js.map +1 -0
  97. package/dist/authorization/model/identity_account.d.ts +2 -0
  98. package/dist/authorization/model/identity_account.d.ts.map +1 -0
  99. package/dist/authorization/model/identity_account.js +25 -0
  100. package/dist/authorization/model/identity_account.js.map +1 -0
  101. package/dist/authorization/model/index.d.ts +36 -0
  102. package/dist/authorization/model/index.d.ts.map +1 -0
  103. package/dist/authorization/model/index.js +72 -0
  104. package/dist/authorization/model/index.js.map +1 -0
  105. package/dist/authorization/model/mcp_server.d.ts +2 -0
  106. package/dist/authorization/model/mcp_server.d.ts.map +1 -0
  107. package/dist/authorization/model/mcp_server.js +37 -0
  108. package/dist/authorization/model/mcp_server.js.map +1 -0
  109. package/dist/authorization/model/memory.d.ts +2 -0
  110. package/dist/authorization/model/memory.d.ts.map +1 -0
  111. package/dist/authorization/model/memory.js +26 -0
  112. package/dist/authorization/model/memory.js.map +1 -0
  113. package/dist/authorization/model/oauth_app.d.ts +2 -0
  114. package/dist/authorization/model/oauth_app.d.ts.map +1 -0
  115. package/dist/authorization/model/oauth_app.js +30 -0
  116. package/dist/authorization/model/oauth_app.js.map +1 -0
  117. package/dist/authorization/model/organization.d.ts +2 -0
  118. package/dist/authorization/model/organization.d.ts.map +1 -0
  119. package/dist/authorization/model/organization.js +54 -0
  120. package/dist/authorization/model/organization.js.map +1 -0
  121. package/dist/authorization/model/plugin.d.ts +2 -0
  122. package/dist/authorization/model/plugin.d.ts.map +1 -0
  123. package/dist/authorization/model/plugin.js +44 -0
  124. package/dist/authorization/model/plugin.js.map +1 -0
  125. package/dist/authorization/model/project.d.ts +2 -0
  126. package/dist/authorization/model/project.d.ts.map +1 -0
  127. package/dist/authorization/model/project.js +32 -0
  128. package/dist/authorization/model/project.js.map +1 -0
  129. package/dist/authorization/model/rewrite.d.ts +127 -0
  130. package/dist/authorization/model/rewrite.d.ts.map +1 -0
  131. package/dist/authorization/model/rewrite.js +82 -0
  132. package/dist/authorization/model/rewrite.js.map +1 -0
  133. package/dist/authorization/model/schedule.d.ts +2 -0
  134. package/dist/authorization/model/schedule.d.ts.map +1 -0
  135. package/dist/authorization/model/schedule.js +29 -0
  136. package/dist/authorization/model/schedule.js.map +1 -0
  137. package/dist/authorization/model/session.d.ts +2 -0
  138. package/dist/authorization/model/session.d.ts.map +1 -0
  139. package/dist/authorization/model/session.js +38 -0
  140. package/dist/authorization/model/session.js.map +1 -0
  141. package/dist/authorization/model/skill.d.ts +2 -0
  142. package/dist/authorization/model/skill.d.ts.map +1 -0
  143. package/dist/authorization/model/skill.js +38 -0
  144. package/dist/authorization/model/skill.js.map +1 -0
  145. package/dist/authorization/model/workflow.d.ts +2 -0
  146. package/dist/authorization/model/workflow.d.ts.map +1 -0
  147. package/dist/authorization/model/workflow.js +38 -0
  148. package/dist/authorization/model/workflow.js.map +1 -0
  149. package/dist/authorization/model/workflow_execution.d.ts +2 -0
  150. package/dist/authorization/model/workflow_execution.d.ts.map +1 -0
  151. package/dist/authorization/model/workflow_execution.js +32 -0
  152. package/dist/authorization/model/workflow_execution.js.map +1 -0
  153. package/dist/authorization/model/workflow_instance.d.ts +2 -0
  154. package/dist/authorization/model/workflow_instance.d.ts.map +1 -0
  155. package/dist/authorization/model/workflow_instance.js +92 -0
  156. package/dist/authorization/model/workflow_instance.js.map +1 -0
  157. package/dist/authorization/organization-directory.d.ts +13 -0
  158. package/dist/authorization/organization-directory.d.ts.map +1 -0
  159. package/dist/authorization/organization-directory.js +83 -0
  160. package/dist/authorization/organization-directory.js.map +1 -0
  161. package/dist/authorization/person.d.ts +42 -0
  162. package/dist/authorization/person.d.ts.map +1 -0
  163. package/dist/authorization/person.js +19 -0
  164. package/dist/authorization/person.js.map +1 -0
  165. package/dist/authorization/posture.d.ts +38 -0
  166. package/dist/authorization/posture.d.ts.map +1 -0
  167. package/dist/authorization/posture.js +7 -0
  168. package/dist/authorization/posture.js.map +1 -0
  169. package/dist/authorization/schedule-fire-caller.d.ts +12 -0
  170. package/dist/authorization/schedule-fire-caller.d.ts.map +1 -0
  171. package/dist/authorization/schedule-fire-caller.js +67 -0
  172. package/dist/authorization/schedule-fire-caller.js.map +1 -0
  173. package/dist/authorization/store-test-kit.d.ts +68 -0
  174. package/dist/authorization/store-test-kit.d.ts.map +1 -0
  175. package/dist/authorization/store-test-kit.js +311 -0
  176. package/dist/authorization/store-test-kit.js.map +1 -0
  177. package/dist/authorization/tuples.d.ts +115 -0
  178. package/dist/authorization/tuples.d.ts.map +1 -0
  179. package/dist/authorization/tuples.js +83 -0
  180. package/dist/authorization/tuples.js.map +1 -0
  181. package/dist/boot/compose.d.ts.map +1 -1
  182. package/dist/boot/compose.js +220 -43
  183. package/dist/boot/compose.js.map +1 -1
  184. package/dist/boot/inprocess.d.ts +12 -0
  185. package/dist/boot/inprocess.d.ts.map +1 -1
  186. package/dist/boot/inprocess.js +68 -21
  187. package/dist/boot/inprocess.js.map +1 -1
  188. package/dist/domain/agent/controller.d.ts.map +1 -1
  189. package/dist/domain/agent/controller.js +9 -0
  190. package/dist/domain/agent/controller.js.map +1 -1
  191. package/dist/domain/executioncontext/resolve-values-for-caller.d.ts +33 -14
  192. package/dist/domain/executioncontext/resolve-values-for-caller.d.ts.map +1 -1
  193. package/dist/domain/executioncontext/resolve-values-for-caller.js +32 -8
  194. package/dist/domain/executioncontext/resolve-values-for-caller.js.map +1 -1
  195. package/dist/domain/iampolicy/constants.d.ts +11 -0
  196. package/dist/domain/iampolicy/constants.d.ts.map +1 -1
  197. package/dist/domain/iampolicy/constants.js +11 -0
  198. package/dist/domain/iampolicy/constants.js.map +1 -1
  199. package/dist/domain/iampolicy/membership.d.ts +72 -1
  200. package/dist/domain/iampolicy/membership.d.ts.map +1 -1
  201. package/dist/domain/iampolicy/membership.js +141 -56
  202. package/dist/domain/iampolicy/membership.js.map +1 -1
  203. package/dist/domain/identityaccount/actor.d.ts +41 -0
  204. package/dist/domain/identityaccount/actor.d.ts.map +1 -0
  205. package/dist/domain/identityaccount/actor.js +34 -0
  206. package/dist/domain/identityaccount/actor.js.map +1 -0
  207. package/dist/domain/identityaccount/resolve.d.ts +19 -0
  208. package/dist/domain/identityaccount/resolve.d.ts.map +1 -1
  209. package/dist/domain/identityaccount/resolve.js +12 -0
  210. package/dist/domain/identityaccount/resolve.js.map +1 -1
  211. package/dist/domain/mcpserver/connect-execution-id.d.ts +5 -0
  212. package/dist/domain/mcpserver/connect-execution-id.d.ts.map +1 -0
  213. package/dist/domain/mcpserver/connect-execution-id.js +32 -0
  214. package/dist/domain/mcpserver/connect-execution-id.js.map +1 -0
  215. package/dist/domain/mcpserver/connect.d.ts +28 -2
  216. package/dist/domain/mcpserver/connect.d.ts.map +1 -1
  217. package/dist/domain/mcpserver/connect.js +27 -7
  218. package/dist/domain/mcpserver/connect.js.map +1 -1
  219. package/dist/domain/mcpserver/controller.d.ts.map +1 -1
  220. package/dist/domain/mcpserver/controller.js +9 -0
  221. package/dist/domain/mcpserver/controller.js.map +1 -1
  222. package/dist/domain/mcpserver/engine.d.ts +9 -3
  223. package/dist/domain/mcpserver/engine.d.ts.map +1 -1
  224. package/dist/domain/mcpserver/engine.js.map +1 -1
  225. package/dist/domain/mcpserver/start-connect.js +1 -1
  226. package/dist/domain/mcpserver/start-connect.js.map +1 -1
  227. package/dist/domain/platform/controller.d.ts +24 -11
  228. package/dist/domain/platform/controller.d.ts.map +1 -1
  229. package/dist/domain/platform/controller.js.map +1 -1
  230. package/dist/domain/plugin/archive.d.ts +37 -0
  231. package/dist/domain/plugin/archive.d.ts.map +1 -0
  232. package/dist/domain/plugin/archive.js +50 -0
  233. package/dist/domain/plugin/archive.js.map +1 -0
  234. package/dist/domain/plugin/constants.d.ts +38 -0
  235. package/dist/domain/plugin/constants.d.ts.map +1 -0
  236. package/dist/domain/plugin/constants.js +46 -0
  237. package/dist/domain/plugin/constants.js.map +1 -0
  238. package/dist/domain/plugin/controller.d.ts +25 -0
  239. package/dist/domain/plugin/controller.d.ts.map +1 -0
  240. package/dist/domain/plugin/controller.js +493 -0
  241. package/dist/domain/plugin/controller.js.map +1 -0
  242. package/dist/domain/plugin/materialize/agent.d.ts +13 -0
  243. package/dist/domain/plugin/materialize/agent.d.ts.map +1 -0
  244. package/dist/domain/plugin/materialize/agent.js +128 -0
  245. package/dist/domain/plugin/materialize/agent.js.map +1 -0
  246. package/dist/domain/plugin/materialize/default-agent-instructions.d.ts +22 -0
  247. package/dist/domain/plugin/materialize/default-agent-instructions.d.ts.map +1 -0
  248. package/dist/domain/plugin/materialize/default-agent-instructions.js +31 -0
  249. package/dist/domain/plugin/materialize/default-agent-instructions.js.map +1 -0
  250. package/dist/domain/plugin/materialize/identity.d.ts +28 -0
  251. package/dist/domain/plugin/materialize/identity.d.ts.map +1 -0
  252. package/dist/domain/plugin/materialize/identity.js +40 -0
  253. package/dist/domain/plugin/materialize/identity.js.map +1 -0
  254. package/dist/domain/plugin/materialize/mcp-servers.d.ts +15 -0
  255. package/dist/domain/plugin/materialize/mcp-servers.d.ts.map +1 -0
  256. package/dist/domain/plugin/materialize/mcp-servers.js +131 -0
  257. package/dist/domain/plugin/materialize/mcp-servers.js.map +1 -0
  258. package/dist/domain/plugin/materialize/plan.d.ts +24 -0
  259. package/dist/domain/plugin/materialize/plan.d.ts.map +1 -0
  260. package/dist/domain/plugin/materialize/plan.js +77 -0
  261. package/dist/domain/plugin/materialize/plan.js.map +1 -0
  262. package/dist/domain/plugin/materialize/ports.d.ts +42 -0
  263. package/dist/domain/plugin/materialize/ports.d.ts.map +1 -0
  264. package/dist/domain/plugin/materialize/ports.js +2 -0
  265. package/dist/domain/plugin/materialize/ports.js.map +1 -0
  266. package/dist/domain/plugin/materialize/skills.d.ts +12 -0
  267. package/dist/domain/plugin/materialize/skills.d.ts.map +1 -0
  268. package/dist/domain/plugin/materialize/skills.js +44 -0
  269. package/dist/domain/plugin/materialize/skills.js.map +1 -0
  270. package/dist/domain/plugin/materialize/workflows.d.ts +15 -0
  271. package/dist/domain/plugin/materialize/workflows.d.ts.map +1 -0
  272. package/dist/domain/plugin/materialize/workflows.js +31 -0
  273. package/dist/domain/plugin/materialize/workflows.js.map +1 -0
  274. package/dist/domain/plugin/members.d.ts +42 -0
  275. package/dist/domain/plugin/members.d.ts.map +1 -0
  276. package/dist/domain/plugin/members.js +97 -0
  277. package/dist/domain/plugin/members.js.map +1 -0
  278. package/dist/domain/plugin/overlay/documents.d.ts +31 -0
  279. package/dist/domain/plugin/overlay/documents.d.ts.map +1 -0
  280. package/dist/domain/plugin/overlay/documents.js +38 -0
  281. package/dist/domain/plugin/overlay/documents.js.map +1 -0
  282. package/dist/domain/plugin/overlay/parse.d.ts +16 -0
  283. package/dist/domain/plugin/overlay/parse.d.ts.map +1 -0
  284. package/dist/domain/plugin/overlay/parse.js +79 -0
  285. package/dist/domain/plugin/overlay/parse.js.map +1 -0
  286. package/dist/domain/plugin/overlay/sanitize.d.ts +10 -0
  287. package/dist/domain/plugin/overlay/sanitize.d.ts.map +1 -0
  288. package/dist/domain/plugin/overlay/sanitize.js +103 -0
  289. package/dist/domain/plugin/overlay/sanitize.js.map +1 -0
  290. package/dist/domain/plugin/push.d.ts +133 -0
  291. package/dist/domain/plugin/push.d.ts.map +1 -0
  292. package/dist/domain/plugin/push.js +800 -0
  293. package/dist/domain/plugin/push.js.map +1 -0
  294. package/dist/domain/plugin/search-extractor.d.ts +3 -0
  295. package/dist/domain/plugin/search-extractor.d.ts.map +1 -0
  296. package/dist/domain/plugin/search-extractor.js +41 -0
  297. package/dist/domain/plugin/search-extractor.js.map +1 -0
  298. package/dist/domain/skill/constants.d.ts +6 -11
  299. package/dist/domain/skill/constants.d.ts.map +1 -1
  300. package/dist/domain/skill/constants.js +6 -11
  301. package/dist/domain/skill/constants.js.map +1 -1
  302. package/dist/domain/skill/controller.d.ts.map +1 -1
  303. package/dist/domain/skill/controller.js +33 -30
  304. package/dist/domain/skill/controller.js.map +1 -1
  305. package/dist/domain/skill/push.d.ts +9 -10
  306. package/dist/domain/skill/push.d.ts.map +1 -1
  307. package/dist/domain/skill/push.js +53 -122
  308. package/dist/domain/skill/push.js.map +1 -1
  309. package/dist/domain/skill/search-extractor.d.ts.map +1 -1
  310. package/dist/domain/skill/search-extractor.js.map +1 -1
  311. package/dist/domain/skill/storage/artifact-storage.d.ts +26 -29
  312. package/dist/domain/skill/storage/artifact-storage.d.ts.map +1 -1
  313. package/dist/domain/skill/storage/artifact-storage.js +6 -103
  314. package/dist/domain/skill/storage/artifact-storage.js.map +1 -1
  315. package/dist/domain/skill/storage/zip-gate.d.ts +1 -2
  316. package/dist/domain/skill/storage/zip-gate.d.ts.map +1 -1
  317. package/dist/domain/skill/storage/zip-gate.js +56 -126
  318. package/dist/domain/skill/storage/zip-gate.js.map +1 -1
  319. package/dist/domain/skill/version-resolution.d.ts +5 -5
  320. package/dist/domain/skill/version-resolution.d.ts.map +1 -1
  321. package/dist/domain/skill/version-resolution.js +34 -216
  322. package/dist/domain/skill/version-resolution.js.map +1 -1
  323. package/dist/domain/workflow/controller.d.ts.map +1 -1
  324. package/dist/domain/workflow/controller.js +30 -3
  325. package/dist/domain/workflow/controller.js.map +1 -1
  326. package/dist/domain/workflow/registry/data/task-kind-registry.json +1 -0
  327. package/dist/domain/workflowexecution/phases.d.ts +21 -0
  328. package/dist/domain/workflowexecution/phases.d.ts.map +1 -0
  329. package/dist/domain/workflowexecution/phases.js +31 -0
  330. package/dist/domain/workflowexecution/phases.js.map +1 -0
  331. package/dist/extensions/authorizer.d.ts +10 -5
  332. package/dist/extensions/authorizer.d.ts.map +1 -1
  333. package/dist/extensions/drivers.d.ts +4 -1
  334. package/dist/extensions/drivers.d.ts.map +1 -1
  335. package/dist/extensions/list-read-scope.d.ts +47 -20
  336. package/dist/extensions/list-read-scope.d.ts.map +1 -1
  337. package/dist/extensions/list-read-scope.js +20 -24
  338. package/dist/extensions/list-read-scope.js.map +1 -1
  339. package/dist/extensions/organization-directory.d.ts +13 -9
  340. package/dist/extensions/organization-directory.d.ts.map +1 -1
  341. package/dist/extensions/organization-directory.js.map +1 -1
  342. package/dist/extensions/resource-authorization.d.ts +33 -0
  343. package/dist/extensions/resource-authorization.d.ts.map +1 -1
  344. package/dist/extensions/schedule-fire-caller.d.ts +45 -18
  345. package/dist/extensions/schedule-fire-caller.d.ts.map +1 -1
  346. package/dist/extensions/schedule-fire-caller.js +12 -1
  347. package/dist/extensions/schedule-fire-caller.js.map +1 -1
  348. package/dist/identity/oidc-verifier.js +8 -1
  349. package/dist/identity/oidc-verifier.js.map +1 -1
  350. package/dist/index.d.ts +10 -0
  351. package/dist/index.d.ts.map +1 -1
  352. package/dist/index.js +8 -0
  353. package/dist/index.js.map +1 -1
  354. package/dist/pipeline/apiresource-labels.d.ts +23 -3
  355. package/dist/pipeline/apiresource-labels.d.ts.map +1 -1
  356. package/dist/pipeline/apiresource-labels.js +20 -0
  357. package/dist/pipeline/apiresource-labels.js.map +1 -1
  358. package/dist/pipeline/apiresource-meta.d.ts +15 -0
  359. package/dist/pipeline/apiresource-meta.d.ts.map +1 -1
  360. package/dist/pipeline/apiresource-meta.js +34 -0
  361. package/dist/pipeline/apiresource-meta.js.map +1 -1
  362. package/dist/pipeline/errors.d.ts.map +1 -1
  363. package/dist/pipeline/errors.js.map +1 -1
  364. package/dist/pipeline/steps/authorization-facts.d.ts +12 -0
  365. package/dist/pipeline/steps/authorization-facts.d.ts.map +1 -0
  366. package/dist/pipeline/steps/authorization-facts.js +100 -0
  367. package/dist/pipeline/steps/authorization-facts.js.map +1 -0
  368. package/dist/pipeline/steps/delete.d.ts.map +1 -1
  369. package/dist/pipeline/steps/delete.js +1 -1
  370. package/dist/pipeline/steps/delete.js.map +1 -1
  371. package/dist/pipeline/steps/duplicate.d.ts.map +1 -1
  372. package/dist/pipeline/steps/duplicate.js.map +1 -1
  373. package/dist/pipeline/steps/guard-memory-capture.d.ts.map +1 -1
  374. package/dist/pipeline/steps/guard-memory-capture.js +5 -3
  375. package/dist/pipeline/steps/guard-memory-capture.js.map +1 -1
  376. package/dist/pipeline/steps/guard-plugin-managed.d.ts +12 -0
  377. package/dist/pipeline/steps/guard-plugin-managed.d.ts.map +1 -0
  378. package/dist/pipeline/steps/guard-plugin-managed.js +96 -0
  379. package/dist/pipeline/steps/guard-plugin-managed.js.map +1 -0
  380. package/dist/pipeline/steps/guard-reserved-labels.d.ts +16 -2
  381. package/dist/pipeline/steps/guard-reserved-labels.d.ts.map +1 -1
  382. package/dist/pipeline/steps/guard-reserved-labels.js +11 -7
  383. package/dist/pipeline/steps/guard-reserved-labels.js.map +1 -1
  384. package/dist/pipeline/steps/helpers.d.ts.map +1 -1
  385. package/dist/pipeline/steps/helpers.js.map +1 -1
  386. package/dist/pipeline/steps/index-search.d.ts.map +1 -1
  387. package/dist/pipeline/steps/index-search.js.map +1 -1
  388. package/dist/pipeline/steps/load-existing.d.ts.map +1 -1
  389. package/dist/pipeline/steps/load-existing.js +1 -1
  390. package/dist/pipeline/steps/load-existing.js.map +1 -1
  391. package/dist/pipeline/steps/references.d.ts +16 -0
  392. package/dist/pipeline/steps/references.d.ts.map +1 -1
  393. package/dist/pipeline/steps/references.js +18 -0
  394. package/dist/pipeline/steps/references.js.map +1 -1
  395. package/dist/pipeline/steps/resolve-artifact-source.d.ts +35 -0
  396. package/dist/pipeline/steps/resolve-artifact-source.d.ts.map +1 -0
  397. package/dist/pipeline/steps/resolve-artifact-source.js +27 -0
  398. package/dist/pipeline/steps/resolve-artifact-source.js.map +1 -0
  399. package/dist/pipeline/steps/server-stamped-reserved-labels.d.ts.map +1 -1
  400. package/dist/pipeline/steps/server-stamped-reserved-labels.js.map +1 -1
  401. package/dist/pipeline/steps/slug.d.ts.map +1 -1
  402. package/dist/pipeline/steps/slug.js.map +1 -1
  403. package/dist/pipeline/steps/validate-visibility.d.ts +9 -0
  404. package/dist/pipeline/steps/validate-visibility.d.ts.map +1 -1
  405. package/dist/pipeline/steps/validate-visibility.js +6 -1
  406. package/dist/pipeline/steps/validate-visibility.js.map +1 -1
  407. package/dist/pipeline/steps/validation.d.ts.map +1 -1
  408. package/dist/pipeline/steps/validation.js.map +1 -1
  409. package/dist/pipeline/steps/version-archive.d.ts +63 -0
  410. package/dist/pipeline/steps/version-archive.d.ts.map +1 -0
  411. package/dist/pipeline/steps/version-archive.js +129 -0
  412. package/dist/pipeline/steps/version-archive.js.map +1 -0
  413. package/dist/pipeline/steps/version-history.d.ts +49 -0
  414. package/dist/pipeline/steps/version-history.d.ts.map +1 -0
  415. package/dist/pipeline/steps/version-history.js +229 -0
  416. package/dist/pipeline/steps/version-history.js.map +1 -0
  417. package/dist/pipeline/steps/visibility-gates.d.ts +8 -0
  418. package/dist/pipeline/steps/visibility-gates.d.ts.map +1 -1
  419. package/dist/pipeline/steps/visibility-gates.js +7 -2
  420. package/dist/pipeline/steps/visibility-gates.js.map +1 -1
  421. package/dist/query/search/registry.d.ts.map +1 -1
  422. package/dist/query/search/registry.js +2 -0
  423. package/dist/query/search/registry.js.map +1 -1
  424. package/dist/runnerauth/bound-execution.d.ts +27 -0
  425. package/dist/runnerauth/bound-execution.d.ts.map +1 -0
  426. package/dist/runnerauth/bound-execution.js +137 -0
  427. package/dist/runnerauth/bound-execution.js.map +1 -0
  428. package/dist/runnerauth/built-in-runner-credential-provider.d.ts +28 -0
  429. package/dist/runnerauth/built-in-runner-credential-provider.d.ts.map +1 -0
  430. package/dist/runnerauth/built-in-runner-credential-provider.js +217 -0
  431. package/dist/runnerauth/built-in-runner-credential-provider.js.map +1 -0
  432. package/dist/runnerauth/constants.d.ts +63 -0
  433. package/dist/runnerauth/constants.d.ts.map +1 -0
  434. package/dist/runnerauth/constants.js +63 -0
  435. package/dist/runnerauth/constants.js.map +1 -0
  436. package/dist/runnerauth/dispatch-credential.d.ts +38 -0
  437. package/dist/runnerauth/dispatch-credential.d.ts.map +1 -0
  438. package/dist/runnerauth/dispatch-credential.js +17 -0
  439. package/dist/runnerauth/dispatch-credential.js.map +1 -0
  440. package/dist/runnerauth/runner-credential-provider.d.ts +49 -11
  441. package/dist/runnerauth/runner-credential-provider.d.ts.map +1 -1
  442. package/dist/runnerauth/runner-credential-provider.js +16 -4
  443. package/dist/runnerauth/runner-credential-provider.js.map +1 -1
  444. package/dist/runnerauth/runner-subject-verifier.d.ts +14 -0
  445. package/dist/runnerauth/runner-subject-verifier.d.ts.map +1 -0
  446. package/dist/runnerauth/runner-subject-verifier.js +115 -0
  447. package/dist/runnerauth/runner-subject-verifier.js.map +1 -0
  448. package/dist/runnerauth/runnerauth.d.ts +33 -4
  449. package/dist/runnerauth/runnerauth.d.ts.map +1 -1
  450. package/dist/runnerauth/runnerauth.js +131 -35
  451. package/dist/runnerauth/runnerauth.js.map +1 -1
  452. package/dist/temporal/agentexecution/engine-client.d.ts +13 -0
  453. package/dist/temporal/agentexecution/engine-client.d.ts.map +1 -1
  454. package/dist/temporal/agentexecution/engine-client.js +10 -2
  455. package/dist/temporal/agentexecution/engine-client.js.map +1 -1
  456. package/dist/temporal/agentexecution/workflow-input.d.ts +13 -0
  457. package/dist/temporal/agentexecution/workflow-input.d.ts.map +1 -1
  458. package/dist/temporal/agentexecution/workflows/invoke-agent-execution.d.ts.map +1 -1
  459. package/dist/temporal/agentexecution/workflows/invoke-agent-execution.js +35 -31
  460. package/dist/temporal/agentexecution/workflows/invoke-agent-execution.js.map +1 -1
  461. package/dist/temporal/schedule/run-starter.d.ts +1 -1
  462. package/dist/temporal/schedule/run-starter.d.ts.map +1 -1
  463. package/dist/temporal/schedule/run-starter.js +14 -1
  464. package/dist/temporal/schedule/run-starter.js.map +1 -1
  465. package/dist/temporal/workflowexecution/engine-client.d.ts +24 -0
  466. package/dist/temporal/workflowexecution/engine-client.d.ts.map +1 -1
  467. package/dist/temporal/workflowexecution/engine-client.js +26 -19
  468. package/dist/temporal/workflowexecution/engine-client.js.map +1 -1
  469. package/dist/temporal/workflowexecution/workflow-input.d.ts +14 -0
  470. package/dist/temporal/workflowexecution/workflow-input.d.ts.map +1 -1
  471. package/package.json +5 -4
  472. package/src/archive/__tests__/archive.test.ts +233 -0
  473. package/src/{domain/skill → archive}/__tests__/prefilter.test.ts +1 -1
  474. package/src/archive/content-store.ts +132 -0
  475. package/src/archive/inflate.ts +107 -0
  476. package/src/archive/limits.ts +42 -0
  477. package/src/archive/open.ts +131 -0
  478. package/src/{domain/skill/storage → archive}/prefilter.ts +5 -0
  479. package/src/archive/write.ts +54 -0
  480. package/src/authorization/README.md +124 -0
  481. package/src/authorization/__tests__/authorizer.test.ts +719 -0
  482. package/src/authorization/__tests__/derived-tuples.test.ts +802 -0
  483. package/src/authorization/__tests__/drivers.ts +70 -0
  484. package/src/authorization/__tests__/evaluator.test.ts +359 -0
  485. package/src/authorization/__tests__/facts.test.ts +155 -0
  486. package/src/authorization/__tests__/fixtures/fga/agent-channel-owner.fga.yaml +112 -0
  487. package/src/authorization/__tests__/fixtures/fga/agent-share-owner.fga.yaml +109 -0
  488. package/src/authorization/__tests__/fixtures/fga/artifact-org-and-owner.fga.yaml +128 -0
  489. package/src/authorization/__tests__/fixtures/fga/blueprint-private-visibility.fga.yaml +410 -0
  490. package/src/authorization/__tests__/fixtures/fga/channel-app-owner.fga.yaml +125 -0
  491. package/src/authorization/__tests__/fixtures/fga/channel-participation.fga.yaml +201 -0
  492. package/src/authorization/__tests__/fixtures/fga/channel-session-visibility.fga.yaml +187 -0
  493. package/src/authorization/__tests__/fixtures/fga/cross-org-share-creation.fga.yaml +98 -0
  494. package/src/authorization/__tests__/fixtures/fga/default-instance-inheritance.fga.yaml +271 -0
  495. package/src/authorization/__tests__/fixtures/fga/memory-subject-only.fga.yaml +72 -0
  496. package/src/authorization/__tests__/fixtures/fga/org-admin-owner-inheritance.fga.yaml +328 -0
  497. package/src/authorization/__tests__/fixtures/fga/org-shared-environment.fga.yaml +144 -0
  498. package/src/authorization/__tests__/fixtures/fga/platform-visibility.fga.yaml +223 -0
  499. package/src/authorization/__tests__/fixtures/fga/provider-standing-viewer.fga.yaml +40 -0
  500. package/src/authorization/__tests__/fixtures/fga/public-visibility-setter.fga.yaml +52 -0
  501. package/src/authorization/__tests__/fixtures/fga/reserved-label-writer.fga.yaml +41 -0
  502. package/src/authorization/__tests__/fixtures/fga/schedule-owner.fga.yaml +113 -0
  503. package/src/authorization/__tests__/fixtures/fga/schedule-session-visibility.fga.yaml +214 -0
  504. package/src/authorization/__tests__/fixtures/fga/session-personal-resource.fga.yaml +117 -0
  505. package/src/authorization/__tests__/fixtures/fga/workflow-execution-sharing.fga.yaml +192 -0
  506. package/src/authorization/__tests__/lane-admission.test.ts +115 -0
  507. package/src/authorization/__tests__/list-read-scope.measure.test.ts +317 -0
  508. package/src/authorization/__tests__/list-read-scope.test.ts +796 -0
  509. package/src/authorization/__tests__/organization-directory.test.ts +236 -0
  510. package/src/authorization/__tests__/person.test.ts +114 -0
  511. package/src/authorization/__tests__/posture.test.ts +25 -0
  512. package/src/authorization/__tests__/schedule-fire-caller.test.ts +134 -0
  513. package/src/authorization/__tests__/store-tests.test.ts +306 -0
  514. package/src/authorization/__tests__/support.ts +101 -0
  515. package/src/authorization/__tests__/tuples.test.ts +62 -0
  516. package/src/authorization/__tests__/wire-permissions.test.ts +154 -0
  517. package/src/authorization/authorizer.ts +208 -0
  518. package/src/authorization/derived-tuples.ts +384 -0
  519. package/src/authorization/evaluator.ts +283 -0
  520. package/src/authorization/facts.ts +47 -0
  521. package/src/authorization/lane-admission.ts +73 -0
  522. package/src/authorization/list-read-scope.ts +216 -0
  523. package/src/authorization/model/__tests__/registry.test.ts +317 -0
  524. package/src/authorization/model/agent.ts +64 -0
  525. package/src/authorization/model/agent_channel.ts +49 -0
  526. package/src/authorization/model/agent_execution.ts +33 -0
  527. package/src/authorization/model/agent_instance.ts +66 -0
  528. package/src/authorization/model/agent_share.ts +40 -0
  529. package/src/authorization/model/api_key.ts +28 -0
  530. package/src/authorization/model/artifact.ts +38 -0
  531. package/src/authorization/model/channel_app.ts +39 -0
  532. package/src/authorization/model/default-of.ts +99 -0
  533. package/src/authorization/model/environment.ts +48 -0
  534. package/src/authorization/model/execution_context.ts +20 -0
  535. package/src/authorization/model/iam_policy.ts +42 -0
  536. package/src/authorization/model/identity_account.ts +26 -0
  537. package/src/authorization/model/index.ts +108 -0
  538. package/src/authorization/model/mcp_server.ts +59 -0
  539. package/src/authorization/model/memory.ts +27 -0
  540. package/src/authorization/model/oauth_app.ts +42 -0
  541. package/src/authorization/model/organization.ts +55 -0
  542. package/src/authorization/model/plugin.ts +66 -0
  543. package/src/authorization/model/project.ts +47 -0
  544. package/src/authorization/model/rewrite.ts +213 -0
  545. package/src/authorization/model/schedule.ts +40 -0
  546. package/src/authorization/model/session.ts +50 -0
  547. package/src/authorization/model/skill.ts +60 -0
  548. package/src/authorization/model/workflow.ts +60 -0
  549. package/src/authorization/model/workflow_execution.ts +44 -0
  550. package/src/authorization/model/workflow_instance.ts +122 -0
  551. package/src/authorization/organization-directory.ts +114 -0
  552. package/src/authorization/person.ts +68 -0
  553. package/src/authorization/posture.ts +49 -0
  554. package/src/authorization/schedule-fire-caller.ts +87 -0
  555. package/src/authorization/store-test-kit.ts +454 -0
  556. package/src/authorization/tuples.ts +190 -0
  557. package/src/boot/compose.ts +246 -52
  558. package/src/boot/inprocess.ts +115 -31
  559. package/src/domain/agent/controller.ts +11 -0
  560. package/src/domain/executioncontext/__tests__/executioncontext.test.ts +104 -0
  561. package/src/domain/executioncontext/__tests__/resolve-values-capability.test.ts +33 -4
  562. package/src/domain/executioncontext/resolve-values-for-caller.ts +79 -22
  563. package/src/domain/iampolicy/__tests__/membership.test.ts +357 -3
  564. package/src/domain/iampolicy/constants.ts +12 -0
  565. package/src/domain/iampolicy/membership.ts +221 -66
  566. package/src/domain/identityaccount/__tests__/account-for-stamp.test.ts +111 -0
  567. package/src/domain/identityaccount/actor.ts +84 -0
  568. package/src/domain/identityaccount/resolve.ts +31 -0
  569. package/src/domain/mcpserver/__tests__/connect.test.ts +17 -2
  570. package/src/domain/mcpserver/connect-execution-id.ts +34 -0
  571. package/src/domain/mcpserver/connect.ts +38 -3
  572. package/src/domain/mcpserver/controller.ts +11 -0
  573. package/src/domain/mcpserver/engine.ts +9 -3
  574. package/src/domain/mcpserver/start-connect.ts +1 -1
  575. package/src/domain/platform/controller.ts +24 -11
  576. package/src/domain/plugin/__tests__/materialize.test.ts +303 -0
  577. package/src/domain/plugin/__tests__/overlay-parse.test.ts +85 -0
  578. package/src/domain/plugin/__tests__/plugin.test.ts +796 -0
  579. package/src/domain/plugin/__tests__/sanitize.test.ts +174 -0
  580. package/src/domain/plugin/archive.ts +89 -0
  581. package/src/domain/plugin/constants.ts +53 -0
  582. package/src/domain/plugin/controller.ts +913 -0
  583. package/src/domain/plugin/materialize/agent.ts +186 -0
  584. package/src/domain/plugin/materialize/default-agent-instructions.ts +59 -0
  585. package/src/domain/plugin/materialize/identity.ts +67 -0
  586. package/src/domain/plugin/materialize/mcp-servers.ts +175 -0
  587. package/src/domain/plugin/materialize/plan.ts +124 -0
  588. package/src/domain/plugin/materialize/ports.ts +53 -0
  589. package/src/domain/plugin/materialize/skills.ts +68 -0
  590. package/src/domain/plugin/materialize/workflows.ts +51 -0
  591. package/src/domain/plugin/members.ts +180 -0
  592. package/src/domain/plugin/overlay/documents.ts +78 -0
  593. package/src/domain/plugin/overlay/parse.ts +115 -0
  594. package/src/domain/plugin/overlay/sanitize.ts +151 -0
  595. package/src/domain/plugin/push.ts +1062 -0
  596. package/src/domain/plugin/search-extractor.ts +60 -0
  597. package/src/domain/skill/constants.ts +11 -14
  598. package/src/domain/skill/controller.ts +44 -36
  599. package/src/domain/skill/push.ts +61 -156
  600. package/src/domain/skill/search-extractor.ts +3 -1
  601. package/src/domain/skill/storage/artifact-storage.ts +23 -124
  602. package/src/domain/skill/storage/zip-gate.ts +58 -154
  603. package/src/domain/skill/version-resolution.ts +67 -269
  604. package/src/domain/workflow/controller.ts +38 -4
  605. package/src/domain/workflow/registry/data/task-kind-registry.json +1 -0
  606. package/src/domain/workflowexecution/__tests__/phases.test.ts +58 -0
  607. package/src/domain/workflowexecution/phases.ts +33 -0
  608. package/src/extensions/__tests__/built-in-authorization-composed.test.ts +835 -0
  609. package/src/extensions/__tests__/composed-support.ts +32 -1
  610. package/src/extensions/__tests__/extension-composition.test.ts +42 -1
  611. package/src/extensions/__tests__/list-read-scope.test.ts +137 -33
  612. package/src/extensions/__tests__/role-reconciliation-composed.test.ts +209 -0
  613. package/src/extensions/__tests__/tier-truthfulness.test.ts +6 -14
  614. package/src/extensions/authorizer.ts +10 -5
  615. package/src/extensions/drivers.ts +4 -1
  616. package/src/extensions/list-read-scope.ts +67 -45
  617. package/src/extensions/organization-directory.ts +13 -9
  618. package/src/extensions/resource-authorization.ts +34 -0
  619. package/src/extensions/schedule-fire-caller.ts +49 -18
  620. package/src/identity/__tests__/oidc-verifier.test.ts +22 -0
  621. package/src/identity/oidc-verifier.ts +8 -1
  622. package/src/index.ts +51 -1
  623. package/src/pipeline/__tests__/kind-by-id-prefix.test.ts +75 -0
  624. package/src/pipeline/__tests__/router-transport.test.ts +1 -3
  625. package/src/pipeline/apiresource-labels.ts +31 -3
  626. package/src/pipeline/apiresource-meta.ts +41 -0
  627. package/src/pipeline/errors.ts +5 -5
  628. package/src/pipeline/steps/__tests__/authorize-annotation-completeness.test.ts +1 -20
  629. package/src/pipeline/steps/__tests__/guard-memory-capture.test.ts +58 -44
  630. package/src/pipeline/steps/__tests__/guard-plugin-managed.test.ts +151 -0
  631. package/src/pipeline/steps/__tests__/guard-reserved-labels.test.ts +83 -8
  632. package/src/pipeline/steps/authorization-facts.ts +131 -0
  633. package/src/pipeline/steps/delete.ts +11 -3
  634. package/src/pipeline/steps/duplicate.ts +8 -2
  635. package/src/pipeline/steps/guard-memory-capture.ts +5 -3
  636. package/src/pipeline/steps/guard-plugin-managed.ts +133 -0
  637. package/src/pipeline/steps/guard-reserved-labels.ts +29 -8
  638. package/src/pipeline/steps/helpers.ts +4 -1
  639. package/src/pipeline/steps/index-search.ts +28 -15
  640. package/src/pipeline/steps/load-existing.ts +12 -3
  641. package/src/pipeline/steps/references.ts +36 -2
  642. package/src/pipeline/steps/resolve-artifact-source.ts +66 -0
  643. package/src/pipeline/steps/server-stamped-reserved-labels.ts +2 -1
  644. package/src/pipeline/steps/slug.ts +7 -2
  645. package/src/pipeline/steps/validate-visibility.ts +9 -2
  646. package/src/pipeline/steps/validation.ts +3 -1
  647. package/src/pipeline/steps/version-archive.ts +225 -0
  648. package/src/pipeline/steps/version-history.ts +362 -0
  649. package/src/pipeline/steps/visibility-gates.ts +12 -9
  650. package/src/query/README.md +1 -1
  651. package/src/query/search/__tests__/criteria.test.ts +6 -7
  652. package/src/query/search/__tests__/query-store.test.ts +9 -2
  653. package/src/query/search/__tests__/registry.test.ts +6 -4
  654. package/src/query/search/registry.ts +6 -1
  655. package/src/runnerauth/__tests__/bound-execution.test.ts +334 -0
  656. package/src/runnerauth/__tests__/built-in-runner-credential-provider.test.ts +516 -0
  657. package/src/runnerauth/__tests__/dispatch-credential.test.ts +94 -0
  658. package/src/runnerauth/__tests__/runner-credential-provider.test.ts +27 -0
  659. package/src/runnerauth/__tests__/runner-subject-composed.test.ts +497 -0
  660. package/src/runnerauth/__tests__/runner-subject-verifier.test.ts +541 -0
  661. package/src/runnerauth/bound-execution.ts +270 -0
  662. package/src/runnerauth/built-in-runner-credential-provider.ts +300 -0
  663. package/src/runnerauth/constants.ts +74 -0
  664. package/src/runnerauth/dispatch-credential.ts +63 -0
  665. package/src/runnerauth/runner-credential-provider.ts +60 -11
  666. package/src/runnerauth/runner-subject-verifier.ts +152 -0
  667. package/src/runnerauth/runnerauth.ts +148 -38
  668. package/src/temporal/agentexecution/__tests__/engine-client.test.ts +107 -38
  669. package/src/temporal/agentexecution/__tests__/invoke-workflow.test.ts +105 -2
  670. package/src/temporal/agentexecution/engine-client.ts +27 -2
  671. package/src/temporal/agentexecution/workflow-input.ts +13 -0
  672. package/src/temporal/agentexecution/workflows/invoke-agent-execution.ts +90 -44
  673. package/src/temporal/schedule/__tests__/run-starter.test.ts +86 -24
  674. package/src/temporal/schedule/run-starter.ts +31 -8
  675. package/src/temporal/workflowexecution/__tests__/engine-client.test.ts +139 -33
  676. package/src/temporal/workflowexecution/engine-client.ts +48 -21
  677. package/src/temporal/workflowexecution/workflow-input.ts +14 -0
  678. package/dist/domain/skill/storage/prefilter.d.ts.map +0 -1
  679. package/dist/domain/skill/storage/prefilter.js.map +0 -1
  680. /package/dist/{domain/skill/storage → archive}/prefilter.js +0 -0
@@ -14,8 +14,14 @@
14
14
  * map the SDK's workflow-not-found onto EngineWorkflowNotFoundError
15
15
  * (Go serviceerror.NotFound → ErrWorkflowNotFound);
16
16
  * - the engine-state provider: DISCONNECTED until the first connect,
17
- * memoized per client instance, re-built on client swap (reconnect).
17
+ * memoized per client instance, re-built on client swap (reconnect);
18
+ * - the run credential on the input (2026-09-16): minted through the
19
+ * composed provider's capability and bound to the execution with no
20
+ * clock; the key is ABSENT when the provider lacks the capability
21
+ * (an edition credentialed another way), when it is keyless, and
22
+ * when the mint throws — a dispatch never fails on a mint.
18
23
  */
24
+ import { randomBytes } from "node:crypto";
19
25
  import { mkdtempSync, rmSync } from "node:fs";
20
26
  import { tmpdir } from "node:os";
21
27
  import path from "node:path";
@@ -41,6 +47,12 @@ import {
41
47
  DEFAULT_EXECUTION_TARGET_LOCAL,
42
48
  ROUTING_GLOBAL,
43
49
  } from "../../../domain/agentexecution/temporal/config.js";
50
+ import type { RunCredentialMint } from "../../../runnerauth/dispatch-credential.js";
51
+ import { newExecutionScopedRunnerCredentialProvider } from "../../../runnerauth/runner-credential-provider.js";
52
+ import {
53
+ isClockedToken,
54
+ RunnerAuthService,
55
+ } from "../../../runnerauth/runnerauth.js";
44
56
  import { SqliteStore } from "../../../store/sqlite/store.js";
45
57
  import type { Store } from "../../../store/interface.js";
46
58
  import type { TemporalManager } from "../../manager.js";
@@ -48,6 +60,7 @@ import {
48
60
  newExecutionEngineStateProvider,
49
61
  TemporalExecutionEngine,
50
62
  } from "../engine-client.js";
63
+ import type { TemporalExecutionEngineDeps } from "../engine-client.js";
51
64
  import { DEFAULT_ACTIVITY_TASK_QUEUE } from "../names.js";
52
65
 
53
66
  const silentLogger = createLogger({
@@ -56,6 +69,28 @@ const silentLogger = createLogger({
56
69
  write: () => {},
57
70
  });
58
71
 
72
+ /** The keyed OSS default — what a real open-source boot composes. */
73
+ const runnerAuth = RunnerAuthService.create(randomBytes(32));
74
+ const keyedCredentials = newExecutionScopedRunnerCredentialProvider(runnerAuth);
75
+
76
+ /**
77
+ * One construction site for every arm: the realistic deps by default,
78
+ * any of them overridable, so the next dependency costs one line here.
79
+ */
80
+ function newEngine(
81
+ client: Client,
82
+ overrides: Partial<Omit<TemporalExecutionEngineDeps, "client">> = {},
83
+ ): TemporalExecutionEngine {
84
+ return new TemporalExecutionEngine({
85
+ client,
86
+ config: config(),
87
+ store: overrides.store ?? newStore(),
88
+ runnerCredentials: keyedCredentials,
89
+ logger: silentLogger,
90
+ ...overrides,
91
+ });
92
+ }
93
+
59
94
  const cleanups: Array<() => Promise<void> | void> = [];
60
95
  afterEach(async () => {
61
96
  for (const cleanup of cleanups.splice(0)) {
@@ -123,6 +158,12 @@ function stubClient(behavior?: { handleError?: Error }) {
123
158
  return { client, startCalls, handleCalls };
124
159
  }
125
160
 
161
+ /** The one workflow input the stub recorded. */
162
+ function dispatchedInput(startCalls: StartCall[]): Record<string, unknown> {
163
+ expect(startCalls).toHaveLength(1);
164
+ return (startCalls[0]!.options["args"] as unknown[])[0] as Record<string, unknown>;
165
+ }
166
+
126
167
  function startInput(overrides: Partial<Parameters<TemporalExecutionEngine["startInvokeWorkflow"]>[0]> = {}) {
127
168
  return {
128
169
  executionId: "aex_1",
@@ -139,12 +180,7 @@ function startInput(overrides: Partial<Parameters<TemporalExecutionEngine["start
139
180
  describe("TemporalExecutionEngine.startInvokeWorkflow", () => {
140
181
  it("starts the byte-pinned workflow type with the memo, queue, and slim input", async () => {
141
182
  const { client, startCalls } = stubClient();
142
- const engine = new TemporalExecutionEngine({
143
- client,
144
- config: config(),
145
- store: newStore(),
146
- logger: silentLogger,
147
- });
183
+ const engine = newEngine(client);
148
184
 
149
185
  await engine.startInvokeWorkflow(
150
186
  startInput({ callbackToken: Buffer.from("tok"), parentWorkflowId: "parent-wf" }),
@@ -171,10 +207,67 @@ describe("TemporalExecutionEngine.startInvokeWorkflow", () => {
171
207
  // keeps it, so the wire carries it) and target resolved LOCAL.
172
208
  harness: Harness.NATIVE,
173
209
  execution_target: ExecutionTarget.LOCAL,
210
+ // The run credential, minted per dispatch (its own arms below).
211
+ execution_context_token: expect.any(String),
174
212
  },
175
213
  ]);
176
214
  });
177
215
 
216
+ it("carries the run credential minted through the provider: bound to the execution, no clock", async () => {
217
+ const { client, startCalls } = stubClient();
218
+ const engine = newEngine(client);
219
+
220
+ await engine.startInvokeWorkflow(startInput({ executionId: "aex_cred" }));
221
+
222
+ const token = dispatchedInput(startCalls)["execution_context_token"];
223
+ expect(typeof token).toBe("string");
224
+ expect(runnerAuth.verify(token as string)).toBe("aex_cred");
225
+ expect(isClockedToken(token as string)).toBe(false);
226
+ });
227
+
228
+ it("omits the credential when the provider lacks the capability — an edition credentialed another way", async () => {
229
+ const { client, startCalls } = stubClient();
230
+ const withoutCapability: RunCredentialMint = {};
231
+ const engine = newEngine(client, { runnerCredentials: withoutCapability });
232
+
233
+ await engine.startInvokeWorkflow(startInput());
234
+
235
+ expect("execution_context_token" in dispatchedInput(startCalls)).toBe(
236
+ false,
237
+ );
238
+ });
239
+
240
+ it("omits the credential when the provider is keyless", async () => {
241
+ const { client, startCalls } = stubClient();
242
+ const keyless = newExecutionScopedRunnerCredentialProvider(
243
+ RunnerAuthService.create(undefined),
244
+ );
245
+ const engine = newEngine(client, { runnerCredentials: keyless });
246
+
247
+ await engine.startInvokeWorkflow(startInput());
248
+
249
+ expect("execution_context_token" in dispatchedInput(startCalls)).toBe(
250
+ false,
251
+ );
252
+ });
253
+
254
+ it("a mint that throws degrades to a dispatch without the credential — the start still happens", async () => {
255
+ const { client, startCalls } = stubClient();
256
+ const throwing: RunCredentialMint = {
257
+ mintRunCredential(): string {
258
+ throw new Error("signing failed");
259
+ },
260
+ };
261
+ const engine = newEngine(client, { runnerCredentials: throwing });
262
+
263
+ await engine.startInvokeWorkflow(startInput());
264
+
265
+ expect(startCalls).toHaveLength(1);
266
+ expect("execution_context_token" in dispatchedInput(startCalls)).toBe(
267
+ false,
268
+ );
269
+ });
270
+
178
271
  it("resolves session routing through dispatch (harness + target in the input)", async () => {
179
272
  const { client, startCalls } = stubClient();
180
273
  const store = newStore();
@@ -193,16 +286,11 @@ describe("TemporalExecutionEngine.startInvokeWorkflow", () => {
193
286
  },
194
287
  }),
195
288
  );
196
- const engine = new TemporalExecutionEngine({
197
- client,
198
- config: config(),
199
- store,
200
- logger: silentLogger,
201
- });
289
+ const engine = newEngine(client, { store });
202
290
 
203
291
  await engine.startInvokeWorkflow(startInput({ sessionId: "ses_1" }));
204
292
 
205
- const input = (startCalls[0]!.options["args"] as unknown[])[0] as Record<string, unknown>;
293
+ const input = dispatchedInput(startCalls);
206
294
  expect(input["harness"]).toBe(Harness.CURSOR);
207
295
  expect(input["execution_target"]).toBe(ExecutionTarget.CLOUD);
208
296
  // Omitempty shape: empty callback token and parent id carry NO keys.
@@ -214,12 +302,7 @@ describe("TemporalExecutionEngine.startInvokeWorkflow", () => {
214
302
  const { client } = stubClient();
215
303
  const store = newStore();
216
304
  await store.close(); // Forces a non-NotFound store failure in dispatch.
217
- const engine = new TemporalExecutionEngine({
218
- client,
219
- config: config(),
220
- store,
221
- logger: silentLogger,
222
- });
305
+ const engine = newEngine(client, { store });
223
306
 
224
307
  await expect(
225
308
  engine.startInvokeWorkflow(startInput({ sessionId: "ses_any" })),
@@ -234,12 +317,7 @@ describe("TemporalExecutionEngine.startInvokeWorkflow", () => {
234
317
  describe("TemporalExecutionEngine lifecycle operations", () => {
235
318
  it("targets the pinned workflow ID for signal/cancel/terminate", async () => {
236
319
  const { client, handleCalls } = stubClient();
237
- const engine = new TemporalExecutionEngine({
238
- client,
239
- config: config(),
240
- store: newStore(),
241
- logger: silentLogger,
242
- });
320
+ const engine = newEngine(client);
243
321
 
244
322
  await engine.signalApprovalGateResolved("aex_2");
245
323
  await engine.signalPause("aex_2", "Paused by user");
@@ -260,12 +338,7 @@ describe("TemporalExecutionEngine lifecycle operations", () => {
260
338
  const { client } = stubClient({
261
339
  handleError: new WorkflowNotFoundError("nope", "wf", undefined),
262
340
  });
263
- const engine = new TemporalExecutionEngine({
264
- client,
265
- config: config(),
266
- store: newStore(),
267
- logger: silentLogger,
268
- });
341
+ const engine = newEngine(client);
269
342
 
270
343
  for (const op of [
271
344
  () => engine.signalApprovalGateResolved("aex_3"),
@@ -280,12 +353,7 @@ describe("TemporalExecutionEngine lifecycle operations", () => {
280
353
 
281
354
  it("passes through other errors unmapped", async () => {
282
355
  const { client } = stubClient({ handleError: new Error("connection reset") });
283
- const engine = new TemporalExecutionEngine({
284
- client,
285
- config: config(),
286
- store: newStore(),
287
- logger: silentLogger,
288
- });
356
+ const engine = newEngine(client);
289
357
  await expect(engine.signalResume("aex_4")).rejects.toThrow("connection reset");
290
358
  });
291
359
  });
@@ -298,6 +366,7 @@ describe("newExecutionEngineStateProvider", () => {
298
366
  manager,
299
367
  config: config(),
300
368
  store: newStore(),
369
+ runnerCredentials: keyedCredentials,
301
370
  logger: silentLogger,
302
371
  });
303
372
 
@@ -20,7 +20,11 @@
20
20
  * stigmer#282 — and the EC deleted);
21
21
  * - callback-token completion on success AND failure (the DD-001 lane,
22
22
  * oss#861: the TS error completion WORKS);
23
- * - the cursor flow's harness_state_id re-read discipline.
23
+ * - the cursor flow's harness_state_id re-read discipline;
24
+ * - the run credential handed on (2026-09-16): the workflow input's
25
+ * `execution_context_token` reaches EVERY Execute* invocation, first
26
+ * turn and re-invocation, both harnesses, and the key is absent when
27
+ * the dispatch carried none.
24
28
  *
25
29
  * Recorder discipline (oss#892): Temporal activities are at-least-once —
26
30
  * a workflow task whose completion fails to commit re-executes its local
@@ -102,6 +106,18 @@ interface ActivityScript {
102
106
  }) => Promise<Record<string, unknown>>
103
107
  >;
104
108
  executeCalls: Array<{ thread_id: string; turn_seq: number }>;
109
+ /**
110
+ * The `execution_context_token` each Execute* invocation carried, in
111
+ * order — `undefined` when the key was absent. Recorded beside
112
+ * executeCalls so the arms that pin thread/turn shape stay exact.
113
+ */
114
+ executeCredentials: Array<string | undefined>;
115
+ /**
116
+ * The argument each GenerateSessionSubject invocation received, verbatim:
117
+ * the positional execution id when the dispatch carried no credential,
118
+ * the typed object when it did (the runner accepts both).
119
+ */
120
+ subjectArguments: unknown[];
105
121
  /** Consumed per LoadAgentExecution call, in order; last one sticks. */
106
122
  loadResults: JsonValue[];
107
123
  /** Consumed per ReadHarnessStateId call, in order; last one sticks. */
@@ -137,6 +153,8 @@ function resetScript(): void {
137
153
  script = {
138
154
  executeBehaviors: [],
139
155
  executeCalls: [],
156
+ executeCredentials: [],
157
+ subjectArguments: [],
140
158
  loadResults: [],
141
159
  harnessStateIds: [],
142
160
  persistedStatuses: [],
@@ -210,11 +228,17 @@ function scriptedActivities(): Record<string, (...args: never[]) => Promise<unkn
210
228
  execution_id: string;
211
229
  thread_id: string;
212
230
  turn_seq: number;
231
+ execution_context_token?: string;
213
232
  }) => {
214
233
  script.executeCalls.push({
215
234
  thread_id: input.thread_id,
216
235
  turn_seq: input.turn_seq,
217
236
  });
237
+ script.executeCredentials.push(
238
+ "execution_context_token" in input
239
+ ? input.execution_context_token
240
+ : undefined,
241
+ );
218
242
  const behavior = script.executeBehaviors.shift();
219
243
  if (behavior === undefined) {
220
244
  throw new Error("test script exhausted: unexpected agent invocation");
@@ -224,7 +248,9 @@ function scriptedActivities(): Record<string, (...args: never[]) => Promise<unkn
224
248
 
225
249
  return {
226
250
  EnsureThread: async (): Promise<string> => script.ensureThreadResult,
227
- GenerateSessionSubject: async (): Promise<void> => {},
251
+ GenerateSessionSubject: async (argument: unknown): Promise<void> => {
252
+ script.subjectArguments.push(argument);
253
+ },
228
254
  ExecuteDeepAgent: takeExecuteBehavior as never,
229
255
  ExecuteCursor: takeExecuteBehavior as never,
230
256
  UpdateExecutionStatus: async (
@@ -721,6 +747,83 @@ describe("invoke-agent-execution workflow (TestWorkflowEnvironment)", () => {
721
747
  ]);
722
748
  }, 30_000);
723
749
 
750
+ it("hands the run credential to every deep-agent invocation — the first turn and the re-invocation alike", async (testCtx) => { if (!envReady) return testCtx.skip();
751
+ script.executeBehaviors = [
752
+ async () => slimResult(ExecutionPhase.EXECUTION_WAITING_FOR_APPROVAL),
753
+ async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
754
+ ];
755
+ script.loadResults = [executionJson(statusWithPendingApproval())];
756
+
757
+ const handle = await startWorkflow(
758
+ workflowInput({ execution_context_token: "run-credential-1" }),
759
+ );
760
+ await waitForPersistedPhase(ExecutionPhase.EXECUTION_WAITING_FOR_APPROVAL);
761
+ await handle.signal(SIGNAL_APPROVAL_GATE_RESOLVED);
762
+ await handle.result();
763
+
764
+ expect(script.executeCredentials).toEqual([
765
+ "run-credential-1",
766
+ "run-credential-1",
767
+ ]);
768
+ }, 30_000);
769
+
770
+ it("hands the run credential to the cursor invocation too", async (testCtx) => { if (!envReady) return testCtx.skip();
771
+ script.executeBehaviors = [
772
+ async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
773
+ ];
774
+ script.harnessStateIds = [""];
775
+
776
+ const handle = await startWorkflow(
777
+ workflowInput({
778
+ harness: Harness.CURSOR,
779
+ execution_context_token: "run-credential-2",
780
+ }),
781
+ );
782
+ await handle.result();
783
+
784
+ expect(script.executeCredentials).toEqual(["run-credential-2"]);
785
+ }, 30_000);
786
+
787
+ it("omits the credential key when the dispatch carried none — the omitempty shape an in-flight history has", async (testCtx) => { if (!envReady) return testCtx.skip();
788
+ script.executeBehaviors = [
789
+ async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
790
+ ];
791
+
792
+ const handle = await startWorkflow(workflowInput());
793
+ await handle.result();
794
+
795
+ expect(script.executeCredentials).toEqual([undefined]);
796
+ }, 30_000);
797
+
798
+ it("calls GenerateSessionSubject with the typed object carrying the run credential when the dispatch has one", async (testCtx) => { if (!envReady) return testCtx.skip();
799
+ script.executeBehaviors = [
800
+ async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
801
+ ];
802
+
803
+ const handle = await startWorkflow(
804
+ workflowInput({ execution_context_token: "run-credential-3" }),
805
+ );
806
+ await handle.result();
807
+
808
+ expect(script.subjectArguments).toEqual([
809
+ {
810
+ execution_id: currentExecutionId,
811
+ execution_context_token: "run-credential-3",
812
+ },
813
+ ]);
814
+ }, 30_000);
815
+
816
+ it("calls GenerateSessionSubject with the positional execution id when the dispatch carried no credential — the shape every earlier runner accepts", async (testCtx) => { if (!envReady) return testCtx.skip();
817
+ script.executeBehaviors = [
818
+ async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
819
+ ];
820
+
821
+ const handle = await startWorkflow(workflowInput());
822
+ await handle.result();
823
+
824
+ expect(script.subjectArguments).toEqual([currentExecutionId]);
825
+ }, 30_000);
826
+
724
827
  it("survives a missing parent workflow for child_execution_started (non-fatal)", async (testCtx) => { if (!envReady) return testCtx.skip();
725
828
  script.executeBehaviors = [
726
829
  async () => slimResult(ExecutionPhase.EXECUTION_COMPLETED),
@@ -19,6 +19,15 @@
19
19
  * engine per client instance — a new engine object per RPC would be
20
20
  * garbage for no behavior.
21
21
  *
22
+ * The run credential rides the input (2026-09-16): every dispatch — a
23
+ * fresh start and a recovery alike, both through startInvokeWorkflow —
24
+ * asks the composed credential provider for the run's credential
25
+ * (runnerauth/dispatch-credential.ts) and carries it as
26
+ * `execution_context_token`, the connect lane's shape. Minting here, in
27
+ * the one place that builds the input, is what keeps the create step and
28
+ * the recover path ignorant of credentials; a provider without the
29
+ * capability (an edition credentialed another way) leaves the key off.
30
+ *
22
31
  * Proven by the agentexecution suites on local-execution.
23
32
  */
24
33
  import type { Client } from "@temporalio/client";
@@ -35,6 +44,8 @@ import {
35
44
  type StartInvokeWorkflowInput,
36
45
  } from "../../domain/agentexecution/engine.js";
37
46
  import type { AgentExecutionTemporalConfig } from "../../domain/agentexecution/temporal/config.js";
47
+ import { runCredentialForDispatch } from "../../runnerauth/dispatch-credential.js";
48
+ import type { RunCredentialMint } from "../../runnerauth/dispatch-credential.js";
38
49
  import type { Store } from "../../store/interface.js";
39
50
  import type { TemporalManager } from "../manager.js";
40
51
  import { resolveActivityTaskQueue } from "./dispatch.js";
@@ -52,6 +63,8 @@ export interface TemporalExecutionEngineDeps {
52
63
  readonly client: Client;
53
64
  readonly config: AgentExecutionTemporalConfig;
54
65
  readonly store: Store;
66
+ /** The composed credential provider — the dispatch reads its run-credential capability (module header). */
67
+ readonly runnerCredentials: RunCredentialMint;
55
68
  readonly logger: Logger;
56
69
  }
57
70
 
@@ -59,7 +72,7 @@ export class TemporalExecutionEngine implements ConnectedExecutionEngine {
59
72
  constructor(private readonly deps: TemporalExecutionEngineDeps) {}
60
73
 
61
74
  async startInvokeWorkflow(input: StartInvokeWorkflowInput): Promise<void> {
62
- const { client, config, store, logger } = this.deps;
75
+ const { client, config, store, runnerCredentials, logger } = this.deps;
63
76
 
64
77
  let dispatch;
65
78
  try {
@@ -79,6 +92,11 @@ export class TemporalExecutionEngine implements ConnectedExecutionEngine {
79
92
  }
80
93
 
81
94
  const workflowId = invokeWorkflowIdFor(input.executionId);
95
+ const runCredential = runCredentialForDispatch(
96
+ runnerCredentials,
97
+ input.executionId,
98
+ logger,
99
+ );
82
100
 
83
101
  // Slim input with Go's omitempty shape (workflow-input.ts): zero-value
84
102
  // fields are omitted so TS- and Go-authored histories carry the same
@@ -88,7 +106,9 @@ export class TemporalExecutionEngine implements ConnectedExecutionEngine {
88
106
  session_id: input.sessionId,
89
107
  agent_id: input.agentId,
90
108
  ...(input.callbackToken.length > 0
91
- ? { callback_token: Buffer.from(input.callbackToken).toString("base64") }
109
+ ? {
110
+ callback_token: Buffer.from(input.callbackToken).toString("base64"),
111
+ }
92
112
  : {}),
93
113
  ...(input.autoApproveAll ? { auto_approve_all: true } : {}),
94
114
  ...(input.parentWorkflowId !== ""
@@ -98,6 +118,9 @@ export class TemporalExecutionEngine implements ConnectedExecutionEngine {
98
118
  ...(dispatch.executionTarget !== 0
99
119
  ? { execution_target: dispatch.executionTarget }
100
120
  : {}),
121
+ ...(runCredential !== ""
122
+ ? { execution_context_token: runCredential }
123
+ : {}),
101
124
  };
102
125
 
103
126
  // NOTE deliberately NO workflowRunTimeout: HITL approval can block for
@@ -190,6 +213,7 @@ export interface EngineStateProviderDeps {
190
213
  readonly manager: TemporalManager;
191
214
  readonly config: AgentExecutionTemporalConfig;
192
215
  readonly store: Store;
216
+ readonly runnerCredentials: RunCredentialMint;
193
217
  readonly logger: Logger;
194
218
  }
195
219
 
@@ -220,6 +244,7 @@ export function newExecutionEngineStateProvider(
220
244
  client,
221
245
  config: deps.config,
222
246
  store: deps.store,
247
+ runnerCredentials: deps.runnerCredentials,
223
248
  logger: deps.logger,
224
249
  }),
225
250
  },
@@ -25,6 +25,19 @@ export interface InvokeAgentExecutionWorkflowInput {
25
25
  readonly auto_approve_all?: boolean;
26
26
  readonly parent_workflow_id?: string;
27
27
  readonly invoker_identity_account_id?: string;
28
+ /**
29
+ * The run credential (runnerauth: a clockless execution-scoped token
30
+ * bound to this execution), minted by the engine client at dispatch
31
+ * when the composed credential provider defines `mintRunCredential`
32
+ * and omitted otherwise. The connect lane's key for the same token
33
+ * type (domain/mcpserver/engine.ts). The workflow hands it to the
34
+ * runner's activities, which present it on the run's own RPCs: under
35
+ * the built-in authorization posture it admits the runner as the
36
+ * human whose run this is, for as long as the run lives. Like the
37
+ * connect lane's, it sits in Temporal history in the clear — history
38
+ * is operator-only, and the operator holds the signing key already.
39
+ */
40
+ readonly execution_context_token?: string;
28
41
  /**
29
42
  * Session harness as the proto enum numeric value (0=UNSPECIFIED treated
30
43
  * as NATIVE, 1=NATIVE, 2=CURSOR) — selects ExecuteDeepAgent vs