devchain-cli 0.24.1 → 0.24.2

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 (343) hide show
  1. package/dist/build-info.json +2 -2
  2. package/dist/cli.js +40 -10
  3. package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
  4. package/dist/host-install/pins.json +31 -2
  5. package/dist/lib/exclusive-run.js +51 -3
  6. package/dist/lib/git-owner.js +284 -0
  7. package/dist/lib/host-install.js +19 -151
  8. package/dist/lib/local-api.js +175 -0
  9. package/dist/server/common/config/env.config.d.ts +3 -0
  10. package/dist/server/common/config/env.config.js +1 -0
  11. package/dist/server/common/config/env.config.js.map +1 -1
  12. package/dist/server/common/config/host-image.json +3 -3
  13. package/dist/server/common/constants/syncthing-markers.d.ts +1 -0
  14. package/dist/server/common/constants/syncthing-markers.js +6 -1
  15. package/dist/server/common/constants/syncthing-markers.js.map +1 -1
  16. package/dist/server/common/filesystem/vm-home-path.d.ts +11 -0
  17. package/dist/server/common/filesystem/vm-home-path.js +48 -0
  18. package/dist/server/common/filesystem/vm-home-path.js.map +1 -0
  19. package/dist/server/common/process-ids-env.d.ts +1 -0
  20. package/dist/server/common/process-ids-env.js +13 -0
  21. package/dist/server/common/process-ids-env.js.map +1 -0
  22. package/dist/server/common/test/api-test-app.d.ts +12 -0
  23. package/dist/server/common/test/api-test-app.js +76 -0
  24. package/dist/server/common/test/api-test-app.js.map +1 -0
  25. package/dist/server/common/test/app-bootstrap.helper.js +8 -1
  26. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  27. package/dist/server/common/test/fake-bootstrap.server.js +3 -2
  28. package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
  29. package/dist/server/common/test/fake-docker-engine.server.d.ts +17 -6
  30. package/dist/server/common/test/fake-docker-engine.server.js +77 -33
  31. package/dist/server/common/test/fake-docker-engine.server.js.map +1 -1
  32. package/dist/server/common/test/fake-proxmox.server.js +4 -4
  33. package/dist/server/common/test/fake-ssh.server.js +6 -6
  34. package/dist/server/common/test/fake-ssh.server.js.map +1 -1
  35. package/dist/server/common/test/test-database.helper.d.ts +6 -0
  36. package/dist/server/common/test/test-database.helper.js +29 -0
  37. package/dist/server/common/test/test-database.helper.js.map +1 -0
  38. package/dist/server/modules/core/controllers/docker-archive.js +1 -1
  39. package/dist/server/modules/core/controllers/docker-archive.js.map +1 -1
  40. package/dist/server/modules/core/controllers/docker-engine.client.d.ts +2 -1
  41. package/dist/server/modules/core/controllers/docker-engine.client.js +8 -4
  42. package/dist/server/modules/core/controllers/docker-engine.client.js.map +1 -1
  43. package/dist/server/modules/core/controllers/docker-image-metadata.d.ts +248 -0
  44. package/dist/server/modules/core/controllers/docker-image-metadata.js +161 -0
  45. package/dist/server/modules/core/controllers/docker-image-metadata.js.map +1 -0
  46. package/dist/server/modules/core/controllers/docker-settings.d.ts +13 -2
  47. package/dist/server/modules/core/controllers/docker-settings.js +49 -11
  48. package/dist/server/modules/core/controllers/docker-settings.js.map +1 -1
  49. package/dist/server/modules/core/controllers/host-user-identity.d.ts +34 -0
  50. package/dist/server/modules/core/controllers/host-user-identity.js +23 -0
  51. package/dist/server/modules/core/controllers/host-user-identity.js.map +1 -0
  52. package/dist/server/modules/core/controllers/runtime.controller.d.ts +11 -4
  53. package/dist/server/modules/core/controllers/runtime.controller.js +2 -0
  54. package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
  55. package/dist/server/modules/file-sync/build-exclusion-suggestions.d.ts +15 -0
  56. package/dist/server/modules/file-sync/build-exclusion-suggestions.js +402 -0
  57. package/dist/server/modules/file-sync/build-exclusion-suggestions.js.map +1 -0
  58. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.d.ts +102 -0
  59. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js +22 -0
  60. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js.map +1 -0
  61. package/dist/server/modules/file-sync/file-sync-auto-fix.store.d.ts +12 -0
  62. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js +73 -0
  63. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js.map +1 -0
  64. package/dist/server/modules/file-sync/file-sync-conflicts.d.ts +3 -0
  65. package/dist/server/modules/file-sync/file-sync-conflicts.js +191 -0
  66. package/dist/server/modules/file-sync/file-sync-conflicts.js.map +1 -0
  67. package/dist/server/modules/file-sync/file-sync-ignores.store.d.ts +5 -1
  68. package/dist/server/modules/file-sync/file-sync-ignores.store.js +39 -8
  69. package/dist/server/modules/file-sync/file-sync-ignores.store.js.map +1 -1
  70. package/dist/server/modules/file-sync/file-sync.controller.d.ts +1 -3
  71. package/dist/server/modules/file-sync/file-sync.controller.js +5 -14
  72. package/dist/server/modules/file-sync/file-sync.controller.js.map +1 -1
  73. package/dist/server/modules/file-sync/file-sync.dto.d.ts +220 -1
  74. package/dist/server/modules/file-sync/file-sync.dto.js +70 -4
  75. package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
  76. package/dist/server/modules/file-sync/file-sync.module.js +16 -1
  77. package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
  78. package/dist/server/modules/file-sync/file-sync.service.d.ts +18 -4
  79. package/dist/server/modules/file-sync/file-sync.service.js +166 -34
  80. package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
  81. package/dist/server/modules/file-sync/git-guard.dto.d.ts +61 -0
  82. package/dist/server/modules/file-sync/git-guard.dto.js +26 -0
  83. package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -0
  84. package/dist/server/modules/file-sync/home-git-guard.service.d.ts +4 -2
  85. package/dist/server/modules/file-sync/home-git-guard.service.js +50 -25
  86. package/dist/server/modules/file-sync/home-git-guard.service.js.map +1 -1
  87. package/dist/server/modules/file-sync/host-git-guard.controller.d.ts +10 -0
  88. package/dist/server/modules/file-sync/host-git-guard.controller.js +64 -0
  89. package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -0
  90. package/dist/server/modules/file-sync/host-git-index.controller.d.ts +9 -0
  91. package/dist/server/modules/file-sync/host-git-index.controller.js +67 -0
  92. package/dist/server/modules/file-sync/host-git-index.controller.js.map +1 -0
  93. package/dist/server/modules/file-sync/host-sync.controller.d.ts +15 -2
  94. package/dist/server/modules/file-sync/host-sync.controller.js +122 -14
  95. package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
  96. package/dist/server/modules/file-sync/ignore-pattern-matcher.d.ts +30 -0
  97. package/dist/server/modules/file-sync/ignore-pattern-matcher.js +183 -0
  98. package/dist/server/modules/file-sync/ignore-pattern-matcher.js.map +1 -0
  99. package/dist/server/modules/file-sync/project-repository.d.ts +2 -0
  100. package/dist/server/modules/file-sync/project-repository.js +20 -0
  101. package/dist/server/modules/file-sync/project-repository.js.map +1 -0
  102. package/dist/server/modules/file-sync/sync-chown.dto.d.ts +99 -0
  103. package/dist/server/modules/file-sync/sync-chown.dto.js +46 -0
  104. package/dist/server/modules/file-sync/sync-chown.dto.js.map +1 -0
  105. package/dist/server/modules/file-sync/sync-chown.service.d.ts +12 -0
  106. package/dist/server/modules/file-sync/sync-chown.service.js +230 -0
  107. package/dist/server/modules/file-sync/sync-chown.service.js.map +1 -0
  108. package/dist/server/modules/file-sync/sync-path-inspection.dto.d.ts +626 -0
  109. package/dist/server/modules/file-sync/sync-path-inspection.dto.js +108 -0
  110. package/dist/server/modules/file-sync/sync-path-inspection.dto.js.map +1 -0
  111. package/dist/server/modules/file-sync/sync-path-inspector.d.ts +12 -0
  112. package/dist/server/modules/file-sync/sync-path-inspector.js +413 -0
  113. package/dist/server/modules/file-sync/sync-path-inspector.js.map +1 -0
  114. package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +27 -4
  115. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +66 -4
  116. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
  117. package/dist/server/modules/file-sync/translate-git-ignore-rule.d.ts +3 -0
  118. package/dist/server/modules/file-sync/translate-git-ignore-rule.js +30 -0
  119. package/dist/server/modules/file-sync/translate-git-ignore-rule.js.map +1 -0
  120. package/dist/server/modules/mcp/services/handlers/skill-tools.js +2 -2
  121. package/dist/server/modules/mcp/services/handlers/skill-tools.js.map +1 -1
  122. package/dist/server/modules/remotes/connect-choices.controller.d.ts +9 -0
  123. package/dist/server/modules/remotes/connect-choices.controller.js +54 -0
  124. package/dist/server/modules/remotes/connect-choices.controller.js.map +1 -0
  125. package/dist/server/modules/remotes/connect-choices.dto.d.ts +52 -0
  126. package/dist/server/modules/remotes/connect-choices.dto.js +19 -0
  127. package/dist/server/modules/remotes/connect-choices.dto.js.map +1 -0
  128. package/dist/server/modules/remotes/connect-choices.store.d.ts +12 -0
  129. package/dist/server/modules/remotes/connect-choices.store.js +95 -0
  130. package/dist/server/modules/remotes/connect-choices.store.js.map +1 -0
  131. package/dist/server/modules/remotes/controllers/remotes.controller.d.ts +3 -0
  132. package/dist/server/modules/remotes/controllers/remotes.controller.js +9 -1
  133. package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
  134. package/dist/server/modules/remotes/docker/docker-copy-back.js +40 -16
  135. package/dist/server/modules/remotes/docker/docker-copy-back.js.map +1 -1
  136. package/dist/server/modules/remotes/docker/docker-handoff.d.ts +5 -3
  137. package/dist/server/modules/remotes/docker/docker-handoff.js +146 -42
  138. package/dist/server/modules/remotes/docker/docker-handoff.js.map +1 -1
  139. package/dist/server/modules/remotes/docker/docker-handoff.store.d.ts +3 -0
  140. package/dist/server/modules/remotes/docker/docker-handoff.store.js.map +1 -1
  141. package/dist/server/modules/remotes/docker/docker-plan-fit.d.ts +4 -1
  142. package/dist/server/modules/remotes/docker/docker-plan-fit.js +19 -6
  143. package/dist/server/modules/remotes/docker/docker-plan-fit.js.map +1 -1
  144. package/dist/server/modules/remotes/docker/docker-plan-policy.d.ts +6 -2
  145. package/dist/server/modules/remotes/docker/docker-plan-policy.js +191 -38
  146. package/dist/server/modules/remotes/docker/docker-plan-policy.js.map +1 -1
  147. package/dist/server/modules/remotes/docker/docker-plan-source.service.d.ts +52 -8
  148. package/dist/server/modules/remotes/docker/docker-plan-source.service.js +273 -50
  149. package/dist/server/modules/remotes/docker/docker-plan-source.service.js.map +1 -1
  150. package/dist/server/modules/remotes/docker/docker-plan.controller.d.ts +2 -1
  151. package/dist/server/modules/remotes/docker/docker-plan.controller.js +14 -0
  152. package/dist/server/modules/remotes/docker/docker-plan.controller.js.map +1 -1
  153. package/dist/server/modules/remotes/docker/docker-plan.dto.d.ts +46 -1
  154. package/dist/server/modules/remotes/docker/docker-plan.dto.js +1 -0
  155. package/dist/server/modules/remotes/docker/docker-plan.dto.js.map +1 -1
  156. package/dist/server/modules/remotes/docker/docker-plan.service.d.ts +13 -7
  157. package/dist/server/modules/remotes/docker/docker-plan.service.js +57 -13
  158. package/dist/server/modules/remotes/docker/docker-plan.service.js.map +1 -1
  159. package/dist/server/modules/remotes/docker/docker-project-compose.d.ts +7 -0
  160. package/dist/server/modules/remotes/docker/docker-project-compose.js +30 -0
  161. package/dist/server/modules/remotes/docker/docker-project-compose.js.map +1 -0
  162. package/dist/server/modules/remotes/dtos/remote.dto.d.ts +2 -0
  163. package/dist/server/modules/remotes/dtos/remote.dto.js.map +1 -1
  164. package/dist/server/modules/remotes/git-owner.store.d.ts +13 -0
  165. package/dist/server/modules/remotes/git-owner.store.js +69 -0
  166. package/dist/server/modules/remotes/git-owner.store.js.map +1 -0
  167. package/dist/server/modules/remotes/host/host-docker.controller.d.ts +8 -0
  168. package/dist/server/modules/remotes/host/host-docker.controller.js +22 -6
  169. package/dist/server/modules/remotes/host/host-docker.controller.js.map +1 -1
  170. package/dist/server/modules/remotes/host/host-docker.dto.d.ts +606 -0
  171. package/dist/server/modules/remotes/host/host-docker.dto.js +47 -7
  172. package/dist/server/modules/remotes/host/host-docker.dto.js.map +1 -1
  173. package/dist/server/modules/remotes/host/host-docker.service.d.ts +16 -4
  174. package/dist/server/modules/remotes/host/host-docker.service.js +157 -82
  175. package/dist/server/modules/remotes/host/host-docker.service.js.map +1 -1
  176. package/dist/server/modules/remotes/host/host-ipv4-routes.d.ts +4 -0
  177. package/dist/server/modules/remotes/host/host-ipv4-routes.js +43 -0
  178. package/dist/server/modules/remotes/host/host-ipv4-routes.js.map +1 -0
  179. package/dist/server/modules/remotes/host-image.d.ts +1 -1
  180. package/dist/server/modules/remotes/host-image.js +1 -1
  181. package/dist/server/modules/remotes/host-install/host-install-block.d.ts +1 -0
  182. package/dist/server/modules/remotes/host-install/host-install-block.js +76 -2
  183. package/dist/server/modules/remotes/host-install/host-install-block.js.map +1 -1
  184. package/dist/server/modules/remotes/host-install/host-install.service.d.ts +0 -1
  185. package/dist/server/modules/remotes/host-install/host-install.service.js +9 -26
  186. package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
  187. package/dist/server/modules/remotes/operations/attach.operation.d.ts +5 -1
  188. package/dist/server/modules/remotes/operations/attach.operation.js +40 -5
  189. package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
  190. package/dist/server/modules/remotes/operations/claim.operation.d.ts +1 -0
  191. package/dist/server/modules/remotes/operations/claim.operation.js +6 -1
  192. package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
  193. package/dist/server/modules/remotes/operations/detach.operation.d.ts +4 -1
  194. package/dist/server/modules/remotes/operations/detach.operation.js +10 -2
  195. package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
  196. package/dist/server/modules/remotes/operations/docker-import-inventory.store.d.ts +4 -0
  197. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js +11 -0
  198. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js.map +1 -1
  199. package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +29 -3
  200. package/dist/server/modules/remotes/operations/file-sync-handoff.js +477 -50
  201. package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
  202. package/dist/server/modules/remotes/operations/force-sync.operation.d.ts +39 -0
  203. package/dist/server/modules/remotes/operations/force-sync.operation.js +177 -0
  204. package/dist/server/modules/remotes/operations/force-sync.operation.js.map +1 -0
  205. package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +83 -0
  206. package/dist/server/modules/remotes/operations/git-owner.dto.js +25 -0
  207. package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -0
  208. package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +35 -0
  209. package/dist/server/modules/remotes/operations/git-owner.operation.js +216 -0
  210. package/dist/server/modules/remotes/operations/git-owner.operation.js.map +1 -0
  211. package/dist/server/modules/remotes/operations/remote-host.client.d.ts +71 -7
  212. package/dist/server/modules/remotes/operations/remote-host.client.js +141 -11
  213. package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
  214. package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +19 -0
  215. package/dist/server/modules/remotes/operations/remote-operation.dto.js +5 -1
  216. package/dist/server/modules/remotes/operations/remote-operation.dto.js.map +1 -1
  217. package/dist/server/modules/remotes/operations/remote-operation.runner.d.ts +3 -1
  218. package/dist/server/modules/remotes/operations/remote-operation.runner.js +52 -21
  219. package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
  220. package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +4 -1
  221. package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
  222. package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +5 -0
  223. package/dist/server/modules/remotes/operations/remote-operations.controller.js +56 -0
  224. package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
  225. package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +16 -1
  226. package/dist/server/modules/remotes/operations/remote-operations.service.js +155 -5
  227. package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
  228. package/dist/server/modules/remotes/operations/update-logins.operation.d.ts +1 -3
  229. package/dist/server/modules/remotes/operations/update-logins.operation.js +3 -18
  230. package/dist/server/modules/remotes/operations/update-logins.operation.js.map +1 -1
  231. package/dist/server/modules/remotes/ports/remote-health.port.d.ts +2 -0
  232. package/dist/server/modules/remotes/ports/remote-health.port.js.map +1 -1
  233. package/dist/server/modules/remotes/remotes.module.js +18 -0
  234. package/dist/server/modules/remotes/remotes.module.js.map +1 -1
  235. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.d.ts +2 -2
  236. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js +2 -13
  237. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js.map +1 -1
  238. package/dist/server/modules/remotes/services/remote-health.service.js +5 -0
  239. package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
  240. package/dist/server/modules/remotes/sync/file-sync-failures.service.d.ts +18 -0
  241. package/dist/server/modules/remotes/sync/file-sync-failures.service.js +157 -0
  242. package/dist/server/modules/remotes/sync/file-sync-failures.service.js.map +1 -0
  243. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.d.ts +14 -0
  244. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js +99 -0
  245. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js.map +1 -0
  246. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.d.ts +15 -0
  247. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js +90 -0
  248. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js.map +1 -0
  249. package/dist/server/modules/remotes/sync/project-file-sync.controller.d.ts +29 -0
  250. package/dist/server/modules/remotes/sync/project-file-sync.controller.js +160 -0
  251. package/dist/server/modules/remotes/sync/project-file-sync.controller.js.map +1 -0
  252. package/dist/server/modules/remotes/sync/remote-file-sync.dto.d.ts +72 -0
  253. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js +16 -0
  254. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js.map +1 -0
  255. package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +32 -1
  256. package/dist/server/modules/remotes/sync/remote-file-sync.service.js +499 -38
  257. package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
  258. package/dist/server/modules/remotes/sync/remote-live-sync.service.d.ts +2 -0
  259. package/dist/server/modules/remotes/sync/remote-live-sync.service.js +26 -12
  260. package/dist/server/modules/remotes/sync/remote-live-sync.service.js.map +1 -1
  261. package/dist/server/modules/remotes/vm-user-identity.d.ts +29 -0
  262. package/dist/server/modules/remotes/vm-user-identity.js +45 -0
  263. package/dist/server/modules/remotes/vm-user-identity.js.map +1 -0
  264. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +5 -1
  265. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
  266. package/dist/server/modules/session-reader/data/pricing.json +55 -7
  267. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +5 -0
  268. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
  269. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.d.ts +6 -0
  270. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js +26 -0
  271. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js.map +1 -1
  272. package/dist/server/modules/settings/services/settings.service.d.ts +3 -1
  273. package/dist/server/modules/settings/services/settings.service.js +6 -0
  274. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  275. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js +5 -5
  276. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js.map +1 -1
  277. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js +5 -5
  278. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js.map +1 -1
  279. package/dist/server/modules/skills/adapters/github-skill-source.base.js +4 -3
  280. package/dist/server/modules/skills/adapters/github-skill-source.base.js.map +1 -1
  281. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js +5 -5
  282. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js.map +1 -1
  283. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js +5 -5
  284. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js.map +1 -1
  285. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js +5 -5
  286. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js.map +1 -1
  287. package/dist/server/modules/skills/adapters/skill-source.adapter.d.ts +5 -0
  288. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.d.ts +5 -0
  289. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js +75 -0
  290. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js.map +1 -0
  291. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js +5 -5
  292. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js.map +1 -1
  293. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js +5 -5
  294. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js.map +1 -1
  295. package/dist/server/modules/skills/controllers/skills.controller.js +2 -2
  296. package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
  297. package/dist/server/modules/skills/services/skill-source-lifecycle.service.d.ts +3 -3
  298. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js +9 -4
  299. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js.map +1 -1
  300. package/dist/server/modules/skills/services/skill-sync.service.d.ts +3 -3
  301. package/dist/server/modules/skills/services/skill-sync.service.js +32 -6
  302. package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
  303. package/dist/server/modules/skills/services/skill-sync.types.d.ts +3 -0
  304. package/dist/server/modules/storage/db/schema.d.ts +2 -2
  305. package/dist/server/modules/storage/db/schema.js +2 -0
  306. package/dist/server/modules/storage/db/schema.js.map +1 -1
  307. package/dist/server/modules/storage/models/domain.models.d.ts +1 -1
  308. package/dist/server/modules/storage/models/domain.models.js +2 -0
  309. package/dist/server/modules/storage/models/domain.models.js.map +1 -1
  310. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +3 -1
  311. package/dist/server/modules/terminal/gateways/terminal.gateway.js +9 -4
  312. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  313. package/dist/server/modules/terminal/services/terminal-activity.service.d.ts +0 -1
  314. package/dist/server/modules/terminal/services/terminal-activity.service.js +0 -3
  315. package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -1
  316. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +15 -3
  317. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
  318. package/dist/server/modules/terminal/utils/ansi-sanitizer.d.ts +0 -1
  319. package/dist/server/modules/terminal/utils/ansi-sanitizer.js +0 -4
  320. package/dist/server/modules/terminal/utils/ansi-sanitizer.js.map +1 -1
  321. package/dist/server/templates/teams-dev.json +11 -11
  322. package/dist/server/test-setup-node.js +4 -3
  323. package/dist/server/test-setup-node.js.map +1 -1
  324. package/dist/server/test-setup.js +7 -0
  325. package/dist/server/test-setup.js.map +1 -1
  326. package/dist/server/tsconfig.tsbuildinfo +1 -1
  327. package/dist/server/ui/assets/{ExternalRichEditor-DtNvrV0F.js → ExternalRichEditor-CIZPhssf.js} +24 -24
  328. package/dist/server/ui/assets/ReviewDetailPage-winyLSQ7.js +6 -0
  329. package/dist/server/ui/assets/ReviewsPage-BYKBReMp.js +6 -0
  330. package/dist/server/ui/assets/index-CiDJX6Hn.js +1191 -0
  331. package/dist/server/ui/assets/index-f1WOAqXB.css +32 -0
  332. package/dist/server/ui/assets/useReviewSubscription-v3Cto0y4.js +69 -0
  333. package/dist/server/ui/index.html +2 -2
  334. package/dist/templates/teams-dev.json +11 -11
  335. package/package.json +8 -1
  336. package/dist/server/modules/reviews/utils/notification-formatter.d.ts +0 -12
  337. package/dist/server/modules/reviews/utils/notification-formatter.js +0 -60
  338. package/dist/server/modules/reviews/utils/notification-formatter.js.map +0 -1
  339. package/dist/server/ui/assets/ReviewDetailPage-DJzEoM0x.js +0 -6
  340. package/dist/server/ui/assets/ReviewsPage-z2O8MNEw.js +0 -6
  341. package/dist/server/ui/assets/index-CC4P3V8L.js +0 -994
  342. package/dist/server/ui/assets/index-LsJe1ZTS.css +0 -32
  343. package/dist/server/ui/assets/useReviewSubscription-B7AdJBO2.js +0 -69
