devchain-cli 0.24.0 → 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 (432) hide show
  1. package/README.md +1 -4
  2. package/dist/build-info.json +2 -2
  3. package/dist/cli.js +66 -11
  4. package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
  5. package/dist/host-install/pins.json +31 -2
  6. package/dist/lib/exclusive-run.js +51 -3
  7. package/dist/lib/git-owner.js +284 -0
  8. package/dist/lib/host-install.js +19 -151
  9. package/dist/lib/local-api.js +175 -0
  10. package/dist/server/common/config/env.config.d.ts +3 -0
  11. package/dist/server/common/config/env.config.js +1 -0
  12. package/dist/server/common/config/env.config.js.map +1 -1
  13. package/dist/server/common/config/host-image.json +3 -3
  14. package/dist/server/common/constants/syncthing-markers.d.ts +1 -0
  15. package/dist/server/common/constants/syncthing-markers.js +6 -1
  16. package/dist/server/common/constants/syncthing-markers.js.map +1 -1
  17. package/dist/server/common/filesystem/vm-home-path.d.ts +11 -0
  18. package/dist/server/common/filesystem/vm-home-path.js +48 -0
  19. package/dist/server/common/filesystem/vm-home-path.js.map +1 -0
  20. package/dist/server/common/process-ids-env.d.ts +1 -0
  21. package/dist/server/common/process-ids-env.js +13 -0
  22. package/dist/server/common/process-ids-env.js.map +1 -0
  23. package/dist/server/common/test/api-test-app.d.ts +12 -0
  24. package/dist/server/common/test/api-test-app.js +76 -0
  25. package/dist/server/common/test/api-test-app.js.map +1 -0
  26. package/dist/server/common/test/app-bootstrap.helper.js +8 -1
  27. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  28. package/dist/server/common/test/fake-bootstrap.server.js +3 -2
  29. package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
  30. package/dist/server/common/test/fake-docker-engine.server.d.ts +24 -6
  31. package/dist/server/common/test/fake-docker-engine.server.js +123 -25
  32. package/dist/server/common/test/fake-docker-engine.server.js.map +1 -1
  33. package/dist/server/common/test/fake-proxmox.server.js +4 -4
  34. package/dist/server/common/test/fake-ssh.server.js +6 -6
  35. package/dist/server/common/test/fake-ssh.server.js.map +1 -1
  36. package/dist/server/common/test/test-database.helper.d.ts +6 -0
  37. package/dist/server/common/test/test-database.helper.js +29 -0
  38. package/dist/server/common/test/test-database.helper.js.map +1 -0
  39. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +1 -0
  40. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +9 -3
  41. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
  42. package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.d.ts +6 -0
  43. package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.js +88 -0
  44. package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.js.map +1 -0
  45. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +7 -1
  46. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -1
  47. package/dist/server/modules/core/controllers/docker-archive.d.ts +9 -2
  48. package/dist/server/modules/core/controllers/docker-archive.js +22 -6
  49. package/dist/server/modules/core/controllers/docker-archive.js.map +1 -1
  50. package/dist/server/modules/core/controllers/docker-engine.client.d.ts +2 -1
  51. package/dist/server/modules/core/controllers/docker-engine.client.js +57 -4
  52. package/dist/server/modules/core/controllers/docker-engine.client.js.map +1 -1
  53. package/dist/server/modules/core/controllers/docker-image-metadata.d.ts +248 -0
  54. package/dist/server/modules/core/controllers/docker-image-metadata.js +161 -0
  55. package/dist/server/modules/core/controllers/docker-image-metadata.js.map +1 -0
  56. package/dist/server/modules/core/controllers/docker-settings.d.ts +13 -2
  57. package/dist/server/modules/core/controllers/docker-settings.js +49 -11
  58. package/dist/server/modules/core/controllers/docker-settings.js.map +1 -1
  59. package/dist/server/modules/core/controllers/host-user-identity.d.ts +34 -0
  60. package/dist/server/modules/core/controllers/host-user-identity.js +23 -0
  61. package/dist/server/modules/core/controllers/host-user-identity.js.map +1 -0
  62. package/dist/server/modules/core/controllers/runtime.controller.d.ts +11 -4
  63. package/dist/server/modules/core/controllers/runtime.controller.js +2 -0
  64. package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
  65. package/dist/server/modules/file-sync/build-exclusion-suggestions.d.ts +15 -0
  66. package/dist/server/modules/file-sync/build-exclusion-suggestions.js +402 -0
  67. package/dist/server/modules/file-sync/build-exclusion-suggestions.js.map +1 -0
  68. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.d.ts +102 -0
  69. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js +22 -0
  70. package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js.map +1 -0
  71. package/dist/server/modules/file-sync/file-sync-auto-fix.store.d.ts +12 -0
  72. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js +73 -0
  73. package/dist/server/modules/file-sync/file-sync-auto-fix.store.js.map +1 -0
  74. package/dist/server/modules/file-sync/file-sync-conflicts.d.ts +3 -0
  75. package/dist/server/modules/file-sync/file-sync-conflicts.js +191 -0
  76. package/dist/server/modules/file-sync/file-sync-conflicts.js.map +1 -0
  77. package/dist/server/modules/file-sync/file-sync-ignores.store.d.ts +5 -1
  78. package/dist/server/modules/file-sync/file-sync-ignores.store.js +39 -8
  79. package/dist/server/modules/file-sync/file-sync-ignores.store.js.map +1 -1
  80. package/dist/server/modules/file-sync/file-sync.controller.d.ts +1 -3
  81. package/dist/server/modules/file-sync/file-sync.controller.js +5 -14
  82. package/dist/server/modules/file-sync/file-sync.controller.js.map +1 -1
  83. package/dist/server/modules/file-sync/file-sync.dto.d.ts +220 -1
  84. package/dist/server/modules/file-sync/file-sync.dto.js +70 -4
  85. package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
  86. package/dist/server/modules/file-sync/file-sync.module.js +16 -1
  87. package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
  88. package/dist/server/modules/file-sync/file-sync.service.d.ts +20 -5
  89. package/dist/server/modules/file-sync/file-sync.service.js +173 -37
  90. package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
  91. package/dist/server/modules/file-sync/git-guard.dto.d.ts +61 -0
  92. package/dist/server/modules/file-sync/git-guard.dto.js +26 -0
  93. package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -0
  94. package/dist/server/modules/file-sync/home-git-guard.service.d.ts +4 -2
  95. package/dist/server/modules/file-sync/home-git-guard.service.js +50 -25
  96. package/dist/server/modules/file-sync/home-git-guard.service.js.map +1 -1
  97. package/dist/server/modules/file-sync/host-git-guard.controller.d.ts +10 -0
  98. package/dist/server/modules/file-sync/host-git-guard.controller.js +64 -0
  99. package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -0
  100. package/dist/server/modules/file-sync/host-git-index.controller.d.ts +9 -0
  101. package/dist/server/modules/file-sync/host-git-index.controller.js +67 -0
  102. package/dist/server/modules/file-sync/host-git-index.controller.js.map +1 -0
  103. package/dist/server/modules/file-sync/host-sync.controller.d.ts +15 -2
  104. package/dist/server/modules/file-sync/host-sync.controller.js +122 -14
  105. package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
  106. package/dist/server/modules/file-sync/ignore-pattern-matcher.d.ts +30 -0
  107. package/dist/server/modules/file-sync/ignore-pattern-matcher.js +183 -0
  108. package/dist/server/modules/file-sync/ignore-pattern-matcher.js.map +1 -0
  109. package/dist/server/modules/file-sync/project-repository.d.ts +2 -0
  110. package/dist/server/modules/file-sync/project-repository.js +20 -0
  111. package/dist/server/modules/file-sync/project-repository.js.map +1 -0
  112. package/dist/server/modules/file-sync/sync-chown.dto.d.ts +99 -0
  113. package/dist/server/modules/file-sync/sync-chown.dto.js +46 -0
  114. package/dist/server/modules/file-sync/sync-chown.dto.js.map +1 -0
  115. package/dist/server/modules/file-sync/sync-chown.service.d.ts +12 -0
  116. package/dist/server/modules/file-sync/sync-chown.service.js +230 -0
  117. package/dist/server/modules/file-sync/sync-chown.service.js.map +1 -0
  118. package/dist/server/modules/file-sync/sync-path-inspection.dto.d.ts +626 -0
  119. package/dist/server/modules/file-sync/sync-path-inspection.dto.js +108 -0
  120. package/dist/server/modules/file-sync/sync-path-inspection.dto.js.map +1 -0
  121. package/dist/server/modules/file-sync/sync-path-inspector.d.ts +12 -0
  122. package/dist/server/modules/file-sync/sync-path-inspector.js +413 -0
  123. package/dist/server/modules/file-sync/sync-path-inspector.js.map +1 -0
  124. package/dist/server/modules/file-sync/syncthing-rest.client.d.ts +1 -1
  125. package/dist/server/modules/file-sync/syncthing-rest.client.js +9 -4
  126. package/dist/server/modules/file-sync/syncthing-rest.client.js.map +1 -1
  127. package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +28 -5
  128. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +68 -5
  129. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
  130. package/dist/server/modules/file-sync/translate-git-ignore-rule.d.ts +3 -0
  131. package/dist/server/modules/file-sync/translate-git-ignore-rule.js +30 -0
  132. package/dist/server/modules/file-sync/translate-git-ignore-rule.js.map +1 -0
  133. package/dist/server/modules/hooks/dtos/hook-event.dto.d.ts +86 -0
  134. package/dist/server/modules/hooks/dtos/hook-event.dto.js +15 -1
  135. package/dist/server/modules/hooks/dtos/hook-event.dto.js.map +1 -1
  136. package/dist/server/modules/hooks/services/hooks-config.service.js +29 -0
  137. package/dist/server/modules/hooks/services/hooks-config.service.js.map +1 -1
  138. package/dist/server/modules/hooks/services/hooks.service.d.ts +5 -1
  139. package/dist/server/modules/hooks/services/hooks.service.js +27 -5
  140. package/dist/server/modules/hooks/services/hooks.service.js.map +1 -1
  141. package/dist/server/modules/hooks/services/pending-ask-user-question.service.d.ts +2 -2
  142. package/dist/server/modules/hooks/services/pending-ask-user-question.service.js +9 -12
  143. package/dist/server/modules/hooks/services/pending-ask-user-question.service.js.map +1 -1
  144. package/dist/server/modules/mcp/services/handlers/skill-tools.js +2 -2
  145. package/dist/server/modules/mcp/services/handlers/skill-tools.js.map +1 -1
  146. package/dist/server/modules/metrics/services/metrics.service.js +1 -1
  147. package/dist/server/modules/metrics/services/metrics.service.js.map +1 -1
  148. package/dist/server/modules/providers/adapters/claude.adapter.d.ts +3 -1
  149. package/dist/server/modules/providers/adapters/claude.adapter.js +4 -1
  150. package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
  151. package/dist/server/modules/remotes/connect-choices.controller.d.ts +9 -0
  152. package/dist/server/modules/remotes/connect-choices.controller.js +54 -0
  153. package/dist/server/modules/remotes/connect-choices.controller.js.map +1 -0
  154. package/dist/server/modules/remotes/connect-choices.dto.d.ts +52 -0
  155. package/dist/server/modules/remotes/connect-choices.dto.js +19 -0
  156. package/dist/server/modules/remotes/connect-choices.dto.js.map +1 -0
  157. package/dist/server/modules/remotes/connect-choices.store.d.ts +12 -0
  158. package/dist/server/modules/remotes/connect-choices.store.js +95 -0
  159. package/dist/server/modules/remotes/connect-choices.store.js.map +1 -0
  160. package/dist/server/modules/remotes/controllers/remotes.controller.d.ts +3 -0
  161. package/dist/server/modules/remotes/controllers/remotes.controller.js +9 -1
  162. package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
  163. package/dist/server/modules/remotes/docker/docker-copy-back.d.ts +1 -0
  164. package/dist/server/modules/remotes/docker/docker-copy-back.js +70 -31
  165. package/dist/server/modules/remotes/docker/docker-copy-back.js.map +1 -1
  166. package/dist/server/modules/remotes/docker/docker-handoff.d.ts +5 -3
  167. package/dist/server/modules/remotes/docker/docker-handoff.js +221 -53
  168. package/dist/server/modules/remotes/docker/docker-handoff.js.map +1 -1
  169. package/dist/server/modules/remotes/docker/docker-handoff.store.d.ts +5 -0
  170. package/dist/server/modules/remotes/docker/docker-handoff.store.js.map +1 -1
  171. package/dist/server/modules/remotes/docker/docker-plan-fit.d.ts +4 -1
  172. package/dist/server/modules/remotes/docker/docker-plan-fit.js +19 -6
  173. package/dist/server/modules/remotes/docker/docker-plan-fit.js.map +1 -1
  174. package/dist/server/modules/remotes/docker/docker-plan-policy.d.ts +6 -2
  175. package/dist/server/modules/remotes/docker/docker-plan-policy.js +191 -38
  176. package/dist/server/modules/remotes/docker/docker-plan-policy.js.map +1 -1
  177. package/dist/server/modules/remotes/docker/docker-plan-source.service.d.ts +55 -6
  178. package/dist/server/modules/remotes/docker/docker-plan-source.service.js +284 -52
  179. package/dist/server/modules/remotes/docker/docker-plan-source.service.js.map +1 -1
  180. package/dist/server/modules/remotes/docker/docker-plan.controller.d.ts +2 -1
  181. package/dist/server/modules/remotes/docker/docker-plan.controller.js +15 -1
  182. package/dist/server/modules/remotes/docker/docker-plan.controller.js.map +1 -1
  183. package/dist/server/modules/remotes/docker/docker-plan.dto.d.ts +47 -1
  184. package/dist/server/modules/remotes/docker/docker-plan.dto.js +1 -0
  185. package/dist/server/modules/remotes/docker/docker-plan.dto.js.map +1 -1
  186. package/dist/server/modules/remotes/docker/docker-plan.service.d.ts +15 -6
  187. package/dist/server/modules/remotes/docker/docker-plan.service.js +83 -20
  188. package/dist/server/modules/remotes/docker/docker-plan.service.js.map +1 -1
  189. package/dist/server/modules/remotes/docker/docker-project-compose.d.ts +7 -0
  190. package/dist/server/modules/remotes/docker/docker-project-compose.js +30 -0
  191. package/dist/server/modules/remotes/docker/docker-project-compose.js.map +1 -0
  192. package/dist/server/modules/remotes/dtos/remote.dto.d.ts +2 -0
  193. package/dist/server/modules/remotes/dtos/remote.dto.js.map +1 -1
  194. package/dist/server/modules/remotes/git-owner.store.d.ts +13 -0
  195. package/dist/server/modules/remotes/git-owner.store.js +69 -0
  196. package/dist/server/modules/remotes/git-owner.store.js.map +1 -0
  197. package/dist/server/modules/remotes/host/host-docker.controller.d.ts +14 -1
  198. package/dist/server/modules/remotes/host/host-docker.controller.js +28 -9
  199. package/dist/server/modules/remotes/host/host-docker.controller.js.map +1 -1
  200. package/dist/server/modules/remotes/host/host-docker.dto.d.ts +640 -3
  201. package/dist/server/modules/remotes/host/host-docker.dto.js +66 -9
  202. package/dist/server/modules/remotes/host/host-docker.dto.js.map +1 -1
  203. package/dist/server/modules/remotes/host/host-docker.service.d.ts +18 -6
  204. package/dist/server/modules/remotes/host/host-docker.service.js +184 -81
  205. package/dist/server/modules/remotes/host/host-docker.service.js.map +1 -1
  206. package/dist/server/modules/remotes/host/host-ipv4-routes.d.ts +4 -0
  207. package/dist/server/modules/remotes/host/host-ipv4-routes.js +43 -0
  208. package/dist/server/modules/remotes/host/host-ipv4-routes.js.map +1 -0
  209. package/dist/server/modules/remotes/host-image.d.ts +1 -1
  210. package/dist/server/modules/remotes/host-image.js +1 -1
  211. package/dist/server/modules/remotes/host-install/host-install-block.d.ts +1 -0
  212. package/dist/server/modules/remotes/host-install/host-install-block.js +76 -2
  213. package/dist/server/modules/remotes/host-install/host-install-block.js.map +1 -1
  214. package/dist/server/modules/remotes/host-install/host-install.service.d.ts +0 -1
  215. package/dist/server/modules/remotes/host-install/host-install.service.js +9 -26
  216. package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
  217. package/dist/server/modules/remotes/operations/attach.operation.d.ts +5 -1
  218. package/dist/server/modules/remotes/operations/attach.operation.js +41 -5
  219. package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
  220. package/dist/server/modules/remotes/operations/claim.operation.d.ts +1 -0
  221. package/dist/server/modules/remotes/operations/claim.operation.js +6 -1
  222. package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
  223. package/dist/server/modules/remotes/operations/detach.operation.d.ts +4 -1
  224. package/dist/server/modules/remotes/operations/detach.operation.js +10 -2
  225. package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
  226. package/dist/server/modules/remotes/operations/docker-import-inventory.store.d.ts +10 -0
  227. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js +17 -0
  228. package/dist/server/modules/remotes/operations/docker-import-inventory.store.js.map +1 -1
  229. package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +30 -2
  230. package/dist/server/modules/remotes/operations/file-sync-handoff.js +498 -57
  231. package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
  232. package/dist/server/modules/remotes/operations/force-sync.operation.d.ts +39 -0
  233. package/dist/server/modules/remotes/operations/force-sync.operation.js +177 -0
  234. package/dist/server/modules/remotes/operations/force-sync.operation.js.map +1 -0
  235. package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +83 -0
  236. package/dist/server/modules/remotes/operations/git-owner.dto.js +25 -0
  237. package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -0
  238. package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +35 -0
  239. package/dist/server/modules/remotes/operations/git-owner.operation.js +216 -0
  240. package/dist/server/modules/remotes/operations/git-owner.operation.js.map +1 -0
  241. package/dist/server/modules/remotes/operations/remote-host.client.d.ts +72 -8
  242. package/dist/server/modules/remotes/operations/remote-host.client.js +162 -28
  243. package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
  244. package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +19 -0
  245. package/dist/server/modules/remotes/operations/remote-operation.dto.js +5 -1
  246. package/dist/server/modules/remotes/operations/remote-operation.dto.js.map +1 -1
  247. package/dist/server/modules/remotes/operations/remote-operation.runner.d.ts +3 -1
  248. package/dist/server/modules/remotes/operations/remote-operation.runner.js +59 -21
  249. package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
  250. package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +4 -1
  251. package/dist/server/modules/remotes/operations/remote-operation.types.js +4 -2
  252. package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
  253. package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +5 -0
  254. package/dist/server/modules/remotes/operations/remote-operations.controller.js +56 -0
  255. package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
  256. package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +16 -1
  257. package/dist/server/modules/remotes/operations/remote-operations.service.js +155 -5
  258. package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
  259. package/dist/server/modules/remotes/operations/update-logins.operation.d.ts +1 -3
  260. package/dist/server/modules/remotes/operations/update-logins.operation.js +3 -18
  261. package/dist/server/modules/remotes/operations/update-logins.operation.js.map +1 -1
  262. package/dist/server/modules/remotes/ports/remote-health.port.d.ts +2 -0
  263. package/dist/server/modules/remotes/ports/remote-health.port.js.map +1 -1
  264. package/dist/server/modules/remotes/remotes.module.js +18 -0
  265. package/dist/server/modules/remotes/remotes.module.js.map +1 -1
  266. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.d.ts +2 -2
  267. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js +2 -13
  268. package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js.map +1 -1
  269. package/dist/server/modules/remotes/services/remote-health.service.js +5 -0
  270. package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
  271. package/dist/server/modules/remotes/sync/file-sync-failures.service.d.ts +18 -0
  272. package/dist/server/modules/remotes/sync/file-sync-failures.service.js +157 -0
  273. package/dist/server/modules/remotes/sync/file-sync-failures.service.js.map +1 -0
  274. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.d.ts +14 -0
  275. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js +99 -0
  276. package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js.map +1 -0
  277. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.d.ts +15 -0
  278. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js +90 -0
  279. package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js.map +1 -0
  280. package/dist/server/modules/remotes/sync/project-file-sync.controller.d.ts +29 -0
  281. package/dist/server/modules/remotes/sync/project-file-sync.controller.js +160 -0
  282. package/dist/server/modules/remotes/sync/project-file-sync.controller.js.map +1 -0
  283. package/dist/server/modules/remotes/sync/remote-file-sync.dto.d.ts +72 -0
  284. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js +16 -0
  285. package/dist/server/modules/remotes/sync/remote-file-sync.dto.js.map +1 -0
  286. package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +32 -1
  287. package/dist/server/modules/remotes/sync/remote-file-sync.service.js +499 -38
  288. package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
  289. package/dist/server/modules/remotes/sync/remote-live-sync.service.d.ts +2 -0
  290. package/dist/server/modules/remotes/sync/remote-live-sync.service.js +26 -12
  291. package/dist/server/modules/remotes/sync/remote-live-sync.service.js.map +1 -1
  292. package/dist/server/modules/remotes/vm-user-identity.d.ts +29 -0
  293. package/dist/server/modules/remotes/vm-user-identity.js +45 -0
  294. package/dist/server/modules/remotes/vm-user-identity.js.map +1 -0
  295. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +5 -1
  296. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
  297. package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.d.ts +5 -0
  298. package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.js +9 -0
  299. package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.js.map +1 -1
  300. package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.d.ts +1 -0
  301. package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js +1 -0
  302. package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js.map +1 -1
  303. package/dist/server/modules/session-reader/builders/semantic-step-extractor.js +1 -1
  304. package/dist/server/modules/session-reader/builders/semantic-step-extractor.js.map +1 -1
  305. package/dist/server/modules/session-reader/controllers/session-reader.controller.js +1 -1
  306. package/dist/server/modules/session-reader/controllers/session-reader.controller.js.map +1 -1
  307. package/dist/server/modules/session-reader/data/pricing.json +89 -12
  308. package/dist/server/modules/session-reader/dtos/unified-message.types.d.ts +1 -0
  309. package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.d.ts +3 -0
  310. package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js +10 -1
  311. package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js.map +1 -1
  312. package/dist/server/modules/session-reader/parsers/claude-turn-evidence.d.ts +11 -0
  313. package/dist/server/modules/session-reader/parsers/claude-turn-evidence.js +50 -0
  314. package/dist/server/modules/session-reader/parsers/claude-turn-evidence.js.map +1 -0
  315. package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js +8 -2
  316. package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js.map +1 -1
  317. package/dist/server/modules/session-reader/services/bounded-anchor-proof.d.ts +7 -0
  318. package/dist/server/modules/session-reader/services/bounded-anchor-proof.js +31 -2
  319. package/dist/server/modules/session-reader/services/bounded-anchor-proof.js.map +1 -1
  320. package/dist/server/modules/session-reader/services/session-cache.service.d.ts +8 -2
  321. package/dist/server/modules/session-reader/services/session-cache.service.js +80 -21
  322. package/dist/server/modules/session-reader/services/session-cache.service.js.map +1 -1
  323. package/dist/server/modules/session-reader/services/session-reader.service.d.ts +4 -0
  324. package/dist/server/modules/session-reader/services/session-reader.service.js +40 -8
  325. package/dist/server/modules/session-reader/services/session-reader.service.js.map +1 -1
  326. package/dist/server/modules/session-reader/services/transcript-cursor.d.ts +16 -4
  327. package/dist/server/modules/session-reader/services/transcript-cursor.js +65 -6
  328. package/dist/server/modules/session-reader/services/transcript-cursor.js.map +1 -1
  329. package/dist/server/modules/session-reader/services/transcript-serialization.js +2 -1
  330. package/dist/server/modules/session-reader/services/transcript-serialization.js.map +1 -1
  331. package/dist/server/modules/session-reader/services/transcript-turn-state.d.ts +4 -0
  332. package/dist/server/modules/session-reader/services/transcript-turn-state.js +20 -0
  333. package/dist/server/modules/session-reader/services/transcript-turn-state.js.map +1 -0
  334. package/dist/server/modules/session-reader/services/transcript-watcher.service.d.ts +4 -1
  335. package/dist/server/modules/session-reader/services/transcript-watcher.service.js +43 -18
  336. package/dist/server/modules/session-reader/services/transcript-watcher.service.js.map +1 -1
  337. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +5 -0
  338. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
  339. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +36 -17
  340. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +26 -9
  341. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
  342. package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.d.ts +19 -0
  343. package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.js +26 -0
  344. package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.js.map +1 -0
  345. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +10 -18
  346. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
  347. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.d.ts +5 -1
  348. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +20 -2
  349. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
  350. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.d.ts +6 -0
  351. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js +26 -0
  352. package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js.map +1 -1
  353. package/dist/server/modules/settings/services/settings.service.d.ts +3 -1
  354. package/dist/server/modules/settings/services/settings.service.js +6 -0
  355. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  356. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js +5 -5
  357. package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js.map +1 -1
  358. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js +5 -5
  359. package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js.map +1 -1
  360. package/dist/server/modules/skills/adapters/github-skill-source.base.js +4 -3
  361. package/dist/server/modules/skills/adapters/github-skill-source.base.js.map +1 -1
  362. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js +5 -5
  363. package/dist/server/modules/skills/adapters/local-skill-source.adapter.js.map +1 -1
  364. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js +5 -5
  365. package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js.map +1 -1
  366. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js +5 -5
  367. package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js.map +1 -1
  368. package/dist/server/modules/skills/adapters/skill-source.adapter.d.ts +5 -0
  369. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.d.ts +5 -0
  370. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js +75 -0
  371. package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js.map +1 -0
  372. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js +5 -5
  373. package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js.map +1 -1
  374. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js +5 -5
  375. package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js.map +1 -1
  376. package/dist/server/modules/skills/controllers/skills.controller.js +2 -2
  377. package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
  378. package/dist/server/modules/skills/services/skill-source-lifecycle.service.d.ts +3 -3
  379. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js +9 -4
  380. package/dist/server/modules/skills/services/skill-source-lifecycle.service.js.map +1 -1
  381. package/dist/server/modules/skills/services/skill-sync.service.d.ts +3 -3
  382. package/dist/server/modules/skills/services/skill-sync.service.js +32 -6
  383. package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
  384. package/dist/server/modules/skills/services/skill-sync.types.d.ts +3 -0
  385. package/dist/server/modules/storage/db/schema.d.ts +2 -2
  386. package/dist/server/modules/storage/db/schema.js +2 -0
  387. package/dist/server/modules/storage/db/schema.js.map +1 -1
  388. package/dist/server/modules/storage/models/domain.models.d.ts +1 -1
  389. package/dist/server/modules/storage/models/domain.models.js +2 -0
  390. package/dist/server/modules/storage/models/domain.models.js.map +1 -1
  391. package/dist/server/modules/teams/storage/teams.store.d.ts +1 -0
  392. package/dist/server/modules/teams/storage/teams.store.js +19 -3
  393. package/dist/server/modules/teams/storage/teams.store.js.map +1 -1
  394. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +3 -1
  395. package/dist/server/modules/terminal/gateways/terminal.gateway.js +9 -4
  396. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  397. package/dist/server/modules/terminal/services/session-turn-signals.d.ts +18 -0
  398. package/dist/server/modules/terminal/services/session-turn-signals.js +6 -0
  399. package/dist/server/modules/terminal/services/session-turn-signals.js.map +1 -0
  400. package/dist/server/modules/terminal/services/terminal-activity.service.d.ts +32 -5
  401. package/dist/server/modules/terminal/services/terminal-activity.service.js +322 -40
  402. package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -1
  403. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +15 -3
  404. package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
  405. package/dist/server/modules/terminal/terminal.module.js +2 -0
  406. package/dist/server/modules/terminal/terminal.module.js.map +1 -1
  407. package/dist/server/modules/terminal/utils/ansi-sanitizer.d.ts +0 -1
  408. package/dist/server/modules/terminal/utils/ansi-sanitizer.js +0 -4
  409. package/dist/server/modules/terminal/utils/ansi-sanitizer.js.map +1 -1
  410. package/dist/server/templates/teams-dev.json +14 -14
  411. package/dist/server/test-setup-node.js +4 -3
  412. package/dist/server/test-setup-node.js.map +1 -1
  413. package/dist/server/test-setup.js +7 -0
  414. package/dist/server/test-setup.js.map +1 -1
  415. package/dist/server/tsconfig.tsbuildinfo +1 -1
  416. package/dist/server/ui/assets/{ExternalRichEditor--kNXs-Eb.js → ExternalRichEditor-CIZPhssf.js} +24 -24
  417. package/dist/server/ui/assets/ReviewDetailPage-winyLSQ7.js +6 -0
  418. package/dist/server/ui/assets/ReviewsPage-BYKBReMp.js +6 -0
  419. package/dist/server/ui/assets/index-CiDJX6Hn.js +1191 -0
  420. package/dist/server/ui/assets/index-f1WOAqXB.css +32 -0
  421. package/dist/server/ui/assets/useReviewSubscription-v3Cto0y4.js +69 -0
  422. package/dist/server/ui/index.html +2 -2
  423. package/dist/templates/teams-dev.json +14 -14
  424. package/package.json +15 -1
  425. package/dist/server/modules/reviews/utils/notification-formatter.d.ts +0 -12
  426. package/dist/server/modules/reviews/utils/notification-formatter.js +0 -60
  427. package/dist/server/modules/reviews/utils/notification-formatter.js.map +0 -1
  428. package/dist/server/ui/assets/ReviewDetailPage-DMgP5fKn.js +0 -6
  429. package/dist/server/ui/assets/ReviewsPage-CkyFUJr6.js +0 -6
  430. package/dist/server/ui/assets/index-CVUaAlP4.css +0 -32
  431. package/dist/server/ui/assets/index-CqRufKpA.js +0 -994
  432. package/dist/server/ui/assets/useReviewSubscription-CU70CzwG.js +0 -69
