@playcraft/common 0.1.42 → 0.1.44-beta

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 (389) hide show
  1. package/README.md +1 -1
  2. package/dist/agent/session-title.d.ts +1 -1
  3. package/dist/agent/session-title.js +1 -1
  4. package/dist/agent-messages/db-message-converter.d.ts +10 -0
  5. package/dist/agent-messages/db-message-converter.d.ts.map +1 -1
  6. package/dist/agent-messages/db-message-converter.js +13 -0
  7. package/dist/agent-messages/db-message-converter.js.map +1 -1
  8. package/dist/agent-tools/index.d.ts +5 -0
  9. package/dist/agent-tools/index.d.ts.map +1 -1
  10. package/dist/agent-tools/index.js +5 -0
  11. package/dist/agent-tools/index.js.map +1 -1
  12. package/dist/agent-tools/operation-protocol.d.ts +10 -0
  13. package/dist/agent-tools/operation-protocol.d.ts.map +1 -0
  14. package/dist/agent-tools/operation-protocol.js +13 -0
  15. package/dist/agent-tools/operation-protocol.js.map +1 -0
  16. package/dist/agent-tools/replica-recording.d.ts +283 -0
  17. package/dist/agent-tools/replica-recording.d.ts.map +1 -0
  18. package/dist/agent-tools/replica-recording.js +109 -0
  19. package/dist/agent-tools/replica-recording.js.map +1 -0
  20. package/dist/agent-tools/replica-validation.d.ts +972 -0
  21. package/dist/agent-tools/replica-validation.d.ts.map +1 -0
  22. package/dist/agent-tools/replica-validation.js +254 -0
  23. package/dist/agent-tools/replica-validation.js.map +1 -0
  24. package/dist/agent-tools/types.d.ts +9 -24
  25. package/dist/agent-tools/types.d.ts.map +1 -1
  26. package/dist/agent-tools/types.js.map +1 -1
  27. package/dist/agent-tools/video-model-proxy.d.ts +113 -0
  28. package/dist/agent-tools/video-model-proxy.d.ts.map +1 -0
  29. package/dist/agent-tools/video-model-proxy.js +49 -0
  30. package/dist/agent-tools/video-model-proxy.js.map +1 -0
  31. package/dist/agent-tools/video-replication.d.ts +421 -0
  32. package/dist/agent-tools/video-replication.d.ts.map +1 -0
  33. package/dist/agent-tools/video-replication.js +95 -0
  34. package/dist/agent-tools/video-replication.js.map +1 -0
  35. package/dist/cloud-workspace/runtime/agent-background-processes.d.ts +68 -0
  36. package/dist/cloud-workspace/runtime/agent-background-processes.d.ts.map +1 -0
  37. package/dist/cloud-workspace/runtime/agent-background-processes.js +60 -0
  38. package/dist/cloud-workspace/runtime/agent-background-processes.js.map +1 -0
  39. package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts +55 -0
  40. package/dist/cloud-workspace/runtime/agent-chat-flush.d.ts.map +1 -0
  41. package/dist/cloud-workspace/runtime/agent-chat-flush.js +51 -0
  42. package/dist/cloud-workspace/runtime/agent-chat-flush.js.map +1 -0
  43. package/dist/cloud-workspace/runtime/agent-command.d.ts +152 -0
  44. package/dist/cloud-workspace/runtime/agent-command.d.ts.map +1 -0
  45. package/dist/cloud-workspace/runtime/agent-command.js +90 -0
  46. package/dist/cloud-workspace/runtime/agent-command.js.map +1 -0
  47. package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts +143 -0
  48. package/dist/cloud-workspace/runtime/agent-competitor-report.d.ts.map +1 -0
  49. package/dist/cloud-workspace/runtime/agent-competitor-report.js +115 -0
  50. package/dist/cloud-workspace/runtime/agent-competitor-report.js.map +1 -0
  51. package/dist/cloud-workspace/runtime/agent-connection.d.ts +76 -0
  52. package/dist/cloud-workspace/runtime/agent-connection.d.ts.map +1 -0
  53. package/dist/cloud-workspace/runtime/agent-connection.js +59 -0
  54. package/dist/cloud-workspace/runtime/agent-connection.js.map +1 -0
  55. package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts +90 -0
  56. package/dist/cloud-workspace/runtime/agent-issue-artifacts.d.ts.map +1 -0
  57. package/dist/cloud-workspace/runtime/agent-issue-artifacts.js +60 -0
  58. package/dist/cloud-workspace/runtime/agent-issue-artifacts.js.map +1 -0
  59. package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts +87 -0
  60. package/dist/cloud-workspace/runtime/agent-lifecycle.d.ts.map +1 -0
  61. package/dist/cloud-workspace/runtime/agent-lifecycle.js +75 -0
  62. package/dist/cloud-workspace/runtime/agent-lifecycle.js.map +1 -0
  63. package/dist/cloud-workspace/runtime/agent-mutation.d.ts +197 -0
  64. package/dist/cloud-workspace/runtime/agent-mutation.d.ts.map +1 -0
  65. package/dist/cloud-workspace/runtime/agent-mutation.js +114 -0
  66. package/dist/cloud-workspace/runtime/agent-mutation.js.map +1 -0
  67. package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts +210 -0
  68. package/dist/cloud-workspace/runtime/agent-opencode-gateway.d.ts.map +1 -0
  69. package/dist/cloud-workspace/runtime/agent-opencode-gateway.js +180 -0
  70. package/dist/cloud-workspace/runtime/agent-opencode-gateway.js.map +1 -0
  71. package/dist/cloud-workspace/runtime/agent-opencode.d.ts +406 -0
  72. package/dist/cloud-workspace/runtime/agent-opencode.d.ts.map +1 -0
  73. package/dist/cloud-workspace/runtime/agent-opencode.js +237 -0
  74. package/dist/cloud-workspace/runtime/agent-opencode.js.map +1 -0
  75. package/dist/cloud-workspace/runtime/agent-promotion.d.ts +21 -0
  76. package/dist/cloud-workspace/runtime/agent-promotion.d.ts.map +1 -0
  77. package/dist/cloud-workspace/runtime/agent-promotion.js +23 -0
  78. package/dist/cloud-workspace/runtime/agent-promotion.js.map +1 -0
  79. package/dist/cloud-workspace/runtime/agent-read.d.ts +343 -0
  80. package/dist/cloud-workspace/runtime/agent-read.d.ts.map +1 -0
  81. package/dist/cloud-workspace/runtime/agent-read.js +159 -0
  82. package/dist/cloud-workspace/runtime/agent-read.js.map +1 -0
  83. package/dist/cloud-workspace/runtime/agent-source-project.d.ts +126 -0
  84. package/dist/cloud-workspace/runtime/agent-source-project.d.ts.map +1 -0
  85. package/dist/cloud-workspace/runtime/agent-source-project.js +95 -0
  86. package/dist/cloud-workspace/runtime/agent-source-project.js.map +1 -0
  87. package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts +18 -0
  88. package/dist/cloud-workspace/runtime/agent-tool-claim.d.ts.map +1 -0
  89. package/dist/cloud-workspace/runtime/agent-tool-claim.js +16 -0
  90. package/dist/cloud-workspace/runtime/agent-tool-claim.js.map +1 -0
  91. package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts +9 -0
  92. package/dist/cloud-workspace/runtime/agent-variant-chat.d.ts.map +1 -0
  93. package/dist/cloud-workspace/runtime/agent-variant-chat.js +23 -0
  94. package/dist/cloud-workspace/runtime/agent-variant-chat.js.map +1 -0
  95. package/dist/cloud-workspace/runtime/agent-variant-git.d.ts +75 -0
  96. package/dist/cloud-workspace/runtime/agent-variant-git.d.ts.map +1 -0
  97. package/dist/cloud-workspace/runtime/agent-variant-git.js +62 -0
  98. package/dist/cloud-workspace/runtime/agent-variant-git.js.map +1 -0
  99. package/dist/cloud-workspace/runtime/artifacts.d.ts +239 -0
  100. package/dist/cloud-workspace/runtime/artifacts.d.ts.map +1 -0
  101. package/dist/cloud-workspace/runtime/artifacts.js +105 -0
  102. package/dist/cloud-workspace/runtime/artifacts.js.map +1 -0
  103. package/dist/cloud-workspace/runtime/asset-generation.d.ts +493 -0
  104. package/dist/cloud-workspace/runtime/asset-generation.d.ts.map +1 -0
  105. package/dist/cloud-workspace/runtime/asset-generation.js +118 -0
  106. package/dist/cloud-workspace/runtime/asset-generation.js.map +1 -0
  107. package/dist/cloud-workspace/runtime/asset-library-import.d.ts +50 -0
  108. package/dist/cloud-workspace/runtime/asset-library-import.d.ts.map +1 -0
  109. package/dist/cloud-workspace/runtime/asset-library-import.js +28 -0
  110. package/dist/cloud-workspace/runtime/asset-library-import.js.map +1 -0
  111. package/dist/cloud-workspace/runtime/attachment-base64.d.ts +3 -0
  112. package/dist/cloud-workspace/runtime/attachment-base64.d.ts.map +1 -0
  113. package/dist/cloud-workspace/runtime/attachment-base64.js +8 -0
  114. package/dist/cloud-workspace/runtime/attachment-base64.js.map +1 -0
  115. package/dist/cloud-workspace/runtime/attachments.d.ts +33 -0
  116. package/dist/cloud-workspace/runtime/attachments.d.ts.map +1 -0
  117. package/dist/cloud-workspace/runtime/attachments.js +35 -0
  118. package/dist/cloud-workspace/runtime/attachments.js.map +1 -0
  119. package/dist/cloud-workspace/runtime/batch-generation.d.ts +281 -0
  120. package/dist/cloud-workspace/runtime/batch-generation.d.ts.map +1 -0
  121. package/dist/cloud-workspace/runtime/batch-generation.js +288 -0
  122. package/dist/cloud-workspace/runtime/batch-generation.js.map +1 -0
  123. package/dist/cloud-workspace/runtime/batch-production-authority.d.ts +6 -0
  124. package/dist/cloud-workspace/runtime/batch-production-authority.d.ts.map +1 -0
  125. package/dist/cloud-workspace/runtime/batch-production-authority.js +31 -0
  126. package/dist/cloud-workspace/runtime/batch-production-authority.js.map +1 -0
  127. package/dist/cloud-workspace/runtime/batch-production.d.ts +535 -0
  128. package/dist/cloud-workspace/runtime/batch-production.d.ts.map +1 -0
  129. package/dist/cloud-workspace/runtime/batch-production.js +76 -0
  130. package/dist/cloud-workspace/runtime/batch-production.js.map +1 -0
  131. package/dist/cloud-workspace/runtime/batch-runs.d.ts +622 -0
  132. package/dist/cloud-workspace/runtime/batch-runs.d.ts.map +1 -0
  133. package/dist/cloud-workspace/runtime/batch-runs.js +232 -0
  134. package/dist/cloud-workspace/runtime/batch-runs.js.map +1 -0
  135. package/dist/cloud-workspace/runtime/capabilities.d.ts +40 -0
  136. package/dist/cloud-workspace/runtime/capabilities.d.ts.map +1 -0
  137. package/dist/cloud-workspace/runtime/capabilities.js +53 -0
  138. package/dist/cloud-workspace/runtime/capabilities.js.map +1 -0
  139. package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts +53 -0
  140. package/dist/cloud-workspace/runtime/chat-realtime-admission.d.ts.map +1 -0
  141. package/dist/cloud-workspace/runtime/chat-realtime-admission.js +95 -0
  142. package/dist/cloud-workspace/runtime/chat-realtime-admission.js.map +1 -0
  143. package/dist/cloud-workspace/runtime/chat-realtime.d.ts +197 -0
  144. package/dist/cloud-workspace/runtime/chat-realtime.d.ts.map +1 -0
  145. package/dist/cloud-workspace/runtime/chat-realtime.js +300 -0
  146. package/dist/cloud-workspace/runtime/chat-realtime.js.map +1 -0
  147. package/dist/cloud-workspace/runtime/checkpoints.d.ts +35 -0
  148. package/dist/cloud-workspace/runtime/checkpoints.d.ts.map +1 -0
  149. package/dist/cloud-workspace/runtime/checkpoints.js +35 -0
  150. package/dist/cloud-workspace/runtime/checkpoints.js.map +1 -0
  151. package/dist/cloud-workspace/runtime/composer-context.d.ts +82 -0
  152. package/dist/cloud-workspace/runtime/composer-context.d.ts.map +1 -0
  153. package/dist/cloud-workspace/runtime/composer-context.js +51 -0
  154. package/dist/cloud-workspace/runtime/composer-context.js.map +1 -0
  155. package/dist/cloud-workspace/runtime/config.d.ts +48 -0
  156. package/dist/cloud-workspace/runtime/config.d.ts.map +1 -0
  157. package/dist/cloud-workspace/runtime/config.js +126 -0
  158. package/dist/cloud-workspace/runtime/config.js.map +1 -0
  159. package/dist/cloud-workspace/runtime/connectivity.d.ts +211 -0
  160. package/dist/cloud-workspace/runtime/connectivity.d.ts.map +1 -0
  161. package/dist/cloud-workspace/runtime/connectivity.js +46 -0
  162. package/dist/cloud-workspace/runtime/connectivity.js.map +1 -0
  163. package/dist/cloud-workspace/runtime/directory-attachments.d.ts +28 -0
  164. package/dist/cloud-workspace/runtime/directory-attachments.d.ts.map +1 -0
  165. package/dist/cloud-workspace/runtime/directory-attachments.js +30 -0
  166. package/dist/cloud-workspace/runtime/directory-attachments.js.map +1 -0
  167. package/dist/cloud-workspace/runtime/errors.d.ts +26 -0
  168. package/dist/cloud-workspace/runtime/errors.d.ts.map +1 -0
  169. package/dist/cloud-workspace/runtime/errors.js +40 -0
  170. package/dist/cloud-workspace/runtime/errors.js.map +1 -0
  171. package/dist/cloud-workspace/runtime/events.d.ts +107 -0
  172. package/dist/cloud-workspace/runtime/events.d.ts.map +1 -0
  173. package/dist/cloud-workspace/runtime/events.js +70 -0
  174. package/dist/cloud-workspace/runtime/events.js.map +1 -0
  175. package/dist/cloud-workspace/runtime/execution-admission.d.ts +179 -0
  176. package/dist/cloud-workspace/runtime/execution-admission.d.ts.map +1 -0
  177. package/dist/cloud-workspace/runtime/execution-admission.js +109 -0
  178. package/dist/cloud-workspace/runtime/execution-admission.js.map +1 -0
  179. package/dist/cloud-workspace/runtime/execution-grant.d.ts +36 -0
  180. package/dist/cloud-workspace/runtime/execution-grant.d.ts.map +1 -0
  181. package/dist/cloud-workspace/runtime/execution-grant.js +102 -0
  182. package/dist/cloud-workspace/runtime/execution-grant.js.map +1 -0
  183. package/dist/cloud-workspace/runtime/files-search.d.ts +17 -0
  184. package/dist/cloud-workspace/runtime/files-search.d.ts.map +1 -0
  185. package/dist/cloud-workspace/runtime/files-search.js +14 -0
  186. package/dist/cloud-workspace/runtime/files-search.js.map +1 -0
  187. package/dist/cloud-workspace/runtime/files.d.ts +131 -0
  188. package/dist/cloud-workspace/runtime/files.d.ts.map +1 -0
  189. package/dist/cloud-workspace/runtime/files.js +128 -0
  190. package/dist/cloud-workspace/runtime/files.js.map +1 -0
  191. package/dist/cloud-workspace/runtime/generations.d.ts +18 -0
  192. package/dist/cloud-workspace/runtime/generations.d.ts.map +1 -0
  193. package/dist/cloud-workspace/runtime/generations.js +39 -0
  194. package/dist/cloud-workspace/runtime/generations.js.map +1 -0
  195. package/dist/cloud-workspace/runtime/git-auth-mode.d.ts +35 -0
  196. package/dist/cloud-workspace/runtime/git-auth-mode.d.ts.map +1 -0
  197. package/dist/cloud-workspace/runtime/git-auth-mode.js +73 -0
  198. package/dist/cloud-workspace/runtime/git-auth-mode.js.map +1 -0
  199. package/dist/cloud-workspace/runtime/git.d.ts +147 -0
  200. package/dist/cloud-workspace/runtime/git.d.ts.map +1 -0
  201. package/dist/cloud-workspace/runtime/git.js +128 -0
  202. package/dist/cloud-workspace/runtime/git.js.map +1 -0
  203. package/dist/cloud-workspace/runtime/handshake.d.ts +47 -0
  204. package/dist/cloud-workspace/runtime/handshake.d.ts.map +1 -0
  205. package/dist/cloud-workspace/runtime/handshake.js +31 -0
  206. package/dist/cloud-workspace/runtime/handshake.js.map +1 -0
  207. package/dist/cloud-workspace/runtime/index.d.ts +66 -0
  208. package/dist/cloud-workspace/runtime/index.d.ts.map +1 -0
  209. package/dist/cloud-workspace/runtime/index.js +66 -0
  210. package/dist/cloud-workspace/runtime/index.js.map +1 -0
  211. package/dist/cloud-workspace/runtime/library-attachments.d.ts +120 -0
  212. package/dist/cloud-workspace/runtime/library-attachments.d.ts.map +1 -0
  213. package/dist/cloud-workspace/runtime/library-attachments.js +75 -0
  214. package/dist/cloud-workspace/runtime/library-attachments.js.map +1 -0
  215. package/dist/cloud-workspace/runtime/mcp.d.ts +82 -0
  216. package/dist/cloud-workspace/runtime/mcp.d.ts.map +1 -0
  217. package/dist/cloud-workspace/runtime/mcp.js +48 -0
  218. package/dist/cloud-workspace/runtime/mcp.js.map +1 -0
  219. package/dist/cloud-workspace/runtime/native-history.d.ts +66 -0
  220. package/dist/cloud-workspace/runtime/native-history.d.ts.map +1 -0
  221. package/dist/cloud-workspace/runtime/native-history.js +132 -0
  222. package/dist/cloud-workspace/runtime/native-history.js.map +1 -0
  223. package/dist/cloud-workspace/runtime/operations.d.ts +374 -0
  224. package/dist/cloud-workspace/runtime/operations.d.ts.map +1 -0
  225. package/dist/cloud-workspace/runtime/operations.js +229 -0
  226. package/dist/cloud-workspace/runtime/operations.js.map +1 -0
  227. package/dist/cloud-workspace/runtime/parameters.d.ts +38 -0
  228. package/dist/cloud-workspace/runtime/parameters.d.ts.map +1 -0
  229. package/dist/cloud-workspace/runtime/parameters.js +75 -0
  230. package/dist/cloud-workspace/runtime/parameters.js.map +1 -0
  231. package/dist/cloud-workspace/runtime/permissions.d.ts +24 -0
  232. package/dist/cloud-workspace/runtime/permissions.d.ts.map +1 -0
  233. package/dist/cloud-workspace/runtime/permissions.js +19 -0
  234. package/dist/cloud-workspace/runtime/permissions.js.map +1 -0
  235. package/dist/cloud-workspace/runtime/platform-endpoints.d.ts +25 -0
  236. package/dist/cloud-workspace/runtime/platform-endpoints.d.ts.map +1 -0
  237. package/dist/cloud-workspace/runtime/platform-endpoints.js +37 -0
  238. package/dist/cloud-workspace/runtime/platform-endpoints.js.map +1 -0
  239. package/dist/cloud-workspace/runtime/previews.d.ts +59 -0
  240. package/dist/cloud-workspace/runtime/previews.d.ts.map +1 -0
  241. package/dist/cloud-workspace/runtime/previews.js +63 -0
  242. package/dist/cloud-workspace/runtime/previews.js.map +1 -0
  243. package/dist/cloud-workspace/runtime/project-native-skills.d.ts +40 -0
  244. package/dist/cloud-workspace/runtime/project-native-skills.d.ts.map +1 -0
  245. package/dist/cloud-workspace/runtime/project-native-skills.js +45 -0
  246. package/dist/cloud-workspace/runtime/project-native-skills.js.map +1 -0
  247. package/dist/cloud-workspace/runtime/protocol.d.ts +23 -0
  248. package/dist/cloud-workspace/runtime/protocol.d.ts.map +1 -0
  249. package/dist/cloud-workspace/runtime/protocol.js +30 -0
  250. package/dist/cloud-workspace/runtime/protocol.js.map +1 -0
  251. package/dist/cloud-workspace/runtime/remix-references.d.ts +197 -0
  252. package/dist/cloud-workspace/runtime/remix-references.d.ts.map +1 -0
  253. package/dist/cloud-workspace/runtime/remix-references.js +73 -0
  254. package/dist/cloud-workspace/runtime/remix-references.js.map +1 -0
  255. package/dist/cloud-workspace/runtime/resource-grant.d.ts +62 -0
  256. package/dist/cloud-workspace/runtime/resource-grant.d.ts.map +1 -0
  257. package/dist/cloud-workspace/runtime/resource-grant.js +87 -0
  258. package/dist/cloud-workspace/runtime/resource-grant.js.map +1 -0
  259. package/dist/cloud-workspace/runtime/self-contained-glb.d.ts +3 -0
  260. package/dist/cloud-workspace/runtime/self-contained-glb.d.ts.map +1 -0
  261. package/dist/cloud-workspace/runtime/self-contained-glb.js +67 -0
  262. package/dist/cloud-workspace/runtime/self-contained-glb.js.map +1 -0
  263. package/dist/cloud-workspace/runtime/session-restore.d.ts +31 -0
  264. package/dist/cloud-workspace/runtime/session-restore.d.ts.map +1 -0
  265. package/dist/cloud-workspace/runtime/session-restore.js +24 -0
  266. package/dist/cloud-workspace/runtime/session-restore.js.map +1 -0
  267. package/dist/cloud-workspace/runtime/skills.d.ts +39 -0
  268. package/dist/cloud-workspace/runtime/skills.d.ts.map +1 -0
  269. package/dist/cloud-workspace/runtime/skills.js +33 -0
  270. package/dist/cloud-workspace/runtime/skills.js.map +1 -0
  271. package/dist/cloud-workspace/runtime/terminal-session.d.ts +78 -0
  272. package/dist/cloud-workspace/runtime/terminal-session.d.ts.map +1 -0
  273. package/dist/cloud-workspace/runtime/terminal-session.js +178 -0
  274. package/dist/cloud-workspace/runtime/terminal-session.js.map +1 -0
  275. package/dist/cloud-workspace/runtime/terminals.d.ts +90 -0
  276. package/dist/cloud-workspace/runtime/terminals.d.ts.map +1 -0
  277. package/dist/cloud-workspace/runtime/terminals.js +111 -0
  278. package/dist/cloud-workspace/runtime/terminals.js.map +1 -0
  279. package/dist/cloud-workspace/runtime/turn-control.d.ts +27 -0
  280. package/dist/cloud-workspace/runtime/turn-control.d.ts.map +1 -0
  281. package/dist/cloud-workspace/runtime/turn-control.js +18 -0
  282. package/dist/cloud-workspace/runtime/turn-control.js.map +1 -0
  283. package/dist/cloud-workspace/runtime/variant-workspace.d.ts +221 -0
  284. package/dist/cloud-workspace/runtime/variant-workspace.d.ts.map +1 -0
  285. package/dist/cloud-workspace/runtime/variant-workspace.js +75 -0
  286. package/dist/cloud-workspace/runtime/variant-workspace.js.map +1 -0
  287. package/dist/cloud-workspace/runtime/workspace-binding.d.ts +219 -0
  288. package/dist/cloud-workspace/runtime/workspace-binding.d.ts.map +1 -0
  289. package/dist/cloud-workspace/runtime/workspace-binding.js +178 -0
  290. package/dist/cloud-workspace/runtime/workspace-binding.js.map +1 -0
  291. package/dist/cloud-workspace/runtime/workspace-directories.d.ts +44 -0
  292. package/dist/cloud-workspace/runtime/workspace-directories.d.ts.map +1 -0
  293. package/dist/cloud-workspace/runtime/workspace-directories.js +34 -0
  294. package/dist/cloud-workspace/runtime/workspace-directories.js.map +1 -0
  295. package/dist/cloud-workspace/runtime/workspace-models.d.ts +31 -0
  296. package/dist/cloud-workspace/runtime/workspace-models.d.ts.map +1 -0
  297. package/dist/cloud-workspace/runtime/workspace-models.js +63 -0
  298. package/dist/cloud-workspace/runtime/workspace-models.js.map +1 -0
  299. package/dist/cloud-workspace/runtime/workspace-notifications.d.ts +37 -0
  300. package/dist/cloud-workspace/runtime/workspace-notifications.d.ts.map +1 -0
  301. package/dist/cloud-workspace/runtime/workspace-notifications.js +90 -0
  302. package/dist/cloud-workspace/runtime/workspace-notifications.js.map +1 -0
  303. package/dist/cloud-workspace/runtime/workspace-ui.d.ts +151 -0
  304. package/dist/cloud-workspace/runtime/workspace-ui.d.ts.map +1 -0
  305. package/dist/cloud-workspace/runtime/workspace-ui.js +80 -0
  306. package/dist/cloud-workspace/runtime/workspace-ui.js.map +1 -0
  307. package/dist/database/operators.d.ts +2 -0
  308. package/dist/database/operators.d.ts.map +1 -0
  309. package/dist/database/operators.js +2 -0
  310. package/dist/database/operators.js.map +1 -0
  311. package/dist/database/postgres-adapter.js +1 -1
  312. package/dist/database/postgres-adapter.js.map +1 -1
  313. package/dist/database/schema.d.ts +1 -1
  314. package/dist/database/schema.js +1 -1
  315. package/dist/model-proxy/index.d.ts +26 -0
  316. package/dist/model-proxy/index.d.ts.map +1 -0
  317. package/dist/model-proxy/index.js +81 -0
  318. package/dist/model-proxy/index.js.map +1 -0
  319. package/dist/prefab/index.d.ts +0 -2
  320. package/dist/prefab/index.d.ts.map +1 -1
  321. package/dist/prefab/index.js +0 -2
  322. package/dist/prefab/index.js.map +1 -1
  323. package/dist/prefab/mime-type-list.d.ts +0 -1
  324. package/dist/prefab/mime-type-list.d.ts.map +1 -1
  325. package/dist/prefab/mime-type-list.js +1 -5
  326. package/dist/prefab/mime-type-list.js.map +1 -1
  327. package/dist/project-skills/bundle-archive.d.ts +21 -0
  328. package/dist/project-skills/bundle-archive.d.ts.map +1 -0
  329. package/dist/project-skills/bundle-archive.js +165 -0
  330. package/dist/project-skills/bundle-archive.js.map +1 -0
  331. package/dist/project-skills/bundle-path.d.ts +3 -0
  332. package/dist/project-skills/bundle-path.d.ts.map +1 -0
  333. package/dist/project-skills/bundle-path.js +17 -0
  334. package/dist/project-skills/bundle-path.js.map +1 -0
  335. package/dist/project-skills/evidence.d.ts +15 -0
  336. package/dist/project-skills/evidence.d.ts.map +1 -0
  337. package/dist/project-skills/evidence.js +33 -0
  338. package/dist/project-skills/evidence.js.map +1 -0
  339. package/dist/project-skills/index.d.ts +7 -0
  340. package/dist/project-skills/index.d.ts.map +1 -0
  341. package/dist/project-skills/index.js +7 -0
  342. package/dist/project-skills/index.js.map +1 -0
  343. package/dist/project-skills/inventory.d.ts +23 -0
  344. package/dist/project-skills/inventory.d.ts.map +1 -0
  345. package/dist/project-skills/inventory.js +150 -0
  346. package/dist/project-skills/inventory.js.map +1 -0
  347. package/dist/project-skills/local-snapshot.d.ts +12 -0
  348. package/dist/project-skills/local-snapshot.d.ts.map +1 -0
  349. package/dist/project-skills/local-snapshot.js +66 -0
  350. package/dist/project-skills/local-snapshot.js.map +1 -0
  351. package/dist/project-skills/protocol.d.ts +31 -0
  352. package/dist/project-skills/protocol.d.ts.map +1 -0
  353. package/dist/project-skills/protocol.js +197 -0
  354. package/dist/project-skills/protocol.js.map +1 -0
  355. package/dist/project-skills/runtime-plugin.d.ts +66 -0
  356. package/dist/project-skills/runtime-plugin.d.ts.map +1 -0
  357. package/dist/project-skills/runtime-plugin.js +102 -0
  358. package/dist/project-skills/runtime-plugin.js.map +1 -0
  359. package/dist/project-skills/types.d.ts +63 -0
  360. package/dist/project-skills/types.d.ts.map +1 -0
  361. package/dist/project-skills/types.js +13 -0
  362. package/dist/project-skills/types.js.map +1 -0
  363. package/dist/recommend/types.d.ts +1 -1
  364. package/dist/recommend/types.js +1 -1
  365. package/dist/remix/auto-name.d.ts +24 -0
  366. package/dist/remix/auto-name.d.ts.map +1 -0
  367. package/dist/remix/auto-name.js +40 -0
  368. package/dist/remix/auto-name.js.map +1 -0
  369. package/dist/remix/index.d.ts +2 -0
  370. package/dist/remix/index.d.ts.map +1 -0
  371. package/dist/remix/index.js +2 -0
  372. package/dist/remix/index.js.map +1 -0
  373. package/dist/skill-evaluation.d.ts +152 -0
  374. package/dist/skill-evaluation.d.ts.map +1 -0
  375. package/dist/skill-evaluation.js +14 -0
  376. package/dist/skill-evaluation.js.map +1 -0
  377. package/dist/storage/cos.d.ts +11 -0
  378. package/dist/storage/cos.d.ts.map +1 -1
  379. package/dist/storage/cos.js +29 -0
  380. package/dist/storage/cos.js.map +1 -1
  381. package/package.json +33 -1
  382. package/dist/prefab/image-background.d.ts +0 -10
  383. package/dist/prefab/image-background.d.ts.map +0 -1
  384. package/dist/prefab/image-background.js +0 -19
  385. package/dist/prefab/image-background.js.map +0 -1
  386. package/dist/prefab/image-generation-constraints.d.ts +0 -72
  387. package/dist/prefab/image-generation-constraints.d.ts.map +0 -1
  388. package/dist/prefab/image-generation-constraints.js +0 -112
  389. package/dist/prefab/image-generation-constraints.js.map +0 -1
