@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
@@ -17,6 +17,92 @@ export function createWorkExecutionTaskToolExecutors(delegate) {
17
17
  [WORK_TASK_CREATE_FROM_WORK_ITEM_TOOL]: (input, context) => delegate.createTaskFromWorkItem(input, context),
18
18
  };
19
19
  }
20
+ /**
21
+ * The Core mutation behind `work.task.create_from_work_item`, exposed so a
22
+ * caller that must be atomic across several writes (the transport golden-path
23
+ * admission command) can compose it inside one `updateCore` transaction instead
24
+ * of chaining separate persisted steps.
25
+ *
26
+ * Throws `WorkExecutionTaskPrecheckError` on any precondition failure, which
27
+ * leaves the surrounding transaction untouched.
28
+ */
29
+ export function applyWorkExecutionTaskCreation(core, input, context, createdAt) {
30
+ const workItemId = input.workItemId.trim();
31
+ const idempotencyKey = createTaskFromWorkItemIdempotencyKey(input);
32
+ const taskId = createTaskFromWorkItemTaskId(idempotencyKey);
33
+ const workItem = core.workItems.find((candidate) => candidate.id === workItemId) ?? null;
34
+ if (workItem === null) {
35
+ throw new WorkExecutionTaskPrecheckError(`No Work Item found for id ${workItemId}.`);
36
+ }
37
+ assertWorkItemExitedIntakeBoundary(workItem, context);
38
+ if (workItem.status !== 'ready') {
39
+ throw new WorkExecutionTaskPrecheckError(`Work Item ${workItemId} must be ready before Task creation; current status is `
40
+ + `${workItem.status}.`);
41
+ }
42
+ if (workItem.taskId) {
43
+ return {
44
+ core,
45
+ task: readLinkedPendingTask(core, workItem),
46
+ created: false,
47
+ linked: false,
48
+ };
49
+ }
50
+ const existingTask = core.tasks.find((candidate) => candidate.id === taskId) ?? null;
51
+ const taskWrite = existingTask === null
52
+ ? upsertCoreTask(core, {
53
+ id: taskId,
54
+ title: input.title?.trim() || workItem.title,
55
+ status: 'pending_approval',
56
+ conversationId: workItem.conversationId,
57
+ ownerActorId: workItem.ownerActorId,
58
+ orchestratorActorId: context.actorRef,
59
+ assignedActorIds: resolveExecutionTaskAssignedActors(workItem, context),
60
+ summary: input.summary?.trim() || workItem.summary,
61
+ metadata: buildWorkExecutionTaskMetadataEnvelope(workItem, buildWorkExecutionTaskMetadata(workItem, input, context, idempotencyKey, createdAt)),
62
+ }, createdAt)
63
+ : { core, task: existingTask, created: false };
64
+ const approvalWrite = writeApprovalDecision(taskWrite.core, {
65
+ taskId: taskWrite.task.id,
66
+ status: 'pending',
67
+ requestedByActorId: context.actorRef,
68
+ notes: input.approvalNote ?? `Approve execution Task for Work Item ${workItem.id}.`,
69
+ }, createdAt);
70
+ const bindingWrite = upsertCoreApprovalBinding(approvalWrite.core, {
71
+ id: createTaskApprovalBindingId(taskWrite.task.id),
72
+ kind: 'owner_decision',
73
+ approvalTaskId: taskWrite.task.id,
74
+ subjectKind: 'work_item',
75
+ subjectId: workItem.id,
76
+ projectId: workItem.projectId,
77
+ workItemId: workItem.id,
78
+ conversationId: workItem.conversationId,
79
+ requestedByActorId: context.actorRef,
80
+ requestedForActorId: workItem.ownerActorId,
81
+ metadata: {
82
+ [WORK_EXECUTION_METADATA_KEY]: {
83
+ schemaVersion: WORK_EXECUTION_METADATA_VERSION,
84
+ phase: 'execution_preparation',
85
+ toolName: WORK_TASK_CREATE_FROM_WORK_ITEM_TOOL,
86
+ idempotencyKey,
87
+ actionId: context.actionId ?? null,
88
+ runId: context.runId ?? null,
89
+ workItemId: workItem.id,
90
+ taskId: taskWrite.task.id,
91
+ },
92
+ },
93
+ }, createdAt);
94
+ const linkWrite = linkCoreWorkItemToTask(bindingWrite.core, {
95
+ workItemId: workItem.id,
96
+ taskId: taskWrite.task.id,
97
+ }, createdAt);
98
+ const activityWrite = appendTaskCreationActivityIfMissing(linkWrite.core, workItem, approvalWrite.task, context, idempotencyKey, createdAt);
99
+ return {
100
+ core: activityWrite.core,
101
+ task: approvalWrite.task,
102
+ created: taskWrite.created,
103
+ linked: linkWrite.linked,
104
+ };
105
+ }
20
106
  export async function createTaskFromWorkItem(coreStore, input, context, now = () => new Date()) {
21
107
  const validationErrors = validateWorkTaskCreateFromWorkItemInput(input);
22
108
  if (validationErrors.length > 0) {
@@ -31,74 +117,11 @@ export async function createTaskFromWorkItem(coreStore, input, context, now = ()
31
117
  let linked = false;
32
118
  try {
33
119
  const persisted = await coreStore.updateCore((core) => {
34
- const workItem = core.workItems.find((candidate) => candidate.id === workItemId) ?? null;
35
- if (workItem === null) {
36
- throw new WorkExecutionTaskPrecheckError(`No Work Item found for id ${workItemId}.`);
37
- }
38
- assertWorkItemExitedIntakeBoundary(workItem, context);
39
- if (workItem.status !== 'ready') {
40
- throw new WorkExecutionTaskPrecheckError(`Work Item ${workItemId} must be ready before Task creation; current status is `
41
- + `${workItem.status}.`);
42
- }
43
- if (workItem.taskId) {
44
- task = readLinkedPendingTask(core, workItem);
45
- created = false;
46
- linked = false;
47
- return core;
48
- }
49
- const existingTask = core.tasks.find((candidate) => candidate.id === taskId) ?? null;
50
- const taskWrite = existingTask === null
51
- ? upsertCoreTask(core, {
52
- id: taskId,
53
- title: input.title?.trim() || workItem.title,
54
- status: 'pending_approval',
55
- conversationId: workItem.conversationId,
56
- ownerActorId: workItem.ownerActorId,
57
- orchestratorActorId: context.actorRef,
58
- assignedActorIds: resolveExecutionTaskAssignedActors(workItem, context),
59
- summary: input.summary?.trim() || workItem.summary,
60
- metadata: buildWorkExecutionTaskMetadataEnvelope(workItem, buildWorkExecutionTaskMetadata(workItem, input, context, idempotencyKey, createdAt)),
61
- }, createdAt)
62
- : { core, task: existingTask, created: false };
63
- const approvalWrite = writeApprovalDecision(taskWrite.core, {
64
- taskId: taskWrite.task.id,
65
- status: 'pending',
66
- requestedByActorId: context.actorRef,
67
- notes: input.approvalNote ?? `Approve execution Task for Work Item ${workItem.id}.`,
68
- }, createdAt);
69
- const bindingWrite = upsertCoreApprovalBinding(approvalWrite.core, {
70
- id: createTaskApprovalBindingId(taskWrite.task.id),
71
- kind: 'owner_decision',
72
- approvalTaskId: taskWrite.task.id,
73
- subjectKind: 'work_item',
74
- subjectId: workItem.id,
75
- projectId: workItem.projectId,
76
- workItemId: workItem.id,
77
- conversationId: workItem.conversationId,
78
- requestedByActorId: context.actorRef,
79
- requestedForActorId: workItem.ownerActorId,
80
- metadata: {
81
- [WORK_EXECUTION_METADATA_KEY]: {
82
- schemaVersion: WORK_EXECUTION_METADATA_VERSION,
83
- phase: 'execution_preparation',
84
- toolName: WORK_TASK_CREATE_FROM_WORK_ITEM_TOOL,
85
- idempotencyKey,
86
- actionId: context.actionId ?? null,
87
- runId: context.runId ?? null,
88
- workItemId: workItem.id,
89
- taskId: taskWrite.task.id,
90
- },
91
- },
92
- }, createdAt);
93
- const linkWrite = linkCoreWorkItemToTask(bindingWrite.core, {
94
- workItemId: workItem.id,
95
- taskId: taskWrite.task.id,
96
- }, createdAt);
97
- const activityWrite = appendTaskCreationActivityIfMissing(linkWrite.core, workItem, approvalWrite.task, context, idempotencyKey, createdAt);
98
- task = approvalWrite.task;
99
- created = taskWrite.created;
100
- linked = linkWrite.linked;
101
- return activityWrite.core;
120
+ const applied = applyWorkExecutionTaskCreation(core, input, context, createdAt);
121
+ task = applied.task;
122
+ created = applied.created;
123
+ linked = applied.linked;
124
+ return applied.core;
102
125
  });
103
126
  task = task ?? persisted.tasks.find((candidate) => candidate.id === taskId) ?? null;
104
127
  if (task === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"workExecutionTaskDelegate.js","sourceRoot":"","sources":["../../../../../src/products/work/state/workExecutionTaskDelegate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workExecutionTaskDelegate.js","sourceRoot":"","sources":["../../../../../src/products/work/state/workExecutionTaskDelegate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Transport golden-path authorization/admission (SPEC-114 FR-20..FR-27).
3
+ *
4
+ * One product-owned command turns a *later* explicit owner event over an
5
+ * already-visible scope revision into exactly one approved Task and one queued
6
+ * supervised Run. ADR-112 section 4 forbids the transport from editing Core
7
+ * records itself, so Telegram calls this and nothing else.
8
+ *
9
+ * Atomicity is the reason this is a single `updateCore` mutator rather than a
10
+ * sequence of delegate calls: a crash between "Task approved" and "Run queued"
11
+ * would otherwise leave a half-admitted scope that a retry turns into a second
12
+ * Run.
13
+ */
14
+ import type { CoreStore } from '../../../core/store.js';
15
+ import type { ExecutionTargetSummary } from '../../../core/types.js';
16
+ import type { SupervisionToolScope } from '../../../platform/supervision/contracts.js';
17
+ import type { TransportWorkReadiness } from '../../../platform/transports/work-delivery/contracts.js';
18
+ export type WorkGoldenPathAdmissionStatus = 'admitted' | 'already_admitted' | 'blocked';
19
+ export type WorkGoldenPathAdmissionBlockReason = 'work_item_not_found' | 'proposal_missing' | 'stale_revision' | 'digest_mismatch' | 'origin_mismatch' | 'not_ready' | 'intake_boundary' | 'task_precheck_failed';
20
+ export interface WorkGoldenPathAdmissionInput {
21
+ workItemId: string;
22
+ /** The binding the owner authorized from; must match recorded provenance. */
23
+ bindingId: string;
24
+ ownerActorId: string;
25
+ /** Revision the owner actually saw and confirmed. */
26
+ proposalRevision: number;
27
+ /** Digest of that exact revision. */
28
+ proposalDigest: string;
29
+ readiness: TransportWorkReadiness;
30
+ /**
31
+ * Correlates the owner event. Two taps of the same button share this, which
32
+ * is what makes the admission key stable across duplicates (FR-26).
33
+ */
34
+ ownerEventRef: string;
35
+ actorRef: string;
36
+ /** Execution facts captured atomically with the Run, never process globals. */
37
+ executionTarget?: ExecutionTargetSummary | null;
38
+ toolScope?: SupervisionToolScope;
39
+ workspaceHeadOid?: string | null;
40
+ }
41
+ export interface WorkGoldenPathExecutionSnapshot {
42
+ executionTarget: ExecutionTargetSummary | null;
43
+ toolScope: SupervisionToolScope;
44
+ workspaceHeadOid: string | null;
45
+ }
46
+ /** Reads the run-scoped execution envelope defensively during restart recovery. */
47
+ export declare function readWorkGoldenPathExecutionSnapshot(metadata: unknown): WorkGoldenPathExecutionSnapshot;
48
+ export interface WorkGoldenPathAdmissionResult {
49
+ status: WorkGoldenPathAdmissionStatus;
50
+ reason?: WorkGoldenPathAdmissionBlockReason;
51
+ message?: string;
52
+ admissionKey: string;
53
+ workItemId: string;
54
+ taskId: string | null;
55
+ runId: string | null;
56
+ }
57
+ /**
58
+ * Stable admission key over binding, work item, revision, and action.
59
+ *
60
+ * Deliberately excludes `ownerEventRef`: a replayed callback carries a *new*
61
+ * Telegram callback id but authorizes the same scope, and must land on the same
62
+ * Task and Run.
63
+ */
64
+ export declare function buildWorkGoldenPathAdmissionKey(input: {
65
+ bindingId: string;
66
+ workItemId: string;
67
+ proposalRevision: number;
68
+ proposalDigest: string;
69
+ }): string;
70
+ /**
71
+ * Deterministic Run id for an admission key.
72
+ *
73
+ * Exported so a caller can tell "this scope is already admitted" apart from
74
+ * "this action is not allowed here" before it rejects a replayed button.
75
+ */
76
+ export declare function resolveWorkGoldenPathRunId(admissionKey: string): string;
77
+ export declare function admitTransportWorkExecution(coreStore: CoreStore, input: WorkGoldenPathAdmissionInput, now?: () => Date): Promise<WorkGoldenPathAdmissionResult>;
78
+ //# sourceMappingURL=workGoldenPathAdmission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workGoldenPathAdmission.d.ts","sourceRoot":"","sources":["../../../../../src/products/work/state/workGoldenPathAdmission.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAKV,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAGV,sBAAsB,EACvB,MAAM,yDAAyD,CAAC;AAOjE,MAAM,MAAM,6BAA6B,GACrC,UAAU,GACV,kBAAkB,GAClB,SAAS,CAAC;AAEd,MAAM,MAAM,kCAAkC,GAC1C,qBAAqB,GACrB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,sBAAsB,CAAC;AAE3B,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,sBAAsB,CAAC;IAClC;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,+BAA+B;IAC9C,eAAe,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAMD,mFAAmF;AACnF,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,OAAO,GAChB,+BAA+B,CAgCjC;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,6BAA6B,CAAC;IACtC,MAAM,CAAC,EAAE,kCAAkC,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,CAQT;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEvE;AA6ED,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,4BAA4B,EACnC,GAAG,GAAE,MAAM,IAAuB,GACjC,OAAO,CAAC,6BAA6B,CAAC,CAgKxC"}
@@ -0,0 +1,249 @@
1
+ /**
2
+ * Transport golden-path authorization/admission (SPEC-114 FR-20..FR-27).
3
+ *
4
+ * One product-owned command turns a *later* explicit owner event over an
5
+ * already-visible scope revision into exactly one approved Task and one queued
6
+ * supervised Run. ADR-112 section 4 forbids the transport from editing Core
7
+ * records itself, so Telegram calls this and nothing else.
8
+ *
9
+ * Atomicity is the reason this is a single `updateCore` mutator rather than a
10
+ * sequence of delegate calls: a crash between "Task approved" and "Run queued"
11
+ * would otherwise leave a half-admitted scope that a retry turns into a second
12
+ * Run.
13
+ */
14
+ import { createHash } from 'node:crypto';
15
+ import { appendCoreActivity, upsertCoreRun, writeApprovalDecision, } from '../../../core/model/index.js';
16
+ import { applyWorkExecutionTaskCreation } from './workExecutionTaskDelegate.js';
17
+ import { readWorkGoldenPathMetadata, WORK_GOLDEN_PATH_METADATA_KEY, } from '../shared/workGoldenPathMetadata.js';
18
+ function isRecord(value) {
19
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
20
+ }
21
+ /** Reads the run-scoped execution envelope defensively during restart recovery. */
22
+ export function readWorkGoldenPathExecutionSnapshot(metadata) {
23
+ if (!isRecord(metadata)) {
24
+ return { executionTarget: null, toolScope: 'none', workspaceHeadOid: null };
25
+ }
26
+ const goldenPath = metadata[WORK_GOLDEN_PATH_METADATA_KEY];
27
+ if (!isRecord(goldenPath) || !isRecord(goldenPath.execution)) {
28
+ return { executionTarget: null, toolScope: 'none', workspaceHeadOid: null };
29
+ }
30
+ const execution = goldenPath.execution;
31
+ const rawTarget = isRecord(execution.target) ? execution.target : null;
32
+ const provider = rawTarget && typeof rawTarget.provider === 'string'
33
+ ? rawTarget.provider.trim()
34
+ : '';
35
+ const rawScope = execution.toolScope;
36
+ const toolScope = rawScope === 'read_only'
37
+ || rawScope === 'narrow_write'
38
+ || rawScope === 'broad_write'
39
+ ? rawScope
40
+ : 'none';
41
+ return {
42
+ executionTarget: provider === '' ? null : {
43
+ provider,
44
+ instance: rawTarget && typeof rawTarget.instance === 'string'
45
+ ? rawTarget.instance
46
+ : null,
47
+ model: rawTarget && typeof rawTarget.model === 'string' ? rawTarget.model : null,
48
+ },
49
+ toolScope,
50
+ workspaceHeadOid: typeof execution.workspaceHeadOid === 'string'
51
+ ? execution.workspaceHeadOid
52
+ : null,
53
+ };
54
+ }
55
+ /**
56
+ * Stable admission key over binding, work item, revision, and action.
57
+ *
58
+ * Deliberately excludes `ownerEventRef`: a replayed callback carries a *new*
59
+ * Telegram callback id but authorizes the same scope, and must land on the same
60
+ * Task and Run.
61
+ */
62
+ export function buildWorkGoldenPathAdmissionKey(input) {
63
+ return [
64
+ 'wgp-admit',
65
+ input.bindingId,
66
+ input.workItemId,
67
+ String(input.proposalRevision),
68
+ input.proposalDigest,
69
+ ].join(':');
70
+ }
71
+ /**
72
+ * Deterministic Run id for an admission key.
73
+ *
74
+ * Exported so a caller can tell "this scope is already admitted" apart from
75
+ * "this action is not allowed here" before it rejects a replayed button.
76
+ */
77
+ export function resolveWorkGoldenPathRunId(admissionKey) {
78
+ return `run-wgp-${createHash('sha256').update(admissionKey).digest('hex').slice(0, 20)}`;
79
+ }
80
+ function admissionActivityId(admissionKey) {
81
+ return `activity-wgp-${createHash('sha256').update(admissionKey).digest('hex').slice(0, 20)}`;
82
+ }
83
+ function blocked(admissionKey, workItemId, reason, message) {
84
+ return {
85
+ status: 'blocked',
86
+ reason,
87
+ message,
88
+ admissionKey,
89
+ workItemId,
90
+ taskId: null,
91
+ runId: null,
92
+ };
93
+ }
94
+ class AdmissionBlockedError extends Error {
95
+ reason;
96
+ constructor(reason, message) {
97
+ super(message);
98
+ this.reason = reason;
99
+ this.name = 'AdmissionBlockedError';
100
+ }
101
+ }
102
+ function verifyScope(workItem, input) {
103
+ const metadata = readWorkGoldenPathMetadata(workItem.metadata);
104
+ if (metadata === null || metadata.proposal === null || metadata.origin === null) {
105
+ throw new AdmissionBlockedError('proposal_missing', `Work Item ${workItem.id} has no versioned golden-path proposal to authorize.`);
106
+ }
107
+ if (metadata.origin.bindingId !== input.bindingId) {
108
+ throw new AdmissionBlockedError('origin_mismatch', 'Authorization arrived on a different binding than the one that captured this work.');
109
+ }
110
+ if (metadata.proposal.revision !== input.proposalRevision) {
111
+ throw new AdmissionBlockedError('stale_revision', `Proposal revision ${input.proposalRevision} is stale; current revision is `
112
+ + `${metadata.proposal.revision}.`);
113
+ }
114
+ if (metadata.proposal.digest !== input.proposalDigest) {
115
+ throw new AdmissionBlockedError('digest_mismatch', 'The proposal changed after this action was offered; confirm the refreshed scope.');
116
+ }
117
+ return { proposal: metadata.proposal, origin: metadata.origin };
118
+ }
119
+ /**
120
+ * Finds an already-queued Run for this admission key.
121
+ *
122
+ * Both the deterministic id and the metadata key are checked so recovery works
123
+ * whether the previous attempt got as far as writing the Run or not.
124
+ */
125
+ function findAdmittedRun(core, admissionKey) {
126
+ const runId = resolveWorkGoldenPathRunId(admissionKey);
127
+ return core.runs.find((run) => run.id === runId) ?? null;
128
+ }
129
+ export async function admitTransportWorkExecution(coreStore, input, now = () => new Date()) {
130
+ const admissionKey = buildWorkGoldenPathAdmissionKey(input);
131
+ if (!input.readiness.ready) {
132
+ return blocked(admissionKey, input.workItemId, 'not_ready', `Delegation readiness is incomplete: ${input.readiness.blockers
133
+ .map((entry) => entry.reason)
134
+ .join(', ')}.`);
135
+ }
136
+ const createdAt = now();
137
+ let resolvedTask = null;
138
+ let resolvedRun = null;
139
+ let alreadyAdmitted = false;
140
+ try {
141
+ await coreStore.updateCore((core) => {
142
+ const workItem = core.workItems.find((candidate) => candidate.id === input.workItemId)
143
+ ?? null;
144
+ if (workItem === null) {
145
+ throw new AdmissionBlockedError('work_item_not_found', `No Work Item found for id ${input.workItemId}.`);
146
+ }
147
+ const { proposal } = verifyScope(workItem, input);
148
+ const existingRun = findAdmittedRun(core, admissionKey);
149
+ if (existingRun !== null) {
150
+ // Replay: the same owner event already produced this Run.
151
+ alreadyAdmitted = true;
152
+ resolvedRun = existingRun;
153
+ resolvedTask = core.tasks.find((task) => task.id === existingRun.taskId) ?? null;
154
+ return core;
155
+ }
156
+ // 1. Task. Reuses the phase-scoped Work tool mutation so the intake
157
+ // boundary invariant (FR-25) is enforced by the same code path that
158
+ // enforces it for the agent-facing tool.
159
+ const taskWrite = applyWorkExecutionTaskCreation(core, {
160
+ workItemId: workItem.id,
161
+ title: proposal.goal,
162
+ summary: workItem.summary ?? undefined,
163
+ approvalNote: `Telegram owner authorization for revision ${proposal.revision}.`,
164
+ }, { actorRef: input.actorRef, actionId: input.ownerEventRef }, createdAt);
165
+ // 2. Owner approval. This is the later explicit owner event, recorded
166
+ // with its transport provenance so Desktop can show FR-24 evidence.
167
+ const approvalWrite = writeApprovalDecision(taskWrite.core, {
168
+ taskId: taskWrite.task.id,
169
+ status: 'approved',
170
+ action: 'approve',
171
+ decidedByActorId: input.ownerActorId,
172
+ notes: `Authorized from Telegram binding ${input.bindingId}, revision `
173
+ + `${proposal.revision}.`,
174
+ taskStatus: 'approved',
175
+ }, createdAt);
176
+ // 3. Supervised Run, queued. Deterministic id keyed by the admission key
177
+ // is what makes a concurrent double-tap converge instead of forking.
178
+ const runWrite = upsertCoreRun(approvalWrite.core, {
179
+ id: resolveWorkGoldenPathRunId(admissionKey),
180
+ title: proposal.goal,
181
+ status: 'queued',
182
+ conversationId: workItem.conversationId,
183
+ taskId: approvalWrite.task.id,
184
+ orchestratorActorId: input.actorRef,
185
+ summary: workItem.summary,
186
+ metadata: {
187
+ [WORK_GOLDEN_PATH_METADATA_KEY]: {
188
+ schemaVersion: 1,
189
+ admissionKey,
190
+ bindingId: input.bindingId,
191
+ workItemId: workItem.id,
192
+ proposalRevision: proposal.revision,
193
+ proposalDigest: proposal.digest,
194
+ deliveryMode: proposal.deliveryMode,
195
+ acceptanceCriteria: proposal.acceptanceCriteria,
196
+ ownerEventRef: input.ownerEventRef,
197
+ authorizedByActorId: input.ownerActorId,
198
+ authorizedAt: createdAt.toISOString(),
199
+ execution: {
200
+ target: input.executionTarget ?? null,
201
+ toolScope: input.toolScope ?? 'none',
202
+ workspaceHeadOid: input.workspaceHeadOid ?? null,
203
+ },
204
+ },
205
+ },
206
+ }, createdAt);
207
+ const activityWrite = appendCoreActivity(runWrite.core, {
208
+ id: admissionActivityId(admissionKey),
209
+ kind: 'approval_decided',
210
+ actorId: input.ownerActorId,
211
+ projectId: workItem.projectId,
212
+ workItemId: workItem.id,
213
+ conversationId: workItem.conversationId,
214
+ taskId: approvalWrite.task.id,
215
+ runId: runWrite.run.id,
216
+ message: `Owner authorized execution from Telegram for "${proposal.goal}".`,
217
+ metadata: {
218
+ [WORK_GOLDEN_PATH_METADATA_KEY]: {
219
+ schemaVersion: 1,
220
+ phase: 'execution_authorization',
221
+ admissionKey,
222
+ bindingId: input.bindingId,
223
+ proposalRevision: proposal.revision,
224
+ proposalDigest: proposal.digest,
225
+ },
226
+ },
227
+ }, createdAt);
228
+ resolvedTask = approvalWrite.task;
229
+ resolvedRun = runWrite.run;
230
+ return activityWrite.core;
231
+ });
232
+ }
233
+ catch (error) {
234
+ if (error instanceof AdmissionBlockedError) {
235
+ return blocked(admissionKey, input.workItemId, error.reason, error.message);
236
+ }
237
+ return blocked(admissionKey, input.workItemId, 'task_precheck_failed', error instanceof Error ? error.message : 'Golden-path admission failed.');
238
+ }
239
+ const task = resolvedTask;
240
+ const run = resolvedRun;
241
+ return {
242
+ status: alreadyAdmitted ? 'already_admitted' : 'admitted',
243
+ admissionKey,
244
+ workItemId: input.workItemId,
245
+ taskId: task?.id ?? null,
246
+ runId: run?.id ?? null,
247
+ };
248
+ }
249
+ //# sourceMappingURL=workGoldenPathAdmission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workGoldenPathAdmission.js","sourceRoot":"","sources":["../../../../../src/products/work/state/workGoldenPathAdmission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Acceptance-evidence collection for the golden path (SPEC-114 FR-31, FR-39).
3
+ *
4
+ * This is where a model's account of its own work stops mattering. Everything
5
+ * returned here is something Cats caused and observed through the runtime
6
+ * delivery API: a commit that actually landed, a worktree that is actually
7
+ * clean afterwards, artifacts the session actually registered.
8
+ *
9
+ * The one thing Cats cannot verify mechanically is a free-text acceptance
10
+ * criterion. Those stay *claims*, carried separately, so the result message can
11
+ * show what was verified and what was merely asserted.
12
+ */
13
+ import type { RuntimeDeliveryClient } from '../../../platform/runtime/deliveryClient.js';
14
+ import type { WorkGoldenPathEvidenceCollector } from './workGoldenPathRuntimeExecutor.js';
15
+ export interface CreateRuntimeEvidenceCollectorInput {
16
+ deliveryClient: RuntimeDeliveryClient;
17
+ }
18
+ /**
19
+ * The evidence collector the runtime executor plugs into.
20
+ *
21
+ * A collection failure is deliberately swallowed into "no evidence": the run
22
+ * then continues or ends unmet, which is safer than treating an unreachable
23
+ * delivery endpoint as proof of delivery.
24
+ */
25
+ export declare function createRuntimeEvidenceCollector(input: CreateRuntimeEvidenceCollectorInput): WorkGoldenPathEvidenceCollector;
26
+ /**
27
+ * Parses the bounded claim lines the opening instruction asks for.
28
+ *
29
+ * Deliberately strict: an unparsed response yields no claims, so a run
30
+ * continues rather than completing on prose that merely sounds finished.
31
+ */
32
+ export declare function parseClaimedCriteria(responseText: string): string[];
33
+ //# sourceMappingURL=workGoldenPathDeliveryEvidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workGoldenPathDeliveryEvidence.d.ts","sourceRoot":"","sources":["../../../../../src/products/work/state/workGoldenPathDeliveryEvidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,6CAA6C,CAAC;AAGrD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AAW1F,MAAM,WAAW,mCAAmC;IAClD,cAAc,EAAE,qBAAqB,CAAC;CACvC;AAoGD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,mCAAmC,GACzC,+BAA+B,CAkDjC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CASnE"}