devchain-cli 0.25.0 → 0.26.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/build-info.json +2 -2
- package/dist/cli.js +34 -76
- package/dist/drizzle/0094_agent_worktree_lanes.sql +20 -0
- package/dist/drizzle/meta/0094_snapshot.json +7810 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/host-cli-pins.json +1 -1
- package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
- package/dist/host-install/pins.json +2 -1
- package/dist/lib/git-owner.js +30 -205
- package/dist/lib/git-shim.js +417 -0
- package/dist/lib/git-supervisor.js +289 -0
- package/dist/lib/host-api-key.js +75 -19
- package/dist/lib/local-api.js +4 -2
- package/dist/lib/local-app-process.js +77 -0
- package/dist/node_modules/@devchain/shared/index.d.ts +1 -0
- package/dist/node_modules/@devchain/shared/index.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/index.js +1 -0
- package/dist/node_modules/@devchain/shared/index.js.map +1 -1
- package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts +510 -5
- package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js +55 -0
- package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/index.d.ts +1 -0
- package/dist/node_modules/@devchain/shared/schemas/index.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/index.js +1 -0
- package/dist/node_modules/@devchain/shared/schemas/index.js.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/provider-clis.js +1 -1
- package/dist/node_modules/@devchain/shared/schemas/provider-clis.js.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/provider-usage.d.ts +350 -0
- package/dist/node_modules/@devchain/shared/schemas/provider-usage.d.ts.map +1 -0
- package/dist/node_modules/@devchain/shared/schemas/provider-usage.js +71 -0
- package/dist/node_modules/@devchain/shared/schemas/provider-usage.js.map +1 -0
- package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
- package/dist/server/app.module.js +4 -0
- package/dist/server/app.module.js.map +1 -1
- 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/config/vm-destroy-fence.d.ts +18 -0
- package/dist/server/common/config/vm-destroy-fence.js +38 -0
- package/dist/server/common/config/vm-destroy-fence.js.map +1 -0
- package/dist/server/common/errors/error-types.d.ts +3 -0
- package/dist/server/common/errors/error-types.js +10 -1
- package/dist/server/common/errors/error-types.js.map +1 -1
- package/dist/server/common/git-shim-paths.d.ts +5 -0
- package/dist/server/common/git-shim-paths.js +25 -0
- package/dist/server/common/git-shim-paths.js.map +1 -0
- package/dist/server/common/test/fake-bootstrap.server.d.ts +5 -0
- package/dist/server/common/test/fake-bootstrap.server.js +12 -3
- package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
- package/dist/server/common/test/shared-vm.stub.d.ts +2 -0
- package/dist/server/common/test/shared-vm.stub.js +13 -0
- package/dist/server/common/test/shared-vm.stub.js.map +1 -0
- package/dist/server/main.js +2 -0
- package/dist/server/main.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js +2 -0
- package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +5 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +11 -2
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.d.ts +506 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js +56 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.d.ts +1 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js +1 -0
- package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +1 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -1
- package/dist/server/modules/events/catalog/broadcast-registry.js +8 -0
- package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
- package/dist/server/modules/events/catalog/index.d.ts +18 -11
- package/dist/server/modules/events/catalog/index.js +3 -0
- package/dist/server/modules/events/catalog/index.js.map +1 -1
- package/dist/server/modules/events/catalog/provider-usage.updated.d.ts +12 -0
- package/dist/server/modules/events/catalog/provider-usage.updated.js +13 -0
- package/dist/server/modules/events/catalog/provider-usage.updated.js.map +1 -0
- package/dist/server/modules/events/catalog/review.comment.created.d.ts +2 -2
- package/dist/server/modules/events/catalog/review.created.d.ts +8 -8
- package/dist/server/modules/file-sync/file-sync.dto.d.ts +18 -0
- package/dist/server/modules/file-sync/file-sync.dto.js +12 -2
- package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.module.js +17 -2
- package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
- package/dist/server/modules/file-sync/file-sync.service.d.ts +4 -0
- package/dist/server/modules/file-sync/file-sync.service.js +35 -0
- package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
- package/dist/server/modules/file-sync/git-guard.dto.d.ts +0 -21
- package/dist/server/modules/file-sync/git-guard.dto.js +1 -7
- package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -1
- package/dist/server/modules/file-sync/home-git-guard.service.d.ts +3 -0
- package/dist/server/modules/file-sync/home-git-guard.service.js +128 -22
- 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 +3 -1
- package/dist/server/modules/file-sync/host-git-guard.controller.js +11 -5
- package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -1
- package/dist/server/modules/file-sync/host-sync.controller.d.ts +11 -7
- package/dist/server/modules/file-sync/host-sync.controller.js +53 -20
- package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
- package/dist/server/modules/file-sync/syncthing-launcher.d.ts +1 -0
- package/dist/server/modules/file-sync/syncthing-launcher.js +2 -1
- package/dist/server/modules/file-sync/syncthing-launcher.js.map +1 -1
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +2 -1
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +6 -0
- package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
- package/dist/server/modules/git/dtos/git.dto.d.ts +4 -4
- package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +95 -1
- package/dist/server/modules/mcp/dtos/mcp.dto.js +45 -2
- package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
- package/dist/server/modules/mcp/mcp-full.module.js +2 -0
- package/dist/server/modules/mcp/mcp-full.module.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/epic-context.d.ts +2 -2
- package/dist/server/modules/mcp/services/handlers/epic-tools.js +16 -0
- package/dist/server/modules/mcp/services/handlers/epic-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/teams-tools.d.ts +1 -0
- package/dist/server/modules/mcp/services/handlers/teams-tools.js +51 -0
- package/dist/server/modules/mcp/services/handlers/teams-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/worktree-context.d.ts +6 -0
- package/dist/server/modules/mcp/services/handlers/worktree-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/worktree-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/worktree-tools.d.ts +7 -0
- package/dist/server/modules/mcp/services/handlers/worktree-tools.js +77 -0
- package/dist/server/modules/mcp/services/handlers/worktree-tools.js.map +1 -0
- package/dist/server/modules/mcp/services/mcp-tool-binding.registry.d.ts +2 -1
- package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js +6 -2
- package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/binding-types.d.ts +4 -2
- package/dist/server/modules/mcp/tool-descriptors/binding-types.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js +2 -2
- package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/index.js +2 -0
- package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js +2 -0
- package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/team.bindings.js +1 -0
- package/dist/server/modules/mcp/tool-descriptors/team.bindings.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/team.metadata.js +33 -0
- package/dist/server/modules/mcp/tool-descriptors/team.metadata.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.d.ts +1 -0
- package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.js +20 -0
- package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.js +105 -0
- package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.js.map +1 -0
- package/dist/server/modules/provider-auth/opencode-credential-family.v2.d.ts +4 -0
- package/dist/server/modules/provider-auth/opencode-credential-family.v2.js +41 -0
- package/dist/server/modules/provider-auth/opencode-credential-family.v2.js.map +1 -0
- package/dist/server/modules/provider-auth/opencode-credentials.d.ts +25 -0
- package/dist/server/modules/provider-auth/opencode-credentials.js +102 -0
- package/dist/server/modules/provider-auth/opencode-credentials.js.map +1 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.service.d.ts +11 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.service.js +62 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.service.js.map +1 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v1.d.ts +1 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v1.js +25 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v1.js.map +1 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v2.d.ts +3 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v2.js +25 -0
- package/dist/server/modules/provider-auth/opencode-pc-logins.v2.js.map +1 -0
- package/dist/server/modules/provider-auth/provider-auth-adapters.d.ts +4 -1
- package/dist/server/modules/provider-auth/provider-auth-adapters.js +65 -33
- package/dist/server/modules/provider-auth/provider-auth-adapters.js.map +1 -1
- package/dist/server/modules/provider-auth/provider-auth-generator.service.d.ts +3 -1
- package/dist/server/modules/provider-auth/provider-auth-generator.service.js +12 -6
- package/dist/server/modules/provider-auth/provider-auth-generator.service.js.map +1 -1
- package/dist/server/modules/provider-auth/provider-auth-vault.service.d.ts +3 -2
- package/dist/server/modules/provider-auth/provider-auth-vault.service.js +8 -25
- package/dist/server/modules/provider-auth/provider-auth-vault.service.js.map +1 -1
- package/dist/server/modules/provider-auth/provider-auth-watcher.service.d.ts +5 -1
- package/dist/server/modules/provider-auth/provider-auth-watcher.service.js +32 -1
- package/dist/server/modules/provider-auth/provider-auth-watcher.service.js.map +1 -1
- package/dist/server/modules/provider-auth/provider-auth.module.js +4 -0
- package/dist/server/modules/provider-auth/provider-auth.module.js.map +1 -1
- package/dist/server/modules/provider-usage/checkers/agy.checker.d.ts +15 -0
- package/dist/server/modules/provider-usage/checkers/agy.checker.js +129 -0
- package/dist/server/modules/provider-usage/checkers/agy.checker.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/checker-helpers.d.ts +4 -0
- package/dist/server/modules/provider-usage/checkers/checker-helpers.js +12 -0
- package/dist/server/modules/provider-usage/checkers/checker-helpers.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/claude-login.checker.d.ts +10 -0
- package/dist/server/modules/provider-usage/checkers/claude-login.checker.js +92 -0
- package/dist/server/modules/provider-usage/checkers/claude-login.checker.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/claude-token.checker.d.ts +5 -0
- package/dist/server/modules/provider-usage/checkers/claude-token.checker.js +80 -0
- package/dist/server/modules/provider-usage/checkers/claude-token.checker.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/claude-usage-parser.d.ts +12 -0
- package/dist/server/modules/provider-usage/checkers/claude-usage-parser.js +113 -0
- package/dist/server/modules/provider-usage/checkers/claude-usage-parser.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/codex.checker.d.ts +7 -0
- package/dist/server/modules/provider-usage/checkers/codex.checker.js +159 -0
- package/dist/server/modules/provider-usage/checkers/codex.checker.js.map +1 -0
- package/dist/server/modules/provider-usage/checkers/private-cwd.d.ts +1 -0
- package/dist/server/modules/provider-usage/checkers/private-cwd.js +8 -0
- package/dist/server/modules/provider-usage/checkers/private-cwd.js.map +1 -0
- package/dist/server/modules/provider-usage/controllers/provider-usage.controller.d.ts +7 -0
- package/dist/server/modules/provider-usage/controllers/provider-usage.controller.js +51 -0
- package/dist/server/modules/provider-usage/controllers/provider-usage.controller.js.map +1 -0
- package/dist/server/modules/provider-usage/provider-usage.module.d.ts +2 -0
- package/dist/server/modules/provider-usage/provider-usage.module.js +58 -0
- package/dist/server/modules/provider-usage/provider-usage.module.js.map +1 -0
- package/dist/server/modules/provider-usage/provider-usage.types.d.ts +26 -0
- package/dist/server/modules/provider-usage/provider-usage.types.js +5 -0
- package/dist/server/modules/provider-usage/provider-usage.types.js.map +1 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.d.ts +5 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.js +94 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.js.map +1 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.d.ts +23 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.js +81 -0
- package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.js.map +1 -0
- package/dist/server/modules/provider-usage/services/provider-usage.service.d.ts +37 -0
- package/dist/server/modules/provider-usage/services/provider-usage.service.js +262 -0
- package/dist/server/modules/provider-usage/services/provider-usage.service.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/index.d.ts +2 -2
- package/dist/server/modules/providers/adapters/capabilities/index.js +2 -1
- package/dist/server/modules/providers/adapters/capabilities/index.js.map +1 -1
- package/dist/server/modules/providers/adapters/capabilities/provider-plugin.capability.d.ts +16 -2
- package/dist/server/modules/providers/adapters/capabilities/session-command.capability.d.ts +5 -0
- package/dist/server/modules/providers/adapters/capabilities/session-command.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/session-command.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.d.ts +4 -1
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js +5 -3
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js.map +1 -1
- package/dist/server/modules/providers/adapters/claude.adapter.d.ts +6 -3
- package/dist/server/modules/providers/adapters/claude.adapter.js +7 -2
- package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/codex.adapter.d.ts +6 -6
- package/dist/server/modules/providers/adapters/codex.adapter.js +47 -41
- package/dist/server/modules/providers/adapters/codex.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/opencode-cli-version.d.ts +13 -0
- package/dist/server/modules/providers/adapters/opencode-cli-version.js +24 -0
- package/dist/server/modules/providers/adapters/opencode-cli-version.js.map +1 -0
- package/dist/server/modules/providers/adapters/opencode-config-content.d.ts +1 -0
- package/dist/server/modules/providers/adapters/opencode-config-content.js +43 -0
- package/dist/server/modules/providers/adapters/opencode-config-content.js.map +1 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v1.d.ts +4 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v1.js +10 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v1.js.map +1 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v2.d.ts +2 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v2.js +18 -0
- package/dist/server/modules/providers/adapters/opencode-launch.v2.js.map +1 -0
- package/dist/server/modules/providers/adapters/opencode.adapter.d.ts +3 -4
- package/dist/server/modules/providers/adapters/opencode.adapter.js +11 -42
- package/dist/server/modules/providers/adapters/opencode.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.d.ts +3 -0
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.js +10 -0
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.js.map +1 -1
- package/dist/server/modules/providers/adapters/provider-adapter.interface.d.ts +9 -3
- package/dist/server/modules/providers/adapters/provider-cli-policy.d.ts +3 -0
- package/dist/server/modules/providers/adapters/provider-cli-policy.js +8 -0
- package/dist/server/modules/providers/adapters/provider-cli-policy.js.map +1 -1
- package/dist/server/modules/providers/controllers/provider-models.controller.d.ts +3 -1
- package/dist/server/modules/providers/controllers/provider-models.controller.js +18 -3
- package/dist/server/modules/providers/controllers/provider-models.controller.js.map +1 -1
- package/dist/server/modules/providers/providers.module.js +5 -0
- package/dist/server/modules/providers/providers.module.js.map +1 -1
- package/dist/server/modules/providers/services/codex-app-server.client.d.ts +11 -0
- package/dist/server/modules/providers/services/codex-app-server.client.js +129 -0
- package/dist/server/modules/providers/services/codex-app-server.client.js.map +1 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.module.d.ts +2 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.module.js +23 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.module.js.map +1 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.service.d.ts +8 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.service.js +65 -0
- package/dist/server/modules/providers/services/provider-cli-version-probe.service.js.map +1 -0
- package/dist/server/modules/providers/services/provider-plugins.service.d.ts +5 -1
- package/dist/server/modules/providers/services/provider-plugins.service.js +43 -16
- package/dist/server/modules/providers/services/provider-plugins.service.js.map +1 -1
- package/dist/server/modules/providers/utils/codex-config.d.ts +9 -0
- package/dist/server/modules/providers/utils/codex-config.js +34 -16
- package/dist/server/modules/providers/utils/codex-config.js.map +1 -1
- package/dist/server/modules/providers/utils/private-cwd.d.ts +1 -0
- package/dist/server/modules/providers/utils/private-cwd.js +12 -0
- package/dist/server/modules/providers/utils/private-cwd.js.map +1 -0
- package/dist/server/modules/remotes/contract/host-routes.d.ts +2180 -35
- package/dist/server/modules/remotes/contract/host-routes.js +168 -16
- package/dist/server/modules/remotes/contract/host-routes.js.map +1 -1
- package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.d.ts +10 -0
- package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.js +59 -0
- package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.js.map +1 -0
- package/dist/server/modules/remotes/controllers/remotes.controller.js +1 -0
- package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
- package/dist/server/modules/remotes/dtos/remote-notices.dto.d.ts +4 -0
- package/dist/server/modules/remotes/dtos/remote-notices.dto.js +3 -0
- package/dist/server/modules/remotes/dtos/remote-notices.dto.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/dtos/shared-vm.dto.d.ts +488 -0
- package/dist/server/modules/remotes/dtos/shared-vm.dto.js +60 -0
- package/dist/server/modules/remotes/dtos/shared-vm.dto.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-checkpoint.d.ts +5 -0
- package/dist/server/modules/remotes/git-coordinator/git-checkpoint.js +95 -0
- package/dist/server/modules/remotes/git-coordinator/git-checkpoint.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.d.ts +18 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.js +192 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.d.ts +519 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.js +104 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.d.ts +66 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.js +555 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.d.ts +11 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.js +69 -0
- package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/git-process-identity.d.ts +3 -0
- package/dist/server/modules/remotes/git-coordinator/git-process-identity.js +71 -0
- package/dist/server/modules/remotes/git-coordinator/git-process-identity.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.d.ts +19 -0
- package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.js +181 -0
- package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/loopback.d.ts +2 -0
- package/dist/server/modules/remotes/git-coordinator/loopback.js +10 -0
- package/dist/server/modules/remotes/git-coordinator/loopback.js.map +1 -0
- package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.d.ts +9 -0
- package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.js +66 -0
- package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.js.map +1 -0
- package/dist/server/modules/remotes/git-owner.store.d.ts +102 -1
- package/dist/server/modules/remotes/git-owner.store.js +37 -11
- package/dist/server/modules/remotes/git-owner.store.js.map +1 -1
- package/dist/server/modules/remotes/git-shim/git-shim-registry.service.d.ts +30 -0
- package/dist/server/modules/remotes/git-shim/git-shim-registry.service.js +175 -0
- package/dist/server/modules/remotes/git-shim/git-shim-registry.service.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/change-barrier.d.ts +16 -0
- package/dist/server/modules/remotes/git-writes/change-barrier.js +40 -0
- package/dist/server/modules/remotes/git-writes/change-barrier.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/home-git-handover.service.d.ts +42 -0
- package/dist/server/modules/remotes/git-writes/home-git-handover.service.js +349 -0
- package/dist/server/modules/remotes/git-writes/home-git-handover.service.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/home-git-transitions.d.ts +16 -0
- package/dist/server/modules/remotes/git-writes/home-git-transitions.js +12 -0
- package/dist/server/modules/remotes/git-writes/home-git-transitions.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.controller.d.ts +10 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.controller.js +74 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.controller.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.service.d.ts +72 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.service.js +481 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.service.js.map +1 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.store.d.ts +39 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.store.js +78 -0
- package/dist/server/modules/remotes/git-writes/home-git-write.store.js.map +1 -0
- package/dist/server/modules/remotes/host/host-helper.dto.d.ts +4 -0
- package/dist/server/modules/remotes/host/host-helper.dto.js +14 -1
- package/dist/server/modules/remotes/host/host-helper.dto.js.map +1 -1
- package/dist/server/modules/remotes/host/host-helper.service.d.ts +5 -1
- package/dist/server/modules/remotes/host/host-helper.service.js +9 -3
- package/dist/server/modules/remotes/host/host-helper.service.js.map +1 -1
- package/dist/server/modules/remotes/host/host-opencode-credentials.v2.d.ts +7 -0
- package/dist/server/modules/remotes/host/host-opencode-credentials.v2.js +46 -0
- package/dist/server/modules/remotes/host/host-opencode-credentials.v2.js.map +1 -0
- package/dist/server/modules/remotes/host/host-provider-auth.service.d.ts +11 -2
- package/dist/server/modules/remotes/host/host-provider-auth.service.js +92 -14
- package/dist/server/modules/remotes/host/host-provider-auth.service.js.map +1 -1
- package/dist/server/modules/remotes/host/host-provider-usage-revision.d.ts +2 -0
- package/dist/server/modules/remotes/host/host-provider-usage-revision.js +11 -0
- package/dist/server/modules/remotes/host/host-provider-usage-revision.js.map +1 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.d.ts +11 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.js +62 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.js.map +1 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.service.d.ts +9 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.service.js +35 -0
- package/dist/server/modules/remotes/host/host-provider-usage-settings.service.js.map +1 -0
- package/dist/server/modules/remotes/host/host-shared-vm.controller.d.ts +24 -0
- package/dist/server/modules/remotes/host/host-shared-vm.controller.js +183 -0
- package/dist/server/modules/remotes/host/host-shared-vm.controller.js.map +1 -0
- package/dist/server/modules/remotes/host/host-shared-vm.service.d.ts +28 -0
- package/dist/server/modules/remotes/host/host-shared-vm.service.js +159 -0
- package/dist/server/modules/remotes/host/host-shared-vm.service.js.map +1 -0
- package/dist/server/modules/remotes/host/host-shared-vm.store.d.ts +18 -0
- package/dist/server/modules/remotes/host/host-shared-vm.store.js +105 -0
- package/dist/server/modules/remotes/host/host-shared-vm.store.js.map +1 -0
- package/dist/server/modules/remotes/host/host-update.controller.js +3 -3
- package/dist/server/modules/remotes/host/host-update.controller.js.map +1 -1
- package/dist/server/modules/remotes/host/host.service.d.ts +3 -1
- package/dist/server/modules/remotes/host/host.service.js +9 -2
- package/dist/server/modules/remotes/host/host.service.js.map +1 -1
- package/dist/server/modules/remotes/host/shared-vm.contract.d.ts +184 -0
- package/dist/server/modules/remotes/host/shared-vm.contract.js +44 -0
- package/dist/server/modules/remotes/host/shared-vm.contract.js.map +1 -0
- package/dist/server/modules/remotes/host-install/host-install-block.d.ts +2 -0
- package/dist/server/modules/remotes/host-install/host-install-block.js +3 -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 +2 -0
- package/dist/server/modules/remotes/host-install/host-install.service.js +10 -0
- package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
- package/dist/server/modules/remotes/host-install/host-join-block.d.ts +16 -0
- package/dist/server/modules/remotes/host-install/host-join-block.js +122 -0
- package/dist/server/modules/remotes/host-install/host-join-block.js.map +1 -0
- package/dist/server/modules/remotes/host-install/ssh-runner.d.ts +1 -0
- package/dist/server/modules/remotes/host-install/ssh-runner.js +2 -2
- package/dist/server/modules/remotes/host-install/ssh-runner.js.map +1 -1
- package/dist/server/modules/remotes/operations/attach.operation.d.ts +9 -2
- package/dist/server/modules/remotes/operations/attach.operation.js +38 -11
- package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/claim.operation.d.ts +4 -0
- package/dist/server/modules/remotes/operations/claim.operation.js +15 -0
- package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/claude-user-instructions.d.ts +2 -0
- package/dist/server/modules/remotes/operations/claude-user-instructions.js +23 -0
- package/dist/server/modules/remotes/operations/claude-user-instructions.js.map +1 -0
- package/dist/server/modules/remotes/operations/destroy-vm.operation.d.ts +4 -2
- package/dist/server/modules/remotes/operations/destroy-vm.operation.js +43 -23
- package/dist/server/modules/remotes/operations/destroy-vm.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/detach.operation.d.ts +12 -1
- package/dist/server/modules/remotes/operations/detach.operation.js +106 -29
- package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/disconnect-all.operation.d.ts +50 -0
- package/dist/server/modules/remotes/operations/disconnect-all.operation.js +222 -0
- package/dist/server/modules/remotes/operations/disconnect-all.operation.js.map +1 -0
- package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +3 -1
- package/dist/server/modules/remotes/operations/file-sync-handoff.js +69 -68
- package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
- package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +10 -44
- package/dist/server/modules/remotes/operations/git-owner.dto.js +1 -12
- package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -1
- package/dist/server/modules/remotes/operations/guarded-vm-destroy.d.ts +2 -0
- package/dist/server/modules/remotes/operations/guarded-vm-destroy.js +14 -0
- package/dist/server/modules/remotes/operations/guarded-vm-destroy.js.map +1 -1
- package/dist/server/modules/remotes/operations/install-host.operation.d.ts +21 -1
- package/dist/server/modules/remotes/operations/install-host.operation.js +285 -27
- package/dist/server/modules/remotes/operations/install-host.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-host.client.d.ts +51 -12
- package/dist/server/modules/remotes/operations/remote-host.client.js +129 -23
- package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +161 -0
- package/dist/server/modules/remotes/operations/remote-operation.dto.js +12 -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 +4 -2
- package/dist/server/modules/remotes/operations/remote-operation.runner.js +53 -9
- package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +6 -3
- package/dist/server/modules/remotes/operations/remote-operation.types.js +10 -1
- package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +2 -3
- package/dist/server/modules/remotes/operations/remote-operations.controller.js +20 -25
- package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +11 -9
- package/dist/server/modules/remotes/operations/remote-operations.service.js +123 -118
- package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
- package/dist/server/modules/remotes/operations/remote-worktree-guard.d.ts +16 -0
- package/dist/server/modules/remotes/operations/remote-worktree-guard.js +100 -0
- package/dist/server/modules/remotes/operations/remote-worktree-guard.js.map +1 -0
- package/dist/server/modules/remotes/operations/reset-vm.operation.d.ts +15 -2
- package/dist/server/modules/remotes/operations/reset-vm.operation.js +115 -15
- package/dist/server/modules/remotes/operations/reset-vm.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/update-host.operation.d.ts +2 -0
- package/dist/server/modules/remotes/operations/update-host.operation.js +11 -5
- package/dist/server/modules/remotes/operations/update-host.operation.js.map +1 -1
- package/dist/server/modules/remotes/operations/vm-operations.controller.d.ts +5 -1
- package/dist/server/modules/remotes/operations/vm-operations.controller.js +36 -2
- package/dist/server/modules/remotes/operations/vm-operations.controller.js.map +1 -1
- package/dist/server/modules/remotes/operations/vm-operations.dto.d.ts +150 -0
- package/dist/server/modules/remotes/operations/vm-operations.dto.js +9 -1
- package/dist/server/modules/remotes/operations/vm-operations.dto.js.map +1 -1
- package/dist/server/modules/remotes/operations/vm-operations.service.d.ts +3 -1
- package/dist/server/modules/remotes/operations/vm-operations.service.js +38 -15
- package/dist/server/modules/remotes/operations/vm-operations.service.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 +47 -2
- package/dist/server/modules/remotes/remotes.module.js.map +1 -1
- package/dist/server/modules/remotes/services/home-shared-vm-notices.service.d.ts +18 -0
- package/dist/server/modules/remotes/services/home-shared-vm-notices.service.js +81 -0
- package/dist/server/modules/remotes/services/home-shared-vm-notices.service.js.map +1 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.service.d.ts +11 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.service.js +69 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.service.js.map +1 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.store.d.ts +23 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.store.js +73 -0
- package/dist/server/modules/remotes/services/remote-forced-detach.store.js.map +1 -0
- package/dist/server/modules/remotes/services/remote-health.service.d.ts +7 -1
- package/dist/server/modules/remotes/services/remote-health.service.js +41 -4
- package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
- package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.d.ts +13 -0
- package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.js +57 -0
- package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.js.map +1 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.service.d.ts +37 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.service.js +184 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.service.js.map +1 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.store.d.ts +11 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.store.js +75 -0
- package/dist/server/modules/remotes/services/remote-shared-vm.store.js.map +1 -0
- package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +5 -1
- package/dist/server/modules/remotes/sync/remote-file-sync.service.js +95 -41
- package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
- package/dist/server/modules/remotes/time/project-time-settler.dto.d.ts +2 -2
- package/dist/server/modules/remotes/transport/host-transport.d.ts +2 -0
- package/dist/server/modules/remotes/transport/host-transport.js +7 -0
- package/dist/server/modules/remotes/transport/host-transport.js.map +1 -1
- package/dist/server/modules/reviews/dtos/review.dto.d.ts +2 -2
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.d.ts +5 -1
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +25 -5
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
- package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.d.ts +6 -4
- package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js +17 -20
- package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js.map +1 -1
- package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.d.ts +61 -0
- package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.js +250 -0
- package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.js.map +1 -0
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.d.ts +1 -0
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js +1 -0
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js.map +1 -1
- package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.d.ts +3 -1
- package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.js +34 -13
- package/dist/server/modules/session-reader/adapters/opencode-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/data/pricing.json +302 -61
- package/dist/server/modules/session-reader/readers/opencode-sqlite.db.d.ts +73 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.db.js +176 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.db.js.map +1 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.v1.reader.d.ts +45 -0
- package/dist/server/modules/session-reader/readers/{opencode-sqlite.reader.js → opencode-sqlite.v1.reader.js} +171 -164
- package/dist/server/modules/session-reader/readers/opencode-sqlite.v1.reader.js.map +1 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.d.ts +15 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.js +474 -0
- package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.js.map +1 -0
- package/dist/server/modules/session-reader/services/pricing.interface.d.ts +1 -0
- package/dist/server/modules/session-reader/services/pricing.interface.js.map +1 -1
- package/dist/server/modules/session-reader/services/pricing.service.d.ts +1 -0
- package/dist/server/modules/session-reader/services/pricing.service.js +3 -0
- package/dist/server/modules/session-reader/services/pricing.service.js.map +1 -1
- package/dist/server/modules/session-reader/services/session-reader.service.js +6 -1
- package/dist/server/modules/session-reader/services/session-reader.service.js.map +1 -1
- package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +3 -0
- package/dist/server/modules/sessions/services/message-enqueue.service.js +1 -0
- package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
- package/dist/server/modules/sessions/services/message-pool.types.d.ts +6 -0
- package/dist/server/modules/sessions/services/message-pool.types.js +6 -1
- package/dist/server/modules/sessions/services/message-pool.types.js.map +1 -1
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.d.ts +2 -0
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +18 -1
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
- package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.d.ts +5 -0
- package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.js +37 -0
- package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.js.map +1 -0
- package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.d.ts +8 -1
- package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js +50 -2
- package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js.map +1 -1
- package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.types.d.ts +1 -0
- package/dist/server/modules/sessions/services/session-lifecycle-facade.service.d.ts +7 -2
- package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js +4 -4
- package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +2 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +2 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +6 -7
- 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.js +1 -2
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
- package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +1 -0
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js +30 -0
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
- package/dist/server/modules/sessions/sessions.module.js +15 -0
- package/dist/server/modules/sessions/sessions.module.js.map +1 -1
- package/dist/server/modules/settings/dtos/settings.dto.d.ts +33 -0
- package/dist/server/modules/settings/dtos/settings.dto.js +2 -0
- package/dist/server/modules/settings/dtos/settings.dto.js.map +1 -1
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.d.ts +3 -0
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.js +35 -0
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.js.map +1 -1
- package/dist/server/modules/settings/local/delegates/provider-cli-settings.delegate.js +6 -1
- package/dist/server/modules/settings/local/delegates/provider-cli-settings.delegate.js.map +1 -1
- package/dist/server/modules/settings/services/settings.service.d.ts +2 -1
- package/dist/server/modules/settings/services/settings.service.js +3 -0
- package/dist/server/modules/settings/services/settings.service.js.map +1 -1
- package/dist/server/modules/storage/db/schema.d.ts +235 -0
- package/dist/server/modules/storage/db/schema.js +22 -1
- package/dist/server/modules/storage/db/schema.js.map +1 -1
- package/dist/server/modules/storage/interfaces/storage.interface.d.ts +10 -2
- package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/project-replica.delegate.js +7 -0
- package/dist/server/modules/storage/local/delegates/project-replica.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/worktree.delegate.d.ts +14 -0
- package/dist/server/modules/storage/local/delegates/worktree.delegate.js +89 -0
- package/dist/server/modules/storage/local/delegates/worktree.delegate.js.map +1 -0
- package/dist/server/modules/storage/local/helpers/host-abandoned-projects.d.ts +5 -0
- package/dist/server/modules/storage/local/helpers/host-abandoned-projects.js +39 -0
- package/dist/server/modules/storage/local/helpers/host-abandoned-projects.js.map +1 -0
- package/dist/server/modules/storage/local/local-storage.service.js +2 -0
- package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
- package/dist/server/modules/storage/local/storage-routes.d.ts +26 -0
- package/dist/server/modules/storage/local/storage-routes.js +9 -0
- package/dist/server/modules/storage/local/storage-routes.js.map +1 -1
- package/dist/server/modules/storage/models/domain.models.d.ts +20 -1
- package/dist/server/modules/storage/models/domain.models.js +1 -0
- package/dist/server/modules/storage/models/domain.models.js.map +1 -1
- package/dist/server/modules/storage/write-gate/storage-write-scope.d.ts +1 -0
- package/dist/server/modules/storage/write-gate/storage-write-scope.js +1 -0
- package/dist/server/modules/storage/write-gate/storage-write-scope.js.map +1 -1
- package/dist/server/modules/teams/services/teams.service.d.ts +46 -6
- package/dist/server/modules/teams/services/teams.service.js +129 -8
- package/dist/server/modules/teams/services/teams.service.js.map +1 -1
- package/dist/server/modules/teams/teams.module.js +14 -1
- package/dist/server/modules/teams/teams.module.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/delivery.d.ts +2 -2
- package/dist/server/modules/terminal/services/terminal-io/delivery.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +1 -1
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +6 -1
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
- package/dist/server/modules/vm-providers/proxmox-vm.provider.d.ts +1 -0
- package/dist/server/modules/vm-providers/proxmox-vm.provider.js +17 -0
- package/dist/server/modules/vm-providers/proxmox-vm.provider.js.map +1 -1
- package/dist/server/modules/worktrees/git-output.d.ts +5 -0
- package/dist/server/modules/worktrees/git-output.js +53 -0
- package/dist/server/modules/worktrees/git-output.js.map +1 -0
- package/dist/server/modules/worktrees/host-worktrees.controller.d.ts +10 -0
- package/dist/server/modules/worktrees/host-worktrees.controller.js +59 -0
- package/dist/server/modules/worktrees/host-worktrees.controller.js.map +1 -0
- package/dist/server/modules/worktrees/host-worktrees.dto.d.ts +40 -0
- package/dist/server/modules/worktrees/host-worktrees.dto.js +9 -0
- package/dist/server/modules/worktrees/host-worktrees.dto.js.map +1 -0
- package/dist/server/modules/worktrees/project-git-mutex.d.ts +5 -0
- package/dist/server/modules/worktrees/project-git-mutex.js +38 -0
- package/dist/server/modules/worktrees/project-git-mutex.js.map +1 -0
- package/dist/server/modules/worktrees/worktree-admission.service.d.ts +15 -0
- package/dist/server/modules/worktrees/worktree-admission.service.js +87 -0
- package/dist/server/modules/worktrees/worktree-admission.service.js.map +1 -0
- package/dist/server/modules/worktrees/worktree-git-runner.d.ts +12 -0
- package/dist/server/modules/worktrees/worktree-git-runner.js +57 -0
- package/dist/server/modules/worktrees/worktree-git-runner.js.map +1 -0
- package/dist/server/modules/worktrees/worktrees.errors.d.ts +5 -0
- package/dist/server/modules/worktrees/worktrees.errors.js +11 -0
- package/dist/server/modules/worktrees/worktrees.errors.js.map +1 -0
- package/dist/server/modules/worktrees/worktrees.module.d.ts +2 -0
- package/dist/server/modules/worktrees/worktrees.module.js +37 -0
- package/dist/server/modules/worktrees/worktrees.module.js.map +1 -0
- package/dist/server/modules/worktrees/worktrees.service.d.ts +50 -0
- package/dist/server/modules/worktrees/worktrees.service.js +586 -0
- package/dist/server/modules/worktrees/worktrees.service.js.map +1 -0
- package/dist/server/modules/worktrees/worktrees.types.d.ts +58 -0
- package/dist/server/modules/worktrees/worktrees.types.js +3 -0
- package/dist/server/modules/worktrees/worktrees.types.js.map +1 -0
- package/dist/server/templates/teams-dev.json +6 -6
- package/dist/server/tsconfig.build.tsbuildinfo +1 -1
- package/dist/server/ui/assets/{ExternalRichEditor-CB-LjWox.js → ExternalRichEditor-NpBNzn_X.js} +1 -1
- package/dist/server/ui/assets/{ReviewDetailPage-CpMMjYet.js → ReviewDetailPage-DxVCE1zh.js} +1 -1
- package/dist/server/ui/assets/{ReviewsPage-Cw17_agp.js → ReviewsPage-Bx6jkULr.js} +1 -1
- package/dist/server/ui/assets/index-BZjQEWOy.css +32 -0
- package/dist/server/ui/assets/{index-DmRXRpSy.js → index-CLPZxkZt.js} +263 -263
- package/dist/server/ui/assets/{useReviewSubscription-wd5iHNQy.js → useReviewSubscription-BLuFzXjh.js} +1 -1
- package/dist/server/ui/index.html +2 -2
- package/dist/templates/teams-dev.json +6 -6
- package/npm-shrinkwrap.json +6189 -0
- package/package.json +22 -22
- package/dist/server/modules/file-sync/host-git-index.controller.d.ts +0 -10
- package/dist/server/modules/file-sync/host-git-index.controller.js +0 -67
- package/dist/server/modules/file-sync/host-git-index.controller.js.map +0 -1
- package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +0 -35
- package/dist/server/modules/remotes/operations/git-owner.operation.js +0 -216
- package/dist/server/modules/remotes/operations/git-owner.operation.js.map +0 -1
- package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.d.ts +0 -73
- package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.js.map +0 -1
- package/dist/server/ui/assets/index-BwuNu70G.css +0 -32
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "devchain-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.26.1",
|
|
4
4
|
"description": "AI driven development platform",
|
|
5
5
|
"homepage": "https://devchain.cc/",
|
|
6
6
|
"repository": {
|
|
@@ -8,6 +8,18 @@
|
|
|
8
8
|
"url": "https://github.com/twitech-lab/devchain.git"
|
|
9
9
|
},
|
|
10
10
|
"changelog": {
|
|
11
|
+
"0.26.1": [
|
|
12
|
+
"Terminal: agent sessions start again on macOS"
|
|
13
|
+
],
|
|
14
|
+
"0.26.0": [
|
|
15
|
+
"Usage: plan usage rings in the bottom bar and in mobile chat",
|
|
16
|
+
"Remote VMs: several people can share one VM, each with their own DevChain",
|
|
17
|
+
"Teams: leads can restart, compact or stop a team member",
|
|
18
|
+
"Providers: OpenCode 2 support, and Codex plugins on the Plugins page",
|
|
19
|
+
"Dev Template: shorter plan reviews, and the lead replies to every review",
|
|
20
|
+
"Mobile app 1.12.0: provider usage in chat, and smoother loading and keyboard on Android",
|
|
21
|
+
"Host image 1.5.0: support for VMs that several users share, and OpenCode 2"
|
|
22
|
+
],
|
|
11
23
|
"0.25.0": [
|
|
12
24
|
"https://devchain.cc/releases/0.25.0/",
|
|
13
25
|
"",
|
|
@@ -16,7 +28,9 @@
|
|
|
16
28
|
"Remote VMs: Docker moves work on more VMs, files of any owner sync, and custom VM sizes use sliders",
|
|
17
29
|
"Terminal: messages no longer reach the shell after an agent's CLI exits",
|
|
18
30
|
"Projects: a reminder when a project uses an older template, and custom prompts can be previewed and deleted from chat",
|
|
19
|
-
"Stability: a recovery screen instead of a blank page when something fails"
|
|
31
|
+
"Stability: a recovery screen instead of a blank page when something fails",
|
|
32
|
+
"Breaking changes: if you open DevChain through a custom hostname, add it to ALLOWED_HOSTS unless it is already the configured HOST.",
|
|
33
|
+
"Breaking changes: the mobile app connection now requires end-to-end encryption by default. Update clients that send unencrypted requests. E2EE_REQUIRED=false restores the previous setting but permits unencrypted traffic."
|
|
20
34
|
],
|
|
21
35
|
"0.24.2": [
|
|
22
36
|
"Remote VMs: smoother and more reliable Connect, Disconnect and file sync, with better Docker support and a new Projects tab",
|
|
@@ -63,25 +77,6 @@
|
|
|
63
77
|
"0.23.1": [
|
|
64
78
|
"Improved time tracking",
|
|
65
79
|
"Dev Template: clearer Architect planning instructions with more focused research and review rounds"
|
|
66
|
-
],
|
|
67
|
-
"0.23.0": [
|
|
68
|
-
"Integrations: ClickUp and Jira connections, boards, and settings now belong to each project; synced subtasks hide local project paths",
|
|
69
|
-
"Epics: link related and blocking work across a workspace, preview relationships on the Board, and switch between an Epic and its linked task",
|
|
70
|
-
"Time tracking: assign unlogged agent activity to Epics, include team research and related work, and export only new time on the dates it happened",
|
|
71
|
-
"Remote boards: clearer linked-task and unlogged-time indicators, editable time entries, and more reliable ClickUp time confirmation",
|
|
72
|
-
"Stability: fewer Claude startup trust prompts, correct context limits for new Claude models, and fixes for model-selection crashes",
|
|
73
|
-
"Dev Template: improved code reviews and planning prompts",
|
|
74
|
-
"Mobile app 1.9.0: clearer transcript updates when reopening cached chats and fixes for missing-transcript errors"
|
|
75
|
-
],
|
|
76
|
-
"0.22.1": [
|
|
77
|
-
"[Impr] Dev Template: tasks now go to a Coder matching the task's tier instead of staying with an overqualified worker"
|
|
78
|
-
],
|
|
79
|
-
"0.22.0": [
|
|
80
|
-
"ClickUp and Jira Integration — assigned work appears on the Board, import tasks as Epics, subtasks, time logging",
|
|
81
|
-
"Board: Estimated agent time totals for Epics and their sub-epics, more compact cards",
|
|
82
|
-
"Terminal: agent messages wait while you have an unsent draft, and Ctrl+C with a selection copies instead of interrupting the agent",
|
|
83
|
-
"Notifications: phone alerts now work in multi-workspace mode and follow each device's workspace access",
|
|
84
|
-
"Mobile app 1.8.0: unified workspace/project switcher, more stable reconnections"
|
|
85
80
|
]
|
|
86
81
|
},
|
|
87
82
|
"publishConfig": {
|
|
@@ -105,6 +100,7 @@
|
|
|
105
100
|
"dist/**",
|
|
106
101
|
"prebuilds/**",
|
|
107
102
|
"scripts/postinstall.js",
|
|
103
|
+
"npm-shrinkwrap.json",
|
|
108
104
|
"README.md",
|
|
109
105
|
"LICENSE"
|
|
110
106
|
],
|
|
@@ -213,9 +209,13 @@
|
|
|
213
209
|
"generate:mobile-rpc-contract": "node packages/shared/scripts/generate-mobile-rpc-contract.mjs --write",
|
|
214
210
|
"check:mobile-rpc-contract": "node packages/shared/scripts/generate-mobile-rpc-contract.mjs --check",
|
|
215
211
|
"verify:packed-cli-runtime": "node scripts/verify-packed-cli-runtime.js",
|
|
212
|
+
"verify:installed-cli-runtime": "node scripts/verify-packed-cli-runtime.js --install",
|
|
213
|
+
"shrinkwrap:reconcile": "node scripts/npm-shrinkwrap.js reconcile",
|
|
214
|
+
"shrinkwrap:refresh": "node scripts/npm-shrinkwrap.js refresh",
|
|
215
|
+
"shrinkwrap:check": "node scripts/npm-shrinkwrap.js check",
|
|
216
216
|
"postinstall": "node scripts/postinstall.js",
|
|
217
217
|
"build:api": "pnpm --filter remote-api build",
|
|
218
|
-
"build:packages": "pnpm --filter @devchain/auth-common build && pnpm --filter @devchain/compute-contract build",
|
|
218
|
+
"build:packages": "pnpm --filter @devchain/auth-common build && pnpm --filter @devchain/compute-contract build && pnpm --filter @devchain/identity-webhook-client --fail-if-no-match build",
|
|
219
219
|
"lint": "pnpm --recursive --if-present lint",
|
|
220
220
|
"lint:api": "pnpm --filter remote-api lint",
|
|
221
221
|
"format": "pnpm --filter local-app format",
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { GitService } from '../git/services/git.service';
|
|
2
|
-
import { FileSyncService } from './file-sync.service';
|
|
3
|
-
import { hostRoutes } from '../remotes/contract/host-routes';
|
|
4
|
-
import type { HostHandlerResponse } from '../remotes/contract/host-routes';
|
|
5
|
-
export declare class HostGitIndexController {
|
|
6
|
-
private readonly files;
|
|
7
|
-
private readonly git;
|
|
8
|
-
constructor(files: FileSyncService, git: GitService);
|
|
9
|
-
refresh(id: string, body: unknown): Promise<HostHandlerResponse<typeof hostRoutes.refreshGitIndex, 200>>;
|
|
10
|
-
}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.HostGitIndexController = void 0;
|
|
16
|
-
const common_1 = require("@nestjs/common");
|
|
17
|
-
const swagger_1 = require("@nestjs/swagger");
|
|
18
|
-
const logger_1 = require("../../common/logging/logger");
|
|
19
|
-
const git_service_1 = require("../git/services/git.service");
|
|
20
|
-
const host_dto_1 = require("../remotes/host/host.dto");
|
|
21
|
-
const file_sync_service_1 = require("./file-sync.service");
|
|
22
|
-
const host_routes_1 = require("../remotes/contract/host-routes");
|
|
23
|
-
const logger = (0, logger_1.createLogger)('HostGitIndex');
|
|
24
|
-
let HostGitIndexController = class HostGitIndexController {
|
|
25
|
-
files;
|
|
26
|
-
git;
|
|
27
|
-
constructor(files, git) {
|
|
28
|
-
this.files = files;
|
|
29
|
-
this.git = git;
|
|
30
|
-
}
|
|
31
|
-
async refresh(id, body) {
|
|
32
|
-
const projectId = host_dto_1.HostProjectIdSchema.parse(id);
|
|
33
|
-
const { since } = host_routes_1.hostRoutes.refreshGitIndex.body.parse(body);
|
|
34
|
-
const root = await this.files.folderPath(projectId);
|
|
35
|
-
const head = await this.git.mirroredHead(projectId, root);
|
|
36
|
-
if (head === null || head === since)
|
|
37
|
-
return { head, refreshed: false, warning: null };
|
|
38
|
-
try {
|
|
39
|
-
await this.git.refreshIndexFromHead(projectId, root);
|
|
40
|
-
return { head, refreshed: true, warning: null };
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
logger.warn({ error, projectId }, 'VM Git index rebuild failed');
|
|
44
|
-
const reason = error instanceof Error ? error.message : String(error);
|
|
45
|
-
return { head, refreshed: false, warning: `VM Git index rebuild failed: ${reason}` };
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
exports.HostGitIndexController = HostGitIndexController;
|
|
50
|
-
__decorate([
|
|
51
|
-
(0, common_1.Post)(),
|
|
52
|
-
(0, common_1.HttpCode)(200),
|
|
53
|
-
(0, swagger_1.ApiOperation)({ summary: 'Rebuild the VM Git index when mirrored HEAD changed' }),
|
|
54
|
-
(0, swagger_1.ApiOkResponse)({ description: 'Mirrored HEAD, whether the index was rebuilt and any warning' }),
|
|
55
|
-
__param(0, (0, common_1.Param)('id')),
|
|
56
|
-
__param(1, (0, common_1.Body)()),
|
|
57
|
-
__metadata("design:type", Function),
|
|
58
|
-
__metadata("design:paramtypes", [String, Object]),
|
|
59
|
-
__metadata("design:returntype", Promise)
|
|
60
|
-
], HostGitIndexController.prototype, "refresh", null);
|
|
61
|
-
exports.HostGitIndexController = HostGitIndexController = __decorate([
|
|
62
|
-
(0, swagger_1.ApiTags)('Host git index'),
|
|
63
|
-
(0, common_1.Controller)('api/host/projects/:id/git-index'),
|
|
64
|
-
__metadata("design:paramtypes", [file_sync_service_1.FileSyncService,
|
|
65
|
-
git_service_1.GitService])
|
|
66
|
-
], HostGitIndexController);
|
|
67
|
-
//# sourceMappingURL=host-git-index.controller.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"host-git-index.controller.js","sourceRoot":"","sources":["../../../src/modules/file-sync/host-git-index.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAyE;AACzE,6CAAuE;AACvE,wDAA2D;AAC3D,6DAAyD;AACzD,uDAA+D;AAC/D,2DAAsD;AACtD,iEAA6D;AAG7D,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,cAAc,CAAC,CAAC;AAIrC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAEd;IACA;IAFnB,YACmB,KAAsB,EACtB,GAAe;QADf,UAAK,GAAL,KAAK,CAAiB;QACtB,QAAG,GAAH,GAAG,CAAY;IAC/B,CAAC;IAME,AAAN,KAAK,CAAC,OAAO,CACE,EAAU,EACf,IAAa;QAErB,MAAM,SAAS,GAAG,8BAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,KAAK,EAAE,GAAG,wBAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACrD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,6BAA6B,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,gCAAgC,MAAM,EAAE,EAAE,CAAC;QACvF,CAAC;IACH,CAAC;CACF,CAAA;AA5BY,wDAAsB;AAU3B;IAJL,IAAA,aAAI,GAAE;IACN,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,qDAAqD,EAAE,CAAC;IAChF,IAAA,uBAAa,EAAC,EAAE,WAAW,EAAE,8DAA8D,EAAE,CAAC;IAE5F,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,aAAI,GAAE,CAAA;;;;qDAeR;iCA3BU,sBAAsB;IAFlC,IAAA,iBAAO,EAAC,gBAAgB,CAAC;IACzB,IAAA,mBAAU,EAAC,iCAAiC,CAAC;qCAGlB,mCAAe;QACjB,wBAAU;GAHvB,sBAAsB,CA4BlC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { HomeGitGuardService } from '../../file-sync/home-git-guard.service';
|
|
2
|
-
import { FileSyncService } from '../../file-sync/file-sync.service';
|
|
3
|
-
import type { RemoteOperation } from '../../storage/models/domain.models';
|
|
4
|
-
import { GitOwnerStore } from '../git-owner.store';
|
|
5
|
-
import { type RemoteHealthPort } from '../ports/remote-health.port';
|
|
6
|
-
import { RemoteBindingsService } from '../services/remote-bindings.service';
|
|
7
|
-
import { RemoteLiveSyncService } from '../sync/remote-live-sync.service';
|
|
8
|
-
import { FileSyncHandoff } from './file-sync-handoff';
|
|
9
|
-
import { RemoteHostClient } from './remote-host.client';
|
|
10
|
-
import { type RemoteOperationDefinition, type RemoteOperationStepDefinition } from './remote-operation.types';
|
|
11
|
-
export declare class GitOwnerOperation implements RemoteOperationDefinition {
|
|
12
|
-
private readonly health;
|
|
13
|
-
private readonly bindings;
|
|
14
|
-
private readonly host;
|
|
15
|
-
private readonly files;
|
|
16
|
-
private readonly handoff;
|
|
17
|
-
private readonly live;
|
|
18
|
-
private readonly owners;
|
|
19
|
-
private readonly guard;
|
|
20
|
-
readonly kind: "git_owner";
|
|
21
|
-
readonly steps: readonly RemoteOperationStepDefinition[];
|
|
22
|
-
constructor(health: RemoteHealthPort, bindings: RemoteBindingsService, host: RemoteHostClient, files: FileSyncService, handoff: FileSyncHandoff, live: RemoteLiveSyncService, owners: GitOwnerStore, guard: HomeGitGuardService);
|
|
23
|
-
stepsFor(details: Record<string, unknown>): readonly RemoteOperationStepDefinition[];
|
|
24
|
-
validate(remoteId: string, projectId: string, operation?: RemoteOperation): Promise<void>;
|
|
25
|
-
assertCancellable(operation: RemoteOperation): void;
|
|
26
|
-
retryFrom(operation: RemoteOperation): string | null;
|
|
27
|
-
resumeFrom(operation: RemoteOperation): string | null;
|
|
28
|
-
interrupt(operationId: string): Promise<void>;
|
|
29
|
-
rollback(operation: RemoteOperation): Promise<void>;
|
|
30
|
-
private details;
|
|
31
|
-
private vmGuard;
|
|
32
|
-
private pcGuard;
|
|
33
|
-
private pcGuardRemove;
|
|
34
|
-
private vmGuardRemove;
|
|
35
|
-
}
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.GitOwnerOperation = void 0;
|
|
16
|
-
const common_1 = require("@nestjs/common");
|
|
17
|
-
const node_os_1 = require("node:os");
|
|
18
|
-
const home_git_guard_service_1 = require("../../file-sync/home-git-guard.service");
|
|
19
|
-
const file_sync_service_1 = require("../../file-sync/file-sync.service");
|
|
20
|
-
const git_owner_store_1 = require("../git-owner.store");
|
|
21
|
-
const remote_health_port_1 = require("../ports/remote-health.port");
|
|
22
|
-
const remote_bindings_service_1 = require("../services/remote-bindings.service");
|
|
23
|
-
const remote_live_sync_service_1 = require("../sync/remote-live-sync.service");
|
|
24
|
-
const file_sync_handoff_1 = require("./file-sync-handoff");
|
|
25
|
-
const git_owner_dto_1 = require("./git-owner.dto");
|
|
26
|
-
const host_api_key_1 = require("../host-api-key");
|
|
27
|
-
const remote_host_client_1 = require("./remote-host.client");
|
|
28
|
-
const remote_operation_errors_1 = require("./remote-operation.errors");
|
|
29
|
-
const remote_operation_types_1 = require("./remote-operation.types");
|
|
30
|
-
let GitOwnerOperation = class GitOwnerOperation {
|
|
31
|
-
health;
|
|
32
|
-
bindings;
|
|
33
|
-
host;
|
|
34
|
-
files;
|
|
35
|
-
handoff;
|
|
36
|
-
live;
|
|
37
|
-
owners;
|
|
38
|
-
guard;
|
|
39
|
-
kind = 'git_owner';
|
|
40
|
-
steps;
|
|
41
|
-
constructor(health, bindings, host, files, handoff, live, owners, guard) {
|
|
42
|
-
this.health = health;
|
|
43
|
-
this.bindings = bindings;
|
|
44
|
-
this.host = host;
|
|
45
|
-
this.files = files;
|
|
46
|
-
this.handoff = handoff;
|
|
47
|
-
this.live = live;
|
|
48
|
-
this.owners = owners;
|
|
49
|
-
this.guard = guard;
|
|
50
|
-
this.steps = [
|
|
51
|
-
{
|
|
52
|
-
id: 'preflight',
|
|
53
|
-
label: 'Check the VM and Git',
|
|
54
|
-
run: (run) => this.validate(run.operation.remoteId, (0, remote_operation_types_1.requireProjectId)(run.operation), run.operation),
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
id: 'freeze_host',
|
|
58
|
-
label: 'Block new agents on the VM',
|
|
59
|
-
run: ({ operation }) => this.host.freeze(operation.remoteId, (0, remote_operation_types_1.requireProjectId)(operation)).then(() => undefined),
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
id: 'stop_host_sessions',
|
|
63
|
-
label: 'Stop agent sessions on the VM',
|
|
64
|
-
run: ({ operation }) => this.host.stopSessions(operation.remoteId, (0, remote_operation_types_1.requireProjectId)(operation)),
|
|
65
|
-
},
|
|
66
|
-
{ id: 'vm_guard', label: 'Block Git on the VM', run: (run) => this.vmGuard(run) },
|
|
67
|
-
{
|
|
68
|
-
id: 'thaw_host',
|
|
69
|
-
label: 'Allow new agents on the VM',
|
|
70
|
-
run: ({ operation }) => this.host.thaw(operation.remoteId, (0, remote_operation_types_1.requireProjectId)(operation)),
|
|
71
|
-
},
|
|
72
|
-
{ id: 'pc_guard', label: 'Block Git on this PC', run: (run) => this.pcGuard(run) },
|
|
73
|
-
{
|
|
74
|
-
id: 'git_settle',
|
|
75
|
-
label: 'Wait for Git changes to sync',
|
|
76
|
-
run: (run) => this.handoff.settleGit(run, (0, remote_operation_types_1.requireProjectId)(run.operation), run.details.owner === 'home' ? 'vm' : 'home'),
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
id: 'git_flip',
|
|
80
|
-
label: 'Move Git control',
|
|
81
|
-
run: (run) => this.live.runExclusive((0, remote_operation_types_1.requireProjectId)(run.operation), () => this.handoff.flipGit(run, (0, remote_operation_types_1.requireProjectId)(run.operation), this.details(run).owner)),
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
id: 'pc_guard_remove',
|
|
85
|
-
label: 'Enable Git and rebuild the index on this PC',
|
|
86
|
-
run: (run) => this.pcGuardRemove(run),
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
id: 'vm_guard_remove',
|
|
90
|
-
label: 'Enable Git and rebuild the index on the VM',
|
|
91
|
-
run: (run) => this.vmGuardRemove(run),
|
|
92
|
-
},
|
|
93
|
-
];
|
|
94
|
-
}
|
|
95
|
-
stepsFor(details) {
|
|
96
|
-
const take = details.owner === 'home';
|
|
97
|
-
const excluded = new Set(take
|
|
98
|
-
? ['pc_guard', 'vm_guard_remove']
|
|
99
|
-
: ['freeze_host', 'stop_host_sessions', 'vm_guard', 'thaw_host', 'pc_guard_remove']);
|
|
100
|
-
if (take && details.force !== true)
|
|
101
|
-
for (const id of ['freeze_host', 'stop_host_sessions', 'thaw_host'])
|
|
102
|
-
excluded.add(id);
|
|
103
|
-
return this.steps.filter((step) => !excluded.has(step.id));
|
|
104
|
-
}
|
|
105
|
-
async validate(remoteId, projectId, operation) {
|
|
106
|
-
const refuse = (code, message) => {
|
|
107
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError(code, message, { projectId, remoteId });
|
|
108
|
-
};
|
|
109
|
-
const binding = await this.bindings.get(projectId);
|
|
110
|
-
if (binding?.state !== 'remote' || binding.remoteId !== remoteId)
|
|
111
|
-
refuse('GIT_PROJECT_NOT_CONNECTED', 'The project must be connected to this VM to move Git.');
|
|
112
|
-
const unavailable = () => refuse('GIT_SYNC_UNAVAILABLE', 'The VM Git sync state could not be checked. Restore the VM connection and try again.');
|
|
113
|
-
const health = await this.health.refresh(remoteId).catch(unavailable);
|
|
114
|
-
if (!health.online)
|
|
115
|
-
refuse('GIT_REMOTE_OFFLINE', 'The VM must be online to move Git.');
|
|
116
|
-
if (health.apiKeyRejected)
|
|
117
|
-
refuse(host_api_key_1.HOST_API_KEY_REJECTED, host_api_key_1.HOST_API_KEY_REJECTED_MESSAGE);
|
|
118
|
-
if (!health.versionMatches)
|
|
119
|
-
refuse('GIT_REMOTE_VERSION_MISMATCH', 'The VM runs a different DevChain version.');
|
|
120
|
-
const device = await this.host.syncDevice(remoteId).catch(unavailable);
|
|
121
|
-
if (!(await this.files.isConnected(device.deviceId).catch(unavailable)))
|
|
122
|
-
refuse('GIT_SYNC_DISCONNECTED', 'There is no file sync connection to the VM.');
|
|
123
|
-
if (!(await this.files.projectFolders(projectId).catch(unavailable)).some((folder) => folder.kind === 'git'))
|
|
124
|
-
refuse('GIT_SYNC_FOLDER_MISSING', 'Git sync is not ready for this project. Wait for Connect to finish.');
|
|
125
|
-
if (!operation || !(0, remote_operation_types_1.stepStarted)(operation, 'git_flip')) {
|
|
126
|
-
const id = (0, file_sync_service_1.projectFolderId)(projectId, 'git');
|
|
127
|
-
const [home, vm] = await Promise.all([
|
|
128
|
-
this.files.folderConfiguration(id).catch(unavailable),
|
|
129
|
-
this.host.syncFolderConfiguration(remoteId, id).catch(unavailable),
|
|
130
|
-
]);
|
|
131
|
-
const owner = this.owners.get(projectId);
|
|
132
|
-
if (home.paused ||
|
|
133
|
-
vm.paused ||
|
|
134
|
-
home.type !== (owner === 'home' ? 'sendonly' : 'receiveonly') ||
|
|
135
|
-
vm.type !== (owner === 'vm' ? 'sendonly' : 'receiveonly'))
|
|
136
|
-
refuse('GIT_SYNC_NOT_READY', 'Git sync is not ready. Let file sync finish its setup, then run the command again.');
|
|
137
|
-
}
|
|
138
|
-
if (operation &&
|
|
139
|
-
!(0, remote_operation_types_1.stepStarted)(operation, 'git_flip') &&
|
|
140
|
-
this.owners.get(projectId) === operation.details.owner)
|
|
141
|
-
refuse('GIT_OWNER_CHANGED', 'The Git owner changed before this switch began. Cancel it and run the command again.');
|
|
142
|
-
}
|
|
143
|
-
assertCancellable(operation) {
|
|
144
|
-
if ((0, remote_operation_types_1.stepStarted)(operation, 'git_flip')) {
|
|
145
|
-
const details = operation.details;
|
|
146
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError('GIT_SWITCH_UNFINISHED', `Git control is already moving. Repeat \`${(0, git_owner_dto_1.gitOwnerCommand)(details.owner, details.force)}\` to finish.`, { operationId: operation.id });
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
retryFrom(operation) {
|
|
150
|
-
if ((0, remote_operation_types_1.stepStarted)(operation, 'git_flip'))
|
|
151
|
-
return null;
|
|
152
|
-
return operation.details.owner === 'home' ? 'vm_guard' : 'pc_guard';
|
|
153
|
-
}
|
|
154
|
-
resumeFrom(operation) {
|
|
155
|
-
return this.retryFrom(operation);
|
|
156
|
-
}
|
|
157
|
-
async interrupt(operationId) {
|
|
158
|
-
this.handoff.interrupt(operationId, 'The Git switch was cancelled.');
|
|
159
|
-
}
|
|
160
|
-
async rollback(operation) {
|
|
161
|
-
this.assertCancellable(operation);
|
|
162
|
-
const projectId = (0, remote_operation_types_1.requireProjectId)(operation);
|
|
163
|
-
const details = operation.details;
|
|
164
|
-
if (details.vmGuardInstalled)
|
|
165
|
-
await this.host.removeGitGuard(operation.remoteId, projectId);
|
|
166
|
-
if (details.pcGuardInstalled)
|
|
167
|
-
await this.guard.remove(projectId, { refreshIndex: false, failOnReadError: true });
|
|
168
|
-
if ((0, remote_operation_types_1.stepStarted)(operation, 'freeze_host'))
|
|
169
|
-
await this.host.thaw(operation.remoteId, projectId);
|
|
170
|
-
}
|
|
171
|
-
details(run) {
|
|
172
|
-
return run.details;
|
|
173
|
-
}
|
|
174
|
-
async vmGuard(run) {
|
|
175
|
-
await run.progress({ vmGuardInstalled: true }, { durable: true });
|
|
176
|
-
const { warning } = await this.host.installGitGuard(run.operation.remoteId, (0, remote_operation_types_1.requireProjectId)(run.operation), { homeName: (0, node_os_1.hostname)(), reason: 'pc-git' });
|
|
177
|
-
await run.progress({ vmGuardInstalled: warning === null, vmGuardWarning: warning }, { durable: true });
|
|
178
|
-
if (warning)
|
|
179
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError('GIT_SWITCH_GUARD_WARNING', warning);
|
|
180
|
-
}
|
|
181
|
-
async pcGuard(run) {
|
|
182
|
-
await run.progress({ pcGuardInstalled: true }, { durable: true });
|
|
183
|
-
const warning = await this.guard.install((0, remote_operation_types_1.requireProjectId)(run.operation), run.operation.remoteId);
|
|
184
|
-
await run.progress({ pcGuardInstalled: warning === null, guardWarning: warning }, { durable: true });
|
|
185
|
-
if (warning)
|
|
186
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError('GIT_SWITCH_GUARD_WARNING', warning);
|
|
187
|
-
}
|
|
188
|
-
async pcGuardRemove(run) {
|
|
189
|
-
const result = await this.guard.remove((0, remote_operation_types_1.requireProjectId)(run.operation), {
|
|
190
|
-
refreshIndex: true,
|
|
191
|
-
failOnReadError: true,
|
|
192
|
-
});
|
|
193
|
-
await run.progress({ pcGuardRemove: result }, { durable: true });
|
|
194
|
-
if (result.warning || result.indexRefreshed !== true)
|
|
195
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError('GIT_SWITCH_INDEX_REFRESH_FAILED', result.warning ?? 'The PC Git index was not rebuilt. Retry the switch.');
|
|
196
|
-
}
|
|
197
|
-
async vmGuardRemove(run) {
|
|
198
|
-
const result = await this.host.removeGitGuard(run.operation.remoteId, (0, remote_operation_types_1.requireProjectId)(run.operation), { refreshIndex: true });
|
|
199
|
-
await run.progress({ vmGuardRemove: result }, { durable: true });
|
|
200
|
-
if (result.warning || result.indexRefreshed !== true)
|
|
201
|
-
throw new remote_operation_errors_1.RemoteOperationStepRefusedError('GIT_SWITCH_INDEX_REFRESH_FAILED', result.warning ?? 'The VM Git index was not rebuilt. Retry the switch.');
|
|
202
|
-
}
|
|
203
|
-
};
|
|
204
|
-
exports.GitOwnerOperation = GitOwnerOperation;
|
|
205
|
-
exports.GitOwnerOperation = GitOwnerOperation = __decorate([
|
|
206
|
-
(0, common_1.Injectable)(),
|
|
207
|
-
__param(0, (0, common_1.Inject)(remote_health_port_1.REMOTE_HEALTH_PORT)),
|
|
208
|
-
__metadata("design:paramtypes", [Object, remote_bindings_service_1.RemoteBindingsService,
|
|
209
|
-
remote_host_client_1.RemoteHostClient,
|
|
210
|
-
file_sync_service_1.FileSyncService,
|
|
211
|
-
file_sync_handoff_1.FileSyncHandoff,
|
|
212
|
-
remote_live_sync_service_1.RemoteLiveSyncService,
|
|
213
|
-
git_owner_store_1.GitOwnerStore,
|
|
214
|
-
home_git_guard_service_1.HomeGitGuardService])
|
|
215
|
-
], GitOwnerOperation);
|
|
216
|
-
//# sourceMappingURL=git-owner.operation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-owner.operation.js","sourceRoot":"","sources":["../../../../src/modules/remotes/operations/git-owner.operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import type { UnifiedSession, UnifiedMetrics } from '../dtos/unified-session.types';
|
|
2
|
-
import type { PricingServiceInterface } from '../services/pricing.interface';
|
|
3
|
-
export interface OpencodeFreshness {
|
|
4
|
-
count: number;
|
|
5
|
-
maxUpdated: number;
|
|
6
|
-
}
|
|
7
|
-
export interface OpencodeSessionRead {
|
|
8
|
-
session: UnifiedSession;
|
|
9
|
-
sizeBytes: number;
|
|
10
|
-
freshness: OpencodeFreshness;
|
|
11
|
-
}
|
|
12
|
-
export interface OpencodeSummaryRead {
|
|
13
|
-
metrics: UnifiedMetrics;
|
|
14
|
-
}
|
|
15
|
-
export interface OpencodeSessionCandidate {
|
|
16
|
-
providerSessionId: string;
|
|
17
|
-
directory: string;
|
|
18
|
-
timeCreated: number;
|
|
19
|
-
timeUpdated: number;
|
|
20
|
-
}
|
|
21
|
-
export interface OpencodeReaderOptions {
|
|
22
|
-
maxToolOutputChars?: number;
|
|
23
|
-
busyTimeoutMs?: number;
|
|
24
|
-
openRetries?: number;
|
|
25
|
-
}
|
|
26
|
-
interface SessionRow {
|
|
27
|
-
id: string;
|
|
28
|
-
title: string | null;
|
|
29
|
-
model: string | null;
|
|
30
|
-
agent: string | null;
|
|
31
|
-
parent_id: string | null;
|
|
32
|
-
time_created: number;
|
|
33
|
-
time_updated: number;
|
|
34
|
-
}
|
|
35
|
-
interface MessageRow {
|
|
36
|
-
id: string;
|
|
37
|
-
time_created: number;
|
|
38
|
-
time_updated: number;
|
|
39
|
-
data: string;
|
|
40
|
-
}
|
|
41
|
-
interface PartRow {
|
|
42
|
-
id: string;
|
|
43
|
-
message_id: string;
|
|
44
|
-
time_updated: number;
|
|
45
|
-
data: string;
|
|
46
|
-
}
|
|
47
|
-
export declare class OpencodeSqliteReader {
|
|
48
|
-
private readonly pricing?;
|
|
49
|
-
private readonly maxToolOutputChars;
|
|
50
|
-
private readonly busyTimeoutMs;
|
|
51
|
-
private readonly openRetries;
|
|
52
|
-
constructor(pricing?: PricingServiceInterface | undefined, options?: OpencodeReaderOptions);
|
|
53
|
-
readSession(dbPath: string, providerSessionId: string): OpencodeSessionRead;
|
|
54
|
-
readSummary(dbPath: string, providerSessionId: string): OpencodeSummaryRead;
|
|
55
|
-
getFreshness(dbPath: string, providerSessionId: string): OpencodeFreshness;
|
|
56
|
-
findSessionCandidates(dbPath: string, params: {
|
|
57
|
-
directory: string;
|
|
58
|
-
startedAtMs: number;
|
|
59
|
-
windowMs: number;
|
|
60
|
-
}): OpencodeSessionCandidate[];
|
|
61
|
-
private withDb;
|
|
62
|
-
private isTransientLock;
|
|
63
|
-
private wrapOpenError;
|
|
64
|
-
private sleep;
|
|
65
|
-
private assertSchema;
|
|
66
|
-
private assertColumns;
|
|
67
|
-
}
|
|
68
|
-
interface NormalizeOptions {
|
|
69
|
-
pricing?: PricingServiceInterface;
|
|
70
|
-
maxToolOutputChars?: number;
|
|
71
|
-
}
|
|
72
|
-
export declare function normalizeOpencodeSession(dbPath: string, sessionRow: SessionRow, messageRows: MessageRow[], partRows: PartRow[], options?: NormalizeOptions): OpencodeSessionRead;
|
|
73
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-sqlite.reader.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/readers/opencode-sqlite.reader.ts"],"names":[],"mappings":"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"}
|