@paperclipai/server 2026.824.0 → 2026.825.0-beta.1

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 (519) hide show
  1. package/dist/adapters/builtin-adapter-types.d.ts.map +1 -1
  2. package/dist/adapters/builtin-adapter-types.js +1 -0
  3. package/dist/adapters/builtin-adapter-types.js.map +1 -1
  4. package/dist/adapters/plugin-loader.d.ts +1 -0
  5. package/dist/adapters/plugin-loader.d.ts.map +1 -1
  6. package/dist/adapters/plugin-loader.js +12 -1
  7. package/dist/adapters/plugin-loader.js.map +1 -1
  8. package/dist/adapters/plugin-loader.test.d.ts +2 -0
  9. package/dist/adapters/plugin-loader.test.d.ts.map +1 -0
  10. package/dist/adapters/plugin-loader.test.js +37 -0
  11. package/dist/adapters/plugin-loader.test.js.map +1 -0
  12. package/dist/adapters/registry.d.ts.map +1 -1
  13. package/dist/adapters/registry.js +68 -5
  14. package/dist/adapters/registry.js.map +1 -1
  15. package/dist/adapters/registry.test.d.ts +2 -0
  16. package/dist/adapters/registry.test.d.ts.map +1 -0
  17. package/dist/adapters/registry.test.js +35 -0
  18. package/dist/adapters/registry.test.js.map +1 -0
  19. package/dist/app.d.ts.map +1 -1
  20. package/dist/app.js +5 -7
  21. package/dist/app.js.map +1 -1
  22. package/dist/auth/better-auth.d.ts +10 -0
  23. package/dist/auth/better-auth.d.ts.map +1 -1
  24. package/dist/auth/better-auth.js +47 -0
  25. package/dist/auth/better-auth.js.map +1 -1
  26. package/dist/auth/workspace-login-handoff-exchange.d.ts +75 -0
  27. package/dist/auth/workspace-login-handoff-exchange.d.ts.map +1 -0
  28. package/dist/auth/workspace-login-handoff-exchange.js +73 -0
  29. package/dist/auth/workspace-login-handoff-exchange.js.map +1 -0
  30. package/dist/auth/workspace-login-handoff-plugin.d.ts +40 -0
  31. package/dist/auth/workspace-login-handoff-plugin.d.ts.map +1 -0
  32. package/dist/auth/workspace-login-handoff-plugin.js +140 -0
  33. package/dist/auth/workspace-login-handoff-plugin.js.map +1 -0
  34. package/dist/auth/workspace-login-handoff.d.ts +189 -0
  35. package/dist/auth/workspace-login-handoff.d.ts.map +1 -0
  36. package/dist/auth/workspace-login-handoff.js +319 -0
  37. package/dist/auth/workspace-login-handoff.js.map +1 -0
  38. package/dist/build-info.json +3 -0
  39. package/dist/config.d.ts +1 -0
  40. package/dist/config.d.ts.map +1 -1
  41. package/dist/config.js +14 -0
  42. package/dist/config.js.map +1 -1
  43. package/dist/dev-runner-worktree.d.ts.map +1 -1
  44. package/dist/dev-runner-worktree.js +5 -0
  45. package/dist/dev-runner-worktree.js.map +1 -1
  46. package/dist/duplex-aggregate-ceiling-env.d.ts +21 -0
  47. package/dist/duplex-aggregate-ceiling-env.d.ts.map +1 -0
  48. package/dist/duplex-aggregate-ceiling-env.js +23 -0
  49. package/dist/duplex-aggregate-ceiling-env.js.map +1 -0
  50. package/dist/embedded-postgres-supervisor.d.ts +27 -0
  51. package/dist/embedded-postgres-supervisor.d.ts.map +1 -0
  52. package/dist/embedded-postgres-supervisor.js +72 -0
  53. package/dist/embedded-postgres-supervisor.js.map +1 -0
  54. package/dist/errors.d.ts +2 -0
  55. package/dist/errors.d.ts.map +1 -1
  56. package/dist/errors.js +6 -0
  57. package/dist/errors.js.map +1 -1
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +115 -7
  60. package/dist/index.js.map +1 -1
  61. package/dist/instrumentation.d.ts +33 -0
  62. package/dist/instrumentation.d.ts.map +1 -1
  63. package/dist/instrumentation.js +68 -1
  64. package/dist/instrumentation.js.map +1 -1
  65. package/dist/middleware/auth.d.ts.map +1 -1
  66. package/dist/middleware/auth.js +35 -10
  67. package/dist/middleware/auth.js.map +1 -1
  68. package/dist/middleware/error-handler.d.ts.map +1 -1
  69. package/dist/middleware/error-handler.js +8 -1
  70. package/dist/middleware/error-handler.js.map +1 -1
  71. package/dist/middleware/logger.d.ts.map +1 -1
  72. package/dist/middleware/logger.js +5 -2
  73. package/dist/middleware/logger.js.map +1 -1
  74. package/dist/middleware/redact-sensitive.d.ts.map +1 -1
  75. package/dist/middleware/redact-sensitive.js +4 -0
  76. package/dist/middleware/redact-sensitive.js.map +1 -1
  77. package/dist/middleware/validate.d.ts +3 -1
  78. package/dist/middleware/validate.d.ts.map +1 -1
  79. package/dist/middleware/validate.js +37 -0
  80. package/dist/middleware/validate.js.map +1 -1
  81. package/dist/routes/access.d.ts.map +1 -1
  82. package/dist/routes/access.js +20 -0
  83. package/dist/routes/access.js.map +1 -1
  84. package/dist/routes/activity.js +4 -4
  85. package/dist/routes/activity.js.map +1 -1
  86. package/dist/routes/adapter-login-route-spine.d.ts +81 -0
  87. package/dist/routes/adapter-login-route-spine.d.ts.map +1 -0
  88. package/dist/routes/adapter-login-route-spine.js +40 -0
  89. package/dist/routes/adapter-login-route-spine.js.map +1 -0
  90. package/dist/routes/adapters.d.ts +33 -0
  91. package/dist/routes/adapters.d.ts.map +1 -1
  92. package/dist/routes/adapters.js +35 -1
  93. package/dist/routes/adapters.js.map +1 -1
  94. package/dist/routes/adapters.test.d.ts +2 -0
  95. package/dist/routes/adapters.test.d.ts.map +1 -0
  96. package/dist/routes/adapters.test.js +58 -0
  97. package/dist/routes/adapters.test.js.map +1 -0
  98. package/dist/routes/agents.d.ts.map +1 -1
  99. package/dist/routes/agents.js +281 -91
  100. package/dist/routes/agents.js.map +1 -1
  101. package/dist/routes/cases.d.ts +11 -22
  102. package/dist/routes/cases.d.ts.map +1 -1
  103. package/dist/routes/cases.js +13 -13
  104. package/dist/routes/companies.js +3 -3
  105. package/dist/routes/decision-training.js +6 -6
  106. package/dist/routes/decisions.js +4 -4
  107. package/dist/routes/decisions.js.map +1 -1
  108. package/dist/routes/environments.d.ts.map +1 -1
  109. package/dist/routes/environments.js +79 -6
  110. package/dist/routes/environments.js.map +1 -1
  111. package/dist/routes/execution-workspaces.d.ts.map +1 -1
  112. package/dist/routes/execution-workspaces.js +384 -16
  113. package/dist/routes/execution-workspaces.js.map +1 -1
  114. package/dist/routes/file-resources.js +2 -2
  115. package/dist/routes/health.d.ts.map +1 -1
  116. package/dist/routes/health.js +58 -4
  117. package/dist/routes/health.js.map +1 -1
  118. package/dist/routes/instance-settings.d.ts.map +1 -1
  119. package/dist/routes/instance-settings.js +40 -0
  120. package/dist/routes/instance-settings.js.map +1 -1
  121. package/dist/routes/issues.d.ts +10 -0
  122. package/dist/routes/issues.d.ts.map +1 -1
  123. package/dist/routes/issues.js +495 -65
  124. package/dist/routes/issues.js.map +1 -1
  125. package/dist/routes/openapi.d.ts.map +1 -1
  126. package/dist/routes/openapi.js +241 -122
  127. package/dist/routes/openapi.js.map +1 -1
  128. package/dist/routes/pipelines.js +19 -19
  129. package/dist/routes/plugins.d.ts.map +1 -1
  130. package/dist/routes/plugins.js +22 -0
  131. package/dist/routes/plugins.js.map +1 -1
  132. package/dist/routes/projects.d.ts.map +1 -1
  133. package/dist/routes/projects.js +2 -0
  134. package/dist/routes/projects.js.map +1 -1
  135. package/dist/routes/routines.js +2 -2
  136. package/dist/routes/routines.js.map +1 -1
  137. package/dist/routes/secrets.d.ts +1 -1
  138. package/dist/routes/secrets.d.ts.map +1 -1
  139. package/dist/routes/secrets.js +39 -50
  140. package/dist/routes/secrets.js.map +1 -1
  141. package/dist/routes/setup-token-route.test.js +50 -3
  142. package/dist/routes/setup-token-route.test.js.map +1 -1
  143. package/dist/services/adapter-login-lease.d.ts +50 -0
  144. package/dist/services/adapter-login-lease.d.ts.map +1 -0
  145. package/dist/services/adapter-login-lease.js +26 -0
  146. package/dist/services/adapter-login-lease.js.map +1 -0
  147. package/dist/services/adapter-login-lease.test.d.ts +2 -0
  148. package/dist/services/adapter-login-lease.test.d.ts.map +1 -0
  149. package/dist/services/adapter-login-lease.test.js +68 -0
  150. package/dist/services/adapter-login-lease.test.js.map +1 -0
  151. package/dist/services/agent-action-audit.js +1 -1
  152. package/dist/services/agent-secret-bindings.d.ts +15 -0
  153. package/dist/services/agent-secret-bindings.d.ts.map +1 -1
  154. package/dist/services/agent-secret-bindings.js +2 -2
  155. package/dist/services/agent-secret-bindings.js.map +1 -1
  156. package/dist/services/agents.d.ts +13 -13
  157. package/dist/services/agents.d.ts.map +1 -1
  158. package/dist/services/agents.js +46 -5
  159. package/dist/services/agents.js.map +1 -1
  160. package/dist/services/artifact-review-documents.d.ts +34 -0
  161. package/dist/services/artifact-review-documents.d.ts.map +1 -0
  162. package/dist/services/artifact-review-documents.js +196 -0
  163. package/dist/services/artifact-review-documents.js.map +1 -0
  164. package/dist/services/assets.d.ts +1 -1
  165. package/dist/services/codex-device-login-credential-read.d.ts +58 -0
  166. package/dist/services/codex-device-login-credential-read.d.ts.map +1 -0
  167. package/dist/services/codex-device-login-credential-read.js +118 -0
  168. package/dist/services/codex-device-login-credential-read.js.map +1 -0
  169. package/dist/services/codex-device-login-reaper.d.ts.map +1 -1
  170. package/dist/services/codex-device-login-reaper.js +8 -5
  171. package/dist/services/codex-device-login-reaper.js.map +1 -1
  172. package/dist/services/codex-device-login-service.d.ts +127 -36
  173. package/dist/services/codex-device-login-service.d.ts.map +1 -1
  174. package/dist/services/codex-device-login-service.js +204 -84
  175. package/dist/services/codex-device-login-service.js.map +1 -1
  176. package/dist/services/company-portability.d.ts +3 -1
  177. package/dist/services/company-portability.d.ts.map +1 -1
  178. package/dist/services/company-portability.js +76 -20
  179. package/dist/services/company-portability.js.map +1 -1
  180. package/dist/services/company-skill-policy.d.ts +1 -1
  181. package/dist/services/costs.d.ts +1 -1
  182. package/dist/services/decisions.d.ts +6 -6
  183. package/dist/services/duplex-observability-recorder.d.ts +62 -0
  184. package/dist/services/duplex-observability-recorder.d.ts.map +1 -0
  185. package/dist/services/duplex-observability-recorder.js +54 -0
  186. package/dist/services/duplex-observability-recorder.js.map +1 -0
  187. package/dist/services/environment-config.js +5 -5
  188. package/dist/services/environment-config.js.map +1 -1
  189. package/dist/services/environment-custom-image-runtime.d.ts +116 -0
  190. package/dist/services/environment-custom-image-runtime.d.ts.map +1 -1
  191. package/dist/services/environment-custom-image-runtime.js +255 -1
  192. package/dist/services/environment-custom-image-runtime.js.map +1 -1
  193. package/dist/services/environment-custom-images.d.ts +39 -0
  194. package/dist/services/environment-custom-images.d.ts.map +1 -1
  195. package/dist/services/environment-custom-images.js +219 -17
  196. package/dist/services/environment-custom-images.js.map +1 -1
  197. package/dist/services/environment-driver-traits.d.ts +109 -0
  198. package/dist/services/environment-driver-traits.d.ts.map +1 -0
  199. package/dist/services/environment-driver-traits.js +102 -0
  200. package/dist/services/environment-driver-traits.js.map +1 -0
  201. package/dist/services/environment-execution-target.d.ts +4 -0
  202. package/dist/services/environment-execution-target.d.ts.map +1 -1
  203. package/dist/services/environment-execution-target.js +63 -7
  204. package/dist/services/environment-execution-target.js.map +1 -1
  205. package/dist/services/environment-run-orchestrator.d.ts +27 -1
  206. package/dist/services/environment-run-orchestrator.d.ts.map +1 -1
  207. package/dist/services/environment-run-orchestrator.js +24 -4
  208. package/dist/services/environment-run-orchestrator.js.map +1 -1
  209. package/dist/services/environment-runtime.d.ts +118 -20
  210. package/dist/services/environment-runtime.d.ts.map +1 -1
  211. package/dist/services/environment-runtime.js +436 -91
  212. package/dist/services/environment-runtime.js.map +1 -1
  213. package/dist/services/environments.d.ts.map +1 -1
  214. package/dist/services/environments.js +20 -2
  215. package/dist/services/environments.js.map +1 -1
  216. package/dist/services/execution-workspace-branch-ownership.d.ts +4 -0
  217. package/dist/services/execution-workspace-branch-ownership.d.ts.map +1 -0
  218. package/dist/services/execution-workspace-branch-ownership.js +9 -0
  219. package/dist/services/execution-workspace-branch-ownership.js.map +1 -0
  220. package/dist/services/execution-workspace-policy.d.ts.map +1 -1
  221. package/dist/services/execution-workspace-policy.js +3 -0
  222. package/dist/services/execution-workspace-policy.js.map +1 -1
  223. package/dist/services/execution-workspaces.d.ts +2 -0
  224. package/dist/services/execution-workspaces.d.ts.map +1 -1
  225. package/dist/services/execution-workspaces.js +90 -2
  226. package/dist/services/execution-workspaces.js.map +1 -1
  227. package/dist/services/external-objects.d.ts +19 -19
  228. package/dist/services/finance.d.ts +1 -1
  229. package/dist/services/goals.d.ts +2 -2
  230. package/dist/services/heartbeat-policy.d.ts +3 -0
  231. package/dist/services/heartbeat-policy.d.ts.map +1 -0
  232. package/dist/services/heartbeat-policy.js +10 -0
  233. package/dist/services/heartbeat-policy.js.map +1 -0
  234. package/dist/services/heartbeat-run-runtime-status.test.js +1 -1
  235. package/dist/services/heartbeat-run-runtime-status.test.js.map +1 -1
  236. package/dist/services/heartbeat.d.ts +23 -1
  237. package/dist/services/heartbeat.d.ts.map +1 -1
  238. package/dist/services/heartbeat.js +192 -11
  239. package/dist/services/heartbeat.js.map +1 -1
  240. package/dist/services/index.d.ts +1 -0
  241. package/dist/services/index.d.ts.map +1 -1
  242. package/dist/services/index.js +1 -0
  243. package/dist/services/index.js.map +1 -1
  244. package/dist/services/instance-settings.d.ts.map +1 -1
  245. package/dist/services/instance-settings.js +2 -0
  246. package/dist/services/instance-settings.js.map +1 -1
  247. package/dist/services/issue-dependency-wakeups.d.ts +57 -9
  248. package/dist/services/issue-dependency-wakeups.d.ts.map +1 -1
  249. package/dist/services/issue-dependency-wakeups.js +146 -14
  250. package/dist/services/issue-dependency-wakeups.js.map +1 -1
  251. package/dist/services/issue-dependency-wakeups.test.d.ts +2 -0
  252. package/dist/services/issue-dependency-wakeups.test.d.ts.map +1 -0
  253. package/dist/services/issue-dependency-wakeups.test.js +183 -0
  254. package/dist/services/issue-dependency-wakeups.test.js.map +1 -0
  255. package/dist/services/issue-recovery-actions.d.ts +6 -1
  256. package/dist/services/issue-recovery-actions.d.ts.map +1 -1
  257. package/dist/services/issue-recovery-actions.js +123 -44
  258. package/dist/services/issue-recovery-actions.js.map +1 -1
  259. package/dist/services/issue-thread-interactions.d.ts +8 -0
  260. package/dist/services/issue-thread-interactions.d.ts.map +1 -1
  261. package/dist/services/issue-thread-interactions.js +220 -10
  262. package/dist/services/issue-thread-interactions.js.map +1 -1
  263. package/dist/services/issues.d.ts +8 -7
  264. package/dist/services/issues.d.ts.map +1 -1
  265. package/dist/services/issues.js +84 -12
  266. package/dist/services/issues.js.map +1 -1
  267. package/dist/services/local-service-supervisor.d.ts +61 -1
  268. package/dist/services/local-service-supervisor.d.ts.map +1 -1
  269. package/dist/services/local-service-supervisor.js +221 -25
  270. package/dist/services/local-service-supervisor.js.map +1 -1
  271. package/dist/services/login-command.d.ts +46 -0
  272. package/dist/services/login-command.d.ts.map +1 -0
  273. package/dist/services/login-command.js +87 -0
  274. package/dist/services/login-command.js.map +1 -0
  275. package/dist/services/login-command.test.d.ts +2 -0
  276. package/dist/services/login-command.test.d.ts.map +1 -0
  277. package/dist/services/login-command.test.js +71 -0
  278. package/dist/services/login-command.test.js.map +1 -0
  279. package/dist/services/managed-workspace-identity.d.ts +140 -0
  280. package/dist/services/managed-workspace-identity.d.ts.map +1 -0
  281. package/dist/services/managed-workspace-identity.js +277 -0
  282. package/dist/services/managed-workspace-identity.js.map +1 -0
  283. package/dist/services/plugin-environment-driver.d.ts +15 -1
  284. package/dist/services/plugin-environment-driver.d.ts.map +1 -1
  285. package/dist/services/plugin-environment-driver.js +23 -1
  286. package/dist/services/plugin-environment-driver.js.map +1 -1
  287. package/dist/services/plugin-host-services.d.ts +3 -2
  288. package/dist/services/plugin-host-services.d.ts.map +1 -1
  289. package/dist/services/plugin-host-services.js +11 -2
  290. package/dist/services/plugin-host-services.js.map +1 -1
  291. package/dist/services/plugin-loader.d.ts.map +1 -1
  292. package/dist/services/plugin-loader.js +39 -8
  293. package/dist/services/plugin-loader.js.map +1 -1
  294. package/dist/services/plugin-managed-agents.d.ts.map +1 -1
  295. package/dist/services/plugin-managed-agents.js +50 -5
  296. package/dist/services/plugin-managed-agents.js.map +1 -1
  297. package/dist/services/plugin-manifest-validator.d.ts.map +1 -1
  298. package/dist/services/plugin-manifest-validator.js +5 -2
  299. package/dist/services/plugin-manifest-validator.js.map +1 -1
  300. package/dist/services/plugin-registry.d.ts +5 -5
  301. package/dist/services/plugin-worker-manager.d.ts +158 -11
  302. package/dist/services/plugin-worker-manager.d.ts.map +1 -1
  303. package/dist/services/plugin-worker-manager.js +1139 -79
  304. package/dist/services/plugin-worker-manager.js.map +1 -1
  305. package/dist/services/projects.d.ts +1 -1
  306. package/dist/services/recovery/disposition-repair.d.ts +24 -0
  307. package/dist/services/recovery/disposition-repair.d.ts.map +1 -0
  308. package/dist/services/recovery/disposition-repair.js +125 -0
  309. package/dist/services/recovery/disposition-repair.js.map +1 -0
  310. package/dist/services/recovery/service.d.ts +6 -6
  311. package/dist/services/recovery/service.d.ts.map +1 -1
  312. package/dist/services/recovery/service.js +856 -384
  313. package/dist/services/recovery/service.js.map +1 -1
  314. package/dist/services/recovery/stranded-notice.js +4 -4
  315. package/dist/services/recovery/stranded-notice.js.map +1 -1
  316. package/dist/services/recovery/stranded-notice.test.js +1 -1
  317. package/dist/services/recovery/stranded-notice.test.js.map +1 -1
  318. package/dist/services/recovery/successful-run-handoff.d.ts +1 -1
  319. package/dist/services/recovery/successful-run-handoff.d.ts.map +1 -1
  320. package/dist/services/recovery/successful-run-handoff.js +6 -4
  321. package/dist/services/recovery/successful-run-handoff.js.map +1 -1
  322. package/dist/services/recovery/successful-run-handoff.test.js +1 -1
  323. package/dist/services/recovery/successful-run-handoff.test.js.map +1 -1
  324. package/dist/services/recovery-observability.d.ts +1 -1
  325. package/dist/services/recovery-observability.d.ts.map +1 -1
  326. package/dist/services/recovery-observability.js +4 -1
  327. package/dist/services/recovery-observability.js.map +1 -1
  328. package/dist/services/routines.d.ts.map +1 -1
  329. package/dist/services/routines.js +86 -1
  330. package/dist/services/routines.js.map +1 -1
  331. package/dist/services/runtime-exposure/loopback-listener.js +1 -1
  332. package/dist/services/runtime-exposure/loopback-listener.js.map +1 -1
  333. package/dist/services/runtime-exposure/loopback-listener.test.js +1 -1
  334. package/dist/services/runtime-exposure/loopback-listener.test.js.map +1 -1
  335. package/dist/services/scripts/codex-auth-read.cjs +93 -0
  336. package/dist/services/secret-proposal-authorization.d.ts +15 -0
  337. package/dist/services/secret-proposal-authorization.d.ts.map +1 -0
  338. package/dist/services/secret-proposal-authorization.js +29 -0
  339. package/dist/services/secret-proposal-authorization.js.map +1 -0
  340. package/dist/services/secret-proposal-notifications.d.ts +18 -0
  341. package/dist/services/secret-proposal-notifications.d.ts.map +1 -0
  342. package/dist/services/secret-proposal-notifications.js +37 -0
  343. package/dist/services/secret-proposal-notifications.js.map +1 -0
  344. package/dist/services/secret-proposals.d.ts +20 -10
  345. package/dist/services/secret-proposals.d.ts.map +1 -1
  346. package/dist/services/secret-proposals.js +205 -14
  347. package/dist/services/secret-proposals.js.map +1 -1
  348. package/dist/services/secrets.d.ts +3 -3
  349. package/dist/services/settings-visibility.d.ts +17 -0
  350. package/dist/services/settings-visibility.d.ts.map +1 -0
  351. package/dist/services/settings-visibility.js +29 -0
  352. package/dist/services/settings-visibility.js.map +1 -0
  353. package/dist/services/setup-token-reaper.d.ts +36 -0
  354. package/dist/services/setup-token-reaper.d.ts.map +1 -0
  355. package/dist/services/setup-token-reaper.js +38 -0
  356. package/dist/services/setup-token-reaper.js.map +1 -0
  357. package/dist/services/setup-token-reaper.test.d.ts +2 -0
  358. package/dist/services/setup-token-reaper.test.d.ts.map +1 -0
  359. package/dist/services/setup-token-reaper.test.js +123 -0
  360. package/dist/services/setup-token-reaper.test.js.map +1 -0
  361. package/dist/services/setup-token-session.d.ts +57 -45
  362. package/dist/services/setup-token-session.d.ts.map +1 -1
  363. package/dist/services/setup-token-session.js +118 -110
  364. package/dist/services/setup-token-session.js.map +1 -1
  365. package/dist/services/setup-token-session.test.js +88 -47
  366. package/dist/services/setup-token-session.test.js.map +1 -1
  367. package/dist/services/setup-token-transport-binding.d.ts +20 -12
  368. package/dist/services/setup-token-transport-binding.d.ts.map +1 -1
  369. package/dist/services/setup-token-transport-binding.js +59 -32
  370. package/dist/services/setup-token-transport-binding.js.map +1 -1
  371. package/dist/services/setup-token-transport-binding.test.js +50 -17
  372. package/dist/services/setup-token-transport-binding.test.js.map +1 -1
  373. package/dist/services/smoke-lab.d.ts +1 -1
  374. package/dist/services/stalled-review-decisions.d.ts +1 -1
  375. package/dist/services/status-cards.d.ts +168 -168
  376. package/dist/services/tool-access-policy.d.ts +2 -2
  377. package/dist/services/tool-gateway.d.ts +1 -1
  378. package/dist/services/work-products.d.ts +19 -0
  379. package/dist/services/work-products.d.ts.map +1 -1
  380. package/dist/services/work-products.js +50 -3
  381. package/dist/services/work-products.js.map +1 -1
  382. package/dist/services/workspace-git-operation-scheduler.test.js +10 -3
  383. package/dist/services/workspace-git-operation-scheduler.test.js.map +1 -1
  384. package/dist/services/workspace-instance-cleanup.d.ts +9 -0
  385. package/dist/services/workspace-instance-cleanup.d.ts.map +1 -1
  386. package/dist/services/workspace-instance-cleanup.js +29 -3
  387. package/dist/services/workspace-instance-cleanup.js.map +1 -1
  388. package/dist/services/workspace-login-handoff-issuer.d.ts +95 -0
  389. package/dist/services/workspace-login-handoff-issuer.d.ts.map +1 -0
  390. package/dist/services/workspace-login-handoff-issuer.js +147 -0
  391. package/dist/services/workspace-login-handoff-issuer.js.map +1 -0
  392. package/dist/services/workspace-operations.d.ts +4 -1
  393. package/dist/services/workspace-operations.d.ts.map +1 -1
  394. package/dist/services/workspace-operations.js +29 -15
  395. package/dist/services/workspace-operations.js.map +1 -1
  396. package/dist/services/workspace-readiness.d.ts +56 -0
  397. package/dist/services/workspace-readiness.d.ts.map +1 -0
  398. package/dist/services/workspace-readiness.js +250 -0
  399. package/dist/services/workspace-readiness.js.map +1 -0
  400. package/dist/services/workspace-realization.d.ts.map +1 -1
  401. package/dist/services/workspace-realization.js +5 -33
  402. package/dist/services/workspace-realization.js.map +1 -1
  403. package/dist/services/workspace-runtime-exposure.test.js +321 -12
  404. package/dist/services/workspace-runtime-exposure.test.js.map +1 -1
  405. package/dist/services/workspace-runtime-leases.d.ts.map +1 -1
  406. package/dist/services/workspace-runtime-leases.js +1 -1
  407. package/dist/services/workspace-runtime-leases.js.map +1 -1
  408. package/dist/services/workspace-runtime-read-model.d.ts +8 -8
  409. package/dist/services/workspace-runtime-read-model.test.js +20 -0
  410. package/dist/services/workspace-runtime-read-model.test.js.map +1 -1
  411. package/dist/services/workspace-runtime-ready-comment.test.js +1 -0
  412. package/dist/services/workspace-runtime-ready-comment.test.js.map +1 -1
  413. package/dist/services/workspace-runtime.d.ts +77 -4
  414. package/dist/services/workspace-runtime.d.ts.map +1 -1
  415. package/dist/services/workspace-runtime.js +1020 -126
  416. package/dist/services/workspace-runtime.js.map +1 -1
  417. package/dist/worktree-config.d.ts.map +1 -1
  418. package/dist/worktree-config.js +3 -76
  419. package/dist/worktree-config.js.map +1 -1
  420. package/dist/worktree-seed-manifest.d.ts +8 -0
  421. package/dist/worktree-seed-manifest.d.ts.map +1 -0
  422. package/dist/worktree-seed-manifest.js +47 -0
  423. package/dist/worktree-seed-manifest.js.map +1 -0
  424. package/package.json +34 -30
  425. package/skills/paperclip/SKILL.md +2 -0
  426. package/skills/paperclip/references/api-reference.md +44 -2
  427. package/ui-dist/assets/CompanyExport-DnEsO-St.js +4 -0
  428. package/ui-dist/assets/{abnfDiagram-N423BO3Z-BvgoV-u5.js → abnfDiagram-N423BO3Z-2ff8TsQ0.js} +1 -1
  429. package/ui-dist/assets/{arc-BInnUBUU.js → arc-B2AXsH34.js} +1 -1
  430. package/ui-dist/assets/architectureDiagram-T3A2C74G-BDxtKMxk.js +36 -0
  431. package/ui-dist/assets/{blockDiagram-VBNYF7ZC-D9kzAkLN.js → blockDiagram-VBNYF7ZC-BB8T5Mj5.js} +1 -1
  432. package/ui-dist/assets/{c4Diagram-5PPSVZJV-BwzsgV_0.js → c4Diagram-5PPSVZJV-lMo8qk-x.js} +1 -1
  433. package/ui-dist/assets/channel-DCTVZpyq.js +1 -0
  434. package/ui-dist/assets/{chunk-2GRJ4B5K-D2EQ9vrl.js → chunk-2GRJ4B5K-CsS7EB3G.js} +1 -1
  435. package/ui-dist/assets/{chunk-2Q5K7J3B-DOA_8fSd.js → chunk-2Q5K7J3B-DFyQPjoR.js} +1 -1
  436. package/ui-dist/assets/{chunk-5RXB4S5H-CT5ukRiT.js → chunk-5RXB4S5H-No2SHOQR.js} +1 -1
  437. package/ui-dist/assets/{chunk-5VM5RSS4-D2gOlkyB.js → chunk-5VM5RSS4-DdxQO7V9.js} +1 -1
  438. package/ui-dist/assets/{chunk-6Q2QTUOP-DUb6aG8c.js → chunk-6Q2QTUOP-gbHjh-aK.js} +1 -1
  439. package/ui-dist/assets/{chunk-GF5L2VYU-BPabG3Cx.js → chunk-GF5L2VYU-h-BBl6NY.js} +1 -1
  440. package/ui-dist/assets/{chunk-JWPE2WC7-scNfhlZz.js → chunk-JWPE2WC7-Q3pJdTz5.js} +1 -1
  441. package/ui-dist/assets/{chunk-KBJHAD2P-BcRAzRpq.js → chunk-KBJHAD2P-Ba8LGLSx.js} +1 -1
  442. package/ui-dist/assets/{chunk-RYQCIY6F-BiZ0-EGh.js → chunk-RYQCIY6F-9VcvykBo.js} +1 -1
  443. package/ui-dist/assets/{chunk-XXDRQBXY-lJULxFIE.js → chunk-XXDRQBXY-NVbjDH4W.js} +1 -1
  444. package/ui-dist/assets/classDiagram-JCYQIIEL-CzJ88u6h.js +1 -0
  445. package/ui-dist/assets/classDiagram-v2-OCEON4UE-CzJ88u6h.js +1 -0
  446. package/ui-dist/assets/cose-bilkent-JH36ORCC-Cdz4wtUh.js +1 -0
  447. package/ui-dist/assets/{cynefin-VYW2F7L2-B34jJY1x.js → cynefin-VYW2F7L2-MpzJkW5s.js} +1 -1
  448. package/ui-dist/assets/{cynefinDiagram-MW4NZA55-DQ8QK8JK.js → cynefinDiagram-MW4NZA55-_Nx8av7i.js} +1 -1
  449. package/ui-dist/assets/{dagre-VZM6K2ZE-B7lSKgxH.js → dagre-VZM6K2ZE-DcZTQ4Oh.js} +1 -1
  450. package/ui-dist/assets/{diagram-7IWD3JNH-B3hLAFGE.js → diagram-7IWD3JNH-UyLi2mee.js} +1 -1
  451. package/ui-dist/assets/{diagram-B4RE2ZJO-CH9Ro9e0.js → diagram-B4RE2ZJO-B6p0Ivqg.js} +1 -1
  452. package/ui-dist/assets/{diagram-LBJQPF4R-DdPVMii7.js → diagram-LBJQPF4R-C8u6pa97.js} +1 -1
  453. package/ui-dist/assets/{diagram-Q27KOJAE-f5VXswjc.js → diagram-Q27KOJAE-DbwyagW0.js} +1 -1
  454. package/ui-dist/assets/{diagram-UB23O5K3-DGqxixsR.js → diagram-UB23O5K3-Cn5BMEH7.js} +1 -1
  455. package/ui-dist/assets/{ebnfDiagram-BXEA7PRR-C-1klg_w.js → ebnfDiagram-BXEA7PRR-vE0IZma9.js} +1 -1
  456. package/ui-dist/assets/{erDiagram-JOGREHBK-Dt4qK4gv.js → erDiagram-JOGREHBK-3OZVIlVG.js} +1 -1
  457. package/ui-dist/assets/{flowDiagram-UKHOOZJN-9ZlrTuET.js → flowDiagram-UKHOOZJN-C94FiPyr.js} +1 -1
  458. package/ui-dist/assets/ganttDiagram-PKOTCBZU-DMVaPmF-.js +292 -0
  459. package/ui-dist/assets/{gitGraphDiagram-DS77QQ5N-HH2fSgad.js → gitGraphDiagram-DS77QQ5N-yeFtJ689.js} +1 -1
  460. package/ui-dist/assets/{index-Cm6iEYPt.js → index-B4ZF3vY8.js} +288 -224
  461. package/ui-dist/assets/{index-CHXG4GPL.js → index-Bi_vqkcQ.js} +1 -1
  462. package/ui-dist/assets/{index-Bc9g6q63.js → index-BjDGQg9-.js} +1 -1
  463. package/ui-dist/assets/{index-FHzrJ7iQ.js → index-BnpyUMTb.js} +1 -1
  464. package/ui-dist/assets/{index-C1mpWCcn.js → index-BoqQTVMA.js} +1 -1
  465. package/ui-dist/assets/index-Bq-Mr-4x.js +1 -0
  466. package/ui-dist/assets/{index-DceuCrr8.js → index-Brb2U7N4.js} +1 -1
  467. package/ui-dist/assets/{index-DQIrrn2L.js → index-BsBybVwH.js} +1 -1
  468. package/ui-dist/assets/{index-CQhaM6qd.js → index-C2iv4Wgu.js} +1 -1
  469. package/ui-dist/assets/{index-DV2FOgyD.js → index-CKxIu7uO.js} +1 -1
  470. package/ui-dist/assets/{index-DU4U1fuv.js → index-Cb4VGIwp.js} +1 -1
  471. package/ui-dist/assets/{index-B61ORkIb.js → index-ChpszwcO.js} +1 -1
  472. package/ui-dist/assets/{index-DlVBBF8o.js → index-CoQFdT8N.js} +1 -1
  473. package/ui-dist/assets/index-D6P8_f0W.css +1 -0
  474. package/ui-dist/assets/index-DKdmghUG.js +1 -0
  475. package/ui-dist/assets/{index-CVTL3aAL.js → index-DaBci7Bx.js} +1 -1
  476. package/ui-dist/assets/{index-diFs0CNC.js → index-DjYaNiXZ.js} +1 -1
  477. package/ui-dist/assets/{index-Bf7tyGxE.js → index-DxTBJl4h.js} +1 -1
  478. package/ui-dist/assets/{index-DsdVneqe.js → index-Dz3E8nn0.js} +1 -1
  479. package/ui-dist/assets/{index-DvFUXI-Q.js → index-J7dz_hap.js} +1 -1
  480. package/ui-dist/assets/{index-CLu3Tfpv.js → index-JMp2Gpnz.js} +1 -1
  481. package/ui-dist/assets/{index-CcRTJ93J.js → index-Kp6wavQt.js} +1 -1
  482. package/ui-dist/assets/{index-BvFx-4KW.js → index-LBhYZ0L4.js} +1 -1
  483. package/ui-dist/assets/{index-BbAhzCq8.js → index-c3C0P6l8.js} +4 -4
  484. package/ui-dist/assets/{index-BY5ITKmG.js → index-pBEPheTW.js} +1 -1
  485. package/ui-dist/assets/{infoDiagram-6WML65LV-2jai2fw-.js → infoDiagram-6WML65LV-BiL7jKLA.js} +1 -1
  486. package/ui-dist/assets/{ishikawaDiagram-WSZJBQD7-CUmGhmEb.js → ishikawaDiagram-WSZJBQD7-DYcQy41D.js} +1 -1
  487. package/ui-dist/assets/{journeyDiagram-NVQOT4AX-CGQuPDO1.js → journeyDiagram-NVQOT4AX-Bxva6JgA.js} +1 -1
  488. package/ui-dist/assets/{kanban-definition-27J2QSJJ-zgEPcbHl.js → kanban-definition-27J2QSJJ-B2HpN34Q.js} +1 -1
  489. package/ui-dist/assets/{linear-BVf5VtLS.js → linear-Dq8qSESw.js} +1 -1
  490. package/ui-dist/assets/{mermaid.core-D2TFkGfI.js → mermaid.core-Ikay8Cpl.js} +35 -35
  491. package/ui-dist/assets/{mindmap-definition-FAOFIHXS-xoAQ0Lb_.js → mindmap-definition-FAOFIHXS-C-SIdYSY.js} +1 -1
  492. package/ui-dist/assets/{pegDiagram-VL7TDLO6-CBR1PWLr.js → pegDiagram-VL7TDLO6-C7rIJ_13.js} +1 -1
  493. package/ui-dist/assets/{pieDiagram-7S7Q4E2Y-BMPnzK_e.js → pieDiagram-7S7Q4E2Y-3gx0a0ve.js} +1 -1
  494. package/ui-dist/assets/{quadrantDiagram-CIZ2JOQS-CPtVUPkR.js → quadrantDiagram-CIZ2JOQS-BiwM9QGv.js} +1 -1
  495. package/ui-dist/assets/{railroadDiagram-AXF67PYL-DC0lsZV1.js → railroadDiagram-AXF67PYL-rFS8XcFA.js} +1 -1
  496. package/ui-dist/assets/{requirementDiagram-LRYGKXZP-BF6k05SB.js → requirementDiagram-LRYGKXZP-CEAUDUTQ.js} +1 -1
  497. package/ui-dist/assets/{sankeyDiagram-W5VNT64P-CRN0ibiP.js → sankeyDiagram-W5VNT64P-B7anpjlM.js} +1 -1
  498. package/ui-dist/assets/{sequenceDiagram-SI44F4Z6-CQtTiPWm.js → sequenceDiagram-SI44F4Z6-CJEdJvm_.js} +1 -1
  499. package/ui-dist/assets/{sizeCapture-X5ZJPWSS-BdjuGZd1.js → sizeCapture-X5ZJPWSS-CU1Vm6c1.js} +1 -1
  500. package/ui-dist/assets/{stateDiagram-OKZ733FA-B99onxyh.js → stateDiagram-OKZ733FA-wxVV9WIi.js} +1 -1
  501. package/ui-dist/assets/stateDiagram-v2-UEYNNEHI-BIFLqlqR.js +1 -0
  502. package/ui-dist/assets/{swimlanes-SLNWSIFB-BIByPbrL.js → swimlanes-SLNWSIFB-Cd-C1Z_k.js} +2 -2
  503. package/ui-dist/assets/swimlanesDiagram-ULZ7WXOC-CoBROkkd.js +8 -0
  504. package/ui-dist/assets/{timeline-definition-Z64GVDOM-I1NgOcn9.js → timeline-definition-Z64GVDOM-SWngk4aR.js} +1 -1
  505. package/ui-dist/assets/{vennDiagram-T6HMQDX7-D6t2Njcl.js → vennDiagram-T6HMQDX7-DFdPUr36.js} +1 -1
  506. package/ui-dist/assets/{wardleyDiagram-T6FBY63Y-BiYKm9gh.js → wardleyDiagram-T6FBY63Y-C6IlrZ7t.js} +1 -1
  507. package/ui-dist/assets/{xychartDiagram-ELKLHX3M-BhwXKWIa.js → xychartDiagram-ELKLHX3M-BNm6hHGl.js} +1 -1
  508. package/ui-dist/index.html +2 -2
  509. package/ui-dist/assets/architectureDiagram-T3A2C74G-Dg4MziOm.js +0 -36
  510. package/ui-dist/assets/channel-qoSYbCn0.js +0 -1
  511. package/ui-dist/assets/classDiagram-JCYQIIEL-B24u1REs.js +0 -1
  512. package/ui-dist/assets/classDiagram-v2-OCEON4UE-B24u1REs.js +0 -1
  513. package/ui-dist/assets/cose-bilkent-JH36ORCC-Do8pe8JB.js +0 -1
  514. package/ui-dist/assets/ganttDiagram-PKOTCBZU-CE3lyvFq.js +0 -292
  515. package/ui-dist/assets/index-BHiUiToL.css +0 -1
  516. package/ui-dist/assets/index-hkanj4t6.js +0 -1
  517. package/ui-dist/assets/index-yRJnh4vx.js +0 -1
  518. package/ui-dist/assets/stateDiagram-v2-UEYNNEHI-bzFlYBZ1.js +0 -1
  519. package/ui-dist/assets/swimlanesDiagram-ULZ7WXOC-DgdkBnuK.js +0 -8
