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.
- package/README.md +1 -4
- package/dist/build-info.json +2 -2
- package/dist/cli.js +66 -11
- package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
- package/dist/host-install/pins.json +31 -2
- package/dist/lib/exclusive-run.js +51 -3
- package/dist/lib/git-owner.js +284 -0
- package/dist/lib/host-install.js +19 -151
- package/dist/lib/local-api.js +175 -0
- package/dist/server/common/config/env.config.d.ts +3 -0
- package/dist/server/common/config/env.config.js +1 -0
- package/dist/server/common/config/env.config.js.map +1 -1
- package/dist/server/common/config/host-image.json +3 -3
- package/dist/server/common/constants/syncthing-markers.d.ts +1 -0
- package/dist/server/common/constants/syncthing-markers.js +6 -1
- package/dist/server/common/constants/syncthing-markers.js.map +1 -1
- package/dist/server/common/filesystem/vm-home-path.d.ts +11 -0
- package/dist/server/common/filesystem/vm-home-path.js +48 -0
- package/dist/server/common/filesystem/vm-home-path.js.map +1 -0
- package/dist/server/common/process-ids-env.d.ts +1 -0
- package/dist/server/common/process-ids-env.js +13 -0
- package/dist/server/common/process-ids-env.js.map +1 -0
- package/dist/server/common/test/api-test-app.d.ts +12 -0
- package/dist/server/common/test/api-test-app.js +76 -0
- package/dist/server/common/test/api-test-app.js.map +1 -0
- package/dist/server/common/test/app-bootstrap.helper.js +8 -1
- package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
- package/dist/server/common/test/fake-bootstrap.server.js +3 -2
- package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
- package/dist/server/common/test/fake-docker-engine.server.d.ts +24 -6
- package/dist/server/common/test/fake-docker-engine.server.js +123 -25
- package/dist/server/common/test/fake-docker-engine.server.js.map +1 -1
- package/dist/server/common/test/fake-proxmox.server.js +4 -4
- package/dist/server/common/test/fake-ssh.server.js +6 -6
- package/dist/server/common/test/fake-ssh.server.js.map +1 -1
- package/dist/server/common/test/test-database.helper.d.ts +6 -0
- package/dist/server/common/test/test-database.helper.js +29 -0
- package/dist/server/common/test/test-database.helper.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +1 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +9 -3
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.d.ts +6 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.js +88 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-transcript-projection.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +7 -1
- package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -1
- package/dist/server/modules/core/controllers/docker-archive.d.ts +9 -2
- package/dist/server/modules/core/controllers/docker-archive.js +22 -6
- package/dist/server/modules/core/controllers/docker-archive.js.map +1 -1
- package/dist/server/modules/core/controllers/docker-engine.client.d.ts +2 -1
- package/dist/server/modules/core/controllers/docker-engine.client.js +57 -4
- package/dist/server/modules/core/controllers/docker-engine.client.js.map +1 -1
- package/dist/server/modules/core/controllers/docker-image-metadata.d.ts +248 -0
- package/dist/server/modules/core/controllers/docker-image-metadata.js +161 -0
- package/dist/server/modules/core/controllers/docker-image-metadata.js.map +1 -0
- package/dist/server/modules/core/controllers/docker-settings.d.ts +13 -2
- package/dist/server/modules/core/controllers/docker-settings.js +49 -11
- package/dist/server/modules/core/controllers/docker-settings.js.map +1 -1
- package/dist/server/modules/core/controllers/host-user-identity.d.ts +34 -0
- package/dist/server/modules/core/controllers/host-user-identity.js +23 -0
- package/dist/server/modules/core/controllers/host-user-identity.js.map +1 -0
- package/dist/server/modules/core/controllers/runtime.controller.d.ts +11 -4
- package/dist/server/modules/core/controllers/runtime.controller.js +2 -0
- package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
- package/dist/server/modules/file-sync/build-exclusion-suggestions.d.ts +15 -0
- package/dist/server/modules/file-sync/build-exclusion-suggestions.js +402 -0
- package/dist/server/modules/file-sync/build-exclusion-suggestions.js.map +1 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.dto.d.ts +102 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js +22 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.dto.js.map +1 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.store.d.ts +12 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.store.js +73 -0
- package/dist/server/modules/file-sync/file-sync-auto-fix.store.js.map +1 -0
- package/dist/server/modules/file-sync/file-sync-conflicts.d.ts +3 -0
- package/dist/server/modules/file-sync/file-sync-conflicts.js +191 -0
- package/dist/server/modules/file-sync/file-sync-conflicts.js.map +1 -0
- package/dist/server/modules/file-sync/file-sync-ignores.store.d.ts +5 -1
- package/dist/server/modules/file-sync/file-sync-ignores.store.js +39 -8
- package/dist/server/modules/file-sync/file-sync-ignores.store.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.controller.d.ts +1 -3
- package/dist/server/modules/file-sync/file-sync.controller.js +5 -14
- package/dist/server/modules/file-sync/file-sync.controller.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.dto.d.ts +220 -1
- package/dist/server/modules/file-sync/file-sync.dto.js +70 -4
- package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.module.js +16 -1
- package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.service.d.ts +20 -5
- package/dist/server/modules/file-sync/file-sync.service.js +173 -37
- package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
- package/dist/server/modules/file-sync/git-guard.dto.d.ts +61 -0
- package/dist/server/modules/file-sync/git-guard.dto.js +26 -0
- package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -0
- package/dist/server/modules/file-sync/home-git-guard.service.d.ts +4 -2
- package/dist/server/modules/file-sync/home-git-guard.service.js +50 -25
- package/dist/server/modules/file-sync/home-git-guard.service.js.map +1 -1
- package/dist/server/modules/file-sync/host-git-guard.controller.d.ts +10 -0
- package/dist/server/modules/file-sync/host-git-guard.controller.js +64 -0
- package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -0
- package/dist/server/modules/file-sync/host-git-index.controller.d.ts +9 -0
- package/dist/server/modules/file-sync/host-git-index.controller.js +67 -0
- package/dist/server/modules/file-sync/host-git-index.controller.js.map +1 -0
- package/dist/server/modules/file-sync/host-sync.controller.d.ts +15 -2
- package/dist/server/modules/file-sync/host-sync.controller.js +122 -14
- package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
- package/dist/server/modules/file-sync/ignore-pattern-matcher.d.ts +30 -0
- package/dist/server/modules/file-sync/ignore-pattern-matcher.js +183 -0
- package/dist/server/modules/file-sync/ignore-pattern-matcher.js.map +1 -0
- package/dist/server/modules/file-sync/project-repository.d.ts +2 -0
- package/dist/server/modules/file-sync/project-repository.js +20 -0
- package/dist/server/modules/file-sync/project-repository.js.map +1 -0
- package/dist/server/modules/file-sync/sync-chown.dto.d.ts +99 -0
- package/dist/server/modules/file-sync/sync-chown.dto.js +46 -0
- package/dist/server/modules/file-sync/sync-chown.dto.js.map +1 -0
- package/dist/server/modules/file-sync/sync-chown.service.d.ts +12 -0
- package/dist/server/modules/file-sync/sync-chown.service.js +230 -0
- package/dist/server/modules/file-sync/sync-chown.service.js.map +1 -0
- package/dist/server/modules/file-sync/sync-path-inspection.dto.d.ts +626 -0
- package/dist/server/modules/file-sync/sync-path-inspection.dto.js +108 -0
- package/dist/server/modules/file-sync/sync-path-inspection.dto.js.map +1 -0
- package/dist/server/modules/file-sync/sync-path-inspector.d.ts +12 -0
- package/dist/server/modules/file-sync/sync-path-inspector.js +413 -0
- package/dist/server/modules/file-sync/sync-path-inspector.js.map +1 -0
- package/dist/server/modules/file-sync/syncthing-rest.client.d.ts +1 -1
- package/dist/server/modules/file-sync/syncthing-rest.client.js +9 -4
- package/dist/server/modules/file-sync/syncthing-rest.client.js.map +1 -1
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +28 -5
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +68 -5
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
- package/dist/server/modules/file-sync/translate-git-ignore-rule.d.ts +3 -0
- package/dist/server/modules/file-sync/translate-git-ignore-rule.js +30 -0
- package/dist/server/modules/file-sync/translate-git-ignore-rule.js.map +1 -0
- package/dist/server/modules/hooks/dtos/hook-event.dto.d.ts +86 -0
- package/dist/server/modules/hooks/dtos/hook-event.dto.js +15 -1
- package/dist/server/modules/hooks/dtos/hook-event.dto.js.map +1 -1
- package/dist/server/modules/hooks/services/hooks-config.service.js +29 -0
- package/dist/server/modules/hooks/services/hooks-config.service.js.map +1 -1
- package/dist/server/modules/hooks/services/hooks.service.d.ts +5 -1
- package/dist/server/modules/hooks/services/hooks.service.js +27 -5
- package/dist/server/modules/hooks/services/hooks.service.js.map +1 -1
- package/dist/server/modules/hooks/services/pending-ask-user-question.service.d.ts +2 -2
- package/dist/server/modules/hooks/services/pending-ask-user-question.service.js +9 -12
- package/dist/server/modules/hooks/services/pending-ask-user-question.service.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/skill-tools.js +2 -2
- package/dist/server/modules/mcp/services/handlers/skill-tools.js.map +1 -1
- package/dist/server/modules/metrics/services/metrics.service.js +1 -1
- package/dist/server/modules/metrics/services/metrics.service.js.map +1 -1
- package/dist/server/modules/providers/adapters/claude.adapter.d.ts +3 -1
- package/dist/server/modules/providers/adapters/claude.adapter.js +4 -1
- package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
- package/dist/server/modules/remotes/connect-choices.controller.d.ts +9 -0
- package/dist/server/modules/remotes/connect-choices.controller.js +54 -0
- package/dist/server/modules/remotes/connect-choices.controller.js.map +1 -0
- package/dist/server/modules/remotes/connect-choices.dto.d.ts +52 -0
- package/dist/server/modules/remotes/connect-choices.dto.js +19 -0
- package/dist/server/modules/remotes/connect-choices.dto.js.map +1 -0
- package/dist/server/modules/remotes/connect-choices.store.d.ts +12 -0
- package/dist/server/modules/remotes/connect-choices.store.js +95 -0
- package/dist/server/modules/remotes/connect-choices.store.js.map +1 -0
- package/dist/server/modules/remotes/controllers/remotes.controller.d.ts +3 -0
- package/dist/server/modules/remotes/controllers/remotes.controller.js +9 -1
- package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-copy-back.d.ts +1 -0
- package/dist/server/modules/remotes/docker/docker-copy-back.js +70 -31
- package/dist/server/modules/remotes/docker/docker-copy-back.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-handoff.d.ts +5 -3
- package/dist/server/modules/remotes/docker/docker-handoff.js +221 -53
- package/dist/server/modules/remotes/docker/docker-handoff.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-handoff.store.d.ts +5 -0
- package/dist/server/modules/remotes/docker/docker-handoff.store.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan-fit.d.ts +4 -1
- package/dist/server/modules/remotes/docker/docker-plan-fit.js +19 -6
- package/dist/server/modules/remotes/docker/docker-plan-fit.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan-policy.d.ts +6 -2
- package/dist/server/modules/remotes/docker/docker-plan-policy.js +191 -38
- package/dist/server/modules/remotes/docker/docker-plan-policy.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan-source.service.d.ts +55 -6
- package/dist/server/modules/remotes/docker/docker-plan-source.service.js +284 -52
- package/dist/server/modules/remotes/docker/docker-plan-source.service.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan.controller.d.ts +2 -1
- package/dist/server/modules/remotes/docker/docker-plan.controller.js +15 -1
- package/dist/server/modules/remotes/docker/docker-plan.controller.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan.dto.d.ts +47 -1
- package/dist/server/modules/remotes/docker/docker-plan.dto.js +1 -0
- package/dist/server/modules/remotes/docker/docker-plan.dto.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-plan.service.d.ts +15 -6
- package/dist/server/modules/remotes/docker/docker-plan.service.js +83 -20
- package/dist/server/modules/remotes/docker/docker-plan.service.js.map +1 -1
- package/dist/server/modules/remotes/docker/docker-project-compose.d.ts +7 -0
- package/dist/server/modules/remotes/docker/docker-project-compose.js +30 -0
- package/dist/server/modules/remotes/docker/docker-project-compose.js.map +1 -0
- package/dist/server/modules/remotes/dtos/remote.dto.d.ts +2 -0
- package/dist/server/modules/remotes/dtos/remote.dto.js.map +1 -1
- package/dist/server/modules/remotes/git-owner.store.d.ts +13 -0
- package/dist/server/modules/remotes/git-owner.store.js +69 -0
- package/dist/server/modules/remotes/git-owner.store.js.map +1 -0
- package/dist/server/modules/remotes/host/host-docker.controller.d.ts +14 -1
- package/dist/server/modules/remotes/host/host-docker.controller.js +28 -9
- package/dist/server/modules/remotes/host/host-docker.controller.js.map +1 -1
- package/dist/server/modules/remotes/host/host-docker.dto.d.ts +640 -3
- package/dist/server/modules/remotes/host/host-docker.dto.js +66 -9
- package/dist/server/modules/remotes/host/host-docker.dto.js.map +1 -1
- package/dist/server/modules/remotes/host/host-docker.service.d.ts +18 -6
- package/dist/server/modules/remotes/host/host-docker.service.js +184 -81
- package/dist/server/modules/remotes/host/host-docker.service.js.map +1 -1
- package/dist/server/modules/remotes/host/host-ipv4-routes.d.ts +4 -0
- package/dist/server/modules/remotes/host/host-ipv4-routes.js +43 -0
- package/dist/server/modules/remotes/host/host-ipv4-routes.js.map +1 -0
- package/dist/server/modules/remotes/host-image.d.ts +1 -1
- package/dist/server/modules/remotes/host-image.js +1 -1
- package/dist/server/modules/remotes/host-install/host-install-block.d.ts +1 -0
- package/dist/server/modules/remotes/host-install/host-install-block.js +76 -2
- package/dist/server/modules/remotes/host-install/host-install-block.js.map +1 -1
- package/dist/server/modules/remotes/host-install/host-install.service.d.ts +0 -1
- package/dist/server/modules/remotes/host-install/host-install.service.js +9 -26
- package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
- package/dist/server/modules/remotes/operations/attach.operation.d.ts +5 -1
- package/dist/server/modules/remotes/operations/attach.operation.js +41 -5
- package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/claim.operation.d.ts +1 -0
- package/dist/server/modules/remotes/operations/claim.operation.js +6 -1
- package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/detach.operation.d.ts +4 -1
- package/dist/server/modules/remotes/operations/detach.operation.js +10 -2
- package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/docker-import-inventory.store.d.ts +10 -0
- package/dist/server/modules/remotes/operations/docker-import-inventory.store.js +17 -0
- package/dist/server/modules/remotes/operations/docker-import-inventory.store.js.map +1 -1
- package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +30 -2
- package/dist/server/modules/remotes/operations/file-sync-handoff.js +498 -57
- package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
- package/dist/server/modules/remotes/operations/force-sync.operation.d.ts +39 -0
- package/dist/server/modules/remotes/operations/force-sync.operation.js +177 -0
- package/dist/server/modules/remotes/operations/force-sync.operation.js.map +1 -0
- package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +83 -0
- package/dist/server/modules/remotes/operations/git-owner.dto.js +25 -0
- package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -0
- package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +35 -0
- package/dist/server/modules/remotes/operations/git-owner.operation.js +216 -0
- package/dist/server/modules/remotes/operations/git-owner.operation.js.map +1 -0
- package/dist/server/modules/remotes/operations/remote-host.client.d.ts +72 -8
- package/dist/server/modules/remotes/operations/remote-host.client.js +162 -28
- package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +19 -0
- package/dist/server/modules/remotes/operations/remote-operation.dto.js +5 -1
- package/dist/server/modules/remotes/operations/remote-operation.dto.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operation.runner.d.ts +3 -1
- package/dist/server/modules/remotes/operations/remote-operation.runner.js +59 -21
- package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +4 -1
- package/dist/server/modules/remotes/operations/remote-operation.types.js +4 -2
- package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +5 -0
- package/dist/server/modules/remotes/operations/remote-operations.controller.js +56 -0
- package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +16 -1
- package/dist/server/modules/remotes/operations/remote-operations.service.js +155 -5
- package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
- package/dist/server/modules/remotes/operations/update-logins.operation.d.ts +1 -3
- package/dist/server/modules/remotes/operations/update-logins.operation.js +3 -18
- package/dist/server/modules/remotes/operations/update-logins.operation.js.map +1 -1
- package/dist/server/modules/remotes/ports/remote-health.port.d.ts +2 -0
- package/dist/server/modules/remotes/ports/remote-health.port.js.map +1 -1
- package/dist/server/modules/remotes/remotes.module.js +18 -0
- package/dist/server/modules/remotes/remotes.module.js.map +1 -1
- package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.d.ts +2 -2
- package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js +2 -13
- package/dist/server/modules/remotes/replica/__fixtures__/replica-seed.js.map +1 -1
- package/dist/server/modules/remotes/services/remote-health.service.js +5 -0
- package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
- package/dist/server/modules/remotes/sync/file-sync-failures.service.d.ts +18 -0
- package/dist/server/modules/remotes/sync/file-sync-failures.service.js +157 -0
- package/dist/server/modules/remotes/sync/file-sync-failures.service.js.map +1 -0
- package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.d.ts +14 -0
- package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js +99 -0
- package/dist/server/modules/remotes/sync/file-sync-pattern-preview.service.js.map +1 -0
- package/dist/server/modules/remotes/sync/file-sync-suggestions.service.d.ts +15 -0
- package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js +90 -0
- package/dist/server/modules/remotes/sync/file-sync-suggestions.service.js.map +1 -0
- package/dist/server/modules/remotes/sync/project-file-sync.controller.d.ts +29 -0
- package/dist/server/modules/remotes/sync/project-file-sync.controller.js +160 -0
- package/dist/server/modules/remotes/sync/project-file-sync.controller.js.map +1 -0
- package/dist/server/modules/remotes/sync/remote-file-sync.dto.d.ts +72 -0
- package/dist/server/modules/remotes/sync/remote-file-sync.dto.js +16 -0
- package/dist/server/modules/remotes/sync/remote-file-sync.dto.js.map +1 -0
- package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +32 -1
- package/dist/server/modules/remotes/sync/remote-file-sync.service.js +499 -38
- package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
- package/dist/server/modules/remotes/sync/remote-live-sync.service.d.ts +2 -0
- package/dist/server/modules/remotes/sync/remote-live-sync.service.js +26 -12
- package/dist/server/modules/remotes/sync/remote-live-sync.service.js.map +1 -1
- package/dist/server/modules/remotes/vm-user-identity.d.ts +29 -0
- package/dist/server/modules/remotes/vm-user-identity.js +45 -0
- package/dist/server/modules/remotes/vm-user-identity.js.map +1 -0
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +5 -1
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
- package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.d.ts +5 -0
- package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.js +9 -0
- package/dist/server/modules/session-reader/adapters/claude-session-reader.adapter.js.map +1 -1
- package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.d.ts +1 -0
- package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js +1 -0
- package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js.map +1 -1
- package/dist/server/modules/session-reader/builders/semantic-step-extractor.js +1 -1
- package/dist/server/modules/session-reader/builders/semantic-step-extractor.js.map +1 -1
- package/dist/server/modules/session-reader/controllers/session-reader.controller.js +1 -1
- package/dist/server/modules/session-reader/controllers/session-reader.controller.js.map +1 -1
- package/dist/server/modules/session-reader/data/pricing.json +89 -12
- package/dist/server/modules/session-reader/dtos/unified-message.types.d.ts +1 -0
- package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.d.ts +3 -0
- package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js +10 -1
- package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js.map +1 -1
- package/dist/server/modules/session-reader/parsers/claude-turn-evidence.d.ts +11 -0
- package/dist/server/modules/session-reader/parsers/claude-turn-evidence.js +50 -0
- package/dist/server/modules/session-reader/parsers/claude-turn-evidence.js.map +1 -0
- package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js +8 -2
- package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js.map +1 -1
- package/dist/server/modules/session-reader/services/bounded-anchor-proof.d.ts +7 -0
- package/dist/server/modules/session-reader/services/bounded-anchor-proof.js +31 -2
- package/dist/server/modules/session-reader/services/bounded-anchor-proof.js.map +1 -1
- package/dist/server/modules/session-reader/services/session-cache.service.d.ts +8 -2
- package/dist/server/modules/session-reader/services/session-cache.service.js +80 -21
- package/dist/server/modules/session-reader/services/session-cache.service.js.map +1 -1
- package/dist/server/modules/session-reader/services/session-reader.service.d.ts +4 -0
- package/dist/server/modules/session-reader/services/session-reader.service.js +40 -8
- package/dist/server/modules/session-reader/services/session-reader.service.js.map +1 -1
- package/dist/server/modules/session-reader/services/transcript-cursor.d.ts +16 -4
- package/dist/server/modules/session-reader/services/transcript-cursor.js +65 -6
- package/dist/server/modules/session-reader/services/transcript-cursor.js.map +1 -1
- package/dist/server/modules/session-reader/services/transcript-serialization.js +2 -1
- package/dist/server/modules/session-reader/services/transcript-serialization.js.map +1 -1
- package/dist/server/modules/session-reader/services/transcript-turn-state.d.ts +4 -0
- package/dist/server/modules/session-reader/services/transcript-turn-state.js +20 -0
- package/dist/server/modules/session-reader/services/transcript-turn-state.js.map +1 -0
- package/dist/server/modules/session-reader/services/transcript-watcher.service.d.ts +4 -1
- package/dist/server/modules/session-reader/services/transcript-watcher.service.js +43 -18
- package/dist/server/modules/session-reader/services/transcript-watcher.service.js.map +1 -1
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +5 -0
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +36 -17
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +26 -9
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.d.ts +19 -0
- package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.js +26 -0
- package/dist/server/modules/sessions/services/session-runtime/ensure-mcp-readiness.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +10 -18
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.d.ts +5 -1
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +20 -2
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.d.ts +6 -0
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js +26 -0
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js.map +1 -1
- package/dist/server/modules/settings/services/settings.service.d.ts +3 -1
- package/dist/server/modules/settings/services/settings.service.js +6 -0
- package/dist/server/modules/settings/services/settings.service.js.map +1 -1
- package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/anthropic-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/github-directory-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/github-skill-source.base.js +4 -3
- package/dist/server/modules/skills/adapters/github-skill-source.base.js.map +1 -1
- package/dist/server/modules/skills/adapters/local-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/local-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/microsoft-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/openai-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/skill-source.adapter.d.ts +5 -0
- package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.d.ts +5 -0
- package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js +75 -0
- package/dist/server/modules/skills/adapters/skill-sync-temp-cleanup.js.map +1 -0
- package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/trailofbits-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js +5 -5
- package/dist/server/modules/skills/adapters/vercel-skill-source.adapter.js.map +1 -1
- package/dist/server/modules/skills/controllers/skills.controller.js +2 -2
- package/dist/server/modules/skills/controllers/skills.controller.js.map +1 -1
- package/dist/server/modules/skills/services/skill-source-lifecycle.service.d.ts +3 -3
- package/dist/server/modules/skills/services/skill-source-lifecycle.service.js +9 -4
- package/dist/server/modules/skills/services/skill-source-lifecycle.service.js.map +1 -1
- package/dist/server/modules/skills/services/skill-sync.service.d.ts +3 -3
- package/dist/server/modules/skills/services/skill-sync.service.js +32 -6
- package/dist/server/modules/skills/services/skill-sync.service.js.map +1 -1
- package/dist/server/modules/skills/services/skill-sync.types.d.ts +3 -0
- package/dist/server/modules/storage/db/schema.d.ts +2 -2
- package/dist/server/modules/storage/db/schema.js +2 -0
- package/dist/server/modules/storage/db/schema.js.map +1 -1
- package/dist/server/modules/storage/models/domain.models.d.ts +1 -1
- package/dist/server/modules/storage/models/domain.models.js +2 -0
- package/dist/server/modules/storage/models/domain.models.js.map +1 -1
- package/dist/server/modules/teams/storage/teams.store.d.ts +1 -0
- package/dist/server/modules/teams/storage/teams.store.js +19 -3
- package/dist/server/modules/teams/storage/teams.store.js.map +1 -1
- package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +3 -1
- package/dist/server/modules/terminal/gateways/terminal.gateway.js +9 -4
- package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
- package/dist/server/modules/terminal/services/session-turn-signals.d.ts +18 -0
- package/dist/server/modules/terminal/services/session-turn-signals.js +6 -0
- package/dist/server/modules/terminal/services/session-turn-signals.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-activity.service.d.ts +32 -5
- package/dist/server/modules/terminal/services/terminal-activity.service.js +322 -40
- package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +15 -3
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
- package/dist/server/modules/terminal/terminal.module.js +2 -0
- package/dist/server/modules/terminal/terminal.module.js.map +1 -1
- package/dist/server/modules/terminal/utils/ansi-sanitizer.d.ts +0 -1
- package/dist/server/modules/terminal/utils/ansi-sanitizer.js +0 -4
- package/dist/server/modules/terminal/utils/ansi-sanitizer.js.map +1 -1
- package/dist/server/templates/teams-dev.json +14 -14
- package/dist/server/test-setup-node.js +4 -3
- package/dist/server/test-setup-node.js.map +1 -1
- package/dist/server/test-setup.js +7 -0
- package/dist/server/test-setup.js.map +1 -1
- package/dist/server/tsconfig.tsbuildinfo +1 -1
- package/dist/server/ui/assets/{ExternalRichEditor--kNXs-Eb.js → ExternalRichEditor-CIZPhssf.js} +24 -24
- package/dist/server/ui/assets/ReviewDetailPage-winyLSQ7.js +6 -0
- package/dist/server/ui/assets/ReviewsPage-BYKBReMp.js +6 -0
- package/dist/server/ui/assets/index-CiDJX6Hn.js +1191 -0
- package/dist/server/ui/assets/index-f1WOAqXB.css +32 -0
- package/dist/server/ui/assets/useReviewSubscription-v3Cto0y4.js +69 -0
- package/dist/server/ui/index.html +2 -2
- package/dist/templates/teams-dev.json +14 -14
- package/package.json +15 -1
- package/dist/server/modules/reviews/utils/notification-formatter.d.ts +0 -12
- package/dist/server/modules/reviews/utils/notification-formatter.js +0 -60
- package/dist/server/modules/reviews/utils/notification-formatter.js.map +0 -1
- package/dist/server/ui/assets/ReviewDetailPage-DMgP5fKn.js +0 -6
- package/dist/server/ui/assets/ReviewsPage-CkyFUJr6.js +0 -6
- package/dist/server/ui/assets/index-CVUaAlP4.css +0 -32
- package/dist/server/ui/assets/index-CqRufKpA.js +0 -994
- 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
|
|
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({
|
|
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.
|
|
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":";;;
|
|
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: [
|
|
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;
|
|
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
|
-
|
|
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;
|