@cats-inc/cats-platform 0.1.21 → 0.2.8

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 (448) hide show
  1. package/.env.example +3 -7
  2. package/README.md +18 -0
  3. package/build/desktop/bootstrapNavigation.d.ts.map +1 -1
  4. package/build/desktop/bootstrapNavigation.js +6 -13
  5. package/build/desktop/bootstrapNavigation.js.map +1 -1
  6. package/build/desktop/bootstrapPage.d.ts.map +1 -1
  7. package/build/desktop/bootstrapPage.js +114 -34
  8. package/build/desktop/bootstrapPage.js.map +1 -1
  9. package/build/desktop/cliInventoryProbe.d.ts +5 -2
  10. package/build/desktop/cliInventoryProbe.d.ts.map +1 -1
  11. package/build/desktop/cliInventoryProbe.js +14 -11
  12. package/build/desktop/cliInventoryProbe.js.map +1 -1
  13. package/build/desktop/config.d.ts +0 -4
  14. package/build/desktop/config.d.ts.map +1 -1
  15. package/build/desktop/config.js +1 -6
  16. package/build/desktop/config.js.map +1 -1
  17. package/build/desktop/contracts.d.ts +10 -2
  18. package/build/desktop/contracts.d.ts.map +1 -1
  19. package/build/desktop/contracts.js +1 -2
  20. package/build/desktop/contracts.js.map +1 -1
  21. package/build/desktop/hostVersion.d.ts.map +1 -1
  22. package/build/desktop/hostVersion.js +3 -5
  23. package/build/desktop/hostVersion.js.map +1 -1
  24. package/build/desktop/main.js +144 -249
  25. package/build/desktop/main.js.map +1 -1
  26. package/build/desktop/packaging.d.ts +2 -0
  27. package/build/desktop/packaging.d.ts.map +1 -1
  28. package/build/desktop/packaging.js +34 -14
  29. package/build/desktop/packaging.js.map +1 -1
  30. package/build/desktop/preload.cjs +7 -0
  31. package/build/desktop/preload.cjs.map +1 -1
  32. package/build/desktop/processSupervisor.d.ts.map +1 -1
  33. package/build/desktop/processSupervisor.js +3 -0
  34. package/build/desktop/processSupervisor.js.map +1 -1
  35. package/build/desktop/providerSelection.d.ts +37 -0
  36. package/build/desktop/providerSelection.d.ts.map +1 -0
  37. package/build/desktop/providerSelection.js +112 -0
  38. package/build/desktop/providerSelection.js.map +1 -0
  39. package/build/desktop/readiness.d.ts +2 -0
  40. package/build/desktop/readiness.d.ts.map +1 -1
  41. package/build/desktop/readiness.js +14 -33
  42. package/build/desktop/readiness.js.map +1 -1
  43. package/build/desktop/setupAssets.d.ts.map +1 -1
  44. package/build/desktop/setupAssets.js +16 -14
  45. package/build/desktop/setupAssets.js.map +1 -1
  46. package/build/desktop/setupAudit.d.ts +2 -3
  47. package/build/desktop/setupAudit.d.ts.map +1 -1
  48. package/build/desktop/setupAudit.js +14 -34
  49. package/build/desktop/setupAudit.js.map +1 -1
  50. package/build/desktop/updateDialog.d.ts +27 -1
  51. package/build/desktop/updateDialog.d.ts.map +1 -1
  52. package/build/desktop/updateDialog.js +85 -5
  53. package/build/desktop/updateDialog.js.map +1 -1
  54. package/build/renderer/assets/{ActiveSessionPermissionChip-DImsuR9T.js → ActiveSessionPermissionChip-CAgN-tXv.js} +1 -1
  55. package/build/renderer/assets/App-BZA23O2J.js +2 -0
  56. package/build/renderer/assets/App-DxsV-tKS.css +1 -0
  57. package/build/renderer/assets/{App-DKOSn0o_.js → App-YqprEL2n.js} +1 -1
  58. package/build/renderer/assets/App-rGw9J8PZ.js +1 -0
  59. package/build/renderer/assets/WorkspaceAppRoutes-BCHCikmJ.js +1 -0
  60. package/build/renderer/assets/app-BV3UAQkR.css +1 -0
  61. package/build/renderer/assets/app-CVPqqfZo.js +45 -0
  62. package/build/renderer/assets/conversationSidebarRecentEntries-iqaLqA1n.js +6 -0
  63. package/build/renderer/assets/{useDraftSessionChips-DCIId0eY.js → useDraftSessionChips-D9BX6X92.js} +1 -1
  64. package/build/renderer/index.html +2 -2
  65. package/build/server/app/renderer/providerCatalogClient.d.ts.map +1 -1
  66. package/build/server/app/renderer/providerCatalogClient.js +15 -6
  67. package/build/server/app/renderer/providerCatalogClient.js.map +1 -1
  68. package/build/server/app/renderer/providerRegistryClient.d.ts +1 -1
  69. package/build/server/app/renderer/providerRegistryClient.d.ts.map +1 -1
  70. package/build/server/app/renderer/providerRegistryClient.js +23 -41
  71. package/build/server/app/renderer/providerRegistryClient.js.map +1 -1
  72. package/build/server/app/server/appPackageRoutes.d.ts +2 -0
  73. package/build/server/app/server/appPackageRoutes.d.ts.map +1 -1
  74. package/build/server/app/server/appPackageRoutes.js +105 -0
  75. package/build/server/app/server/appPackageRoutes.js.map +1 -1
  76. package/build/server/app/server/authGatePolicy.js +7 -1
  77. package/build/server/app/server/authGatePolicy.js.map +1 -1
  78. package/build/server/app/server/contracts.d.ts +15 -0
  79. package/build/server/app/server/contracts.d.ts.map +1 -1
  80. package/build/server/app/server/dependencies.d.ts.map +1 -1
  81. package/build/server/app/server/dependencies.js +42 -1
  82. package/build/server/app/server/dependencies.js.map +1 -1
  83. package/build/server/app/server/goldenPathStartupResume.d.ts +55 -0
  84. package/build/server/app/server/goldenPathStartupResume.d.ts.map +1 -0
  85. package/build/server/app/server/goldenPathStartupResume.js +109 -0
  86. package/build/server/app/server/goldenPathStartupResume.js.map +1 -0
  87. package/build/server/app/server/platformSetupRoutes.d.ts.map +1 -1
  88. package/build/server/app/server/platformSetupRoutes.js +1 -13
  89. package/build/server/app/server/platformSetupRoutes.js.map +1 -1
  90. package/build/server/app/server/polling.d.ts.map +1 -1
  91. package/build/server/app/server/polling.js +2 -0
  92. package/build/server/app/server/polling.js.map +1 -1
  93. package/build/server/app/server/requestRouter.d.ts.map +1 -1
  94. package/build/server/app/server/requestRouter.js +30 -0
  95. package/build/server/app/server/requestRouter.js.map +1 -1
  96. package/build/server/app/server/runtimeSurfaceProxy.d.ts.map +1 -1
  97. package/build/server/app/server/runtimeSurfaceProxy.js +4 -2
  98. package/build/server/app/server/runtimeSurfaceProxy.js.map +1 -1
  99. package/build/server/app/server/startupRecovery.d.ts.map +1 -1
  100. package/build/server/app/server/startupRecovery.js +5 -0
  101. package/build/server/app/server/startupRecovery.js.map +1 -1
  102. package/build/server/app/server/telegramCommandSurface.d.ts +29 -0
  103. package/build/server/app/server/telegramCommandSurface.d.ts.map +1 -0
  104. package/build/server/app/server/telegramCommandSurface.js +123 -0
  105. package/build/server/app/server/telegramCommandSurface.js.map +1 -0
  106. package/build/server/app/server/transportWorkGoldenPath.d.ts +82 -0
  107. package/build/server/app/server/transportWorkGoldenPath.d.ts.map +1 -0
  108. package/build/server/app/server/transportWorkGoldenPath.js +307 -0
  109. package/build/server/app/server/transportWorkGoldenPath.js.map +1 -0
  110. package/build/server/config.d.ts +21 -0
  111. package/build/server/config.d.ts.map +1 -1
  112. package/build/server/config.js +12 -0
  113. package/build/server/config.js.map +1 -1
  114. package/build/server/design/components/providerModelFieldsSupport.d.ts +3 -3
  115. package/build/server/design/components/providerModelFieldsSupport.d.ts.map +1 -1
  116. package/build/server/design/components/providerModelFieldsSupport.js +37 -38
  117. package/build/server/design/components/providerModelFieldsSupport.js.map +1 -1
  118. package/build/server/design/components/useProviderCatalogState.d.ts +1 -0
  119. package/build/server/design/components/useProviderCatalogState.d.ts.map +1 -1
  120. package/build/server/design/components/useProviderCatalogState.js +1 -0
  121. package/build/server/design/components/useProviderCatalogState.js.map +1 -1
  122. package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts.map +1 -1
  123. package/build/server/design/components/useProviderRegistryAutoRecheck.js +20 -13
  124. package/build/server/design/components/useProviderRegistryAutoRecheck.js.map +1 -1
  125. package/build/server/design/components/useProviderRegistryState.d.ts.map +1 -1
  126. package/build/server/design/components/useProviderRegistryState.js +12 -25
  127. package/build/server/design/components/useProviderRegistryState.js.map +1 -1
  128. package/build/server/design/components/useProviderTargetReconciliation.d.ts.map +1 -1
  129. package/build/server/design/components/useProviderTargetReconciliation.js +2 -1
  130. package/build/server/design/components/useProviderTargetReconciliation.js.map +1 -1
  131. package/build/server/index.js +4 -0
  132. package/build/server/index.js.map +1 -1
  133. package/build/server/platform/apps/packageInstaller.d.ts +19 -0
  134. package/build/server/platform/apps/packageInstaller.d.ts.map +1 -0
  135. package/build/server/platform/apps/packageInstaller.js +92 -0
  136. package/build/server/platform/apps/packageInstaller.js.map +1 -0
  137. package/build/server/platform/apps/registry.d.ts +6 -0
  138. package/build/server/platform/apps/registry.d.ts.map +1 -1
  139. package/build/server/platform/apps/registry.js +24 -0
  140. package/build/server/platform/apps/registry.js.map +1 -1
  141. package/build/server/platform/apps/renderer.d.ts +6 -0
  142. package/build/server/platform/apps/renderer.d.ts.map +1 -0
  143. package/build/server/platform/apps/renderer.js +18 -0
  144. package/build/server/platform/apps/renderer.js.map +1 -0
  145. package/build/server/platform/runtime/deliveryClient.d.ts +111 -0
  146. package/build/server/platform/runtime/deliveryClient.d.ts.map +1 -0
  147. package/build/server/platform/runtime/deliveryClient.js +289 -0
  148. package/build/server/platform/runtime/deliveryClient.js.map +1 -0
  149. package/build/server/platform/supervision/providerCapabilityBootstrapYaml.d.ts +1 -0
  150. package/build/server/platform/supervision/providerCapabilityBootstrapYaml.d.ts.map +1 -1
  151. package/build/server/platform/supervision/providerCapabilityBootstrapYaml.js +10 -0
  152. package/build/server/platform/supervision/providerCapabilityBootstrapYaml.js.map +1 -1
  153. package/build/server/platform/supervision/runtimeBoundary.d.ts +11 -1
  154. package/build/server/platform/supervision/runtimeBoundary.d.ts.map +1 -1
  155. package/build/server/platform/supervision/runtimeBoundary.js +2 -2
  156. package/build/server/platform/supervision/runtimeBoundary.js.map +1 -1
  157. package/build/server/platform/transports/telegram/bridge.d.ts +18 -0
  158. package/build/server/platform/transports/telegram/bridge.d.ts.map +1 -1
  159. package/build/server/platform/transports/telegram/bridge.js +176 -0
  160. package/build/server/platform/transports/telegram/bridge.js.map +1 -1
  161. package/build/server/platform/transports/telegram/commandPort.d.ts +40 -0
  162. package/build/server/platform/transports/telegram/commandPort.d.ts.map +1 -0
  163. package/build/server/platform/transports/telegram/commandPort.js +17 -0
  164. package/build/server/platform/transports/telegram/commandPort.js.map +1 -0
  165. package/build/server/platform/transports/telegram/commandRouter.d.ts +22 -0
  166. package/build/server/platform/transports/telegram/commandRouter.d.ts.map +1 -1
  167. package/build/server/platform/transports/telegram/commandRouter.js.map +1 -1
  168. package/build/server/platform/transports/telegram/commands/index.d.ts.map +1 -1
  169. package/build/server/platform/transports/telegram/commands/index.js +38 -0
  170. package/build/server/platform/transports/telegram/commands/index.js.map +1 -1
  171. package/build/server/platform/transports/telegram/ingressDispatch.d.ts +56 -0
  172. package/build/server/platform/transports/telegram/ingressDispatch.d.ts.map +1 -0
  173. package/build/server/platform/transports/telegram/ingressDispatch.js +93 -0
  174. package/build/server/platform/transports/telegram/ingressDispatch.js.map +1 -0
  175. package/build/server/platform/transports/telegram/polling.d.ts +34 -0
  176. package/build/server/platform/transports/telegram/polling.d.ts.map +1 -1
  177. package/build/server/platform/transports/telegram/polling.js +86 -9
  178. package/build/server/platform/transports/telegram/polling.js.map +1 -1
  179. package/build/server/platform/transports/telegram/relay/index.d.ts +3 -0
  180. package/build/server/platform/transports/telegram/relay/index.d.ts.map +1 -1
  181. package/build/server/platform/transports/telegram/relay/index.js +5 -1
  182. package/build/server/platform/transports/telegram/relay/index.js.map +1 -1
  183. package/build/server/platform/transports/telegram/relay/ingress.d.ts +2 -0
  184. package/build/server/platform/transports/telegram/relay/ingress.d.ts.map +1 -1
  185. package/build/server/platform/transports/telegram/relay/ingress.js +1 -1
  186. package/build/server/platform/transports/telegram/relay/ingress.js.map +1 -1
  187. package/build/server/platform/transports/work-delivery/actionTokens.d.ts +66 -0
  188. package/build/server/platform/transports/work-delivery/actionTokens.d.ts.map +1 -0
  189. package/build/server/platform/transports/work-delivery/actionTokens.js +145 -0
  190. package/build/server/platform/transports/work-delivery/actionTokens.js.map +1 -0
  191. package/build/server/platform/transports/work-delivery/contracts.d.ts +172 -0
  192. package/build/server/platform/transports/work-delivery/contracts.d.ts.map +1 -0
  193. package/build/server/platform/transports/work-delivery/contracts.js +26 -0
  194. package/build/server/platform/transports/work-delivery/contracts.js.map +1 -0
  195. package/build/server/platform/transports/work-delivery/deliveryGates.d.ts +32 -0
  196. package/build/server/platform/transports/work-delivery/deliveryGates.d.ts.map +1 -0
  197. package/build/server/platform/transports/work-delivery/deliveryGates.js +45 -0
  198. package/build/server/platform/transports/work-delivery/deliveryGates.js.map +1 -0
  199. package/build/server/platform/transports/work-delivery/inboundClassification.d.ts +31 -0
  200. package/build/server/platform/transports/work-delivery/inboundClassification.d.ts.map +1 -0
  201. package/build/server/platform/transports/work-delivery/inboundClassification.js +52 -0
  202. package/build/server/platform/transports/work-delivery/inboundClassification.js.map +1 -0
  203. package/build/server/platform/transports/work-delivery/outbox.d.ts +84 -0
  204. package/build/server/platform/transports/work-delivery/outbox.d.ts.map +1 -0
  205. package/build/server/platform/transports/work-delivery/outbox.js +270 -0
  206. package/build/server/platform/transports/work-delivery/outbox.js.map +1 -0
  207. package/build/server/platform/transports/work-delivery/permissionEnvelope.d.ts +57 -0
  208. package/build/server/platform/transports/work-delivery/permissionEnvelope.d.ts.map +1 -0
  209. package/build/server/platform/transports/work-delivery/permissionEnvelope.js +74 -0
  210. package/build/server/platform/transports/work-delivery/permissionEnvelope.js.map +1 -0
  211. package/build/server/platform/transports/work-delivery/port.d.ts +60 -0
  212. package/build/server/platform/transports/work-delivery/port.d.ts.map +1 -0
  213. package/build/server/platform/transports/work-delivery/port.js +15 -0
  214. package/build/server/platform/transports/work-delivery/port.js.map +1 -0
  215. package/build/server/platform/transports/work-delivery/proposal.d.ts +31 -0
  216. package/build/server/platform/transports/work-delivery/proposal.d.ts.map +1 -0
  217. package/build/server/platform/transports/work-delivery/proposal.js +59 -0
  218. package/build/server/platform/transports/work-delivery/proposal.js.map +1 -0
  219. package/build/server/platform/transports/work-delivery/readiness.d.ts +61 -0
  220. package/build/server/platform/transports/work-delivery/readiness.d.ts.map +1 -0
  221. package/build/server/platform/transports/work-delivery/readiness.js +123 -0
  222. package/build/server/platform/transports/work-delivery/readiness.js.map +1 -0
  223. package/build/server/platform/transports/work-delivery/stageProjection.d.ts +43 -0
  224. package/build/server/platform/transports/work-delivery/stageProjection.d.ts.map +1 -0
  225. package/build/server/platform/transports/work-delivery/stageProjection.js +132 -0
  226. package/build/server/platform/transports/work-delivery/stageProjection.js.map +1 -0
  227. package/build/server/platform/transports/work-delivery/stateStore.d.ts +21 -0
  228. package/build/server/platform/transports/work-delivery/stateStore.d.ts.map +1 -0
  229. package/build/server/platform/transports/work-delivery/stateStore.js +193 -0
  230. package/build/server/platform/transports/work-delivery/stateStore.js.map +1 -0
  231. package/build/server/platform/transports/work-delivery/telemetry.d.ts +49 -0
  232. package/build/server/platform/transports/work-delivery/telemetry.d.ts.map +1 -0
  233. package/build/server/platform/transports/work-delivery/telemetry.js +80 -0
  234. package/build/server/platform/transports/work-delivery/telemetry.js.map +1 -0
  235. package/build/server/products/chat/api/contracts.d.ts +10 -0
  236. package/build/server/products/chat/api/contracts.d.ts.map +1 -1
  237. package/build/server/products/chat/api/resources/channelRoutes.d.ts.map +1 -1
  238. package/build/server/products/chat/api/resources/channelRoutes.js +27 -1
  239. package/build/server/products/chat/api/resources/channelRoutes.js.map +1 -1
  240. package/build/server/products/chat/api/routeSupport.d.ts +8 -0
  241. package/build/server/products/chat/api/routeSupport.d.ts.map +1 -1
  242. package/build/server/products/chat/api/routeSupport.js +5 -4
  243. package/build/server/products/chat/api/routeSupport.js.map +1 -1
  244. package/build/server/products/chat/api/setupRoutes.d.ts.map +1 -1
  245. package/build/server/products/chat/api/setupRoutes.js +23 -8
  246. package/build/server/products/chat/api/setupRoutes.js.map +1 -1
  247. package/build/server/products/chat/state/model/channelExecutionTargets.d.ts +15 -0
  248. package/build/server/products/chat/state/model/channelExecutionTargets.d.ts.map +1 -1
  249. package/build/server/products/chat/state/model/channelExecutionTargets.js +25 -0
  250. package/build/server/products/chat/state/model/channelExecutionTargets.js.map +1 -1
  251. package/build/server/products/chat/state/model/index.d.ts +1 -1
  252. package/build/server/products/chat/state/model/index.d.ts.map +1 -1
  253. package/build/server/products/chat/state/model/index.js +1 -1
  254. package/build/server/products/chat/state/model/index.js.map +1 -1
  255. package/build/server/products/code/api/relayRoutes.d.ts.map +1 -1
  256. package/build/server/products/code/api/relayRoutes.js +36 -7
  257. package/build/server/products/code/api/relayRoutes.js.map +1 -1
  258. package/build/server/products/code/state/relayState.d.ts +2 -1
  259. package/build/server/products/code/state/relayState.d.ts.map +1 -1
  260. package/build/server/products/code/state/relayState.js +7 -7
  261. package/build/server/products/code/state/relayState.js.map +1 -1
  262. package/build/server/products/shared/api/workspaceContracts.d.ts +5 -0
  263. package/build/server/products/shared/api/workspaceContracts.d.ts.map +1 -1
  264. package/build/server/products/work/api/goldenPathProjection.d.ts +156 -0
  265. package/build/server/products/work/api/goldenPathProjection.d.ts.map +1 -0
  266. package/build/server/products/work/api/goldenPathProjection.js +252 -0
  267. package/build/server/products/work/api/goldenPathProjection.js.map +1 -0
  268. package/build/server/products/work/api/index.d.ts +54 -1
  269. package/build/server/products/work/api/index.d.ts.map +1 -1
  270. package/build/server/products/work/api/index.js +182 -4
  271. package/build/server/products/work/api/index.js.map +1 -1
  272. package/build/server/products/work/api/projection.d.ts +7 -1
  273. package/build/server/products/work/api/projection.d.ts.map +1 -1
  274. package/build/server/products/work/api/projection.js +7 -1
  275. package/build/server/products/work/api/projection.js.map +1 -1
  276. package/build/server/products/work/shared/apiPaths.d.ts +8 -0
  277. package/build/server/products/work/shared/apiPaths.d.ts.map +1 -1
  278. package/build/server/products/work/shared/apiPaths.js +8 -0
  279. package/build/server/products/work/shared/apiPaths.js.map +1 -1
  280. package/build/server/products/work/shared/workGoldenPathMessages.d.ts +83 -0
  281. package/build/server/products/work/shared/workGoldenPathMessages.d.ts.map +1 -0
  282. package/build/server/products/work/shared/workGoldenPathMessages.js +211 -0
  283. package/build/server/products/work/shared/workGoldenPathMessages.js.map +1 -0
  284. package/build/server/products/work/shared/workGoldenPathMetadata.d.ts +45 -0
  285. package/build/server/products/work/shared/workGoldenPathMetadata.d.ts.map +1 -0
  286. package/build/server/products/work/shared/workGoldenPathMetadata.js +122 -0
  287. package/build/server/products/work/shared/workGoldenPathMetadata.js.map +1 -0
  288. package/build/server/products/work/state/workCompletionEvidence.d.ts +42 -0
  289. package/build/server/products/work/state/workCompletionEvidence.d.ts.map +1 -0
  290. package/build/server/products/work/state/workCompletionEvidence.js +59 -0
  291. package/build/server/products/work/state/workCompletionEvidence.js.map +1 -0
  292. package/build/server/products/work/state/workExecutionTaskDelegate.d.ts +16 -0
  293. package/build/server/products/work/state/workExecutionTaskDelegate.d.ts.map +1 -1
  294. package/build/server/products/work/state/workExecutionTaskDelegate.js +91 -68
  295. package/build/server/products/work/state/workExecutionTaskDelegate.js.map +1 -1
  296. package/build/server/products/work/state/workGoldenPathAdmission.d.ts +78 -0
  297. package/build/server/products/work/state/workGoldenPathAdmission.d.ts.map +1 -0
  298. package/build/server/products/work/state/workGoldenPathAdmission.js +249 -0
  299. package/build/server/products/work/state/workGoldenPathAdmission.js.map +1 -0
  300. package/build/server/products/work/state/workGoldenPathDeliveryEvidence.d.ts +33 -0
  301. package/build/server/products/work/state/workGoldenPathDeliveryEvidence.d.ts.map +1 -0
  302. package/build/server/products/work/state/workGoldenPathDeliveryEvidence.js +161 -0
  303. package/build/server/products/work/state/workGoldenPathDeliveryEvidence.js.map +1 -0
  304. package/build/server/products/work/state/workGoldenPathIntake.d.ts +34 -0
  305. package/build/server/products/work/state/workGoldenPathIntake.d.ts.map +1 -0
  306. package/build/server/products/work/state/workGoldenPathIntake.js +50 -0
  307. package/build/server/products/work/state/workGoldenPathIntake.js.map +1 -0
  308. package/build/server/products/work/state/workGoldenPathLifecycle.d.ts +44 -0
  309. package/build/server/products/work/state/workGoldenPathLifecycle.d.ts.map +1 -0
  310. package/build/server/products/work/state/workGoldenPathLifecycle.js +146 -0
  311. package/build/server/products/work/state/workGoldenPathLifecycle.js.map +1 -0
  312. package/build/server/products/work/state/workGoldenPathPublish.d.ts +84 -0
  313. package/build/server/products/work/state/workGoldenPathPublish.d.ts.map +1 -0
  314. package/build/server/products/work/state/workGoldenPathPublish.js +488 -0
  315. package/build/server/products/work/state/workGoldenPathPublish.js.map +1 -0
  316. package/build/server/products/work/state/workGoldenPathRunner.d.ts +121 -0
  317. package/build/server/products/work/state/workGoldenPathRunner.d.ts.map +1 -0
  318. package/build/server/products/work/state/workGoldenPathRunner.js +447 -0
  319. package/build/server/products/work/state/workGoldenPathRunner.js.map +1 -0
  320. package/build/server/products/work/state/workGoldenPathRuntimeExecutor.d.ts +74 -0
  321. package/build/server/products/work/state/workGoldenPathRuntimeExecutor.d.ts.map +1 -0
  322. package/build/server/products/work/state/workGoldenPathRuntimeExecutor.js +239 -0
  323. package/build/server/products/work/state/workGoldenPathRuntimeExecutor.js.map +1 -0
  324. package/build/server/products/work/state/workGoldenPathService.d.ts +152 -0
  325. package/build/server/products/work/state/workGoldenPathService.d.ts.map +1 -0
  326. package/build/server/products/work/state/workGoldenPathService.js +1057 -0
  327. package/build/server/products/work/state/workGoldenPathService.js.map +1 -0
  328. package/build/server/products/work/state/workGoldenPathTelegramPort.d.ts +87 -0
  329. package/build/server/products/work/state/workGoldenPathTelegramPort.d.ts.map +1 -0
  330. package/build/server/products/work/state/workGoldenPathTelegramPort.js +220 -0
  331. package/build/server/products/work/state/workGoldenPathTelegramPort.js.map +1 -0
  332. package/build/server/runtime/client.d.ts +13 -0
  333. package/build/server/runtime/client.d.ts.map +1 -1
  334. package/build/server/runtime/client.js +39 -0
  335. package/build/server/runtime/client.js.map +1 -1
  336. package/build/server/runtime/setup.d.ts +10 -4
  337. package/build/server/runtime/setup.d.ts.map +1 -1
  338. package/build/server/runtime/setup.js +14 -18
  339. package/build/server/runtime/setup.js.map +1 -1
  340. package/build/server/runtime/usageSnapshot.d.ts +3 -0
  341. package/build/server/runtime/usageSnapshot.d.ts.map +1 -0
  342. package/build/server/runtime/usageSnapshot.js +69 -0
  343. package/build/server/runtime/usageSnapshot.js.map +1 -0
  344. package/build/server/server/routes/providerCapabilityBootstrap.d.ts +69 -0
  345. package/build/server/server/routes/providerCapabilityBootstrap.d.ts.map +1 -0
  346. package/build/server/server/routes/providerCapabilityBootstrap.js +165 -0
  347. package/build/server/server/routes/providerCapabilityBootstrap.js.map +1 -0
  348. package/build/server/server/routes/providers.d.ts.map +1 -1
  349. package/build/server/server/routes/providers.js +112 -81
  350. package/build/server/server/routes/providers.js.map +1 -1
  351. package/build/server/server/routes/telegram.d.ts +9 -0
  352. package/build/server/server/routes/telegram.d.ts.map +1 -1
  353. package/build/server/server/routes/telegram.js +79 -72
  354. package/build/server/server/routes/telegram.js.map +1 -1
  355. package/build/server/shared/catsAppManifest.d.ts +3 -1
  356. package/build/server/shared/catsAppManifest.d.ts.map +1 -1
  357. package/build/server/shared/catsAppManifest.js +2 -0
  358. package/build/server/shared/catsAppManifest.js.map +1 -1
  359. package/build/server/shared/executionLabel.d.ts.map +1 -1
  360. package/build/server/shared/executionLabel.js +8 -1
  361. package/build/server/shared/executionLabel.js.map +1 -1
  362. package/build/server/shared/i18n/catalogs/en.d.ts.map +1 -1
  363. package/build/server/shared/i18n/catalogs/en.js +198 -3
  364. package/build/server/shared/i18n/catalogs/en.js.map +1 -1
  365. package/build/server/shared/i18n/catalogs/zh-TW.d.ts.map +1 -1
  366. package/build/server/shared/i18n/catalogs/zh-TW.js +197 -3
  367. package/build/server/shared/i18n/catalogs/zh-TW.js.map +1 -1
  368. package/build/server/shared/i18n/index.d.ts +192 -0
  369. package/build/server/shared/i18n/index.d.ts.map +1 -1
  370. package/build/server/shared/i18n/messageKeys.d.ts +192 -0
  371. package/build/server/shared/i18n/messageKeys.d.ts.map +1 -1
  372. package/build/server/shared/i18n/messageKeys.js +192 -0
  373. package/build/server/shared/i18n/messageKeys.js.map +1 -1
  374. package/build/server/shared/platformSetupOperation.d.ts +2 -0
  375. package/build/server/shared/platformSetupOperation.d.ts.map +1 -0
  376. package/build/server/shared/platformSetupOperation.js +9 -0
  377. package/build/server/shared/platformSetupOperation.js.map +1 -0
  378. package/build/server/shared/providerCatalog.d.ts +5 -2
  379. package/build/server/shared/providerCatalog.d.ts.map +1 -1
  380. package/build/server/shared/providerCatalog.js +6 -0
  381. package/build/server/shared/providerCatalog.js.map +1 -1
  382. package/build/server/shared/providerCatalogData.d.ts +28 -22
  383. package/build/server/shared/providerCatalogData.d.ts.map +1 -1
  384. package/build/server/shared/providerCatalogData.js +22 -10
  385. package/build/server/shared/providerCatalogData.js.map +1 -1
  386. package/build/server/shared/providerCatalogInstances.d.ts.map +1 -1
  387. package/build/server/shared/providerCatalogInstances.js +3 -0
  388. package/build/server/shared/providerCatalogInstances.js.map +1 -1
  389. package/build/server/shared/providerModelLabelRegistry.d.ts +29 -0
  390. package/build/server/shared/providerModelLabelRegistry.d.ts.map +1 -0
  391. package/build/server/shared/providerModelLabelRegistry.js +49 -0
  392. package/build/server/shared/providerModelLabelRegistry.js.map +1 -0
  393. package/build/server/shared/providerSelection.d.ts.map +1 -1
  394. package/build/server/shared/providerSelection.js +10 -13
  395. package/build/server/shared/providerSelection.js.map +1 -1
  396. package/build/server/shared/runtimeSetup.d.ts +17 -4
  397. package/build/server/shared/runtimeSetup.d.ts.map +1 -1
  398. package/build/server/shared/runtimeStatusPresentation.js +1 -1
  399. package/build/server/shared/runtimeStatusPresentation.js.map +1 -1
  400. package/package.json +23 -1
  401. package/packages/app-sdk/browser.d.ts +51 -0
  402. package/packages/app-sdk/browser.js +48 -0
  403. package/packages/app-sdk/package.d.ts +14 -0
  404. package/packages/app-sdk/package.js +131 -0
  405. package/packages/app-sdk/package.json +7 -0
  406. package/scripts/README.md +43 -26
  407. package/scripts/build-desktop-installer.mjs +15 -0
  408. package/scripts/build-test-ui.mjs +1 -1
  409. package/scripts/bundle-server.mjs +23 -10
  410. package/scripts/linux/build-desktop-package.sh +6 -6
  411. package/scripts/linux/install-antigravity.sh +0 -0
  412. package/scripts/linux/install-devin.sh +0 -0
  413. package/scripts/linux/install-meta-cli.sh +8 -0
  414. package/scripts/linux/provider-cli-common.sh +103 -30
  415. package/scripts/linux/sync-agent-skills.sh +27 -5
  416. package/scripts/linux/test-linux-package-smoke.sh +4 -3
  417. package/scripts/linux/upgrade-cli-tools.sh +1 -1
  418. package/scripts/macos/build-desktop-package.sh +5 -5
  419. package/scripts/macos/install-antigravity.sh +0 -0
  420. package/scripts/macos/install-devin.sh +0 -0
  421. package/scripts/macos/install-meta-cli.sh +8 -0
  422. package/scripts/macos/provider-cli-common.sh +103 -30
  423. package/scripts/macos/sync-agent-skills.sh +27 -5
  424. package/scripts/macos/test-macos-package-smoke.sh +4 -3
  425. package/scripts/macos/upgrade-cli-tools.sh +1 -1
  426. package/scripts/package-desktop.mjs +15 -2
  427. package/scripts/testing/check-usage-app.mts +266 -0
  428. package/scripts/testing/usage-app-smoke-electron.cjs +10 -0
  429. package/scripts/testing/usage-app-smoke-renderer.tsx +8 -0
  430. package/scripts/verify-desktop-app-bundle.mjs +108 -0
  431. package/scripts/windows/Build-DesktopPackage.ps1 +9 -6
  432. package/scripts/windows/{Install-Aider.ps1 → Install-MetaCli.ps1} +180 -92
  433. package/scripts/windows/Install-Ollama.ps1 +4 -1
  434. package/scripts/windows/Sync-AgentSkills.ps1 +29 -6
  435. package/scripts/windows/Test-WindowsInstallerSmoke.ps1 +2 -1
  436. package/build/desktop/updateNotifications.d.ts +0 -64
  437. package/build/desktop/updateNotifications.d.ts.map +0 -1
  438. package/build/desktop/updateNotifications.js +0 -143
  439. package/build/desktop/updateNotifications.js.map +0 -1
  440. package/build/renderer/assets/App-BfOvMP2m.js +0 -1
  441. package/build/renderer/assets/App-DGwkRFZl.css +0 -1
  442. package/build/renderer/assets/App-DWd7I3Z2.js +0 -2
  443. package/build/renderer/assets/WorkspaceAppRoutes-CrbTA9En.js +0 -1
  444. package/build/renderer/assets/app-BTww3Hl4.js +0 -43
  445. package/build/renderer/assets/app-CPxWQwLA.css +0 -1
  446. package/build/renderer/assets/conversationSidebarRecentEntries-QuaOPxCb.js +0 -6
  447. package/scripts/linux/install-aider.sh +0 -8
  448. package/scripts/macos/install-aider.sh +0 -8