@@ -5,19 +5,61 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
8
11
  Object.defineProperty(exports, "__esModule", { value: true });
9
12
  exports.DockerAvailabilityError = exports.DockerPlanSourceService = exports.DOCKER_PLAN_REUSE_MS = void 0;
13
+ exports.containerProjectLinks = containerProjectLinks;
14
+ exports.composeLabelSet = composeLabelSet;
10
15
  exports.reusable = reusable;
11
16
  const common_1 = require("@nestjs/common");
12
17
  const node_child_process_1 = require("node:child_process");
13
18
  const promises_1 = require("node:fs/promises");
14
19
  const node_os_1 = require("node:os");
15
20
  const node_path_1 = require("node:path");
21
+ const process_executor_port_1 = require("../../terminal/services/process-executor/process-executor.port");
16
22
  const docker_engine_client_1 = require("../../core/controllers/docker-engine.client");
17
23
  const docker_settings_1 = require("../../core/controllers/docker-settings");
18
24
  const host_docker_dto_1 = require("../host/host-docker.dto");
19
25
  const docker_plan_files_1 = require("./docker-plan-files");
26
+ const docker_project_compose_1 = require("./docker-project-compose");
20
27
  const docker_plan_dto_1 = require("./docker-plan.dto");
28
+ function containerProjectLinks(root, inspect) {
29
+ return (0, docker_project_compose_1.composeRootLinks)((inspect.Config.Labels ?? {}), root);
30
+ }
31
+ function composeLabelSet(root, container) {
32
+ const labels = (container.Config.Labels ?? {});
33
+ const encoded = labels[`${host_docker_dto_1.COMPOSE_PROJECT_LABEL}.config_files`];
34
+ if (!encoded)
35
+ return null;
36
+ const directory = (0, node_path_1.resolve)(labels[`${host_docker_dto_1.COMPOSE_PROJECT_LABEL}.working_dir`] || root);
37
+ const files = encoded
38
+ .split(',')
39
+ .filter(Boolean)
40
+ .map((file) => (0, node_path_1.resolve)(directory, file));
41
+ if (!files.length)
42
+ return null;
43
+ return { directory, files, service: labels[host_docker_dto_1.COMPOSE_SERVICE_LABEL] || null };
44
+ }
45
+ function buildsInProject(root, service) {
46
+ if (!service || Object.hasOwn(service, 'image'))
47
+ return false;
48
+ const build = service.build;
49
+ return (typeof build === 'object' &&
50
+ build !== null &&
51
+ 'context' in build &&
52
+ typeof build.context === 'string' &&
53
+ (0, node_path_1.isAbsolute)(build.context) &&
54
+ (0, docker_plan_files_1.within)(root, build.context));
55
+ }
56
+ async function hasRootCompose(root) {
57
+ for (const name of docker_project_compose_1.DEFAULT_COMPOSE_FILES) {
58
+ if (await (0, promises_1.access)((0, node_path_1.join)(root, name)).then(() => true, () => false))
59
+ return true;
60
+ }
61
+ return false;
62
+ }
21
63
  const unknownSize = () => ({ bytes: 0, unknown: true });