@@ -6,6 +6,7 @@ export type FolderType = z.infer<typeof FolderTypeSchema>;
6
6
  export declare const FolderIdSchema: z.ZodString;
7
7
  export declare const IGNORE_PATTERNS_MAX = 200;
8
8
  export declare const IGNORE_PATTERN_MAX_LENGTH = 256;
9
+ export declare const FILE_SYNC_IGNORES_CHANGED = "FILE_SYNC_IGNORES_CHANGED";
9
10
  export declare const IgnorePatternsSchema: z.ZodArray<z.ZodString, "many">;
10
11
  export declare const DEFAULT_FILE_SYNC_IGNORES: readonly string[];
11
12
  export declare const CODE_SYSTEM_IGNORE = "/.git";
@@ -23,19 +24,82 @@ export declare const SyncDeviceSchema: z.ZodObject<{
23
24
  deviceId: string;
24
25
  }>;
25
26
  export type SyncDevice = z.infer<typeof SyncDeviceSchema>;
26
- export declare const SyncFolderRequestSchema: z.ZodObject<{
27
+ export declare const ForceCopySchema: z.ZodObject<{
28
+ operationId: z.ZodEffects<z.ZodString, string, string>;
29
+ }, "strict", z.ZodTypeAny, {
30
+ operationId: string;
31
+ }, {
32
+ operationId: string;
33
+ }>;
34
+ export declare const ForceCopyBackupRequestSchema: z.ZodObject<{
35
+ projectId: z.ZodEffects<z.ZodString, string, string>;
36
+ kind: z.ZodEnum<["code", "git"]>;
37
+ forceCopy: z.ZodObject<{
38
+ operationId: z.ZodEffects<z.ZodString, string, string>;
39
+ }, "strict", z.ZodTypeAny, {
40
+ operationId: string;
41
+ }, {
42
+ operationId: string;
43
+ }>;
44
+ }, "strict", z.ZodTypeAny, {
45
+ projectId: string;
46
+ kind: "code" | "git";
47
+ forceCopy: {
48
+ operationId: string;
49
+ };
50
+ }, {
51
+ projectId: string;
52
+ kind: "code" | "git";
53
+ forceCopy: {
54
+ operationId: string;
55
+ };
56
+ }>;
57
+ export type ForceCopyBackupRequest = z.infer<typeof ForceCopyBackupRequestSchema>;
58
+ export declare const ForceCopyBackupSchema: z.ZodObject<{
59
+ path: z.ZodString;
60
+ }, "strip", z.ZodTypeAny, {
61
+ path: string;
62
+ }, {
63
+ path: string;
64
+ }>;
65
+ export type ForceCopyBackup = z.infer<typeof ForceCopyBackupSchema>;
66
+ export declare const RECEIVE_ONLY_SAMPLE_MAX = 200;
67
+ export declare const TRANSIENT_SYNC_ERROR = "file modified but not rescanned; will try again later";
68
+ export declare const isTransientSyncError: (error: string) => boolean;
69
+ export declare const ReceiveOnlyChangesSchema: z.ZodObject<{
70
+ count: z.ZodNumber;
71
+ sample: z.ZodArray<z.ZodString, "many">;
72
+ }, "strip", z.ZodTypeAny, {
73
+ count: number;
74
+ sample: string[];
75
+ }, {
76
+ count: number;
77
+ sample: string[];
78
+ }>;
79
+ export type ReceiveOnlyChanges = z.infer<typeof ReceiveOnlyChangesSchema>;
80
+ export declare const SyncFolderRequestSchema: z.ZodEffects<z.ZodObject<{
27
81
  projectId: z.ZodString;
28
82
  kind: z.ZodEnum<["code", "git"]>;
29
83
  type: z.ZodEnum<["sendonly", "receiveonly", "sendreceive"]>;
30
84
  peerDeviceId: z.ZodString;
31
85
  ignores: z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>;
32
86
  paused: z.ZodOptional<z.ZodBoolean>;
87
+ forceCopy: z.ZodOptional<z.ZodObject<{
88
+ operationId: z.ZodEffects<z.ZodString, string, string>;
89
+ }, "strict", z.ZodTypeAny, {
90
+ operationId: string;
91
+ }, {
92
+ operationId: string;
93
+ }>>;
33
94
  }, "strict", z.ZodTypeAny, {
34
95
  type: "sendonly" | "receiveonly" | "sendreceive";
35
96
  projectId: string;
36
97
  kind: "code" | "git";
37
98
  peerDeviceId: string;
38
99
  ignores: string[];
100
+ forceCopy?: {
101
+ operationId: string;
102
+ } | undefined;
39
103
  paused?: boolean | undefined;
40
104
  }, {
41
105
  type: "sendonly" | "receiveonly" | "sendreceive";
@@ -43,6 +107,29 @@ export declare const SyncFolderRequestSchema: z.ZodObject<{
43
107
  kind: "code" | "git";
44
108
  peerDeviceId: string;
45
109
  ignores: string[];
110
+ forceCopy?: {
111
+ operationId: string;
112
+ } | undefined;
113
+ paused?: boolean | undefined;
114
+ }>, {
115
+ type: "sendonly" | "receiveonly" | "sendreceive";
116
+ projectId: string;
117
+ kind: "code" | "git";
118
+ peerDeviceId: string;
119
+ ignores: string[];
120
+ forceCopy?: {
121
+ operationId: string;
122
+ } | undefined;
123
+ paused?: boolean | undefined;
124
+ }, {
125
+ type: "sendonly" | "receiveonly" | "sendreceive";
126
+ projectId: string;
127
+ kind: "code" | "git";
128
+ peerDeviceId: string;
129
+ ignores: string[];
130
+ forceCopy?: {
131
+ operationId: string;
132
+ } | undefined;
46
133
  paused?: boolean | undefined;
47
134
  }>;
48
135
  export type SyncFolderRequest = z.infer<typeof SyncFolderRequestSchema>;
@@ -51,18 +138,45 @@ export declare const SyncFolderSchema: z.ZodObject<{
51
138
  path: z.ZodString;
52
139
  type: z.ZodEnum<["sendonly", "receiveonly", "sendreceive"]>;
53
140
  paused: z.ZodBoolean;
141
+ backupPath: z.ZodOptional<z.ZodString>;
54
142
  }, "strip", z.ZodTypeAny, {
55
143
  path: string;
56
144
  type: "sendonly" | "receiveonly" | "sendreceive";
57
145
  id: string;
58
146
  paused: boolean;
147
+ backupPath?: string | undefined;
59
148
  }, {
60
149
  path: string;
61
150
  type: "sendonly" | "receiveonly" | "sendreceive";
62
151
  id: string;
63
152
  paused: boolean;
153
+ backupPath?: string | undefined;
64
154
  }>;
65
155
  export type SyncFolder = z.infer<typeof SyncFolderSchema>;
156
+ export declare const SyncFolderConfigurationSchema: z.ZodObject<{
157
+ type: z.ZodEnum<["sendonly", "receiveonly", "sendreceive"]>;
158
+ paused: z.ZodBoolean;
159
+ devices: z.ZodArray<z.ZodObject<{
160
+ deviceID: z.ZodString;
161
+ }, "strip", z.ZodTypeAny, {
162
+ deviceID: string;
163
+ }, {
164
+ deviceID: string;
165
+ }>, "many">;
166
+ }, "strip", z.ZodTypeAny, {
167
+ type: "sendonly" | "receiveonly" | "sendreceive";
168
+ paused: boolean;
169
+ devices: {
170
+ deviceID: string;
171
+ }[];
172
+ }, {
173
+ type: "sendonly" | "receiveonly" | "sendreceive";
174
+ paused: boolean;
175
+ devices: {
176
+ deviceID: string;
177
+ }[];
178
+ }>;
179
+ export type SyncFolderConfiguration = z.infer<typeof SyncFolderConfigurationSchema>;
66
180
  export declare const SyncFolderPatchSchema: z.ZodEffects<z.ZodObject<{
67
181
  type: z.ZodOptional<z.ZodEnum<["sendonly", "receiveonly", "sendreceive"]>>;
68
182
  paused: z.ZodOptional<z.ZodBoolean>;
@@ -88,18 +202,35 @@ export type SyncFolderPatch = z.infer<typeof SyncFolderPatchSchema>;
88
202
  export declare const SyncStatusQuerySchema: z.ZodObject<{
89
203
  folder: z.ZodString;
90
204
  device: z.ZodOptional<z.ZodString>;
205
+ errors: z.ZodOptional<z.ZodLiteral<"all">>;
91
206
  }, "strict", z.ZodTypeAny, {
92
207
  folder: string;
208
+ errors?: "all" | undefined;
93
209
  device?: string | undefined;
94
210
  }, {
95
211
  folder: string;
212
+ errors?: "all" | undefined;
96
213
  device?: string | undefined;
97
214
  }>;
215
+ export interface SyncStatusOptions {
216
+ allErrors?: boolean;
217
+ }
98
218
  export declare const FolderSyncStatusSchema: z.ZodObject<{
99
219
  folderId: z.ZodString;
100
220
  state: z.ZodString;
101
221
  error: z.ZodOptional<z.ZodString>;
102
222
  errors: z.ZodOptional<z.ZodNumber>;
223
+ pullErrors: z.ZodOptional<z.ZodNumber>;
224
+ fileErrors: z.ZodOptional<z.ZodArray<z.ZodObject<{
225
+ path: z.ZodString;
226
+ error: z.ZodString;
227
+ }, "strip", z.ZodTypeAny, {
228
+ error: string;
229
+ path: string;
230
+ }, {
231
+ error: string;
232
+ path: string;
233
+ }>, "many">>;
103
234
  localFiles: z.ZodNumber;
104
235
  localDirectories: z.ZodNumber;
105
236
  globalFiles: z.ZodNumber;
@@ -145,6 +276,11 @@ export declare const FolderSyncStatusSchema: z.ZodObject<{
145
276
  } | null;
146
277
  error?: string | undefined;
147
278
  errors?: number | undefined;
279
+ pullErrors?: number | undefined;
280
+ fileErrors?: {
281
+ error: string;
282
+ path: string;
283
+ }[] | undefined;
148
284
  }, {
149
285
  state: string;
150
286
  folderId: string;
@@ -164,12 +300,95 @@ export declare const FolderSyncStatusSchema: z.ZodObject<{
164
300
  } | null;
165
301
  error?: string | undefined;
166
302
  errors?: number | undefined;
303
+ pullErrors?: number | undefined;
304
+ fileErrors?: {
305
+ error: string;
306
+ path: string;
307
+ }[] | undefined;
167
308
  }>;
168
309
  export type FolderSyncStatus = z.infer<typeof FolderSyncStatusSchema>;
310
+ export declare const FILE_SYNC_REPORT_SAMPLE = 20;
311
+ export declare const CONFLICT_BASELINE_MAX = 1000;
312
+ export declare const ConflictBaselineSchema: z.ZodUnion<[z.ZodObject<{
313
+ baselineOverCap: z.ZodLiteral<false>;
314
+ paths: z.ZodArray<z.ZodString, "many">;
315
+ }, "strip", z.ZodTypeAny, {
316
+ baselineOverCap: false;
317
+ paths: string[];
318
+ }, {
319
+ baselineOverCap: false;
320
+ paths: string[];
321
+ }>, z.ZodObject<{
322
+ baselineOverCap: z.ZodLiteral<true>;
323
+ }, "strict", z.ZodTypeAny, {
324
+ baselineOverCap: true;
325
+ }, {
326
+ baselineOverCap: true;
327
+ }>]>;
328
+ export type ConflictBaseline = z.infer<typeof ConflictBaselineSchema>;
329
+ export declare const RemoteNeedQuerySchema: z.ZodObject<{
330
+ device: z.ZodString;
331
+ }, "strict", z.ZodTypeAny, {
332
+ device: string;
333
+ }, {
334
+ device: string;
335
+ }>;
336
+ export declare const RemoteNeedSchema: z.ZodObject<{
337
+ total: z.ZodNumber;
338
+ deleted: z.ZodNumber;
339
+ sample: z.ZodArray<z.ZodObject<{
340
+ path: z.ZodString;
341
+ deleted: z.ZodBoolean;
342
+ }, "strip", z.ZodTypeAny, {
343
+ path: string;
344
+ deleted: boolean;
345
+ }, {
346
+ path: string;
347
+ deleted: boolean;
348
+ }>, "many">;
349
+ conflictPaths: z.ZodArray<z.ZodString, "many">;
350
+ conflictsOverCap: z.ZodBoolean;
351
+ }, "strip", z.ZodTypeAny, {
352
+ deleted: number;
353
+ total: number;
354
+ sample: {
355
+ path: string;
356
+ deleted: boolean;
357
+ }[];
358
+ conflictPaths: string[];
359
+ conflictsOverCap: boolean;
360
+ }, {
361
+ deleted: number;
362
+ total: number;
363
+ sample: {
364
+ path: string;
365
+ deleted: boolean;
366
+ }[];
367
+ conflictPaths: string[];
368
+ conflictsOverCap: boolean;
369
+ }>;
370
+ export type RemoteNeed = z.infer<typeof RemoteNeedSchema>;
371
+ export declare const ConflictReportSchema: z.ZodObject<{
372
+ total: z.ZodNumber;
373
+ sample: z.ZodArray<z.ZodString, "many">;
374
+ baselineOverCap: z.ZodOptional<z.ZodBoolean>;
375
+ }, "strip", z.ZodTypeAny, {
376
+ total: number;
377
+ sample: string[];
378
+ baselineOverCap?: boolean | undefined;
379
+ }, {
380
+ total: number;
381
+ sample: string[];
382
+ baselineOverCap?: boolean | undefined;
383
+ }>;
384
+ export type ConflictReport = z.infer<typeof ConflictReportSchema>;
169
385
  export declare const IgnoresBodySchema: z.ZodObject<{
170
386
  ignores: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
387
+ revision: z.ZodNumber;
171
388
  }, "strict", z.ZodTypeAny, {
389
+ revision: number;
172
390
  ignores: string[] | null;
173
391
  }, {
392
+ revision: number;
174
393
  ignores: string[] | null;
175
394
  }>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IgnoresBodySchema = exports.FolderSyncStatusSchema = exports.SyncStatusQuerySchema = exports.SyncFolderPatchSchema = exports.SyncFolderSchema = exports.SyncFolderRequestSchema = exports.SyncDeviceSchema = exports.FolderIgnoresSchema = exports.CODE_SYSTEM_IGNORE = exports.DEFAULT_FILE_SYNC_IGNORES = exports.IgnorePatternsSchema = exports.IGNORE_PATTERN_MAX_LENGTH = exports.IGNORE_PATTERNS_MAX = exports.FolderIdSchema = exports.FolderTypeSchema = exports.PeerAddressSchema = exports.DeviceIdSchema = void 0;
3
+ exports.IgnoresBodySchema = exports.ConflictReportSchema = exports.RemoteNeedSchema = exports.RemoteNeedQuerySchema = exports.ConflictBaselineSchema = exports.CONFLICT_BASELINE_MAX = exports.FILE_SYNC_REPORT_SAMPLE = exports.FolderSyncStatusSchema = exports.SyncStatusQuerySchema = exports.SyncFolderPatchSchema = exports.SyncFolderConfigurationSchema = exports.SyncFolderSchema = exports.SyncFolderRequestSchema = exports.ReceiveOnlyChangesSchema = exports.isTransientSyncError = exports.TRANSIENT_SYNC_ERROR = exports.RECEIVE_ONLY_SAMPLE_MAX = exports.ForceCopyBackupSchema = exports.ForceCopyBackupRequestSchema = exports.ForceCopySchema = exports.SyncDeviceSchema = exports.FolderIgnoresSchema = exports.CODE_SYSTEM_IGNORE = exports.DEFAULT_FILE_SYNC_IGNORES = exports.IgnorePatternsSchema = exports.FILE_SYNC_IGNORES_CHANGED = exports.IGNORE_PATTERN_MAX_LENGTH = exports.IGNORE_PATTERNS_MAX = exports.FolderIdSchema = exports.FolderTypeSchema = exports.PeerAddressSchema = exports.DeviceIdSchema = void 0;
4
4
  exports.codeIgnores = codeIgnores;
5
5
  exports.gitIgnores = gitIgnores;
6
6
  const zod_1 = require("zod");
@@ -16,6 +16,7 @@ exports.FolderIdSchema = zod_1.z
16
16
  .regex(/^((?:code|git):[^:\s]+|tx:[a-z0-9-]+:[^:\s]+)$/);
17
17
  exports.IGNORE_PATTERNS_MAX = 200;
18
18
  exports.IGNORE_PATTERN_MAX_LENGTH = 256;
19
+ exports.FILE_SYNC_IGNORES_CHANGED = 'FILE_SYNC_IGNORES_CHANGED';
19
20
  const IgnorePatternSchema = zod_1.z.string().min(1).max(exports.IGNORE_PATTERN_MAX_LENGTH);
20
21
  exports.IgnorePatternsSchema = zod_1.z.array(IgnorePatternSchema).max(exports.IGNORE_PATTERNS_MAX);
21
22
  exports.DEFAULT_FILE_SYNC_IGNORES = [
@@ -41,6 +42,29 @@ exports.FolderIgnoresSchema = zod_1.z
41
42
  .max(2 * exports.IGNORE_PATTERNS_MAX + 1)
42
43
  .refine((patterns) => patterns.length <= 2 * exports.IGNORE_PATTERNS_MAX || patterns[0] === exports.CODE_SYSTEM_IGNORE, 'Only the leading system pattern is outside the installed ignore cap');
43
44
  exports.SyncDeviceSchema = zod_1.z.object({ deviceId: exports.DeviceIdSchema, address: exports.PeerAddressSchema });
45
+ const BackupSegmentSchema = zod_1.z
46
+ .string()
47
+ .min(1)
48
+ .max(128)
49
+ .regex(/^[^/\\\0]+$/)
50
+ .refine((value) => value !== '.' && value !== '..');
51
+ exports.ForceCopySchema = zod_1.z.object({ operationId: BackupSegmentSchema }).strict();
52
+ exports.ForceCopyBackupRequestSchema = zod_1.z
53
+ .object({
54
+ projectId: BackupSegmentSchema,
55
+ kind: zod_1.z.enum(['code', 'git']),
56
+ forceCopy: exports.ForceCopySchema,
57
+ })
58
+ .strict();
59
+ exports.ForceCopyBackupSchema = zod_1.z.object({ path: zod_1.z.string() });
60
+ exports.RECEIVE_ONLY_SAMPLE_MAX = 200;
61
+ exports.TRANSIENT_SYNC_ERROR = 'file modified but not rescanned; will try again later';
62
+ const isTransientSyncError = (error) => error.toLowerCase().includes(exports.TRANSIENT_SYNC_ERROR);
63
+ exports.isTransientSyncError = isTransientSyncError;
64
+ exports.ReceiveOnlyChangesSchema = zod_1.z.object({
65
+ count: zod_1.z.number().int().nonnegative(),
66
+ sample: zod_1.z.array(zod_1.z.string()).max(exports.RECEIVE_ONLY_SAMPLE_MAX),
67
+ });
44
68
  exports.SyncFolderRequestSchema = zod_1.z
45
69
  .object({
46
70
  projectId: zod_1.z.string().trim().min(1).max(128),
@@ -49,13 +73,23 @@ exports.SyncFolderRequestSchema = zod_1.z
49
73
  peerDeviceId: exports.DeviceIdSchema,
50
74
  ignores: exports.FolderIgnoresSchema,
51
75
  paused: zod_1.z.boolean().optional(),
76
+ forceCopy: exports.ForceCopySchema.optional(),
52
77
  })
53
- .strict();
78
+ .strict()
79
+ .refine((request) => !request.forceCopy || request.type === 'receiveonly', {
80
+ message: 'Force copy backups require a receive-only folder',
81
+ });
54
82
  exports.SyncFolderSchema = zod_1.z.object({
55
83
  id: exports.FolderIdSchema,
56
84
  path: zod_1.z.string(),
57
85
  type: exports.FolderTypeSchema,
58
86
  paused: zod_1.z.boolean(),
87
+ backupPath: zod_1.z.string().optional(),
88
+ });
89
+ exports.SyncFolderConfigurationSchema = zod_1.z.object({
90
+ type: exports.FolderTypeSchema,
91
+ paused: zod_1.z.boolean(),
92
+ devices: zod_1.z.array(zod_1.z.object({ deviceID: zod_1.z.string() })),
59
93
  });
60
94
  exports.SyncFolderPatchSchema = zod_1.z
61
95
  .object({
@@ -68,13 +102,19 @@ exports.SyncFolderPatchSchema = zod_1.z
68
102
  message: 'type, paused or ignores is required',
69
103
  });
70
104
  exports.SyncStatusQuerySchema = zod_1.z
71
- .object({ folder: exports.FolderIdSchema, device: exports.DeviceIdSchema.optional() })
105
+ .object({
106
+ folder: exports.FolderIdSchema,
107
+ device: exports.DeviceIdSchema.optional(),
108
+ errors: zod_1.z.literal('all').optional(),
109
+ })
72
110
  .strict();
73
111
  exports.FolderSyncStatusSchema = zod_1.z.object({
74
112
  folderId: zod_1.z.string(),
75
113
  state: zod_1.z.string(),
76
114
  error: zod_1.z.string().optional(),
77
115
  errors: zod_1.z.number().optional(),
116
+ pullErrors: zod_1.z.number().optional(),
117
+ fileErrors: zod_1.z.array(zod_1.z.object({ path: zod_1.z.string(), error: zod_1.z.string() })).optional(),
78
118
  localFiles: zod_1.z.number(),
79
119
  localDirectories: zod_1.z.number(),
80
120
  globalFiles: zod_1.z.number(),
@@ -92,5 +132,31 @@ exports.FolderSyncStatusSchema = zod_1.z.object({
92
132
  })
93
133
  .nullable(),
94
134
  });
95
- exports.IgnoresBodySchema = zod_1.z.object({ ignores: exports.IgnorePatternsSchema.nullable() }).strict();
135
+ exports.FILE_SYNC_REPORT_SAMPLE = 20;
136
+ exports.CONFLICT_BASELINE_MAX = 1000;
137
+ exports.ConflictBaselineSchema = zod_1.z.union([
138
+ zod_1.z.object({
139
+ baselineOverCap: zod_1.z.literal(false),
140
+ paths: zod_1.z.array(zod_1.z.string()).max(exports.CONFLICT_BASELINE_MAX),
141
+ }),
142
+ zod_1.z.object({ baselineOverCap: zod_1.z.literal(true) }).strict(),
143
+ ]);
144
+ exports.RemoteNeedQuerySchema = zod_1.z.object({ device: exports.DeviceIdSchema }).strict();
145
+ exports.RemoteNeedSchema = zod_1.z.object({
146
+ total: zod_1.z.number().int().nonnegative(),
147
+ deleted: zod_1.z.number().int().nonnegative(),
148
+ sample: zod_1.z
149
+ .array(zod_1.z.object({ path: zod_1.z.string(), deleted: zod_1.z.boolean() }))
150
+ .max(exports.FILE_SYNC_REPORT_SAMPLE),
151
+ conflictPaths: zod_1.z.array(zod_1.z.string()).max(exports.CONFLICT_BASELINE_MAX),
152
+ conflictsOverCap: zod_1.z.boolean(),
153
+ });
154
+ exports.ConflictReportSchema = zod_1.z.object({
155
+ total: zod_1.z.number().int().nonnegative(),
156
+ sample: zod_1.z.array(zod_1.z.string()).max(exports.FILE_SYNC_REPORT_SAMPLE),
157
+ baselineOverCap: zod_1.z.boolean().optional(),
158
+ });
159
+ exports.IgnoresBodySchema = zod_1.z
160
+ .object({ ignores: exports.IgnorePatternsSchema.nullable(), revision: zod_1.z.number().int().nonnegative() })
161
+ .strict();
96
162
  //# sourceMappingURL=file-sync.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-sync.dto.js","sourceRoot":"","sources":["../../../src/modules/file-sync/file-sync.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-sync.dto.js","sourceRoot":"","sources":["../../../src/modules/file-sync/file-sync.dto.ts"],"names":[],"mappings":"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"}
@@ -15,20 +15,30 @@ const process_executor_module_1 = require("../terminal/services/process-executor
15
15
  const file_sync_paths_1 = require("./file-sync-paths");
16
16
  const file_sync_controller_1 = require("./file-sync.controller");
17
17
  const file_sync_ignores_store_1 = require("./file-sync-ignores.store");
18
+ const file_sync_auto_fix_store_1 = require("./file-sync-auto-fix.store");
18
19
  const file_sync_managed_exclusions_store_1 = require("./file-sync-managed-exclusions.store");
19
20
  const file_sync_service_1 = require("./file-sync.service");
21
+ const sync_path_inspector_1 = require("./sync-path-inspector");
20
22
  const home_git_guard_service_1 = require("./home-git-guard.service");
21
23
  const host_sync_controller_1 = require("./host-sync.controller");
24
+ const host_git_guard_controller_1 = require("./host-git-guard.controller");
25
+ const host_git_index_controller_1 = require("./host-git-index.controller");
22
26
  const syncthing_launcher_1 = require("./syncthing-launcher");
23
27
  const syncthing_manager_service_1 = require("./syncthing-manager.service");
24
28
  const syncthing_settings_store_1 = require("./syncthing-settings.store");
29
+ const sync_chown_service_1 = require("./sync-chown.service");
25
30
  let FileSyncModule = class FileSyncModule {
26
31
  };
27
32
  exports.FileSyncModule = FileSyncModule;
28
33
  exports.FileSyncModule = FileSyncModule = __decorate([
29
34
  (0, common_1.Module)({
30
35
  imports: [db_module_1.DbModule, storage_module_1.StorageModule, git_module_1.GitModule, process_executor_module_1.ProcessExecutorModule],
31
- controllers: [host_sync_controller_1.HostSyncController, file_sync_controller_1.FileSyncController],
36
+ controllers: [
37
+ host_sync_controller_1.HostSyncController,
38
+ host_git_guard_controller_1.HostGitGuardController,
39
+ host_git_index_controller_1.HostGitIndexController,
40
+ file_sync_controller_1.FileSyncController,
41
+ ],
32
42
  providers: [
33
43
  { provide: file_sync_paths_1.FILE_SYNC_PATHS, useFactory: () => (0, file_sync_paths_1.createProductionFileSyncPaths)() },
34
44
  { provide: syncthing_launcher_1.SyncthingLauncher, useClass: syncthing_launcher_1.NodeSyncthingLauncher },
@@ -36,15 +46,20 @@ exports.FileSyncModule = FileSyncModule = __decorate([
36
46
  syncthing_settings_store_1.SyncthingSettingsStore,
37
47
  syncthing_manager_service_1.SyncthingManager,
38
48
  file_sync_ignores_store_1.FileSyncIgnoresStore,
49
+ file_sync_auto_fix_store_1.FileSyncAutoFixStore,
39
50
  file_sync_managed_exclusions_store_1.FileSyncManagedExclusionsStore,
40
51
  file_sync_service_1.FileSyncService,
52
+ sync_path_inspector_1.SyncPathInspector,
53
+ sync_chown_service_1.SyncChownService,
41
54
  home_git_guard_service_1.HomeGitGuardService,
42
55
  ],
43
56
  exports: [
44
57
  file_sync_paths_1.FILE_SYNC_PATHS,
45
58
  syncthing_manager_service_1.SyncthingManager,
46
59
  file_sync_service_1.FileSyncService,
60
+ sync_path_inspector_1.SyncPathInspector,
47
61
  file_sync_managed_exclusions_store_1.FileSyncManagedExclusionsStore,
62
+ file_sync_auto_fix_store_1.FileSyncAutoFixStore,
48
63
  home_git_guard_service_1.HomeGitGuardService,
49
64
  ],
50
65
  })
@@ -1 +1 @@
1
- {"version":3,"file":"file-sync.module.js","sourceRoot":"","sources":["../../../src/modules/file-sync/file-sync.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AACnD,8DAA0D;AAC1D,kDAA8C;AAC9C,2GAAsG;AACtG,uDAAmF;AACnF,iEAA4D;AAC5D,uEAAiE;AACjE,6FAAsF;AACtF,2DAAsD;AACtD,qEAA+D;AAC/D,iEAA4D;AAC5D,6DAAgF;AAChF,2EAIqC;AACrC,yEAAoE;AAwB7D,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,wCAAc;yBAAd,cAAc;IAtB1B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,oBAAQ,EAAE,8BAAa,EAAE,sBAAS,EAAE,+CAAqB,CAAC;QACpE,WAAW,EAAE,CAAC,yCAAkB,EAAE,yCAAkB,CAAC;QACrD,SAAS,EAAE;YACT,EAAE,OAAO,EAAE,iCAAe,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAA,+CAA6B,GAAE,EAAE;YAC/E,EAAE,OAAO,EAAE,sCAAiB,EAAE,QAAQ,EAAE,0CAAqB,EAAE;YAC/D,EAAE,OAAO,EAAE,qDAAyB,EAAE,QAAQ,EAAE,6DAAiC,EAAE;YACnF,iDAAsB;YACtB,4CAAgB;YAChB,8CAAoB;YACpB,mEAA8B;YAC9B,mCAAe;YACf,4CAAmB;SACpB;QACD,OAAO,EAAE;YACP,iCAAe;YACf,4CAAgB;YAChB,mCAAe;YACf,mEAA8B;YAC9B,4CAAmB;SACpB;KACF,CAAC;GACW,cAAc,CAAG"}
1
+ {"version":3,"file":"file-sync.module.js","sourceRoot":"","sources":["../../../src/modules/file-sync/file-sync.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AACnD,8DAA0D;AAC1D,kDAA8C;AAC9C,2GAAsG;AACtG,uDAAmF;AACnF,iEAA4D;AAC5D,uEAAiE;AACjE,yEAAkE;AAClE,6FAAsF;AACtF,2DAAsD;AACtD,+DAA0D;AAC1D,qEAA+D;AAC/D,iEAA4D;AAC5D,2EAAqE;AACrE,2EAAqE;AACrE,6DAAgF;AAChF,2EAIqC;AACrC,yEAAoE;AACpE,6DAAwD;AAkCjD,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,wCAAc;yBAAd,cAAc;IAhC1B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,oBAAQ,EAAE,8BAAa,EAAE,sBAAS,EAAE,+CAAqB,CAAC;QACpE,WAAW,EAAE;YACX,yCAAkB;YAClB,kDAAsB;YACtB,kDAAsB;YACtB,yCAAkB;SACnB;QACD,SAAS,EAAE;YACT,EAAE,OAAO,EAAE,iCAAe,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAA,+CAA6B,GAAE,EAAE;YAC/E,EAAE,OAAO,EAAE,sCAAiB,EAAE,QAAQ,EAAE,0CAAqB,EAAE;YAC/D,EAAE,OAAO,EAAE,qDAAyB,EAAE,QAAQ,EAAE,6DAAiC,EAAE;YACnF,iDAAsB;YACtB,4CAAgB;YAChB,8CAAoB;YACpB,+CAAoB;YACpB,mEAA8B;YAC9B,mCAAe;YACf,uCAAiB;YACjB,qCAAgB;YAChB,4CAAmB;SACpB;QACD,OAAO,EAAE;YACP,iCAAe;YACf,4CAAgB;YAChB,mCAAe;YACf,uCAAiB;YACjB,mEAA8B;YAC9B,+CAAoB;YACpB,4CAAmB;SACpB;KACF,CAAC;GACW,cAAc,CAAG"}
@@ -1,7 +1,7 @@
1
1
  import { AppError } from '../../common/errors/error-types';
2
2
  import { type ProjectStorage } from '../storage/interfaces/storage.interface';
3
3
  import { type FileSyncPaths } from './file-sync-paths';
4
- import { type FolderSyncStatus, type FolderType, type SyncDevice, type SyncFolder, type SyncFolderPatch, type SyncFolderRequest } from './file-sync.dto';
4
+ import { type FolderSyncStatus, type FolderType, type RemoteNeed, type ConflictReport, type ConflictBaseline, type SyncDevice, type SyncFolder, type SyncFolderPatch, type SyncFolderRequest, type SyncStatusOptions, type ForceCopyBackupRequest, type ForceCopyBackup, type ReceiveOnlyChanges } from './file-sync.dto';
5
5
  import { FileSyncIgnoresStore } from './file-sync-ignores.store';
6
6
  import { SyncthingManager } from './syncthing-manager.service';
7
7
  export declare const FOLDER_WATCHER_DELAY_S = 1;
@@ -24,11 +24,12 @@ export declare class FileSyncUnavailableError extends AppError {
24
24
  constructor(reason: string);
25
25
  }
26
26
  export declare class FileSyncTimeoutError extends AppError {
27
- constructor(folderId: string, progress: SyncProgress | null, lastError: string | null);
27
+ constructor(folderId: string, progress: SyncProgress | null, lastError: string | null, syncErrors?: string[]);
28
28
  }
29
29
  export declare function codeFolderId(projectId: string): string;
30
30
  export declare function projectFolderId(projectId: string, kind: ProjectFolder['kind']): string;
31
31
  export declare function projectFolderList(projectId: string, kinds?: readonly ProjectFolder['kind'][]): ProjectFolder[];
32
+ export declare function senderIndexReached(sender: FolderSyncStatus, receiver: FolderSyncStatus): boolean;
32
33
  export declare function evaluateCompletion(sender: FolderSyncStatus, receiver: FolderSyncStatus): {
33
34
  done: boolean;
34
35
  progress: SyncProgress;
@@ -48,6 +49,12 @@ export interface WaitForCompleteOptions {
48
49
  onProgress?: (progress: SyncProgress) => void;
49
50
  pollIntervalMs?: number;
50
51
  symmetric?: boolean;
52
+ requireNoReceiveOnlyChanges?: boolean;
53
+ signal?: AbortSignal;
54
+ sides?: {
55
+ sender: string;
56
+ receiver: string;
57
+ };
51
58
  }
52
59
  export declare class FileSyncService {
53
60
  private readonly syncthing;
@@ -60,12 +67,14 @@ export declare class FileSyncService {
60
67
  addPeer(peer: SyncDevice): Promise<void>;
61
68
  isConnected(deviceId: string): Promise<boolean>;
62
69
  getIgnores(projectId: string): string[];
63
- setIgnores(projectId: string, ignores: string[] | null): string[];
70
+ getIgnoresRevision(projectId: string): number;
71
+ setIgnores(projectId: string, ignores: string[] | null, revision?: number): string[];
64
72
  projectFolders(projectId: string): Promise<ProjectFolder[]>;
65
73
  initialFolders(projectId: string): Promise<ProjectFolder[]>;
66
74
  projectNeed(projectId: string): Promise<FolderNeed[] | null>;
67
75
  folderPath(projectId: string, kind?: ProjectFolder['kind']): Promise<string>;
68
76
  ensureFolder(request: SyncFolderRequest): Promise<SyncFolder>;
77
+ forceCopyBackup(request: ForceCopyBackupRequest): Promise<ForceCopyBackup>;
69
78
  updateFolder(folderId: string, patch: SyncFolderPatch): Promise<void>;
70
79
  folderConfiguration(folderId: string): Promise<{
71
80
  type: "sendonly" | "receiveonly" | "sendreceive";
@@ -75,10 +84,16 @@ export declare class FileSyncService {
75
84
  }[];
76
85
  }>;
77
86
  setFolderType(folderId: string, type: FolderType): Promise<void>;
78
- status(folderId: string, peerDeviceId?: string): Promise<FolderSyncStatus>;
87
+ status(folderId: string, peerDeviceId?: string, options?: SyncStatusOptions): Promise<FolderSyncStatus>;
88
+ remoteNeed(folderId: string, peerDeviceId: string): Promise<RemoteNeed>;
89
+ conflicts(projectId: string, baseline: ConflictBaseline, ignores: readonly string[], signal?: AbortSignal): Promise<ConflictReport>;
90
+ conflictBaseline(projectId: string, ignores: readonly string[], signal?: AbortSignal): Promise<ConflictBaseline>;
91
+ private fileErrors;
79
92
  removeFolder(folderId: string): Promise<void>;
80
- rescan(folderId: string): Promise<void>;
93
+ rescan(folderId: string, signal?: AbortSignal): Promise<void>;
81
94
  revertLocalChanges(folderId: string): Promise<void>;
95
+ override(folderId: string): Promise<void>;
96
+ localChanges(folderId: string): Promise<ReceiveOnlyChanges>;
82
97
  waitForComplete(folderId: string, options: WaitForCompleteOptions): Promise<SyncProgress>;
83
98
  private connection;
84
99
  private client;