@@ -0,0 +1,239 @@
1
+ /**
2
+ * The runtime-backed step executor for the golden path (SPEC-114 FR-28).
3
+ *
4
+ * Execution goes through one supervised `cats-runtime` session for the whole
5
+ * run: step 0 opens it with the goal and acceptance criteria, and every later
6
+ * step continues the same session with what is still missing. A Telegram
7
+ * handler never starts a provider session itself.
8
+ *
9
+ * The executor deliberately never reports completion. It returns
10
+ * `claims_complete` on every successful turn and lets the runner's evidence
11
+ * check decide, which is what keeps FR-30 true no matter what the model says.
12
+ */
13
+ import { resolveFullResponseText } from '../../../platform/runtime/client.js';
14
+ import { createSupervisedRuntimeSession, RuntimeSupervisionRejectedError, sendSupervisedRuntimeMessage, } from '../../../platform/supervision/runtimeBoundary.js';
15
+ import { parseClaimedCriteria } from './workGoldenPathDeliveryEvidence.js';
16
+ export const noEvidenceCollector = async () => ({
17
+ satisfiedCriteria: [],
18
+ artifact: null,
19
+ commit: null,
20
+ });
21
+ const DEFAULT_ACTOR_REF = 'actor-work-golden-path';
22
+ /**
23
+ * Provider-independent spellings used by cats-runtime adapters for local file
24
+ * inspection and mutation. Shell, git, network, browser, MCP, and delegation
25
+ * tools are deliberately absent; Cats owns commit/publish side effects.
26
+ */
27
+ const GOLDEN_PATH_LOCAL_FILE_TOOLS = [
28
+ 'Read',
29
+ 'Glob',
30
+ 'Grep',
31
+ 'Edit',
32
+ 'Write',
33
+ 'read_file',
34
+ 'list_dir',
35
+ 'search',
36
+ 'edit',
37
+ 'write',
38
+ 'fileChange',
39
+ 'file_change',
40
+ 'apply_patch',
41
+ ];
42
+ /**
43
+ * Rejection codes that mean "the envelope is too narrow", as opposed to "the
44
+ * call went wrong". Budget exhaustion and approval gates are deliberately not
45
+ * here: they are different conversations with the owner.
46
+ */
47
+ const PERMISSION_REJECTION_CODES = new Set([
48
+ 'E_TOOL_SCOPE_DENIED',
49
+ 'E_NOT_AUTHORIZED',
50
+ ]);
51
+ /**
52
+ * Every runtime call is made through the supervision boundary rather than the
53
+ * raw client, so budget, policy scope, and tool evidence apply to a golden-path
54
+ * run exactly as they do to any other supervised work.
55
+ */
56
+ function buildSupervisionContext(input) {
57
+ return {
58
+ product: 'cats-work',
59
+ surface: 'transport-work-golden-path',
60
+ runId: input.runId,
61
+ actionId: `${input.runId}:step-${input.stepIndex}:${input.toolReason}`,
62
+ actorRef: input.actorRef,
63
+ reason: input.toolReason,
64
+ policyToolScope: input.policyToolScope,
65
+ };
66
+ }
67
+ function buildOpeningInstruction(context) {
68
+ const criteria = context.acceptanceCriteria.length > 0
69
+ ? context.acceptanceCriteria.map((entry) => `- ${entry}`).join('\n')
70
+ : '- (none stated; report what you changed)';
71
+ return [
72
+ `Goal: ${context.goal}`,
73
+ '',
74
+ 'Done when:',
75
+ criteria,
76
+ '',
77
+ `Delivery mode: ${context.deliveryMode}`,
78
+ 'Work only inside the provided workspace. Do not declare the task complete;',
79
+ ...(context.deliveryMode !== 'artifact_only'
80
+ ? ['Cats will stage and commit the isolated worktree after verifying your response.']
81
+ : []),
82
+ 'Cats verifies delivery evidence itself. For each criterion you believe now',
83
+ 'holds, end your reply with a line of exactly this form:',
84
+ 'CRITERIA-MET: <the criterion text, copied verbatim>',
85
+ ].join('\n');
86
+ }
87
+ /**
88
+ * The continuation prompt.
89
+ *
90
+ * It states the gap rather than re-asking the question, so a second turn is a
91
+ * correction rather than a repeat of the first.
92
+ */
93
+ function buildContinuationInstruction(context) {
94
+ const lines = [`Not accepted yet (step ${context.stepIndex + 1}).`];
95
+ if (context.outstandingCriteria.length > 0) {
96
+ lines.push('Still unmet:');
97
+ lines.push(...context.outstandingCriteria.map((entry) => `- ${entry}`));
98
+ }
99
+ if (context.outstandingGaps.length > 0) {
100
+ lines.push(`Missing evidence: ${context.outstandingGaps.join(', ')}.`);
101
+ }
102
+ lines.push('Continue until those hold, then summarize the change.');
103
+ return lines.join('\n');
104
+ }
105
+ export function createWorkGoldenPathRuntimeExecutor(input) {
106
+ const collectEvidence = input.collectEvidence ?? noEvidenceCollector;
107
+ const actorRef = input.actorRef ?? DEFAULT_ACTOR_REF;
108
+ const resolveToolScope = input.resolveToolScope
109
+ // Directly-constructed executors predate the run envelope and are used by
110
+ // isolated product tests. Keep their historical safe write ceiling while
111
+ // production always supplies the run-scoped value.
112
+ ?? ((context) => context.toolScope ?? 'narrow_write');
113
+ // One session per run, opened lazily and reused across steps so the agent
114
+ // keeps its context instead of restarting from scratch every turn.
115
+ const sessionsByRun = new Map();
116
+ return async (context) => {
117
+ try {
118
+ const runToolScope = resolveToolScope(context);
119
+ if (runToolScope !== 'narrow_write' && runToolScope !== 'broad_write') {
120
+ return {
121
+ status: 'permission_denied',
122
+ summary: 'The run is not authorized to modify an isolated workspace.',
123
+ satisfiedCriteria: [],
124
+ artifact: null,
125
+ commit: null,
126
+ blockedReason: 'workspace_write_not_authorized',
127
+ denial: { toolName: 'cats.runtime.session.create', code: 'E_TOOL_SCOPE_DENIED' },
128
+ };
129
+ }
130
+ let session = sessionsByRun.get(context.runId) ?? null;
131
+ if (session === null) {
132
+ const target = input.resolveTarget?.(context) ?? context.executionTarget ?? null;
133
+ if (target === null) {
134
+ return {
135
+ status: 'failed',
136
+ summary: 'No provider execution target was resolved for this run.',
137
+ satisfiedCriteria: [],
138
+ artifact: null,
139
+ commit: null,
140
+ blockedReason: 'execution_target_missing',
141
+ };
142
+ }
143
+ session = await createSupervisedRuntimeSession({
144
+ runtimeClient: input.runtimeClient,
145
+ input: {
146
+ provider: target.provider,
147
+ instance: target.instance ?? null,
148
+ model: target.model ?? null,
149
+ cwd: context.workspacePath,
150
+ workspaceKind: context.deliveryMode === 'artifact_only' ? 'sandbox' : 'worktree',
151
+ workspaceAccess: 'read_write',
152
+ permissionMode: 'whitelist',
153
+ allowedTools: [...GOLDEN_PATH_LOCAL_FILE_TOOLS],
154
+ context: {
155
+ source: 'assignment',
156
+ reason: 'work_golden_path_run',
157
+ taskId: context.taskId ?? undefined,
158
+ labels: ['cats-work', 'golden-path'],
159
+ },
160
+ },
161
+ supervision: buildSupervisionContext({
162
+ runId: context.runId,
163
+ stepIndex: context.stepIndex,
164
+ actorRef,
165
+ toolReason: 'work_golden_path_session_create',
166
+ // This scope authorizes the expensive orchestration call itself.
167
+ // Provider tools are independently narrowed by the runtime
168
+ // whitelist above.
169
+ policyToolScope: 'broad_write',
170
+ }),
171
+ });
172
+ sessionsByRun.set(context.runId, session);
173
+ }
174
+ const message = await sendSupervisedRuntimeMessage({
175
+ runtimeClient: input.runtimeClient,
176
+ sessionId: session.id,
177
+ content: context.stepIndex === 0
178
+ ? buildOpeningInstruction(context)
179
+ : buildContinuationInstruction(context),
180
+ supervision: buildSupervisionContext({
181
+ runId: context.runId,
182
+ stepIndex: context.stepIndex,
183
+ actorRef,
184
+ toolReason: 'work_golden_path_message_send',
185
+ policyToolScope: 'broad_write',
186
+ }),
187
+ });
188
+ const summary = resolveFullResponseText(message.segments).trim();
189
+ const evidence = await collectEvidence({
190
+ runId: context.runId,
191
+ sessionId: session.id,
192
+ goal: context.goal,
193
+ deliveryMode: context.deliveryMode,
194
+ workspacePath: context.workspacePath,
195
+ deliveryWorkspacePath: session.cwd,
196
+ baselineHeadOid: context.workspaceHeadOid ?? null,
197
+ acceptanceCriteria: context.acceptanceCriteria,
198
+ claimedCriteria: parseClaimedCriteria(summary),
199
+ });
200
+ return {
201
+ status: 'claims_complete',
202
+ summary: summary || 'The provider returned no text for this step.',
203
+ satisfiedCriteria: evidence.satisfiedCriteria,
204
+ artifact: evidence.artifact,
205
+ commit: evidence.commit,
206
+ blockedReason: null,
207
+ };
208
+ }
209
+ catch (error) {
210
+ sessionsByRun.delete(context.runId);
211
+ // A refusal by the supervision boundary is not a provider failure. It
212
+ // says the envelope is too narrow, which no retry can change, so it gets
213
+ // its own status and names the tool the owner has to grant.
214
+ if (error instanceof RuntimeSupervisionRejectedError
215
+ && PERMISSION_REJECTION_CODES.has(error.rejectionCode)) {
216
+ return {
217
+ status: 'permission_denied',
218
+ summary: 'The supervision boundary refused this step.',
219
+ satisfiedCriteria: [],
220
+ artifact: null,
221
+ commit: null,
222
+ blockedReason: error.message,
223
+ denial: { toolName: error.toolName, code: error.rejectionCode },
224
+ };
225
+ }
226
+ // Provider loss is a failure of this run, not a silent retry: the owner is
227
+ // told, and the Run reaches an authoritative terminal state.
228
+ return {
229
+ status: 'failed',
230
+ summary: 'The supervised runtime session could not complete this step.',
231
+ satisfiedCriteria: [],
232
+ artifact: null,
233
+ commit: null,
234
+ blockedReason: error instanceof Error ? error.message : 'runtime_step_failed',
235
+ };
236
+ }
237
+ };
238
+ }
239
+ //# sourceMappingURL=workGoldenPathRuntimeExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workGoldenPathRuntimeExecutor.js","sourceRoot":"","sources":["../../../../../src/products/work/state/workGoldenPathRuntimeExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Transport work-delivery golden path (SPEC-114, ADR-112).
3
+ *
4
+ * This is the product-owned coordinator: it owns intent capture, scope
5
+ * versioning, authorization, completion judgment, and delivery policy, and it
6
+ * owns none of the transport mechanics or provider execution. The transport
7
+ * calls in through `TransportWorkGoldenPathPort`; the supervised run reports
8
+ * execution facts in and receives no authority in return.
9
+ *
10
+ * Every method here is idempotent by construction. That is not defensive
11
+ * programming: a Telegram callback can arrive twice, a process can restart
12
+ * mid-flight, and either must converge on the same Task, Run, and single
13
+ * outbound message.
14
+ */
15
+ import type { CoreStore } from '../../../core/store.js';
16
+ import type { CoreDeliveryGate, CoreDeliveryMode, CoreRunStatus, ExecutionTargetSummary } from '../../../core/types.js';
17
+ import type { SupervisionToolScope } from '../../../platform/supervision/contracts.js';
18
+ import { type TransportWorkActionTokenStore } from '../../../platform/transports/work-delivery/actionTokens.js';
19
+ import type { TransportWorkPayloadAction, TransportWorkProposalV1, TransportWorkReadiness, TransportWorkStage } from '../../../platform/transports/work-delivery/contracts.js';
20
+ import { type TransportWorkOutbox } from '../../../platform/transports/work-delivery/outbox.js';
21
+ import type { TransportWorkStageProjection } from '../../../platform/transports/work-delivery/stageProjection.js';
22
+ import { type WorkCommitEvidence, type WorkCompletionEvidenceResult } from './workCompletionEvidence.js';
23
+ import type { RuntimeDeliveryClient } from '../../../platform/runtime/deliveryClient.js';
24
+ import type { TransportWorkTelemetry } from '../../../platform/transports/work-delivery/telemetry.js';
25
+ import type { WorkGoldenPathAdmissionResult } from './workGoldenPathAdmission.js';
26
+ import { type MessageKey } from '../../../shared/i18n/index.js';
27
+ export interface WorkGoldenPathRequestInput {
28
+ bindingId: string;
29
+ conversationId: string;
30
+ ownerActorId: string;
31
+ externalUserRef: string;
32
+ externalConversationRef: string;
33
+ externalUpdateRef: string;
34
+ externalMessageRef: string | null;
35
+ goal: string;
36
+ targetLabel: string;
37
+ projectId: string | null;
38
+ workspacePath: string | null;
39
+ acceptanceCriteria: readonly string[];
40
+ deliveryMode: CoreDeliveryMode;
41
+ deliveryGates: readonly CoreDeliveryGate[];
42
+ openQuestion: string | null;
43
+ readiness: TransportWorkReadiness;
44
+ /** Owner's transport locale; every later message is rendered in it. */
45
+ locale: string | null;
46
+ /** Return after durable Core/outbox capture; transport send continues safely. */
47
+ deferDelivery?: boolean;
48
+ }
49
+ export type WorkGoldenPathActionOffer = TransportWorkPayloadAction;
50
+ export interface WorkGoldenPathRequestResult {
51
+ status: 'accepted' | 'not_ready';
52
+ workItemId: string | null;
53
+ proposal: TransportWorkProposalV1 | null;
54
+ offers: WorkGoldenPathActionOffer[];
55
+ readiness: TransportWorkReadiness;
56
+ }
57
+ export interface WorkGoldenPathAuthorizeInput {
58
+ callbackData: string;
59
+ bindingId: string;
60
+ externalUserRef: string;
61
+ /** Telegram callback query id; distinguishes owner events, not scopes. */
62
+ ownerEventRef: string;
63
+ readiness: TransportWorkReadiness;
64
+ executionTarget?: ExecutionTargetSummary | null;
65
+ toolScope?: SupervisionToolScope;
66
+ workspaceHeadOid?: string | null;
67
+ /** Return after durable admission/outbox capture; transport send continues safely. */
68
+ deferDelivery?: boolean;
69
+ }
70
+ export interface WorkGoldenPathRefusalInput {
71
+ bindingId: string;
72
+ externalConversationRef: string;
73
+ externalUpdateRef: string;
74
+ reasonKey: MessageKey;
75
+ locale: string | null;
76
+ }
77
+ export interface WorkGoldenPathAuthorizeResult {
78
+ status: 'admitted' | 'already_admitted' | 'rejected' | 'cancelled' | 'published' | 'publish_denied' | 'publish_blocked' | 'retried' | 'resumed';
79
+ /** Set when the caller should drive this Run again. */
80
+ redriveRunId?: string | null;
81
+ /** The work item the action landed on, when one was resolved. */
82
+ workItemId?: string | null;
83
+ rejection?: string;
84
+ admission?: WorkGoldenPathAdmissionResult;
85
+ stage: TransportWorkStage | null;
86
+ }
87
+ export interface WorkGoldenPathRunEvidence {
88
+ workItemId: string;
89
+ runId: string;
90
+ /** Criteria the supervised run reported satisfied, by exact proposal text. */
91
+ satisfiedCriteria: readonly string[];
92
+ summary: string;
93
+ /** Artifact the run produced, for `artifact_only`. */
94
+ artifact: {
95
+ title: string;
96
+ path: string | null;
97
+ mimeType: string | null;
98
+ deliveryWorkspacePath?: string | null;
99
+ deliverySessionId?: string | null;
100
+ } | null;
101
+ /** Commit evidence for every repository-backed delivery mode. */
102
+ commit: WorkCommitEvidence | null;
103
+ }
104
+ export interface WorkGoldenPathCompletionResult {
105
+ status: 'result_ready' | 'delivered' | 'insufficient_evidence';
106
+ evidence: WorkCompletionEvidenceResult;
107
+ stage: TransportWorkStage;
108
+ outstandingGates: CoreDeliveryGate[];
109
+ deliveredMessageRef: string | null;
110
+ }
111
+ /** What the transport is allowed to call. Keeps ADR-112 section 4 honest. */
112
+ export interface TransportWorkGoldenPathPort {
113
+ receiveRequest(input: WorkGoldenPathRequestInput): Promise<WorkGoldenPathRequestResult>;
114
+ authorize(input: WorkGoldenPathAuthorizeInput): Promise<WorkGoldenPathAuthorizeResult>;
115
+ describeStage(workItemId: string): Promise<TransportWorkStageProjection | null>;
116
+ }
117
+ export interface WorkGoldenPathServiceOptions {
118
+ coreStore: CoreStore;
119
+ outbox: TransportWorkOutbox;
120
+ tokenStore?: TransportWorkActionTokenStore;
121
+ actorRef?: string;
122
+ /** Absent means gated publication can be approved but not performed. */
123
+ deliveryClient?: RuntimeDeliveryClient;
124
+ /** Optional counters. Absent means the path runs unmeasured, never broken. */
125
+ telemetry?: TransportWorkTelemetry;
126
+ now?: () => Date;
127
+ }
128
+ export interface WorkGoldenPathService extends TransportWorkGoldenPathPort {
129
+ markRunStatus(input: {
130
+ workItemId: string;
131
+ runId: string;
132
+ status: CoreRunStatus;
133
+ stageKey: MessageKey;
134
+ milestoneKey: MessageKey;
135
+ }): Promise<void>;
136
+ completeRun(input: WorkGoldenPathRunEvidence): Promise<WorkGoldenPathCompletionResult>;
137
+ /** Sends a bounded explanation for an input this slice cannot ingest. */
138
+ sendRefusal(input: WorkGoldenPathRefusalInput): Promise<void>;
139
+ /** Tells the owner the run stopped and needs them, with state-valid actions. */
140
+ notifyDecisionNeeded(input: {
141
+ workItemId: string;
142
+ runId: string;
143
+ reasonKey: MessageKey;
144
+ consequenceKey: MessageKey;
145
+ /** Interpolation for `reasonKey`, when it names something specific. */
146
+ reasonValues?: Record<string, string>;
147
+ discriminator: string;
148
+ }): Promise<void>;
149
+ readonly tokenStore: TransportWorkActionTokenStore;
150
+ }
151
+ export declare function createWorkGoldenPathService(options: WorkGoldenPathServiceOptions): WorkGoldenPathService;
152
+ //# sourceMappingURL=workGoldenPathService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workGoldenPathService.d.ts","sourceRoot":"","sources":["../../../../../src/products/work/state/workGoldenPathService.ts"],"names":[],"mappings":"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"}