@@ -0,0 +1,232 @@
1
+ import { z } from 'zod';
2
+ import { workspaceDirectoryNameSchema, workspaceSessionScopeSchema } from './workspace-directories.js';
3
+ import { batchRunDeliveryEvidenceSchema, batchRunPhaseSchema, batchRunSchema, batchSourceSnapshotRefSchema, } from './execution-admission.js';
4
+ /**
5
+ * Cross-service protocol of the batch flow (design §2, §5, §8, §9).
6
+ * Business → Runtime: `/internal/batch-runs/*`; Runtime → sandbox: `/runtime/batch-*`;
7
+ * Runtime → Business: `/api/internal/cloud-batches/runs/events`.
8
+ */
9
+ const uuid = z.string().uuid();
10
+ const commitHash = z.string().regex(/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/);
11
+ /* ---------------- Feature switches ---------------- */
12
+ /** Runtime: unified admission for every directory execution. Off = normal chat does not queue. */
13
+ export const EXECUTION_ADMISSION_ENABLED_ENV = 'CLOUD_EXECUTION_ADMISSION_ENABLED';
14
+ /** Business + Runtime: new batch entry. Off = old production flow untouched. */
15
+ export const BATCH_FLOW_V2_ENABLED_ENV = 'CLOUD_BATCH_FLOW_V2_ENABLED';
16
+ /* ---------------- Source freeze ---------------- */
17
+ export const batchSourceFreezeRequestSchema = z.object({
18
+ batchId: uuid,
19
+ workspaceId: uuid,
20
+ sourceDirectoryName: workspaceDirectoryNameSchema,
21
+ /** Directory of the conversation turn that called `create-batch`; absent for the panel. */
22
+ initiatorDirectoryName: workspaceSessionScopeSchema.optional(),
23
+ initiatorOperationId: z.string().min(1).max(128).optional(),
24
+ /** Optional idempotency key for sync-to-batch re-freeze (distinct from batchId). */
25
+ syncId: uuid.optional(),
26
+ }).strict();
27
+ /**
28
+ * `frozen`: snapshot captured and durable.
29
+ * `pending`: source directory busy with another turn — freeze runs after that turn and before the next.
30
+ */
31
+ export const batchSourceFreezeResultSchema = z.discriminatedUnion('status', [
32
+ z.object({ status: z.literal('frozen'), snapshot: batchSourceSnapshotRefSchema }).strict(),
33
+ z.object({ status: z.literal('pending'), batchId: uuid }).strict(),
34
+ z.object({ status: z.literal('failed'), batchId: uuid, error: z.string().max(128) }).strict(),
35
+ ]);
36
+ /** Sandbox `POST /runtime/batch-sources/freeze`. Synchronous; idempotent per batchId. */
37
+ export const sandboxBatchSourceFreezeRequestSchema = z.object({
38
+ batchId: uuid,
39
+ workspaceId: uuid,
40
+ sourceDirectoryName: workspaceDirectoryNameSchema,
41
+ /** `remote_ref` pushes `refs/playcraft/batch/<batchId>/source`; `artifact` uploads to private storage. */
42
+ persist: z.enum(['remote_ref', 'artifact']),
43
+ }).strict();
44
+ /* ---------------- Member execution (Runtime → sandbox) ---------------- */
45
+ const memberCommandBase = {
46
+ runId: uuid,
47
+ ownerFence: z.number().int().min(0),
48
+ workspaceId: uuid,
49
+ directoryName: workspaceDirectoryNameSchema,
50
+ /** Runtime-issued occupancy reference; the sandbox rejects member commands without it. */
51
+ occupancyId: uuid,
52
+ };
53
+ /** `POST /runtime/batch-members/prepare` — clone/restore from snapshot (or resume commit), install deps. */
54
+ export const sandboxBatchMemberPrepareSchema = z.object({
55
+ ...memberCommandBase,
56
+ snapshot: batchSourceSnapshotRefSchema,
57
+ remixId: uuid.nullable(),
58
+ branchName: z.string().trim().min(1).max(512),
59
+ resumeFromCommit: commitHash.optional(),
60
+ }).strict();
61
+ /** `POST /runtime/batch-members/generate` — one unattended turn on the shared session base. */
62
+ export const sandboxBatchMemberGenerateSchema = z.object({
63
+ ...memberCommandBase,
64
+ prompt: z.string().min(1).max(20_000),
65
+ model: z.string().min(1).max(200).optional(),
66
+ sessionId: z.string().min(1).max(128).optional(),
67
+ }).strict();
68
+ /** `POST /runtime/batch-members/deliver` — save exact commit, push, build from it, verify, publish. */
69
+ export const sandboxBatchMemberDeliverSchema = z.object({
70
+ ...memberCommandBase,
71
+ pushRemote: z.boolean(),
72
+ fromCommit: commitHash.optional(),
73
+ }).strict();
74
+ /** `POST /runtime/batch-members/:runId/stop`. */
75
+ export const sandboxBatchMemberStopSchema = z.object({ runId: uuid, ownerFence: z.number().int().min(0) }).strict();
76
+ export const sandboxBatchMemberStateSchema = z.enum([
77
+ 'idle', 'running', 'completed', 'failed', 'needs_user', 'stopping', 'stopped', 'unknown',
78
+ ]);
79
+ /** Response of every member command and of `GET /runtime/batch-members/:runId`. Read-only query. */
80
+ export const sandboxBatchMemberStatusSchema = z.object({
81
+ runId: uuid,
82
+ ownerFence: z.number().int().min(0),
83
+ phase: batchRunPhaseSchema,
84
+ state: sandboxBatchMemberStateSchema,
85
+ /** True only with proof that the native turn, its children and build/verify processes exited. */
86
+ writersStopped: z.boolean(),
87
+ sessionId: z.string().min(1).max(128).optional(),
88
+ operationId: z.string().min(1).max(128).optional(),
89
+ headCommit: commitHash.optional(),
90
+ evidence: batchRunDeliveryEvidenceSchema.optional(),
91
+ error: z.string().max(128).optional(),
92
+ updatedAt: z.string().datetime(),
93
+ }).strict();
94
+ /* ---------------- Runs (Business → Runtime) ---------------- */
95
+ export const batchRunMemberInputSchema = z.object({
96
+ resultVersionId: uuid,
97
+ workspaceId: uuid,
98
+ directoryName: workspaceDirectoryNameSchema,
99
+ remixId: uuid.nullable(),
100
+ branchName: z.string().trim().min(1).max(512),
101
+ prompt: z.string().min(1).max(20_000),
102
+ model: z.string().min(1).max(200).optional(),
103
+ /** Resume delivery from this exact member commit (retry / post-sync redeliver). */
104
+ resumeFromCommit: commitHash.optional(),
105
+ /** Prior result version this sync run replaces in the product sense (old version stays readable). */
106
+ syncOfResultVersionId: uuid.optional(),
107
+ }).strict();
108
+ /** `POST /internal/batch-runs` — idempotent per resultVersionId. */
109
+ export const submitBatchRunsRequestSchema = z.object({
110
+ batchId: uuid,
111
+ userId: z.string().min(1).max(128),
112
+ snapshot: batchSourceSnapshotRefSchema,
113
+ members: z.array(batchRunMemberInputSchema).min(1).max(50),
114
+ }).strict();
115
+ export const batchRunViewSchema = batchRunSchema.extend({
116
+ queuePosition: z.number().int().min(0).optional(),
117
+ });
118
+ /** `POST /internal/batch-runs/:runId/sync` — replace input of a not-yet-started Run. */
119
+ export const replaceBatchRunSnapshotSchema = z.object({ snapshot: batchSourceSnapshotRefSchema }).strict();
120
+ /**
121
+ * Running, stopping, or reconciling members cannot switch snapshot mid-execution.
122
+ * The caller stores `pending_sync` and applies it after the Run ends.
123
+ */
124
+ export const replaceBatchRunSnapshotResultSchema = z.discriminatedUnion('status', [
125
+ z.object({ status: z.literal('replaced'), run: batchRunViewSchema }).strict(),
126
+ z.object({ status: z.literal('pending_sync'), runId: uuid }).strict(),
127
+ ]);
128
+ /** Batch-level source fact. Present when the event is not about a member Run. */
129
+ export const batchSourceEventSubjectSchema = z.object({
130
+ batchId: uuid,
131
+ workspaceId: uuid,
132
+ status: z.enum(['ready', 'failed', 'lost']),
133
+ snapshot: batchSourceSnapshotRefSchema.optional(),
134
+ error: z.string().max(128).optional(),
135
+ }).strict();
136
+ export const batchRunEventReasonSchema = z.enum([
137
+ 'status_changed', 'phase_changed', 'queue_changed', 'recovered', 'source_lost', 'source_ready', 'source_failed',
138
+ ]);
139
+ /**
140
+ * Runtime → Business `POST /api/internal/cloud-batches/runs/events`; at-least-once, ordered by revision.
141
+ * A member event carries `run`. A source freeze event carries `source` and no run.
142
+ * `source_ready` / `source_failed` are additive reason values.
143
+ */
144
+ export const batchRunEventSchema = z.union([
145
+ z.object({ run: batchRunViewSchema, reason: batchRunEventReasonSchema }).strict(),
146
+ z.object({
147
+ source: batchSourceEventSubjectSchema,
148
+ reason: z.enum(['source_ready', 'source_failed', 'source_lost']),
149
+ }).strict(),
150
+ ]);
151
+ /* ---------------- Projection for the panel (Business → frontend) ---------------- */
152
+ export const batchSourceStatusSchema = z.enum(['freezing', 'waiting_source_idle', 'ready', 'failed', 'lost']);
153
+ export const batchMemberDisplayStatusSchema = z.enum([
154
+ 'waiting_source', 'source_failed', 'queued', 'preparing', 'generating', 'delivering',
155
+ 'reconciling', 'stopping', 'pending_sync', 'succeeded', 'failed', 'cancelled',
156
+ ]);
157
+ export const batchMemberViewSchema = z.object({
158
+ resultVersionId: uuid,
159
+ ordinal: z.number().int().min(0),
160
+ prompt: z.string(),
161
+ status: batchMemberDisplayStatusSchema,
162
+ queuePosition: z.number().int().min(0).optional(),
163
+ directoryName: workspaceDirectoryNameSchema.optional(),
164
+ remixId: uuid.nullable().optional(),
165
+ sessionId: z.string().optional(),
166
+ runId: uuid.optional(),
167
+ previewRef: z.string().optional(),
168
+ previewStale: z.boolean().optional(),
169
+ error: z.string().max(128).optional(),
170
+ }).strict();
171
+ export const batchViewSchema = z.object({
172
+ batchId: uuid,
173
+ workspaceId: uuid,
174
+ sourceDirectoryName: workspaceDirectoryNameSchema,
175
+ sourceStatus: batchSourceStatusSchema,
176
+ cancelRequested: z.boolean(),
177
+ counts: z.object({
178
+ queued: z.number().int().min(0),
179
+ running: z.number().int().min(0),
180
+ succeeded: z.number().int().min(0),
181
+ failed: z.number().int().min(0),
182
+ cancelled: z.number().int().min(0),
183
+ }).strict(),
184
+ members: z.array(batchMemberViewSchema),
185
+ createdAt: z.string().datetime(),
186
+ }).strict();
187
+ export const batchCreateAcceptedSchema = z.object({
188
+ flowVersion: z.literal('v2'),
189
+ accepted: z.literal(true),
190
+ batchId: uuid,
191
+ sourceStatus: batchSourceStatusSchema,
192
+ view: batchViewSchema,
193
+ }).strict();
194
+ export function isBatchFlowV2Enabled(env = process.env) {
195
+ return env[BATCH_FLOW_V2_ENABLED_ENV] === 'true';
196
+ }
197
+ /** When v2 is enabled, pause new batch intake during cutover (design §11 step 2). */
198
+ export const BATCH_FLOW_V2_INTAKE_PAUSED_ENV = 'CLOUD_BATCH_V2_INTAKE_PAUSED';
199
+ export function isBatchFlowV2IntakePaused(env = process.env) {
200
+ return env[BATCH_FLOW_V2_INTAKE_PAUSED_ENV] === 'true';
201
+ }
202
+ export function batchMemberDisplayStatus(run, source, pendingSync = false) {
203
+ if (!run)
204
+ return source === 'failed' || source === 'lost' ? 'source_failed' : 'waiting_source';
205
+ if (pendingSync && run.status !== 'queued')
206
+ return 'pending_sync';
207
+ switch (run.status) {
208
+ case 'queued': return 'queued';
209
+ case 'running': return run.phase === 'prepare' ? 'preparing' : run.phase === 'generate' ? 'generating' : 'delivering';
210
+ case 'reconciling': return 'reconciling';
211
+ case 'stopping': return 'stopping';
212
+ default: return run.status;
213
+ }
214
+ }
215
+ /* ---------------- Queue view for chat (Runtime → frontend) ---------------- */
216
+ /** `GET /runtime/workspaces/:workspaceId/execution-queue` — open occupancies of the caller's sandbox. */
217
+ export const executionQueueEntrySchema = z.object({
218
+ occupancyId: uuid,
219
+ workspaceId: uuid,
220
+ directoryName: workspaceSessionScopeSchema,
221
+ source: z.enum(['session_turn', 'preview_build', 'batch_run']),
222
+ status: z.enum(['queued', 'active', 'waiting_user', 'reconciling']),
223
+ operationId: z.string().optional(),
224
+ runId: uuid.optional(),
225
+ queuePosition: z.number().int().min(0).optional(),
226
+ }).strict();
227
+ export const executionQueueViewSchema = z.object({
228
+ workspaceMax: z.number().int().min(1),
229
+ sandboxMax: z.number().int().min(1),
230
+ entries: z.array(executionQueueEntrySchema),
231
+ }).strict();
232
+ //# sourceMappingURL=batch-runs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-runs.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/batch-runs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { z } from 'zod';
2
+ export declare const RUNTIME_CAPABILITY_NAMES: readonly ["conversation", "files", "git", "parameters", "terminal", "desktop", "artifacts.singleFile"];
3
+ export type RuntimeCapabilityName = (typeof RUNTIME_CAPABILITY_NAMES)[number];
4
+ export declare const runtimeCapabilityNameSchema: z.ZodEnum<{
5
+ files: "files";
6
+ terminal: "terminal";
7
+ conversation: "conversation";
8
+ git: "git";
9
+ parameters: "parameters";
10
+ desktop: "desktop";
11
+ "artifacts.singleFile": "artifacts.singleFile";
12
+ }>;
13
+ export declare const capabilityStateSchema: z.ZodObject<{
14
+ name: z.ZodEnum<{
15
+ files: "files";
16
+ terminal: "terminal";
17
+ conversation: "conversation";
18
+ git: "git";
19
+ parameters: "parameters";
20
+ desktop: "desktop";
21
+ "artifacts.singleFile": "artifacts.singleFile";
22
+ }>;
23
+ ready: z.ZodBoolean;
24
+ reason: z.ZodOptional<z.ZodString>;
25
+ }, z.core.$strict>;
26
+ export type CapabilityState = z.infer<typeof capabilityStateSchema>;
27
+ export declare const CORE_RUNTIME_PHASES: readonly ["starting", "awaiting_native", "restoring", "ready", "quiescing", "unavailable"];
28
+ export type CoreRuntimePhase = (typeof CORE_RUNTIME_PHASES)[number];
29
+ export declare const coreRuntimePhaseSchema: z.ZodEnum<{
30
+ ready: "ready";
31
+ unavailable: "unavailable";
32
+ starting: "starting";
33
+ awaiting_native: "awaiting_native";
34
+ restoring: "restoring";
35
+ quiescing: "quiescing";
36
+ }>;
37
+ export declare function capability(name: RuntimeCapabilityName, ready: boolean, reason?: string): CapabilityState;
38
+ export declare function listDeclaredCapabilities(states: readonly CapabilityState[]): RuntimeCapabilityName[];
39
+ export declare function unavailableRuntimeCapabilities(reason: string): CapabilityState[];
40
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,wBAAwB,wGAQ3B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,eAAO,MAAM,2BAA2B;;;;;;;;EAAmC,CAAC;AAE5E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;kBAsB9B,CAAC;AAEL,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,mBAAmB,4FAOtB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,sBAAsB;;;;;;;EAA8B,CAAC;AAElE,wBAAgB,UAAU,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,eAAe,CAExG;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,qBAAqB,EAAE,CAEpG;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,EAAE,CAEhF"}
@@ -0,0 +1,53 @@
1
+ import { z } from 'zod';
2
+ export const RUNTIME_CAPABILITY_NAMES = [
3
+ 'conversation',
4
+ 'files',
5
+ 'git',
6
+ 'parameters',
7
+ 'terminal',
8
+ 'desktop',
9
+ 'artifacts.singleFile',
10
+ ];
11
+ export const runtimeCapabilityNameSchema = z.enum(RUNTIME_CAPABILITY_NAMES);
12
+ export const capabilityStateSchema = z
13
+ .object({
14
+ name: runtimeCapabilityNameSchema,
15
+ ready: z.boolean(),
16
+ reason: z.string().min(1).max(128).optional(),
17
+ })
18
+ .strict()
19
+ .superRefine((value, context) => {
20
+ if (value.ready && value.reason) {
21
+ context.addIssue({
22
+ code: z.ZodIssueCode.custom,
23
+ message: 'ready capability cannot include a reason',
24
+ path: ['reason'],
25
+ });
26
+ }
27
+ if (!value.ready && !value.reason) {
28
+ context.addIssue({
29
+ code: z.ZodIssueCode.custom,
30
+ message: 'unavailable capability requires a machine-readable reason',
31
+ path: ['reason'],
32
+ });
33
+ }
34
+ });
35
+ export const CORE_RUNTIME_PHASES = [
36
+ 'starting',
37
+ 'awaiting_native',
38
+ 'restoring',
39
+ 'ready',
40
+ 'quiescing',
41
+ 'unavailable',
42
+ ];
43
+ export const coreRuntimePhaseSchema = z.enum(CORE_RUNTIME_PHASES);
44
+ export function capability(name, ready, reason) {
45
+ return capabilityStateSchema.parse(reason === undefined ? { name, ready } : { name, ready, reason });
46
+ }
47
+ export function listDeclaredCapabilities(states) {
48
+ return states.filter((state) => state.ready).map((state) => state.name);
49
+ }
50
+ export function unavailableRuntimeCapabilities(reason) {
51
+ return RUNTIME_CAPABILITY_NAMES.map((name) => capability(name, false, reason));
52
+ }
53
+ //# sourceMappingURL=capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,cAAc;IACd,OAAO;IACP,KAAK;IACL,YAAY;IACZ,UAAU;IACV,SAAS;IACT,sBAAsB;CACd,CAAC;AAIX,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,IAAI,EAAE,2BAA2B;IACjC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC9C,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9B,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,0CAA0C;YACnD,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClC,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,2DAA2D;YACpE,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAIL,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU;IACV,iBAAiB;IACjB,WAAW;IACX,OAAO;IACP,WAAW;IACX,aAAa;CACL,CAAC;AAIX,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAElE,MAAM,UAAU,UAAU,CAAC,IAA2B,EAAE,KAAc,EAAE,MAAe;IACrF,OAAO,qBAAqB,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;AACvG,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAkC;IACzE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,MAAc;IAC3D,OAAO,wBAAwB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AACjF,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { CHAT_REALTIME_V2 } from './chat-realtime.js';
2
+ /**
3
+ * Section 9 rows. A logical runtime may advertise chatRealtimeV2 only when every row
4
+ * passed and the section 1 measurement conditions were actually met.
5
+ */
6
+ export declare const CHAT_REALTIME_ACCEPTANCE_ROWS: readonly ["paced_output", "archive_delay", "approval_and_stop", "early_notification_crash", "durable_before_live", "out_of_order_prefix", "refresh_snapshot", "non_owner_replica", "slow_subscriber", "ten_thousand_fragments", "revoke_and_disconnect", "crash_and_loss", "sqlite_commit_boundaries", "checkpoint_pin_disk", "native_jsonl_and_migration", "sandbox_disk_engine", "entry_proxy"];
7
+ export type ChatRealtimeAcceptanceRow = (typeof CHAT_REALTIME_ACCEPTANCE_ROWS)[number];
8
+ export type ChatRealtimeRowStatus = 'passed' | 'failed' | 'untested';
9
+ export type ChatRealtimeAdmissionInput = {
10
+ logicalRuntimeId: string;
11
+ rows: Record<ChatRealtimeAcceptanceRow, ChatRealtimeRowStatus>;
12
+ networkBudgetMet: boolean;
13
+ percentileSampleMet: boolean;
14
+ browserPaintObserved: boolean;
15
+ fixedCodexVersion: string | null;
16
+ protocolMinor: number;
17
+ replacesCursorSemantics: boolean;
18
+ deletesUnconfirmedSources: boolean;
19
+ };
20
+ export type ChatRealtimeAdmission = {
21
+ advertise: true;
22
+ mode: typeof CHAT_REALTIME_V2;
23
+ logicalRuntimeId: string;
24
+ } | {
25
+ advertise: false;
26
+ code: 'chat_realtime_unavailable';
27
+ logicalRuntimeId: string;
28
+ blockedBy: string[];
29
+ };
30
+ export type RealtimeTurnAdmission = {
31
+ ok: true;
32
+ mode: 'conversation' | typeof CHAT_REALTIME_V2;
33
+ } | {
34
+ ok: false;
35
+ code: 'chat_realtime_unavailable';
36
+ history: 'read';
37
+ fallback: 'none';
38
+ };
39
+ export declare function closedChatRealtimeAdmission(logicalRuntimeId: string): ChatRealtimeAdmissionInput;
40
+ /** Production advertisement. There is no environment override. */
41
+ export declare function advertisedChatModes(logicalRuntimeId: string): readonly string[];
42
+ export declare function mayAdvertiseChatRealtime(input: ChatRealtimeAdmissionInput): ChatRealtimeAdmission;
43
+ /**
44
+ * A requested realtime upload is refused when this logical runtime does not advertise it.
45
+ * Refusal keeps history reads and does not select a whole-turn upload mode.
46
+ * An omitted upload stays on the existing conversation path.
47
+ */
48
+ export declare function admitRealtimeTurn(input: {
49
+ requestedUpload?: string;
50
+ localModes: readonly string[];
51
+ remoteModes: readonly string[];
52
+ }): RealtimeTurnAdmission;
53
+ //# sourceMappingURL=chat-realtime-admission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-realtime-admission.d.ts","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/chat-realtime-admission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyB,MAAM,oBAAoB,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,6BAA6B,mYAkBhC,CAAC;AAEX,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvF,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;AAErE,MAAM,MAAM,0BAA0B,GAAG;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC,yBAAyB,EAAE,qBAAqB,CAAC,CAAC;IAC/D,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,gBAAgB,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,SAAS,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,2BAA2B,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE3G,MAAM,MAAM,qBAAqB,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG,OAAO,gBAAgB,CAAA;CAAE,GAC5D;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,2BAA2B,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAExF,wBAAgB,2BAA2B,CAAC,gBAAgB,EAAE,MAAM,GAAG,0BAA0B,CAehG;AAED,kEAAkE;AAClE,wBAAgB,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAG/E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,0BAA0B,GAAG,qBAAqB,CAsBjG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,GAAG,qBAAqB,CAYxB"}
@@ -0,0 +1,95 @@
1
+ import { CLOUD_WORKSPACE_PROTOCOL_MINOR } from './protocol.js';
2
+ import { CHAT_REALTIME_V2, negotiateChatRealtime } from './chat-realtime.js';
3
+ /**
4
+ * Section 9 rows. A logical runtime may advertise chatRealtimeV2 only when every row
5
+ * passed and the section 1 measurement conditions were actually met.
6
+ */
7
+ export const CHAT_REALTIME_ACCEPTANCE_ROWS = [
8
+ 'paced_output',
9
+ 'archive_delay',
10
+ 'approval_and_stop',
11
+ 'early_notification_crash',
12
+ 'durable_before_live',
13
+ 'out_of_order_prefix',
14
+ 'refresh_snapshot',
15
+ 'non_owner_replica',
16
+ 'slow_subscriber',
17
+ 'ten_thousand_fragments',
18
+ 'revoke_and_disconnect',
19
+ 'crash_and_loss',
20
+ 'sqlite_commit_boundaries',
21
+ 'checkpoint_pin_disk',
22
+ 'native_jsonl_and_migration',
23
+ 'sandbox_disk_engine',
24
+ 'entry_proxy',
25
+ ];
26
+ export function closedChatRealtimeAdmission(logicalRuntimeId) {
27
+ const rows = Object.fromEntries(CHAT_REALTIME_ACCEPTANCE_ROWS.map((row) => [row, 'untested']));
28
+ return {
29
+ logicalRuntimeId,
30
+ rows,
31
+ networkBudgetMet: false,
32
+ percentileSampleMet: false,
33
+ browserPaintObserved: false,
34
+ fixedCodexVersion: null,
35
+ protocolMinor: CLOUD_WORKSPACE_PROTOCOL_MINOR,
36
+ replacesCursorSemantics: false,
37
+ deletesUnconfirmedSources: false,
38
+ };
39
+ }
40
+ /** Production advertisement. There is no environment override. */
41
+ export function advertisedChatModes(logicalRuntimeId) {
42
+ const decision = mayAdvertiseChatRealtime(closedChatRealtimeAdmission(logicalRuntimeId));
43
+ return decision.advertise ? [decision.mode] : [];
44
+ }
45
+ export function mayAdvertiseChatRealtime(input) {
46
+ const blockedBy = [];
47
+ if (!input.logicalRuntimeId.trim())
48
+ blockedBy.push('logical_runtime');
49
+ for (const row of CHAT_REALTIME_ACCEPTANCE_ROWS) {
50
+ if (input.rows[row] !== 'passed')
51
+ blockedBy.push(row);
52
+ }
53
+ if (!input.networkBudgetMet)
54
+ blockedBy.push('network_budget');
55
+ if (!input.percentileSampleMet)
56
+ blockedBy.push('percentile_sample');
57
+ if (!input.browserPaintObserved)
58
+ blockedBy.push('browser_paint');
59
+ if (!input.fixedCodexVersion?.trim())
60
+ blockedBy.push('fixed_codex_version');
61
+ if (input.protocolMinor !== CLOUD_WORKSPACE_PROTOCOL_MINOR)
62
+ blockedBy.push('protocol_minor');
63
+ if (input.replacesCursorSemantics)
64
+ blockedBy.push('cursor_semantics');
65
+ if (input.deletesUnconfirmedSources)
66
+ blockedBy.push('unconfirmed_sources');
67
+ if (blockedBy.length > 0) {
68
+ return {
69
+ advertise: false,
70
+ code: 'chat_realtime_unavailable',
71
+ logicalRuntimeId: input.logicalRuntimeId,
72
+ blockedBy,
73
+ };
74
+ }
75
+ return { advertise: true, mode: CHAT_REALTIME_V2, logicalRuntimeId: input.logicalRuntimeId };
76
+ }
77
+ /**
78
+ * A requested realtime upload is refused when this logical runtime does not advertise it.
79
+ * Refusal keeps history reads and does not select a whole-turn upload mode.
80
+ * An omitted upload stays on the existing conversation path.
81
+ */
82
+ export function admitRealtimeTurn(input) {
83
+ if (input.requestedUpload === undefined || input.requestedUpload === 'conversation') {
84
+ return { ok: true, mode: 'conversation' };
85
+ }
86
+ if (input.requestedUpload !== CHAT_REALTIME_V2) {
87
+ return { ok: false, code: 'chat_realtime_unavailable', history: 'read', fallback: 'none' };
88
+ }
89
+ const negotiated = negotiateChatRealtime({ local: input.localModes, remote: input.remoteModes });
90
+ if (!negotiated.ok) {
91
+ return { ok: false, code: 'chat_realtime_unavailable', history: 'read', fallback: 'none' };
92
+ }
93
+ return { ok: true, mode: CHAT_REALTIME_V2 };
94
+ }
95
+ //# sourceMappingURL=chat-realtime-admission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-realtime-admission.js","sourceRoot":"","sources":["../../../src/cloud-workspace/runtime/chat-realtime-admission.ts"],"names":[],"mappings":"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"}