@@ -0,0 +1,250 @@
1
+ /**
2
+ * Protected workspace readiness (PAP-17572).
3
+ *
4
+ * `/api/health` answering 200 only proves a listener exists. This module answers
5
+ * the question the control plane and the UI actually need — "can a board user
6
+ * open this clone and see their data?" — from four independent signals: the
7
+ * isolated database, the versioned seed manifest, representative cloned rows,
8
+ * and the login-handoff configuration.
9
+ *
10
+ * Everything here is read-only and deliberately small: structural validation of
11
+ * a clone happens once, during provisioning or repair, not on every probe.
12
+ *
13
+ * `repairing` is intentionally not derivable here. A guest process cannot know
14
+ * that the control plane is running a managed repair against it; the UI layers
15
+ * that state on from the live workspace-operation row.
16
+ */
17
+ import { existsSync, readFileSync } from "node:fs";
18
+ import path from "node:path";
19
+ import { and, eq, sql } from "drizzle-orm";
20
+ import { authUsers, companies, companyMemberships, issues } from "@paperclipai/db";
21
+ import { resolveWorkspaceHandoffLocalCompanyId, resolveWorkspaceHandoffLocalKey, resolveWorkspaceHandoffLocalWorkspaceId, } from "../auth/workspace-login-handoff.js";
22
+ import { resolvePaperclipInstanceId } from "../home-paths.js";
23
+ import { logger } from "../middleware/logger.js";
24
+ const WORKSPACE_SEED_MANIFEST_BASENAME = "seed-manifest.json";
25
+ const LEGACY_SEED_PENDING_BASENAME = "seed-pending";
26
+ const LEGACY_SEED_COMPLETE_BASENAME = "seed-complete";
27
+ /**
28
+ * Directory holding this instance's seed markers.
29
+ *
30
+ * `PAPERCLIP_CONFIG` is the authoritative pointer a seeded worktree is started
31
+ * with; the cwd fallback covers a guest launched without it.
32
+ */
33
+ export function resolveWorkspaceSeedMarkerDir(env = process.env) {
34
+ const configPath = env.PAPERCLIP_CONFIG?.trim();
35
+ if (configPath)
36
+ return path.dirname(path.resolve(configPath));
37
+ return path.resolve(process.cwd(), ".paperclip");
38
+ }
39
+ function readSeedManifestSummary(markerDir) {
40
+ const manifestPath = path.join(markerDir, WORKSPACE_SEED_MANIFEST_BASENAME);
41
+ if (existsSync(manifestPath)) {
42
+ let manifest;
43
+ try {
44
+ manifest = JSON.parse(readFileSync(manifestPath, "utf8"));
45
+ }
46
+ catch {
47
+ // A manifest we cannot parse is evidence of an interrupted write, which is
48
+ // a failure — never a silent "assume seeded".
49
+ return { state: "failed", phase: null, mode: null, failurePhase: "seed_manifest_unreadable" };
50
+ }
51
+ const rawState = typeof manifest.state === "string" ? manifest.state : null;
52
+ const state = rawState === "pending" || rawState === "running" || rawState === "verified" || rawState === "failed"
53
+ ? rawState
54
+ : "unknown";
55
+ const phase = typeof manifest.phase === "string" ? manifest.phase : null;
56
+ const mode = manifest.seedMode === "minimal" || manifest.seedMode === "full" ? manifest.seedMode : null;
57
+ return {
58
+ state,
59
+ phase,
60
+ mode,
61
+ failurePhase: state === "failed" ? phase ?? "unknown" : null,
62
+ };
63
+ }
64
+ // Legacy markers predate the versioned manifest. `seed-complete`, or the
65
+ // absence of both markers on an already-running instance, means an adopted
66
+ // legacy clone whose completeness this probe cannot prove.
67
+ if (existsSync(path.join(markerDir, LEGACY_SEED_PENDING_BASENAME))) {
68
+ return { state: "pending", phase: "pending", mode: null, failurePhase: null };
69
+ }
70
+ if (existsSync(path.join(markerDir, LEGACY_SEED_COMPLETE_BASENAME))) {
71
+ return { state: "unknown", phase: "legacy_complete_marker", mode: null, failurePhase: null };
72
+ }
73
+ return { state: "absent", phase: null, mode: null, failurePhase: null };
74
+ }
75
+ /**
76
+ * Collapse the individual signals into one state.
77
+ *
78
+ * `degraded` is reserved for "the clone exists and was verified, but a signal
79
+ * regressed", which is the case an operator can fix with one bounded repair.
80
+ * A clone that never finished reports `provisioning`/`validating`/`failed`
81
+ * instead, so the UI never offers a repair for work that is still in progress.
82
+ */
83
+ export function resolveWorkspaceReadinessState(input) {
84
+ if (input.seedState === "failed")
85
+ return "failed";
86
+ if (input.seedState === "pending")
87
+ return "provisioning";
88
+ if (input.seedState === "running")
89
+ return "provisioning";
90
+ if (!input.databaseReady)
91
+ return input.seedState === "verified" ? "degraded" : "provisioning";
92
+ if (!input.cloneDataReady || !input.authHandoffReady) {
93
+ return input.seedState === "verified" ? "degraded" : "validating";
94
+ }
95
+ // Cloned data and handoff both check out. A legacy or absent manifest is not
96
+ // proof of a verified seed, so surface it as validating rather than ready.
97
+ if (input.seedState !== "verified")
98
+ return "validating";
99
+ return "ready";
100
+ }
101
+ /**
102
+ * Whether this process is a cloned workspace instance at all.
103
+ *
104
+ * The primary control plane has no seed manifest and no injected workspace
105
+ * identity, and reporting a hollow readiness block for it would invite consumers
106
+ * to treat "no clone" as "broken clone". Detection is by evidence on disk or
107
+ * injected identity, never by a branch-name or path heuristic.
108
+ */
109
+ let managedWorkspaceInstanceCache = null;
110
+ /**
111
+ * How long the marker-file answer is reused. `/api/health` is polled by the dev
112
+ * runner, the control plane's readiness probe and the UI, so three `existsSync`
113
+ * calls per request would be pure overhead on an instance whose answer is
114
+ * effectively static. Short enough that a manifest appearing mid-provision is
115
+ * picked up promptly.
116
+ */
117
+ const MANAGED_WORKSPACE_DETECTION_TTL_MS = 5_000;
118
+ export function isManagedWorkspaceInstance(env = process.env, now = Date.now) {
119
+ // Injected identity is authoritative and free to read, so it short-circuits
120
+ // ahead of any filesystem work.
121
+ if (resolveWorkspaceHandoffLocalKey(env))
122
+ return true;
123
+ if (resolveWorkspaceHandoffLocalWorkspaceId(env))
124
+ return true;
125
+ const markerDir = resolveWorkspaceSeedMarkerDir(env);
126
+ const cached = managedWorkspaceInstanceCache;
127
+ if (cached
128
+ && cached.markerDir === markerDir
129
+ && now() - cached.checkedAtMs < MANAGED_WORKSPACE_DETECTION_TTL_MS) {
130
+ return cached.value;
131
+ }
132
+ const value = existsSync(path.join(markerDir, WORKSPACE_SEED_MANIFEST_BASENAME))
133
+ || existsSync(path.join(markerDir, LEGACY_SEED_PENDING_BASENAME))
134
+ || existsSync(path.join(markerDir, LEGACY_SEED_COMPLETE_BASENAME));
135
+ managedWorkspaceInstanceCache = { markerDir, value, checkedAtMs: now() };
136
+ return value;
137
+ }
138
+ /** Test-only seam so a suite can change marker files without waiting out the TTL. */
139
+ export function resetManagedWorkspaceInstanceCacheForTests() {
140
+ managedWorkspaceInstanceCache = null;
141
+ }
142
+ /**
143
+ * Assemble this instance's readiness. Never throws: a probe that cannot read the
144
+ * database must report `databaseReady: false`, not fail the health endpoint.
145
+ */
146
+ export async function resolveWorkspaceReadiness(deps) {
147
+ const env = deps.env ?? process.env;
148
+ const seed = readSeedManifestSummary(resolveWorkspaceSeedMarkerDir(env));
149
+ const instanceId = resolvePaperclipInstanceId();
150
+ const executionWorkspaceId = resolveWorkspaceHandoffLocalWorkspaceId(env);
151
+ // The company this workspace's board represents. Both product probes below are
152
+ // scoped to it: "some company in the clone has issues" and "some user has some
153
+ // membership" can both be true while the company the operator is opening is
154
+ // missing or has no members, which is a workspace that must not report ready.
155
+ const companyId = resolveWorkspaceHandoffLocalCompanyId(env);
156
+ const handoffKeyPresent = Boolean(resolveWorkspaceHandoffLocalKey(env));
157
+ const handoffUserId = deps.handoffSubject?.userId.trim() || null;
158
+ const handoffUserEmail = deps.handoffSubject?.email.trim().toLowerCase() || null;
159
+ let databaseReady = false;
160
+ let cloneDataReady = false;
161
+ let clonedAdminPresent = false;
162
+ let probeFailurePhase = null;
163
+ if (deps.db) {
164
+ try {
165
+ await deps.db.execute(sql `SELECT 1`);
166
+ databaseReady = true;
167
+ }
168
+ catch (error) {
169
+ logger.warn({ err: error }, "workspace readiness database probe failed");
170
+ probeFailurePhase = "database_unreachable";
171
+ }
172
+ if (databaseReady && companyId) {
173
+ try {
174
+ // One representative cloned company/issue pair proves the restore carried
175
+ // product rows, not just an empty migrated schema.
176
+ const clonedRows = await deps.db
177
+ .select({ companyId: companies.id })
178
+ .from(companies)
179
+ .innerJoin(issues, eq(issues.companyId, companies.id))
180
+ .where(eq(companies.id, companyId))
181
+ .limit(1)
182
+ .then((rows) => rows.length);
183
+ cloneDataReady = clonedRows > 0;
184
+ if (!cloneDataReady)
185
+ probeFailurePhase ??= "clone_data_missing";
186
+ }
187
+ catch (error) {
188
+ logger.warn({ err: error }, "workspace readiness clone-data probe failed");
189
+ probeFailurePhase ??= "clone_data_unreadable";
190
+ }
191
+ try {
192
+ // The handoff can only sign in a user who survived the clone with an
193
+ // active membership *in this workspace's company*, so readiness asserts
194
+ // that identity exists here rather than discovering it at click time.
195
+ // Existence, not a count: this runs on every protected health request and
196
+ // counting the whole join would scale with instance size for an answer
197
+ // that needs one row.
198
+ const eligibleUsers = await deps.db
199
+ .select({ userId: authUsers.id })
200
+ .from(authUsers)
201
+ .innerJoin(companyMemberships, and(eq(companyMemberships.principalType, "user"), eq(companyMemberships.principalId, authUsers.id), eq(companyMemberships.status, "active"), eq(companyMemberships.companyId, companyId), ...(handoffUserId ? [eq(authUsers.id, handoffUserId)] : []), ...(handoffUserEmail ? [sql `lower(${authUsers.email}) = ${handoffUserEmail}`] : [])))
202
+ .limit(1)
203
+ .then((rows) => rows.length);
204
+ clonedAdminPresent = eligibleUsers > 0;
205
+ if (!clonedAdminPresent)
206
+ probeFailurePhase ??= "cloned_membership_missing";
207
+ }
208
+ catch (error) {
209
+ logger.warn({ err: error }, "workspace readiness identity probe failed");
210
+ probeFailurePhase ??= "cloned_identity_unreadable";
211
+ }
212
+ }
213
+ }
214
+ else {
215
+ probeFailurePhase = "database_not_configured";
216
+ }
217
+ const authHandoffReady = Boolean(handoffKeyPresent
218
+ && executionWorkspaceId
219
+ && companyId
220
+ && clonedAdminPresent);
221
+ if (!companyId)
222
+ probeFailurePhase ??= "workspace_company_not_configured";
223
+ if (!executionWorkspaceId)
224
+ probeFailurePhase ??= "workspace_identity_not_configured";
225
+ if (!handoffKeyPresent)
226
+ probeFailurePhase ??= "auth_handoff_not_configured";
227
+ const state = resolveWorkspaceReadinessState({
228
+ databaseReady,
229
+ cloneDataReady,
230
+ authHandoffReady,
231
+ seedState: seed.state,
232
+ });
233
+ return {
234
+ state,
235
+ databaseReady,
236
+ cloneDataReady,
237
+ authHandoffReady,
238
+ authHandoffUserId: handoffUserId,
239
+ seedState: seed.state,
240
+ seedPhase: seed.phase,
241
+ seedMode: seed.mode,
242
+ instanceId,
243
+ executionWorkspaceId,
244
+ companyId,
245
+ // A seed-recorded failure phase is more specific than anything this probe
246
+ // can infer, so it wins.
247
+ failurePhase: seed.failurePhase ?? (state === "ready" ? null : probeFailurePhase),
248
+ };
249
+ }
250
+ //# sourceMappingURL=workspace-readiness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-readiness.js","sourceRoot":"","sources":["../../src/services/workspace-readiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAMnF,OAAO,EACL,qCAAqC,EACrC,+BAA+B,EAC/B,uCAAuC,GACxC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,MAAM,gCAAgC,GAAG,oBAAoB,CAAC;AAC9D,MAAM,4BAA4B,GAAG,cAAc,CAAC;AACpD,MAAM,6BAA6B,GAAG,eAAe,CAAC;AAStD;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,MAAyB,OAAO,CAAC,GAAG;IAChF,MAAM,UAAU,GAAG,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAChD,IAAI,UAAU;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gCAAgC,CAAC,CAAC;IAC5E,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,QAAiC,CAAC;QACtC,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAA4B,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACP,2EAA2E;YAC3E,8CAA8C;YAC9C,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,0BAA0B,EAAE,CAAC;QAChG,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,MAAM,KAAK,GACT,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,QAAQ;YAClG,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,KAAK,GAAG,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QACxG,OAAO;YACL,KAAK;YACL,KAAK;YACL,IAAI;YACJ,YAAY,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI;SAC7D,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,2DAA2D;IAC3D,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC;QACnE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAChF,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,wBAAwB,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC/F,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAAC,KAK9C;IACC,IAAI,KAAK,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAClD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IACzD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC;IAC9F,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC;IACpE,CAAC;IACD,6EAA6E;IAC7E,2EAA2E;IAC3E,IAAI,KAAK,CAAC,SAAS,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,IAAI,6BAA6B,GAAsE,IAAI,CAAC;AAE5G;;;;;;GAMG;AACH,MAAM,kCAAkC,GAAG,KAAK,CAAC;AAEjD,MAAM,UAAU,0BAA0B,CACxC,MAAyB,OAAO,CAAC,GAAG,EACpC,MAAoB,IAAI,CAAC,GAAG;IAE5B,4EAA4E;IAC5E,gCAAgC;IAChC,IAAI,+BAA+B,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,uCAAuC,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9D,MAAM,SAAS,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,6BAA6B,CAAC;IAC7C,IACE,MAAM;WACH,MAAM,CAAC,SAAS,KAAK,SAAS;WAC9B,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,GAAG,kCAAkC,EAClE,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gCAAgC,CAAC,CAAC;WAC3E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;WAC9D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC,CAAC;IACrE,6BAA6B,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC;IACzE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,0CAA0C;IACxD,6BAA6B,GAAG,IAAI,CAAC;AACvC,CAAC;AAQD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAA4B;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,MAAM,IAAI,GAAG,uBAAuB,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,0BAA0B,EAAE,CAAC;IAChD,MAAM,oBAAoB,GAAG,uCAAuC,CAAC,GAAG,CAAC,CAAC;IAC1E,+EAA+E;IAC/E,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,qCAAqC,CAAC,GAAG,CAAC,CAAC;IAC7D,MAAM,iBAAiB,GAAG,OAAO,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;IACjE,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC;IAEjF,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,iBAAiB,GAAkB,IAAI,CAAC;IAE5C,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA,UAAU,CAAC,CAAC;YACrC,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,2CAA2C,CAAC,CAAC;YACzE,iBAAiB,GAAG,sBAAsB,CAAC;QAC7C,CAAC;QAED,IAAI,aAAa,IAAI,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,0EAA0E;gBAC1E,mDAAmD;gBACnD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,EAAE;qBAC7B,MAAM,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;qBACnC,IAAI,CAAC,SAAS,CAAC;qBACf,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;qBACrD,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;qBAClC,KAAK,CAAC,CAAC,CAAC;qBACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/B,cAAc,GAAG,UAAU,GAAG,CAAC,CAAC;gBAChC,IAAI,CAAC,cAAc;oBAAE,iBAAiB,KAAK,oBAAoB,CAAC;YAClE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,6CAA6C,CAAC,CAAC;gBAC3E,iBAAiB,KAAK,uBAAuB,CAAC;YAChD,CAAC;YAED,IAAI,CAAC;gBACH,qEAAqE;gBACrE,wEAAwE;gBACxE,sEAAsE;gBACtE,0EAA0E;gBAC1E,uEAAuE;gBACvE,sBAAsB;gBACtB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE;qBAChC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;qBAChC,IAAI,CAAC,SAAS,CAAC;qBACf,SAAS,CACR,kBAAkB,EAClB,GAAG,CACD,EAAE,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC,EAC5C,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,EAChD,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACvC,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,EAC3C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAC3D,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA,SAAS,SAAS,CAAC,KAAK,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CACpF,CACF;qBACA,KAAK,CAAC,CAAC,CAAC;qBACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/B,kBAAkB,GAAG,aAAa,GAAG,CAAC,CAAC;gBACvC,IAAI,CAAC,kBAAkB;oBAAE,iBAAiB,KAAK,2BAA2B,CAAC;YAC7E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,2CAA2C,CAAC,CAAC;gBACzE,iBAAiB,KAAK,4BAA4B,CAAC;YACrD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,iBAAiB,GAAG,yBAAyB,CAAC;IAChD,CAAC;IAED,MAAM,gBAAgB,GAAG,OAAO,CAC9B,iBAAiB;WACd,oBAAoB;WACpB,SAAS;WACT,kBAAkB,CACtB,CAAC;IACF,IAAI,CAAC,SAAS;QAAE,iBAAiB,KAAK,kCAAkC,CAAC;IACzE,IAAI,CAAC,oBAAoB;QAAE,iBAAiB,KAAK,mCAAmC,CAAC;IACrF,IAAI,CAAC,iBAAiB;QAAE,iBAAiB,KAAK,6BAA6B,CAAC;IAE5E,MAAM,KAAK,GAAG,8BAA8B,CAAC;QAC3C,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,SAAS,EAAE,IAAI,CAAC,KAAK;KACtB,CAAC,CAAC;IAEH,OAAO;QACL,KAAK;QACL,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,iBAAiB,EAAE,aAAa;QAChC,SAAS,EAAE,IAAI,CAAC,KAAK;QACrB,SAAS,EAAE,IAAI,CAAC,KAAK;QACrB,QAAQ,EAAE,IAAI,CAAC,IAAI;QACnB,UAAU;QACV,oBAAoB;QACpB,SAAS;QACT,0EAA0E;QAC1E,yBAAyB;QACzB,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC;KAClF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-realization.d.ts","sourceRoot":"","sources":["../../src/services/workspace-realization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAsDzE,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,2BAA2B,GAAG,IAAI,CA8ClG;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,0BAA0B,CAAC;IACtC,eAAe,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAClD,GAAG,2BAA2B,CA0C9B;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,OAAO,EAAE,2BAA2B,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD,GAAG,0BAA0B,CAmI7B;AAED;;;;;;;GAOG;AACH,wBAAgB,8CAA8C,CAAC,KAAK,EAAE;IACpE,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,CAAC;IACF,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD,GAAG,0BAA0B,CAoC7B"}
1
+ {"version":3,"file":"workspace-realization.d.ts","sourceRoot":"","sources":["../../src/services/workspace-realization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAuDzE,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,2BAA2B,GAAG,IAAI,CA8ClG;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,0BAA0B,CAAC;IACtC,eAAe,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAClD,GAAG,2BAA2B,CA0C9B;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,OAAO,EAAE,2BAA2B,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD,GAAG,0BAA0B,CAmG7B;AAED;;;;;;;GAOG;AACH,wBAAgB,8CAA8C,CAAC,KAAK,EAAE;IACpE,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,CAAC;IACF,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACnD,GAAG,0BAA0B,CAqC7B"}
@@ -1,3 +1,4 @@
1
+ import { ENVIRONMENT_DRIVER_TRAITS, getEnvironmentDriverTraits } from "./environment-driver-traits.js";
1
2
  function parseObject(value) {
2
3
  return value && typeof value === "object" && !Array.isArray(value)
3
4
  ? value
@@ -138,9 +139,9 @@ export function buildWorkspaceRealizationRequest(input) {
138
139
  export function buildWorkspaceRealizationRecord(input) {
139
140
  const leaseMetadata = input.lease.metadata ?? {};
140
141
  const providerMetadata = input.providerMetadata ?? {};
141
- const transport = input.environment.driver === "ssh" || input.environment.driver === "sandbox" || input.environment.driver === "plugin"
142
- ? input.environment.driver
143
- : "local";
142
+ // An unknown or absent driver reads the "local" row, same as today's fallback.
143
+ const traits = getEnvironmentDriverTraits(input.environment.driver) ?? ENVIRONMENT_DRIVER_TRAITS.local;
144
+ const transport = traits.driver;
144
145
  const remotePath = readString(providerMetadata.remoteCwd) ??
145
146
  readString(leaseMetadata.remoteCwd) ??
146
147
  readString(providerMetadata.remotePath) ??
@@ -162,34 +163,6 @@ export function buildWorkspaceRealizationRecord(input) {
162
163
  input.request.source.localPath;
163
164
  const pathAliases = readPathAliases(realizationMetadata.pathAliases ?? realizationMetadata.workspaceAliases);
164
165
  const outboundRestorePaths = readStringArray(realizationMetadata.outboundRestorePaths);
165
- const sync = (() => {
166
- if (mode === "in_place" || transport === "local") {
167
- return {
168
- strategy: "none",
169
- prepare: "Use the realized local execution workspace directly.",
170
- syncBack: null,
171
- };
172
- }
173
- if (transport === "ssh") {
174
- return {
175
- strategy: "ssh_git_import_export",
176
- prepare: "Import the local git workspace to the remote SSH workspace before adapter execution.",
177
- syncBack: "Export remote SSH workspace changes back to the local execution workspace after adapter execution.",
178
- };
179
- }
180
- if (transport === "sandbox") {
181
- return {
182
- strategy: "sandbox_archive_upload_download",
183
- prepare: "Upload a workspace archive into the sandbox filesystem before adapter execution.",
184
- syncBack: "Download a workspace archive from the sandbox and mirror it back locally after adapter execution.",
185
- };
186
- }
187
- return {
188
- strategy: "provider_defined",
189
- prepare: "Delegate workspace materialization to the plugin environment driver.",
190
- syncBack: "Delegate result synchronization to the plugin environment driver.",
191
- };
192
- })();
193
166
  const provider = input.lease.provider ??
194
167
  (transport === "ssh" ? "ssh" : transport === "local" ? "local" : null);
195
168
  const localPath = input.request.source.localPath;
@@ -206,7 +179,6 @@ export function buildWorkspaceRealizationRecord(input) {
206
179
  authoritativeRoot,
207
180
  pathAliases,
208
181
  outboundRestorePaths,
209
- transport,
210
182
  provider,
211
183
  environmentId: input.environment.id,
212
184
  leaseId: input.lease.id,
@@ -236,7 +208,6 @@ export function buildWorkspaceRealizationRecord(input) {
236
208
  ...(username ? { username } : {}),
237
209
  ...(sandboxId ? { sandboxId } : {}),
238
210
  },
239
- sync,
240
211
  bootstrap: {
241
212
  command: input.request.runtimeOverlay.provisionCommand,
242
213
  },
@@ -291,6 +262,7 @@ export function buildWorkspaceRealizationRecordFromDriverInput(input) {
291
262
  worktreePath: null,
292
263
  warnings: [],
293
264
  created: false,
265
+ branchCreatedByRuntime: false,
294
266
  },
295
267
  workspaceConfig: null,
296
268
  });
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-realization.js","sourceRoot":"","sources":["../../src/services/workspace-realization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-realization.js","sourceRoot":"","sources":["../../src/services/workspace-realization.ts"],"names":[],"mappings":"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"}