22
64
  const size = (value) => typeof value === 'number' && value >= 0 && Number.isFinite(value)
23
65
  ? { bytes: value, unknown: false }
@@ -27,6 +69,10 @@ function reusable(at) {
27
69
  return Date.now() - at < exports.DOCKER_PLAN_REUSE_MS;
28
70
  }
29
71
  let DockerPlanSourceService = class DockerPlanSourceService {
72
+ executor;
73
+ constructor(executor) {
74
+ this.executor = executor;
75
+ }
30
76
  recent = null;
31
77
  async connect(signal) {
32
78
  let socket;
@@ -56,6 +102,63 @@ let DockerPlanSourceService = class DockerPlanSourceService {
56
102
  }
57
103
  return client;
58
104
  }
105
+ async presence(root, signal) {
106
+ signal?.throwIfAborted();
107
+ if (await hasRootCompose(root)) {
108
+ signal?.throwIfAborted();
109
+ return { state: 'present' };
110
+ }
111
+ const deadline = AbortSignal.timeout(5000);
112
+ const scanSignal = signal ? AbortSignal.any([signal, deadline]) : deadline;
113
+ let onAbort;
114
+ try {
115
+ let socket;
116
+ try {
117
+ socket = await Promise.race([
118
+ this.socket(),
119
+ new Promise((_resolve, reject) => {
120
+ onAbort = () => reject(scanSignal.reason);
121
+ scanSignal.addEventListener('abort', onAbort, { once: true });
122
+ if (scanSignal.aborted)
123
+ onAbort();
124
+ }),
125
+ ]);
126
+ }
127
+ catch (error) {
128
+ if (scanSignal.aborted)
129
+ throw error;
130
+ return { state: 'absent' };
131
+ }
132
+ try {
133
+ const containers = await new docker_engine_client_1.DockerEngineClient(socket).json('GET', '/containers/json?all=true', undefined, { signal: scanSignal });
134
+ return {
135
+ state: containers.some((container) => (0, docker_project_compose_1.containerLinksProject)(container.Labels, container.Mounts, root))
136
+ ? 'present'
137
+ : 'absent',
138
+ };
139
+ }
140
+ catch (error) {
141
+ if (scanSignal.aborted)
142
+ throw error;
143
+ const failure = await socketAvailability(socket, error);
144
+ return {
145
+ state: failure instanceof DockerAvailabilityError &&
146
+ (failure.reason === 'no-socket' || failure.reason === 'no-socket-access')
147
+ ? 'absent'
148
+ : 'unknown',
149
+ };
150
+ }
151
+ }
152
+ catch (error) {
153
+ if (signal?.aborted)
154
+ throw error;
155
+ return { state: 'unknown' };
156
+ }
157
+ finally {
158
+ if (onAbort)
159
+ scanSignal.removeEventListener('abort', onAbort);
160
+ }
161
+ }
59
162
  socket() {
60
163
  return (0, docker_engine_client_1.resolveDockerSocket)();
61
164
  }
@@ -65,26 +168,34 @@ let DockerPlanSourceService = class DockerPlanSourceService {
65
168
  uid() {
66
169
  return process.getuid?.() ?? null;
67
170
  }
171
+ gid() {
172
+ return process.getgid?.() ?? null;
173
+ }
68
174
  measure(path, signal) {
69
175
  return (0, docker_plan_files_1.measureDockerBind)(path, undefined, signal);
70
176
  }
71
- async compose(root) {
72
- let file;
73
- for (const name of [
74
- 'compose.yaml',
75
- 'compose.yml',
76
- 'docker-compose.yml',
77
- 'docker-compose.yaml',
78
- ]) {
79
- if (await (0, promises_1.access)((0, node_path_1.join)(root, name)).then(() => true, () => false)) {
80
- file = name;
81
- break;
82
- }
177
+ async compose(root, options = {}) {
178
+ if (!options.files?.length) {
179
+ if (!(await hasRootCompose(root)))
180
+ return null;
83
181
  }
84
- if (!file)
85
- return null;
86
182
  return new Promise((resolveConfig, reject) => {
87
- (0, node_child_process_1.execFile)('docker', ['compose', '--project-directory', root, 'config', '--format', 'json'], { cwd: root, timeout: 30_000, maxBuffer: 16 * 1024 * 1024 }, (error, stdout) => {
183
+ (0, node_child_process_1.execFile)('docker', [
184
+ 'compose',
185
+ '--project-directory',
186
+ root,
187
+ ...(options.files?.flatMap((path) => ['-f', path]) ?? []),
188
+ ...(options.allProfiles ? ['--profile', '*'] : []),
189
+ 'config',
190
+ '--format',
191
+ 'json',
192
+ ], {
193
+ cwd: root,
194
+ timeout: 30_000,
195
+ maxBuffer: 16 * 1024 * 1024,
196
+ signal: options.signal,
197
+ env: options.env,
198
+ }, (error, stdout) => {
88
199
  if (error)
89
200
  return reject(new docker_engine_client_1.DockerEngineError('unavailable', 'Cannot read project Docker Compose configuration'));
90
201
  try {
@@ -97,10 +208,27 @@ let DockerPlanSourceService = class DockerPlanSourceService {
97
208
  reject(new docker_engine_client_1.DockerEngineError('invalid-response', 'Invalid Docker Compose configuration'));
98
209
  }
99
210
  });
211
+ }).catch((error) => {
212
+ if (options.allProfiles &&
213
+ !options.signal?.aborted &&
214
+ error instanceof docker_engine_client_1.DockerEngineError &&
215
+ error.code === 'unavailable')
216
+ return this.compose(root, { ...options, allProfiles: false });
217
+ throw error;
100
218
  });
101
219
  }
102
- async scan(client, root, signal, { reuse = false } = {}) {
220
+ async scan(client, root, signal, { reuse = false, previousBindPaths = [], dataBindPaths = [] } = {}) {
103
221
  const recent = reuse && this.recent && reusable(this.recent.at) ? this.recent : null;
222
+ const composeCache = new Map(recent?.compose);
223
+ const readCompose = async (directory, files) => {
224
+ const key = JSON.stringify([(0, node_path_1.resolve)(directory), files]);
225
+ if (!composeCache.has(key)) {
226
+ const config = await this.compose(directory, { files, signal }).catch((error) => (error instanceof Error ? error : new Error(String(error))));
227
+ signal?.throwIfAborted();
228
+ composeCache.set(key, config);
229
+ }
230
+ return composeCache.get(key);
231
+ };
104
232
  const [listed, usage, volumes, composeAttempt] = await Promise.all([
105
233
  client.json('GET', '/containers/json?all=true', undefined, { signal }),
106
234
  recent?.usage ?? client.diskUsage(signal),
@@ -133,22 +261,44 @@ let DockerPlanSourceService = class DockerPlanSourceService {
133
261
  driver: volumes.Volumes?.find((v) => v.Name === name)?.Driver ?? 'unknown',
134
262
  size: size(usage.Volumes?.find((v) => v.Name === name)?.UsageData?.Size),
135
263
  });
136
- const inspects = await Promise.all(listed.map((entry) => client.json('GET', `/containers/${encodeURIComponent(entry.Id)}/json`, undefined, { signal })));
264
+ const linked = new Set(listed
265
+ .filter((entry) => (0, docker_project_compose_1.containerLinksProject)(entry.Labels, entry.Mounts, root))
266
+ .map((entry) => entry.Id));
267
+ const writableLayers = new Map(recent?.writableLayers);
268
+ const inspects = await Promise.all(listed.map(async (entry) => {
269
+ const measureLayer = linked.has(entry.Id) && !writableLayers.has(entry.Id);
270
+ const inspect = await client.json('GET', `/containers/${encodeURIComponent(entry.Id)}/json${measureLayer ? '?size=true' : ''}`, undefined, { signal });
271
+ if (measureLayer)
272
+ writableLayers.set(entry.Id, size(inspect.SizeRw));
273
+ return inspect;
274
+ }));
275
+ const networkNames = [
276
+ ...new Set(inspects.flatMap((inspect) => Object.keys(inspect.NetworkSettings?.Networks ?? {}).filter((name) => !docker_settings_1.DEFAULT_NETWORKS.has(name)))),
277
+ ];
278
+ const networkSubnets = new Map(await Promise.all(networkNames.map(async (name) => {
279
+ const network = await client.json('GET', `/networks/${encodeURIComponent(name)}`, undefined, { signal });
280
+ return [name, (0, docker_settings_1.ipv4Ranges)(network.IPAM?.Config).map((range) => range.Subnet)];
281
+ })));
137
282
  for (const inspect of inspects) {
138
283
  const item = baseItem(inspect.Id, inspect.Name.replace(/^\//, ''), 'container');
284
+ for (const [name, endpoint] of Object.entries(inspect.NetworkSettings?.Networks ?? {})) {
285
+ if (docker_settings_1.DEFAULT_NETWORKS.has(name))
286
+ continue;
287
+ const address = (0, docker_settings_1.fixedIPv4Address)(endpoint);
288
+ const subnets = networkSubnets.get(name) ?? [];
289
+ (item.networks ??= []).push({ name, subnets });
290
+ if (address)
291
+ (item.fixedIPv4 ??= []).push({ network: name, address, subnets });
292
+ }
139
293
  const labels = (inspect.Config.Labels ?? {});
140
294
  item.composeProject = labels[host_docker_dto_1.COMPOSE_PROJECT_LABEL] ?? null;
141
295
  item.temporary = inspect.HostConfig.AutoRemove === true;
296
+ if (inspect.HostConfig.Privileged === true)
297
+ item.privileged = true;
142
298
  if (item.temporary)
143
299
  item.notes.push(docker_plan_dto_1.DOCKER_TEMPORARY_NOTE);
144
300
  item.notes.push(docker_plan_dto_1.DOCKER_WRITABLE_LAYER_NOTE);
145
- for (const key of [
146
- `${host_docker_dto_1.COMPOSE_PROJECT_LABEL}.working_dir`,
147
- `${host_docker_dto_1.COMPOSE_PROJECT_LABEL}.config_files`,
148
- ]) {
149
- if (labels[key]?.split(',').some((path) => path.startsWith('/') && (0, docker_plan_files_1.within)(root, path)))
150
- item.linkedReasons.push(key);
151
- }
301
+ item.linkedReasons.push(...containerProjectLinks(root, inspect));
152
302
  try {
153
303
  (0, docker_settings_1.projectDockerCreate)(inspect, client.socketPath);
154
304
  }
@@ -167,10 +317,9 @@ let DockerPlanSourceService = class DockerPlanSourceService {
167
317
  }
168
318
  }
169
319
  item.images = [await image(inspect.Image)];
170
- item.writableLayer = size(usage.Containers?.find((c) => c.Id === inspect.Id)?.SizeRw);
171
- const user = String(inspect.Config.User ?? '').split(':')[0];
172
- if (this.uid() !== null && user === String(this.uid()))
173
- item.warnings.push({ code: 'home-uid', message: 'Container runs as the home user uid.' });
320
+ item.writableLayer = linked.has(inspect.Id)
321
+ ? (writableLayers.get(inspect.Id) ?? unknownSize())
322
+ : unknownSize();
174
323
  for (const mount of inspect.Mounts ?? []) {
175
324
  if (mount.Type === 'volume') {
176
325
  const named = explicitlyNamed(inspect, mount) ||
@@ -179,21 +328,25 @@ let DockerPlanSourceService = class DockerPlanSourceService {
179
328
  }
180
329
  else if (mount.Type === 'bind') {
181
330
  const source = (0, node_path_1.resolve)(mount.Source);
182
- const kind = this.bindKind(root, source, !mount.RW);
183
- if (kind === 'project-bind')
331
+ const kind = await this.bindKind(root, source, !mount.RW, dataBindPaths, signal);
332
+ if (kind === 'project-bind' || kind === 'project-code')
184
333
  item.linkedReasons.push(`bind:${source}`);
185
- const copyable = docker_plan_dto_1.COPYABLE_MOUNT_KINDS.includes(kind);
186
- if (copyable && !bindCache.has(source))
187
- bindCache.set(source, await this.measure(source, signal));
188
334
  item.mounts.push({
189
335
  kind,
190
336
  source,
191
337
  destination: mount.Destination,
192
338
  readOnly: !mount.RW,
193
- size: copyable ? (bindCache.get(source) ?? unknownSize()) : unknownSize(),
339
+ size: unknownSize(),
194
340
  });
195
341
  }
196
342
  }
343
+ const composeSet = item.linkedReasons.length ? composeLabelSet(root, inspect) : null;
344
+ if (composeSet?.service) {
345
+ const config = await readCompose(composeSet.directory, composeSet.files);
346
+ if (!(config instanceof Error) &&
347
+ buildsInProject(root, config?.services?.[composeSet.service]))
348
+ item.buildsFromProject = true;
349
+ }
197
350
  items.push(item);
198
351
  }
199
352
  if (composeAttempt instanceof Error) {
@@ -233,6 +386,41 @@ let DockerPlanSourceService = class DockerPlanSourceService {
233
386
  }
234
387
  items.push(item);
235
388
  }
389
+ const previous = await Promise.all([...new Set(previousBindPaths)]
390
+ .filter((path) => (0, docker_plan_files_1.within)(root, path))
391
+ .map(async (path) => ({
392
+ source: path,
393
+ kind: await this.bindKind(root, path, false, dataBindPaths, signal),
394
+ })));
395
+ const projectMounts = items
396
+ .flatMap((item) => item.mounts)
397
+ .filter((mount) => mount.kind === 'project-bind' || mount.kind === 'project-code');
398
+ const dataPaths = [
399
+ ...projectMounts
400
+ .filter((mount) => mount.kind === 'project-bind')
401
+ .map((mount) => mount.source),
402
+ ...previous.filter((mount) => mount.kind === 'project-bind').map((mount) => mount.source),
403
+ ...dataBindPaths.filter((path) => (0, docker_plan_files_1.within)(root, path) && (0, node_path_1.resolve)(path) !== (0, node_path_1.resolve)(root)),
404
+ ];
405
+ const classified = [...projectMounts, ...previous];
406
+ for (const mount of classified)
407
+ if (mount.kind === 'project-code' && dataPaths.some((path) => (0, docker_plan_files_1.within)(path, mount.source)))
408
+ mount.kind = 'project-bind';
409
+ const codePaths = [
410
+ ...new Set(classified.filter((mount) => mount.kind === 'project-code').map((mount) => mount.source)),
411
+ ];
412
+ for (const mount of items.flatMap((item) => item.mounts)) {
413
+ if ((0, docker_plan_dto_1.isVolumeMount)(mount.kind))
414
+ continue;
415
+ if (docker_plan_dto_1.COPYABLE_MOUNT_KINDS.includes(mount.kind)) {
416
+ if (!bindCache.has(mount.source))
417
+ bindCache.set(mount.source, await this.measure(mount.source, signal));
418
+ mount.size = bindCache.get(mount.source) ?? unknownSize();
419
+ }
420
+ else if (mount.kind === 'project-code') {
421
+ mount.size = { bytes: 0, unknown: false };
422
+ }
423
+ }
236
424
  for (const item of items) {
237
425
  const group = [item];
238
426
  for (const member of group)
@@ -242,11 +430,17 @@ let DockerPlanSourceService = class DockerPlanSourceService {
242
430
  item.writerGroup = group.map((member) => member.id).sort();
243
431
  }
244
432
  const folders = new Map([...bindCache].filter(([, size]) => !size.unknown));
245
- this.recent = { at: recent?.at ?? Date.now(), usage, folders };
433
+ this.recent = {
434
+ at: recent?.at ?? Date.now(),
435
+ usage,
436
+ writableLayers: new Map([...writableLayers].filter(([, size]) => !size.unknown)),
437
+ folders,
438
+ compose: composeCache,
439
+ };
246
440
  return {
247
441
  items,
248
442
  homePath: this.homePath(),
249
- uid: this.uid(),
443
+ codePaths,
250
444
  holders: inspects.map((c) => ({
251
445
  volumes: (c.Mounts ?? []).filter((m) => m.Type === 'volume').map((m) => m.Name ?? m.Source),
252
446
  bindPaths: (c.Mounts ?? []).filter((m) => m.Type === 'bind').map((m) => m.Source),
@@ -254,9 +448,35 @@ let DockerPlanSourceService = class DockerPlanSourceService {
254
448
  })),
255
449
  };
256
450
  }
257
- bindKind(root, source, readOnly) {
258
- if ((0, docker_plan_files_1.within)(root, source))
259
- return 'project-bind';
451
+ async bindKind(root, source, readOnly, dataBindPaths, signal) {
452
+ signal?.throwIfAborted();
453
+ if ((0, node_path_1.resolve)(root) === (0, node_path_1.resolve)(source))
454
+ return 'project-code';
455
+ if ((0, docker_plan_files_1.within)(root, source)) {
456
+ if (dataBindPaths.some((path) => (0, node_path_1.resolve)(path) === (0, node_path_1.resolve)(source)))
457
+ return 'project-bind';
458
+ try {
459
+ const result = await this.executor.run({
460
+ argv: ['git', 'ls-files', '-z', '--', `:(literal)${(0, node_path_1.relative)(root, source)}`],
461
+ mode: 'pipe',
462
+ cwd: root,
463
+ timeout: 10_000,
464
+ outputLimits: { maxBytes: 4096 },
465
+ });
466
+ signal?.throwIfAborted();
467
+ if (result.success) {
468
+ const tracked = result.truncated ||
469
+ result.stdout
470
+ .split('\0')
471
+ .some((path) => path && !['.gitkeep', '.keep', '.gitignore'].includes((0, node_path_1.basename)(path)));
472
+ return tracked ? 'project-code' : 'project-bind';
473
+ }
474
+ }
475
+ catch {
476
+ signal?.throwIfAborted();
477
+ }
478
+ return readOnly ? 'project-code' : 'project-bind';
479
+ }
260
480
  if ((0, docker_plan_files_1.within)(this.homePath(), source))
261
481
  return 'home-bind';
262
482
  return readOnly ? 'readonly-external-bind' : 'external-bind';
@@ -282,7 +502,8 @@ let DockerPlanSourceService = class DockerPlanSourceService {
282
502
  };
283
503
  exports.DockerPlanSourceService = DockerPlanSourceService;
284
504
  exports.DockerPlanSourceService = DockerPlanSourceService = __decorate([
285
- (0, common_1.Injectable)()
505
+ (0, common_1.Injectable)(),
506
+ __metadata("design:paramtypes", [process_executor_port_1.ProcessExecutor])
286
507
  ], DockerPlanSourceService);
287
508
  class DockerAvailabilityError extends docker_engine_client_1.DockerEngineError {
288
509
  reason;
@@ -347,15 +568,17 @@ function explicitlyNamed(inspect, mount) {
347
568
  }
348
569
  function sharesData(a, b) {
349
570
  const copied = (mount) => docker_plan_dto_1.COPYABLE_MOUNT_KINDS.includes(mount.kind);
350
- return a.mounts.some((x) => copied(x) &&
351
- b.mounts.some((y) => {
352
- if (!copied(y) || (x.readOnly && y.readOnly))
353
- return false;
354
- const xv = (0, docker_plan_dto_1.isVolumeMount)(x.kind);
355
- const yv = (0, docker_plan_dto_1.isVolumeMount)(y.kind);
356
- return xv && yv
357
- ? x.source === y.source
358
- : !xv && !yv && ((0, docker_plan_files_1.within)(x.source, y.source) || (0, docker_plan_files_1.within)(y.source, x.source));
359
- }));
571
+ const writer = (mount) => copied(mount) || (mount.kind === 'project-code' && !mount.readOnly);
572
+ return a.mounts.some((x) => b.mounts.some((y) => {
573
+ if (x.readOnly && y.readOnly)
574
+ return false;
575
+ if (!(copied(x) && writer(y)) && !(copied(y) && writer(x)))
576
+ return false;
577
+ const xv = (0, docker_plan_dto_1.isVolumeMount)(x.kind);
578
+ const yv = (0, docker_plan_dto_1.isVolumeMount)(y.kind);
579
+ return xv && yv
580
+ ? x.source === y.source
581
+ : !xv && !yv && ((0, docker_plan_files_1.within)(x.source, y.source) || (0, docker_plan_files_1.within)(y.source, x.source));
582
+ }));
360
583
  }
361
584
  //# sourceMappingURL=docker-plan-source.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"docker-plan-source.service.js","sourceRoot":"","sources":["../../../../src/modules/remotes/docker/docker-plan-source.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-plan-source.service.js","sourceRoot":"","sources":["../../../../src/modules/remotes/docker/docker-plan-source.service.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,12 @@ import type { FastifyReply, FastifyRequest } from 'fastify';
2
2
  import { DockerCopyBack } from './docker-copy-back';
3
3
  import type { DockerSyncState } from './docker-copy-back.dto';
4
4
  import { DockerPlanService } from './docker-plan.service';
5
- import type { DockerPlan } from './docker-plan.dto';
5
+ import type { DockerPlan, DockerPresence } from './docker-plan.dto';
6
6
  export declare class DockerPlanController {
7
7
  private readonly plans;
8
8
  private readonly copyBack;
9
9
  constructor(plans: DockerPlanService, copyBack: DockerCopyBack);
10
+ presence(projectId: string, req: FastifyRequest, reply: FastifyReply): Promise<DockerPresence>;
10
11
  plan(projectId: string, body: unknown, req: FastifyRequest, reply: FastifyReply): Promise<DockerPlan>;
11
12
  syncState(projectId: string, body: unknown, req: FastifyRequest, reply: FastifyReply): Promise<DockerSyncState>;
12
13
  }
@@ -25,6 +25,9 @@ let DockerPlanController = class DockerPlanController {
25
25
  this.plans = plans;
26
26
  this.copyBack = copyBack;
27
27
  }
28
+ presence(projectId, req, reply) {
29
+ return this.plans.presence(projectId, (0, request_abort_signal_1.requestAbortSignal)(req, reply));
30
+ }
28
31
  plan(projectId, body, req, reply) {
29
32
  return this.plans.plan(projectId, body, (0, request_abort_signal_1.requestAbortSignal)(req, reply), { reuse: true });
30
33
  }
@@ -33,6 +36,17 @@ let DockerPlanController = class DockerPlanController {
33
36
  }
34
37
  };
35
38
  exports.DockerPlanController = DockerPlanController;
39
+ __decorate([
40
+ (0, common_1.Get)('presence'),
41
+ (0, swagger_1.ApiOperation)({ summary: 'Check whether this project has Docker work on this PC' }),
42
+ (0, swagger_1.ApiResponse)({ status: 200, description: 'Docker work is present, absent, or unknown' }),
43
+ __param(0, (0, common_1.Param)('id', common_1.ParseUUIDPipe)),
44
+ __param(1, (0, common_1.Req)()),
45
+ __param(2, (0, common_1.Res)({ passthrough: true })),
46
+ __metadata("design:type", Function),
47
+ __metadata("design:paramtypes", [String, Object, Object]),
48
+ __metadata("design:returntype", Promise)
49
+ ], DockerPlanController.prototype, "presence", null);
36
50
  __decorate([
37
51
  (0, common_1.Post)('plan'),
38
52
  (0, common_1.HttpCode)(200),
@@ -1 +1 @@
1
- {"version":3,"file":"docker-plan.controller.js","sourceRoot":"","sources":["../../../../src/modules/remotes/docker/docker-plan.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkG;AAClG,6CAAqE;AAErE,oFAA+E;AAC/E,yDAAoD;AAEpD,+DAA0D;AAKnD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAEZ;IACA;IAFnB,YACmB,KAAwB,EACxB,QAAwB;QADxB,UAAK,GAAL,KAAK,CAAmB;QACxB,aAAQ,GAAR,QAAQ,CAAgB;IACxC,CAAC;IAcJ,IAAI,CAC0B,SAAiB,EACrC,IAAa,EACd,GAAmB,EACE,KAAmB;QAG/C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAA,yCAAkB,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3F,CAAC;IAUD,SAAS,CACqB,SAAiB,EACrC,IAAa,EACd,GAAmB,EACE,KAAmB;QAE/C,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,IAAA,yCAAkB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAClF,CAAC;CACF,CAAA;AA5CY,oDAAoB;AAkB/B;IAZC,IAAA,aAAI,EAAC,MAAM,CAAC;IACZ,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,wDAAwD,EAAE,CAAC;IACnF,IAAA,qBAAW,EAAC;QACX,MAAM,EAAE,GAAG;QACX,WAAW,EAAE,qEAAqE;KACnF,CAAC;IACD,IAAA,qBAAW,EAAC;QACX,MAAM,EAAE,GAAG;QACX,WAAW,EAAE,yDAAyD;KACvE,CAAC;IACD,IAAA,qBAAW,EAAC,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,oDAAoD,EAAE,CAAC;IAE7F,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,sBAAa,CAAC,CAAA;IAC1B,WAAA,IAAA,aAAI,GAAE,CAAA;IACN,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,YAAG,EAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;;;;gDAI5B;AAUD;IARC,IAAA,aAAI,EAAC,YAAY,CAAC;IAClB,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,iEAAiE,EAAE,CAAC;IAC5F,IAAA,qBAAW,EAAC;QACX,MAAM,EAAE,GAAG;QACX,WAAW,EAAE,8EAA8E;KAC5F,CAAC;IACD,IAAA,qBAAW,EAAC,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;IAE5D,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,sBAAa,CAAC,CAAA;IAC1B,WAAA,IAAA,aAAI,GAAE,CAAA;IACN,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,YAAG,EAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;;;;qDAG5B;+BA3CU,oBAAoB;IAFhC,IAAA,iBAAO,EAAC,aAAa,CAAC;IACtB,IAAA,mBAAU,EAAC,yBAAyB,CAAC;qCAGV,uCAAiB;QACd,iCAAc;GAHhC,oBAAoB,CA4ChC"}
1
+ {"version":3,"file":"docker-plan.controller.js","sourceRoot":"","sources":["../../../../src/modules/remotes/docker/docker-plan.controller.ts"],"names":[],"mappings":"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"}