devchain-cli 0.12.4 → 0.13.0
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/cli.js +63 -104
- package/dist/drizzle/0062_provider_probe_proofs.sql +6 -0
- package/dist/drizzle/0063_session_name.sql +1 -0
- package/dist/drizzle/meta/0062_snapshot.json +5208 -0
- package/dist/drizzle/meta/0063_snapshot.json +5215 -0
- package/dist/drizzle/meta/_journal.json +14 -0
- package/dist/node_modules/@devchain/shared/host-resolver.d.ts +18 -0
- package/dist/node_modules/@devchain/shared/host-resolver.d.ts.map +1 -0
- package/dist/node_modules/@devchain/shared/host-resolver.js +69 -0
- package/dist/node_modules/@devchain/shared/host-resolver.js.map +1 -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/package.json +2 -0
- package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
- package/dist/server/app.main.module.js +12 -6
- package/dist/server/app.main.module.js.map +1 -1
- package/dist/server/app.normal.module.js +14 -6
- package/dist/server/app.normal.module.js.map +1 -1
- package/dist/server/common/config/env.config.d.ts +7 -0
- package/dist/server/common/config/env.config.js +11 -0
- package/dist/server/common/config/env.config.js.map +1 -1
- package/dist/server/common/config/host-helpers.d.ts +3 -3
- package/dist/server/common/config/host-helpers.js +5 -28
- package/dist/server/common/config/host-helpers.js.map +1 -1
- package/dist/server/common/errors/service-unavailable.error.d.ts +4 -0
- package/dist/server/common/errors/service-unavailable.error.js +12 -0
- package/dist/server/common/errors/service-unavailable.error.js.map +1 -0
- package/dist/server/common/process-identity.d.ts +1 -0
- package/dist/server/common/process-identity.js +6 -0
- package/dist/server/common/process-identity.js.map +1 -0
- package/dist/server/common/resolve-binary.d.ts +2 -1
- package/dist/server/common/resolve-binary.js +7 -6
- package/dist/server/common/resolve-binary.js.map +1 -1
- package/dist/server/common/template/prompt-render-context.d.ts +12 -0
- package/dist/server/common/template/prompt-render-context.js +37 -0
- package/dist/server/common/template/prompt-render-context.js.map +1 -0
- package/dist/server/common/test/app-bootstrap.helper.d.ts +13 -0
- package/dist/server/common/test/app-bootstrap.helper.js +184 -0
- package/dist/server/common/test/app-bootstrap.helper.js.map +1 -0
- package/dist/server/main.js +2 -2
- package/dist/server/main.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.d.ts +5 -0
- package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js +33 -0
- package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.d.ts +6 -0
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js +22 -0
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.d.ts +2 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js +45 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.d.ts +21 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +107 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/dtos/delivery.types.d.ts +32 -0
- package/dist/server/modules/agent-message-delivery/dtos/delivery.types.js +3 -0
- package/dist/server/modules/agent-message-delivery/dtos/delivery.types.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-formatter.d.ts +4 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-formatter.js +7 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-formatter.js.map +1 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.d.ts +8 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.js +7 -0
- package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.js.map +1 -0
- package/dist/server/modules/{events/subscribers/chat-message-broadcaster.subscriber.d.ts → agent-message-delivery/subscribers/chat-message-delivery.subscriber.d.ts} +6 -4
- package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js +63 -0
- package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js.map +1 -0
- package/dist/server/modules/agents/agents.module.js +2 -2
- package/dist/server/modules/agents/agents.module.js.map +1 -1
- package/dist/server/modules/agents/controllers/agents.controller.d.ts +3 -1
- package/dist/server/modules/agents/controllers/agents.controller.js +6 -5
- package/dist/server/modules/agents/controllers/agents.controller.js.map +1 -1
- package/dist/server/modules/chat/chat.module.js +14 -4
- package/dist/server/modules/chat/chat.module.js.map +1 -1
- package/dist/server/modules/chat/services/chat-session-invite.service.d.ts +16 -0
- package/dist/server/modules/chat/services/chat-session-invite.service.js +194 -0
- package/dist/server/modules/chat/services/chat-session-invite.service.js.map +1 -0
- package/dist/server/modules/chat/services/chat-settings.service.js +2 -1
- package/dist/server/modules/chat/services/chat-settings.service.js.map +1 -1
- package/dist/server/modules/chat/services/chat.service.d.ts +6 -4
- package/dist/server/modules/chat/services/chat.service.js +64 -105
- package/dist/server/modules/chat/services/chat.service.js.map +1 -1
- package/dist/server/modules/cloud/cloud.module.d.ts +2 -0
- package/dist/server/modules/cloud/cloud.module.js +54 -0
- package/dist/server/modules/cloud/cloud.module.js.map +1 -0
- package/dist/server/modules/cloud/controllers/activity-proxy.controller.d.ts +6 -0
- package/dist/server/modules/cloud/controllers/activity-proxy.controller.js +39 -0
- package/dist/server/modules/cloud/controllers/activity-proxy.controller.js.map +1 -0
- package/dist/server/modules/cloud/controllers/auth-callback.controller.d.ts +11 -0
- package/dist/server/modules/cloud/controllers/auth-callback.controller.js +72 -0
- package/dist/server/modules/cloud/controllers/auth-callback.controller.js.map +1 -0
- package/dist/server/modules/cloud/controllers/devices-proxy.controller.d.ts +9 -0
- package/dist/server/modules/cloud/controllers/devices-proxy.controller.js +75 -0
- package/dist/server/modules/cloud/controllers/devices-proxy.controller.js.map +1 -0
- package/dist/server/modules/cloud/controllers/egress-config.controller.d.ts +12 -0
- package/dist/server/modules/cloud/controllers/egress-config.controller.js +66 -0
- package/dist/server/modules/cloud/controllers/egress-config.controller.js.map +1 -0
- package/dist/server/modules/cloud/controllers/preferences-proxy.controller.d.ts +30 -0
- package/dist/server/modules/cloud/controllers/preferences-proxy.controller.js +159 -0
- package/dist/server/modules/cloud/controllers/preferences-proxy.controller.js.map +1 -0
- package/dist/server/modules/cloud/controllers/qr-initiate-proxy.controller.d.ts +11 -0
- package/dist/server/modules/cloud/controllers/qr-initiate-proxy.controller.js +89 -0
- package/dist/server/modules/cloud/controllers/qr-initiate-proxy.controller.js.map +1 -0
- package/dist/server/modules/cloud/dtos/cloud-tokens.dto.d.ts +20 -0
- package/dist/server/modules/cloud/dtos/cloud-tokens.dto.js +12 -0
- package/dist/server/modules/cloud/dtos/cloud-tokens.dto.js.map +1 -0
- package/dist/server/modules/cloud/services/cloud-egress-bridge.service.d.ts +24 -0
- package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js +111 -0
- package/dist/server/modules/cloud/services/cloud-egress-bridge.service.js.map +1 -0
- package/dist/server/modules/cloud/services/cloud-session-manager.service.d.ts +27 -0
- package/dist/server/modules/cloud/services/cloud-session-manager.service.js +257 -0
- package/dist/server/modules/cloud/services/cloud-session-manager.service.js.map +1 -0
- package/dist/server/modules/cloud/services/egress-queue.service.d.ts +20 -0
- package/dist/server/modules/cloud/services/egress-queue.service.js +136 -0
- package/dist/server/modules/cloud/services/egress-queue.service.js.map +1 -0
- package/dist/server/modules/cloud/services/encrypted-token-store.service.d.ts +15 -0
- package/dist/server/modules/cloud/services/encrypted-token-store.service.js +131 -0
- package/dist/server/modules/cloud/services/encrypted-token-store.service.js.map +1 -0
- package/dist/server/modules/cloud/services/event-mapper.service.d.ts +42 -0
- package/dist/server/modules/cloud/services/event-mapper.service.js +44 -0
- package/dist/server/modules/cloud/services/event-mapper.service.js.map +1 -0
- package/dist/server/modules/cloud/services/project-activity-reporter.service.d.ts +21 -0
- package/dist/server/modules/cloud/services/project-activity-reporter.service.js +138 -0
- package/dist/server/modules/cloud/services/project-activity-reporter.service.js.map +1 -0
- package/dist/server/modules/cloud/services/project-egress-config.service.d.ts +13 -0
- package/dist/server/modules/cloud/services/project-egress-config.service.js +87 -0
- package/dist/server/modules/cloud/services/project-egress-config.service.js.map +1 -0
- package/dist/server/modules/cloud/services/refresh-gate.service.d.ts +9 -0
- package/dist/server/modules/cloud/services/refresh-gate.service.js +63 -0
- package/dist/server/modules/cloud/services/refresh-gate.service.js.map +1 -0
- package/dist/server/modules/cloud/types/index.d.ts +14 -0
- package/dist/server/modules/cloud/types/index.js +3 -0
- package/dist/server/modules/cloud/types/index.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.d.ts +2 -0
- package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js +25 -0
- package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.d.ts +39 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js +319 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.d.ts +44 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +456 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-keypair.service.d.ts +22 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-keypair.service.js +146 -0
- package/dist/server/modules/cloud-tunnel/services/tunnel-keypair.service.js.map +1 -0
- package/dist/server/modules/codebase-overview-analyzer/codebase-overview-analyzer.module.js +2 -1
- package/dist/server/modules/codebase-overview-analyzer/codebase-overview-analyzer.module.js.map +1 -1
- package/dist/server/modules/codebase-overview-analyzer/services/codebase-overview-analyzer.service.d.ts +3 -1
- package/dist/server/modules/codebase-overview-analyzer/services/codebase-overview-analyzer.service.js +14 -20
- package/dist/server/modules/codebase-overview-analyzer/services/codebase-overview-analyzer.service.js.map +1 -1
- package/dist/server/modules/core/controllers/preflight.controller.d.ts +0 -4
- package/dist/server/modules/core/controllers/preflight.controller.js +0 -17
- package/dist/server/modules/core/controllers/preflight.controller.js.map +1 -1
- package/dist/server/modules/core/controllers/runtime.controller.d.ts +4 -0
- package/dist/server/modules/core/controllers/runtime.controller.js +5 -0
- package/dist/server/modules/core/controllers/runtime.controller.js.map +1 -1
- package/dist/server/modules/core/core-normal-health.module.js +2 -0
- package/dist/server/modules/core/core-normal-health.module.js.map +1 -1
- package/dist/server/modules/core/core-normal.module.js +12 -6
- package/dist/server/modules/core/core-normal.module.js.map +1 -1
- package/dist/server/modules/core/services/gemini-trusted-folders.module.d.ts +2 -0
- package/dist/server/modules/core/services/gemini-trusted-folders.module.js +21 -0
- package/dist/server/modules/core/services/gemini-trusted-folders.module.js.map +1 -0
- package/dist/server/modules/core/services/normal-readiness-checker.service.d.ts +3 -1
- package/dist/server/modules/core/services/normal-readiness-checker.service.js +9 -11
- package/dist/server/modules/core/services/normal-readiness-checker.service.js.map +1 -1
- package/dist/server/modules/core/services/preflight.service.d.ts +4 -3
- package/dist/server/modules/core/services/preflight.service.js +21 -17
- package/dist/server/modules/core/services/preflight.service.js.map +1 -1
- package/dist/server/modules/epics/controllers/epic-comments.controller.d.ts +3 -1
- package/dist/server/modules/epics/controllers/epic-comments.controller.js +5 -7
- package/dist/server/modules/epics/controllers/epic-comments.controller.js.map +1 -1
- package/dist/server/modules/epics/epics.module.js +13 -4
- package/dist/server/modules/epics/epics.module.js.map +1 -1
- package/dist/server/modules/epics/services/epics.service.d.ts +21 -7
- package/dist/server/modules/epics/services/epics.service.js +176 -50
- package/dist/server/modules/epics/services/epics.service.js.map +1 -1
- package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.d.ts +25 -0
- package/dist/server/modules/{events → epics}/subscribers/epic-assignment-notifier.subscriber.js +47 -105
- package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.js.map +1 -0
- package/dist/server/modules/epics/subscribers/sub-epic-created-notifier.subscriber.d.ts +15 -0
- package/dist/server/modules/{events → epics}/subscribers/sub-epic-created-notifier.subscriber.js +43 -52
- package/dist/server/modules/epics/subscribers/sub-epic-created-notifier.subscriber.js.map +1 -0
- package/dist/server/modules/events/catalog/broadcast-metadata.d.ts +8 -0
- package/dist/server/modules/events/catalog/broadcast-metadata.js +3 -0
- package/dist/server/modules/events/catalog/broadcast-metadata.js.map +1 -0
- package/dist/server/modules/events/catalog/broadcast-registry.d.ts +4 -0
- package/dist/server/modules/events/catalog/broadcast-registry.js +335 -0
- package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -0
- package/dist/server/modules/events/catalog/chat.message.read.d.ts +21 -0
- package/dist/server/modules/events/catalog/chat.message.read.js +14 -0
- package/dist/server/modules/events/catalog/chat.message.read.js.map +1 -0
- package/dist/server/modules/events/catalog/epic.comment.created.d.ts +57 -0
- package/dist/server/modules/events/catalog/epic.comment.created.js +28 -0
- package/dist/server/modules/events/catalog/epic.comment.created.js.map +1 -0
- package/dist/server/modules/events/catalog/epic.created.d.ts +18 -0
- package/dist/server/modules/events/catalog/epic.created.js +6 -0
- package/dist/server/modules/events/catalog/epic.created.js.map +1 -1
- package/dist/server/modules/events/catalog/epic.deleted.d.ts +39 -0
- package/dist/server/modules/events/catalog/epic.deleted.js +22 -0
- package/dist/server/modules/events/catalog/epic.deleted.js.map +1 -0
- package/dist/server/modules/events/catalog/epic.updated.d.ts +6 -0
- package/dist/server/modules/events/catalog/epic.updated.js +2 -0
- package/dist/server/modules/events/catalog/epic.updated.js.map +1 -1
- package/dist/server/modules/events/catalog/guest.unregistered.d.ts +2 -2
- package/dist/server/modules/events/catalog/index.d.ts +272 -2
- package/dist/server/modules/events/catalog/index.js +18 -0
- package/dist/server/modules/events/catalog/index.js.map +1 -1
- package/dist/server/modules/events/catalog/review.comment.created.d.ts +6 -0
- package/dist/server/modules/events/catalog/review.comment.created.js +2 -0
- package/dist/server/modules/events/catalog/review.comment.created.js.map +1 -1
- package/dist/server/modules/events/catalog/session.activity.changed.d.ts +21 -0
- package/dist/server/modules/events/catalog/session.activity.changed.js +14 -0
- package/dist/server/modules/events/catalog/session.activity.changed.js.map +1 -0
- package/dist/server/modules/events/catalog/session.cloud-connected.d.ts +12 -0
- package/dist/server/modules/events/catalog/session.cloud-connected.js +11 -0
- package/dist/server/modules/events/catalog/session.cloud-connected.js.map +1 -0
- package/dist/server/modules/events/catalog/session.cloud-disconnected.d.ts +12 -0
- package/dist/server/modules/events/catalog/session.cloud-disconnected.js +11 -0
- package/dist/server/modules/events/catalog/session.cloud-disconnected.js.map +1 -0
- package/dist/server/modules/events/catalog/session.presence.changed.d.ts +18 -0
- package/dist/server/modules/events/catalog/session.presence.changed.js +13 -0
- package/dist/server/modules/events/catalog/session.presence.changed.js.map +1 -0
- package/dist/server/modules/events/catalog/session.provider-session-id.discovered.d.ts +18 -0
- package/dist/server/modules/events/catalog/session.provider-session-id.discovered.js +13 -0
- package/dist/server/modules/events/catalog/session.provider-session-id.discovered.js.map +1 -0
- package/dist/server/modules/events/catalog/session.recommendation.d.ts +30 -0
- package/dist/server/modules/events/catalog/session.recommendation.js +17 -0
- package/dist/server/modules/events/catalog/session.recommendation.js.map +1 -0
- package/dist/server/modules/events/catalog/session.restored.d.ts +3 -0
- package/dist/server/modules/events/catalog/session.restored.js +1 -0
- package/dist/server/modules/events/catalog/session.restored.js.map +1 -1
- package/dist/server/modules/events/catalog/session.transcript.updated.d.ts +21 -0
- package/dist/server/modules/events/catalog/session.transcript.updated.js +7 -0
- package/dist/server/modules/events/catalog/session.transcript.updated.js.map +1 -1
- package/dist/server/modules/events/catalog/team.config.updated.d.ts +9 -0
- package/dist/server/modules/events/catalog/team.config.updated.js +3 -0
- package/dist/server/modules/events/catalog/team.config.updated.js.map +1 -1
- package/dist/server/modules/events/catalog/team.member.added.d.ts +12 -0
- package/dist/server/modules/events/catalog/team.member.added.js +4 -0
- package/dist/server/modules/events/catalog/team.member.added.js.map +1 -1
- package/dist/server/modules/events/catalog/team.member.removed.d.ts +12 -0
- package/dist/server/modules/events/catalog/team.member.removed.js +4 -0
- package/dist/server/modules/events/catalog/team.member.removed.js.map +1 -1
- package/dist/server/modules/events/events-core.module.d.ts +2 -0
- package/dist/server/modules/events/{events-domain.module.js → events-core.module.js} +13 -24
- package/dist/server/modules/events/events-core.module.js.map +1 -0
- package/dist/server/modules/events/events.module.js +3 -4
- package/dist/server/modules/events/events.module.js.map +1 -1
- package/dist/server/modules/events/index.d.ts +2 -1
- package/dist/server/modules/events/index.js +2 -1
- package/dist/server/modules/events/index.js.map +1 -1
- package/dist/server/modules/events/services/catalog-broadcaster.service.d.ts +9 -0
- package/dist/server/modules/events/services/catalog-broadcaster.service.js +56 -0
- package/dist/server/modules/events/services/catalog-broadcaster.service.js.map +1 -0
- package/dist/server/modules/events/services/events-stream.service.d.ts +3 -3
- package/dist/server/modules/events/services/events-stream.service.js +6 -6
- package/dist/server/modules/events/services/events-stream.service.js.map +1 -1
- package/dist/server/modules/git/git.module.js +2 -1
- package/dist/server/modules/git/git.module.js.map +1 -1
- package/dist/server/modules/git/services/git.service.d.ts +3 -1
- package/dist/server/modules/git/services/git.service.js +17 -19
- package/dist/server/modules/git/services/git.service.js.map +1 -1
- package/dist/server/modules/guests/guests.module.js +2 -2
- package/dist/server/modules/guests/guests.module.js.map +1 -1
- package/dist/server/modules/guests/services/guest-health.service.d.ts +3 -3
- package/dist/server/modules/guests/services/guest-health.service.js +7 -7
- package/dist/server/modules/guests/services/guest-health.service.js.map +1 -1
- package/dist/server/modules/guests/services/guests.service.d.ts +3 -3
- package/dist/server/modules/guests/services/guests.service.js +7 -7
- package/dist/server/modules/guests/services/guests.service.js.map +1 -1
- package/dist/server/modules/hooks/hooks.module.js +2 -2
- package/dist/server/modules/hooks/hooks.module.js.map +1 -1
- package/dist/server/modules/mcp/controllers/mcp-http.controller.js +2 -2
- package/dist/server/modules/mcp/controllers/mcp-http.controller.js.map +1 -1
- package/dist/server/modules/mcp/controllers/mcp-sdk.controller.js +2 -2
- package/dist/server/modules/mcp/controllers/mcp-sdk.controller.js.map +1 -1
- package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +40 -27
- package/dist/server/modules/mcp/dtos/mcp.dto.js +20 -4
- package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
- package/dist/server/modules/mcp/mcp-full.module.d.ts +2 -0
- package/dist/server/modules/mcp/{mcp.module.js → mcp-full.module.js} +15 -21
- package/dist/server/modules/mcp/mcp-full.module.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/activity-context.d.ts +6 -0
- package/dist/server/modules/mcp/services/handlers/activity-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/activity-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/activity-tools.d.ts +3 -3
- package/dist/server/modules/mcp/services/handlers/activity-tools.js +87 -101
- package/dist/server/modules/mcp/services/handlers/activity-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/agent-context.d.ts +16 -0
- package/dist/server/modules/mcp/services/handlers/agent-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/agent-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/agent-tools.d.ts +5 -0
- package/dist/server/modules/mcp/services/handlers/agent-tools.js +194 -0
- package/dist/server/modules/mcp/services/handlers/agent-tools.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/chat-context.d.ts +17 -0
- package/dist/server/modules/mcp/services/handlers/chat-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/chat-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/chat-tools/recipient-resolution.d.ts +13 -0
- package/dist/server/modules/mcp/services/handlers/chat-tools/recipient-resolution.js +40 -0
- package/dist/server/modules/mcp/services/handlers/chat-tools/recipient-resolution.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/chat-tools.d.ts +5 -5
- package/dist/server/modules/mcp/services/handlers/chat-tools.js +149 -306
- package/dist/server/modules/mcp/services/handlers/chat-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/document-context.d.ts +8 -0
- package/dist/server/modules/mcp/services/handlers/document-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/document-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/document-tools.d.ts +5 -5
- package/dist/server/modules/mcp/services/handlers/document-tools.js +20 -54
- package/dist/server/modules/mcp/services/handlers/document-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/epic-context.d.ts +9 -0
- package/dist/server/modules/mcp/services/handlers/epic-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/epic-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/epic-tools.d.ts +8 -10
- package/dist/server/modules/mcp/services/handlers/epic-tools.js +186 -397
- package/dist/server/modules/mcp/services/handlers/epic-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/null-adapter.d.ts +1 -0
- package/dist/server/modules/mcp/services/handlers/null-adapter.js +20 -0
- package/dist/server/modules/mcp/services/handlers/null-adapter.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/prompt-context.d.ts +9 -0
- package/dist/server/modules/mcp/services/handlers/prompt-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/prompt-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/prompt-tools.d.ts +3 -3
- package/dist/server/modules/mcp/services/handlers/prompt-tools.js +22 -51
- package/dist/server/modules/mcp/services/handlers/prompt-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/record-context.d.ts +5 -0
- package/dist/server/modules/mcp/services/handlers/record-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/record-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/record-tools.d.ts +7 -7
- package/dist/server/modules/mcp/services/handlers/record-tools.js +6 -7
- package/dist/server/modules/mcp/services/handlers/record-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/review-context.d.ts +11 -0
- package/dist/server/modules/mcp/services/handlers/review-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/review-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/review-tools.d.ts +7 -7
- package/dist/server/modules/mcp/services/handlers/review-tools.js +164 -362
- package/dist/server/modules/mcp/services/handlers/review-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/session-context.d.ts +9 -0
- package/dist/server/modules/mcp/services/handlers/session-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/session-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/session-tools.d.ts +3 -3
- package/dist/server/modules/mcp/services/handlers/session-tools.js +21 -23
- package/dist/server/modules/mcp/services/handlers/session-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/skill-context.d.ts +6 -0
- package/dist/server/modules/mcp/services/handlers/skill-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/skill-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/skill-tools.d.ts +3 -3
- package/dist/server/modules/mcp/services/handlers/skill-tools.js +55 -75
- package/dist/server/modules/mcp/services/handlers/skill-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/teams-context.d.ts +9 -0
- package/dist/server/modules/mcp/services/handlers/teams-context.js +3 -0
- package/dist/server/modules/mcp/services/handlers/teams-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/teams-tools.d.ts +7 -7
- package/dist/server/modules/mcp/services/handlers/teams-tools.js +260 -267
- package/dist/server/modules/mcp/services/handlers/teams-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/types.d.ts +2 -35
- package/dist/server/modules/mcp/services/instructions-resolver.d.ts +2 -2
- package/dist/server/modules/mcp/services/instructions-resolver.js.map +1 -1
- package/dist/server/modules/mcp/services/mcp.service.d.ts +21 -8
- package/dist/server/modules/mcp/services/mcp.service.js +208 -109
- package/dist/server/modules/mcp/services/mcp.service.js.map +1 -1
- package/dist/server/modules/mcp/services/utils/agent-name-resolver.d.ts +2 -0
- package/dist/server/modules/mcp/services/utils/agent-name-resolver.js +27 -0
- package/dist/server/modules/mcp/services/utils/agent-name-resolver.js.map +1 -0
- package/dist/server/modules/mcp/services/utils/redact.d.ts +2 -0
- package/dist/server/modules/mcp/services/utils/redact.js +19 -0
- package/dist/server/modules/mcp/services/utils/redact.js.map +1 -0
- package/dist/server/modules/mcp/services/utils/require-project.d.ts +5 -0
- package/dist/server/modules/mcp/services/utils/require-project.js +20 -0
- package/dist/server/modules/mcp/services/utils/require-project.js.map +1 -0
- package/dist/server/modules/mcp/services/utils/resolve-epic-id.d.ts +2 -2
- package/dist/server/modules/mcp/services/utils/resolve-epic-id.js.map +1 -1
- package/dist/server/modules/mcp/services/utils/resource-resolver.d.ts +2 -2
- package/dist/server/modules/mcp/services/utils/resource-resolver.js.map +1 -1
- package/dist/server/modules/mcp/services/utils/session-context-helpers.d.ts +12 -0
- package/dist/server/modules/mcp/services/utils/session-context-helpers.js +34 -0
- package/dist/server/modules/mcp/services/utils/session-context-helpers.js.map +1 -0
- package/dist/server/modules/mcp/services/utils/session-context-resolver.d.ts +4 -4
- package/dist/server/modules/mcp/services/utils/session-context-resolver.js +9 -13
- package/dist/server/modules/mcp/services/utils/session-context-resolver.js.map +1 -1
- package/dist/server/modules/mcp/standalone-mcp.module.d.ts +2 -0
- package/dist/server/modules/mcp/standalone-mcp.module.js +36 -0
- package/dist/server/modules/mcp/standalone-mcp.module.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js +9 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js +49 -0
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.bindings.js +10 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.metadata.js +65 -0
- package/dist/server/modules/mcp/tool-descriptors/agent.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js +11 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js +89 -0
- package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/document.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/document.bindings.js +11 -0
- package/dist/server/modules/mcp/tool-descriptors/document.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/document.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/document.metadata.js +96 -0
- package/dist/server/modules/mcp/tool-descriptors/document.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.bindings.js +17 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js +229 -0
- package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/index.d.ts +4 -0
- package/dist/server/modules/mcp/tool-descriptors/index.js +52 -0
- package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.js +9 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.metadata.js +43 -0
- package/dist/server/modules/mcp/tool-descriptors/prompt.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/record.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/record.bindings.js +13 -0
- package/dist/server/modules/mcp/tool-descriptors/record.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/record.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/record.metadata.js +106 -0
- package/dist/server/modules/mcp/tool-descriptors/record.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/review.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/review.bindings.js +13 -0
- package/dist/server/modules/mcp/tool-descriptors/review.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/review.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/review.metadata.js +158 -0
- package/dist/server/modules/mcp/tool-descriptors/review.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/session.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/session.bindings.js +9 -0
- package/dist/server/modules/mcp/tool-descriptors/session.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/session.metadata.d.ts +4 -0
- package/dist/server/modules/mcp/tool-descriptors/session.metadata.js +43 -0
- package/dist/server/modules/mcp/tool-descriptors/session.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.bindings.js +9 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.metadata.js +47 -0
- package/dist/server/modules/mcp/tool-descriptors/skill.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/team.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/team.bindings.js +13 -0
- package/dist/server/modules/mcp/tool-descriptors/team.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/team.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/team.metadata.js +142 -0
- package/dist/server/modules/mcp/tool-descriptors/team.metadata.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/types.d.ts +9 -0
- package/dist/server/modules/mcp/tool-descriptors/types.js +3 -0
- package/dist/server/modules/mcp/tool-descriptors/types.js.map +1 -0
- package/dist/server/modules/mcp/utils/param-suggestion.js +4 -3
- package/dist/server/modules/mcp/utils/param-suggestion.js.map +1 -1
- package/dist/server/modules/orchestrator/docker/docker.module.js +2 -0
- package/dist/server/modules/orchestrator/docker/docker.module.js.map +1 -1
- package/dist/server/modules/orchestrator/docker/services/docker.service.d.ts +4 -1
- package/dist/server/modules/orchestrator/docker/services/docker.service.js +20 -14
- package/dist/server/modules/orchestrator/docker/services/docker.service.js.map +1 -1
- package/dist/server/modules/orchestrator/git/git.module.js +2 -1
- package/dist/server/modules/orchestrator/git/git.module.js.map +1 -1
- package/dist/server/modules/orchestrator/git/services/git-worktree.service.d.ts +4 -2
- package/dist/server/modules/orchestrator/git/services/git-worktree.service.js +19 -26
- package/dist/server/modules/orchestrator/git/services/git-worktree.service.js.map +1 -1
- package/dist/server/modules/orchestrator/proxy/services/orchestrator-proxy.service.js.map +1 -1
- package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.d.ts +3 -2
- package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js +31 -53
- package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js.map +1 -1
- package/dist/server/modules/orchestrator/worktrees/worktrees.module.js +4 -4
- package/dist/server/modules/orchestrator/worktrees/worktrees.module.js.map +1 -1
- package/dist/server/modules/profiles/controllers/provider-configs.controller.d.ts +3 -1
- package/dist/server/modules/profiles/controllers/provider-configs.controller.js +5 -3
- package/dist/server/modules/profiles/controllers/provider-configs.controller.js.map +1 -1
- package/dist/server/modules/profiles/profiles.module.js +4 -1
- package/dist/server/modules/profiles/profiles.module.js.map +1 -1
- package/dist/server/modules/profiles/services/provider-configs.service.d.ts +13 -0
- package/dist/server/modules/profiles/services/provider-configs.service.js +88 -0
- package/dist/server/modules/profiles/services/provider-configs.service.js.map +1 -0
- package/dist/server/modules/projects/controllers/projects.controller.d.ts +20 -1
- package/dist/server/modules/projects/controllers/projects.controller.js +132 -2
- package/dist/server/modules/projects/controllers/projects.controller.js.map +1 -1
- package/dist/server/modules/projects/dtos/export.dto.d.ts +6 -6
- package/dist/server/modules/projects/dtos/template-upgrade.dto.d.ts +20 -0
- package/dist/server/modules/projects/dtos/template-upgrade.dto.js +90 -0
- package/dist/server/modules/projects/dtos/template-upgrade.dto.js.map +1 -0
- package/dist/server/modules/projects/projects.module.js +21 -2
- package/dist/server/modules/projects/projects.module.js.map +1 -1
- package/dist/server/modules/projects/services/project-provider-provisioning.service.d.ts +1 -1
- package/dist/server/modules/projects/services/project-provider-provisioning.service.js +1 -1
- package/dist/server/modules/projects/services/project-provider-provisioning.service.js.map +1 -1
- package/dist/server/modules/projects/services/project-registry-import.service.d.ts +38 -0
- package/dist/server/modules/projects/services/project-registry-import.service.js +140 -0
- package/dist/server/modules/projects/services/project-registry-import.service.js.map +1 -0
- package/dist/server/modules/{registry/services/template-upgrade.service.d.ts → projects/services/project-template-upgrade.service.d.ts} +6 -8
- package/dist/server/modules/{registry/services/template-upgrade.service.js → projects/services/project-template-upgrade.service.js} +14 -21
- package/dist/server/modules/projects/services/project-template-upgrade.service.js.map +1 -0
- package/dist/server/modules/projects/services/projects.service.d.ts +3 -1
- package/dist/server/modules/projects/services/projects.service.js +7 -4
- package/dist/server/modules/projects/services/projects.service.js.map +1 -1
- package/dist/server/modules/providers/adapters/capabilities/context-window.capability.d.ts +20 -0
- package/dist/server/modules/providers/adapters/capabilities/context-window.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/context-window.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/hook.capability.d.ts +13 -0
- package/dist/server/modules/providers/adapters/capabilities/hook.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/hook.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/index.d.ts +2 -0
- package/dist/server/modules/providers/adapters/capabilities/index.js +12 -0
- package/dist/server/modules/providers/adapters/capabilities/index.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/project-mcp-settings.capability.d.ts +3 -0
- package/dist/server/modules/providers/adapters/capabilities/project-mcp-settings.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/project-mcp-settings.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/project-provisioning.capability.d.ts +14 -0
- package/dist/server/modules/providers/adapters/capabilities/project-provisioning.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/project-provisioning.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/transcript-discovery.capability.d.ts +6 -0
- package/dist/server/modules/providers/adapters/capabilities/transcript-discovery.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/transcript-discovery.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.d.ts +35 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js +33 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js.map +1 -0
- package/dist/server/modules/providers/adapters/claude.adapter.d.ts +23 -2
- package/dist/server/modules/providers/adapters/claude.adapter.js +134 -0
- package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/codex.adapter.d.ts +7 -2
- package/dist/server/modules/providers/adapters/codex.adapter.js +4 -0
- package/dist/server/modules/providers/adapters/codex.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/gemini.adapter.d.ts +11 -2
- package/dist/server/modules/providers/adapters/gemini.adapter.js +47 -2
- package/dist/server/modules/providers/adapters/gemini.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/index.d.ts +1 -0
- package/dist/server/modules/providers/adapters/index.js +1 -0
- package/dist/server/modules/providers/adapters/index.js.map +1 -1
- package/dist/server/modules/providers/adapters/opencode.adapter.d.ts +1 -1
- package/dist/server/modules/providers/adapters/opencode.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/provider-adapter.interface.d.ts +4 -8
- package/dist/server/modules/providers/adapters/provider-adapters.module.js +2 -1
- package/dist/server/modules/providers/adapters/provider-adapters.module.js.map +1 -1
- package/dist/server/modules/providers/controllers/provider-models.controller.d.ts +4 -3
- package/dist/server/modules/providers/controllers/provider-models.controller.js +29 -36
- package/dist/server/modules/providers/controllers/provider-models.controller.js.map +1 -1
- package/dist/server/modules/providers/controllers/providers.controller.d.ts +7 -13
- package/dist/server/modules/providers/controllers/providers.controller.js +19 -239
- package/dist/server/modules/providers/controllers/providers.controller.js.map +1 -1
- package/dist/server/modules/providers/providers.module.js +24 -6
- package/dist/server/modules/providers/providers.module.js.map +1 -1
- package/dist/server/modules/providers/services/mcp-provider-registration.service.d.ts +23 -0
- package/dist/server/modules/providers/services/mcp-provider-registration.service.js +111 -0
- package/dist/server/modules/providers/services/mcp-provider-registration.service.js.map +1 -0
- package/dist/server/modules/providers/services/mcp-registration/cli-mcp-registration.adapter.d.ts +26 -0
- package/dist/server/modules/providers/services/mcp-registration/cli-mcp-registration.adapter.js +274 -0
- package/dist/server/modules/providers/services/mcp-registration/cli-mcp-registration.adapter.js.map +1 -0
- package/dist/server/modules/providers/services/mcp-registration/config-file-mcp-registration.adapter.d.ts +14 -0
- package/dist/server/modules/providers/services/mcp-registration/config-file-mcp-registration.adapter.js +328 -0
- package/dist/server/modules/providers/services/mcp-registration/config-file-mcp-registration.adapter.js.map +1 -0
- package/dist/server/modules/providers/services/mcp-registration/index.d.ts +5 -0
- package/dist/server/modules/providers/services/mcp-registration/index.js +10 -0
- package/dist/server/modules/providers/services/mcp-registration/index.js.map +1 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.port.d.ts +20 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.port.js +47 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.port.js.map +1 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.types.d.ts +43 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.types.js +3 -0
- package/dist/server/modules/providers/services/mcp-registration/mcp-registration.types.js.map +1 -0
- package/dist/server/modules/providers/services/probe-proof.service.d.ts +3 -1
- package/dist/server/modules/providers/services/probe-proof.service.js +23 -9
- package/dist/server/modules/providers/services/probe-proof.service.js.map +1 -1
- package/dist/server/modules/{core → providers}/services/provider-mcp-ensure.service.d.ts +3 -8
- package/dist/server/modules/providers/services/provider-mcp-ensure.service.js +175 -0
- package/dist/server/modules/providers/services/provider-mcp-ensure.service.js.map +1 -0
- package/dist/server/modules/providers/services/provider-state-manager.service.d.ts +53 -0
- package/dist/server/modules/providers/services/provider-state-manager.service.js +249 -0
- package/dist/server/modules/providers/services/provider-state-manager.service.js.map +1 -0
- package/dist/server/modules/providers/utils/probe-1m.d.ts +2 -1
- package/dist/server/modules/providers/utils/probe-1m.js +13 -19
- package/dist/server/modules/providers/utils/probe-1m.js.map +1 -1
- package/dist/server/modules/realtime/dtos/ws-envelope.dto.d.ts +19 -0
- package/dist/server/modules/realtime/dtos/ws-envelope.dto.js +20 -0
- package/dist/server/modules/realtime/dtos/ws-envelope.dto.js.map +1 -0
- package/dist/server/modules/realtime/ports/realtime-broadcaster.port.d.ts +4 -0
- package/dist/server/modules/realtime/ports/realtime-broadcaster.port.js +5 -0
- package/dist/server/modules/realtime/ports/realtime-broadcaster.port.js.map +1 -0
- package/dist/server/modules/realtime/realtime-broadcast.module.d.ts +2 -0
- package/dist/server/modules/realtime/realtime-broadcast.module.js +25 -0
- package/dist/server/modules/realtime/realtime-broadcast.module.js.map +1 -0
- package/dist/server/modules/realtime/services/noop-realtime-broadcast.adapter.d.ts +4 -0
- package/dist/server/modules/realtime/services/noop-realtime-broadcast.adapter.js +19 -0
- package/dist/server/modules/realtime/services/noop-realtime-broadcast.adapter.js.map +1 -0
- package/dist/server/modules/realtime/services/realtime-broadcast.service.d.ts +7 -0
- package/dist/server/modules/realtime/services/realtime-broadcast.service.js +33 -0
- package/dist/server/modules/realtime/services/realtime-broadcast.service.js.map +1 -0
- package/dist/server/modules/registry/controllers/registry.controller.d.ts +1 -30
- package/dist/server/modules/registry/controllers/registry.controller.js +2 -105
- package/dist/server/modules/registry/controllers/registry.controller.js.map +1 -1
- package/dist/server/modules/registry/index.d.ts +0 -1
- package/dist/server/modules/registry/index.js +0 -1
- package/dist/server/modules/registry/index.js.map +1 -1
- package/dist/server/modules/registry/registry.module.js +1 -5
- package/dist/server/modules/registry/registry.module.js.map +1 -1
- package/dist/server/modules/registry/services/registry-orchestration.service.d.ts +1 -29
- package/dist/server/modules/registry/services/registry-orchestration.service.js +2 -94
- package/dist/server/modules/registry/services/registry-orchestration.service.js.map +1 -1
- package/dist/server/modules/reviews/reviews.module.js +8 -4
- package/dist/server/modules/reviews/reviews.module.js.map +1 -1
- package/dist/server/modules/reviews/services/review-suggestion-applier.service.d.ts +29 -0
- package/dist/server/modules/reviews/services/review-suggestion-applier.service.js +116 -0
- package/dist/server/modules/reviews/services/review-suggestion-applier.service.js.map +1 -0
- package/dist/server/modules/reviews/services/reviews.service.js +11 -0
- package/dist/server/modules/reviews/services/reviews.service.js.map +1 -1
- package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.d.ts +16 -0
- package/dist/server/modules/{events → reviews}/subscribers/review-comment-notifier.subscriber.js +26 -75
- package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.js.map +1 -0
- package/dist/server/modules/seeders/seeders/0001_seed_compact_on_idle_watcher.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0002_seed_replace_permission_mode_plan.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0003_seed_preseed_jeffallan_claude_skills.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0004_seed_disable_microsoft_source_default.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0005_seed_renew_instructions_subscriber.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0006_seed_rename_template_slugs.d.ts +1 -1
- package/dist/server/modules/seeders/seeders/0007_seed_claude_no_flicker_env.d.ts +1 -1
- package/dist/server/modules/seeders/services/data-seeder.service.d.ts +2 -12
- package/dist/server/modules/seeders/services/data-seeder.service.js.map +1 -1
- package/dist/server/modules/seeders/types/seeder.types.d.ts +15 -0
- package/dist/server/modules/seeders/types/seeder.types.js +3 -0
- package/dist/server/modules/seeders/types/seeder.types.js.map +1 -0
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.d.ts +8 -0
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js +63 -3
- package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js.map +1 -1
- package/dist/server/modules/session-reader/controllers/session-reader.controller.d.ts +19 -410
- package/dist/server/modules/session-reader/controllers/session-reader.controller.js +159 -69
- package/dist/server/modules/session-reader/controllers/session-reader.controller.js.map +1 -1
- package/dist/server/modules/session-reader/data/pricing.json +19 -0
- package/dist/server/modules/session-reader/dtos/unified-chunk.types.d.ts +1 -2
- package/dist/server/modules/session-reader/dtos/unified-chunk.types.js.map +1 -1
- package/dist/server/modules/session-reader/dtos/unified-message.types.d.ts +66 -0
- package/dist/server/modules/session-reader/dtos/unified-message.types.js +3 -0
- package/dist/server/modules/session-reader/dtos/unified-message.types.js.map +1 -0
- package/dist/server/modules/session-reader/dtos/unified-session.types.d.ts +2 -66
- package/dist/server/modules/session-reader/dtos/unified-session.types.js.map +1 -1
- package/dist/server/modules/session-reader/services/codex-provider-session-id-backfill.service.d.ts +25 -0
- package/dist/server/modules/session-reader/services/codex-provider-session-id-backfill.service.js +175 -0
- package/dist/server/modules/session-reader/services/codex-provider-session-id-backfill.service.js.map +1 -0
- package/dist/server/modules/session-reader/services/session-cache.service.d.ts +9 -0
- package/dist/server/modules/session-reader/services/session-cache.service.js +15 -0
- 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 +50 -4
- package/dist/server/modules/session-reader/services/session-reader.service.js +173 -116
- 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 +6 -0
- package/dist/server/modules/session-reader/services/transcript-cursor.js +27 -0
- package/dist/server/modules/session-reader/services/transcript-cursor.js.map +1 -0
- package/dist/server/modules/session-reader/services/transcript-persistence.listener.d.ts +45 -2
- package/dist/server/modules/session-reader/services/transcript-persistence.listener.js +472 -54
- package/dist/server/modules/session-reader/services/transcript-persistence.listener.js.map +1 -1
- package/dist/server/modules/session-reader/services/transcript-serialization.d.ts +4 -0
- package/dist/server/modules/session-reader/services/transcript-serialization.js +31 -0
- package/dist/server/modules/session-reader/services/transcript-serialization.js.map +1 -0
- package/dist/server/modules/session-reader/services/transcript-truncation.d.ts +6 -0
- package/dist/server/modules/session-reader/services/transcript-truncation.js +175 -0
- package/dist/server/modules/session-reader/services/transcript-truncation.js.map +1 -0
- package/dist/server/modules/session-reader/services/transcript-watcher.service.js +52 -2
- package/dist/server/modules/session-reader/services/transcript-watcher.service.js.map +1 -1
- package/dist/server/modules/session-reader/session-reader.module.js +6 -2
- package/dist/server/modules/session-reader/session-reader.module.js.map +1 -1
- package/dist/server/modules/sessions/controllers/sessions.controller.d.ts +9 -1
- package/dist/server/modules/sessions/controllers/sessions.controller.js +74 -4
- package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
- package/dist/server/modules/sessions/dtos/active-session-info.dto.d.ts +21 -0
- package/dist/server/modules/sessions/dtos/active-session-info.dto.js +12 -0
- package/dist/server/modules/sessions/dtos/active-session-info.dto.js.map +1 -0
- package/dist/server/modules/sessions/dtos/sessions.dto.d.ts +2 -0
- package/dist/server/modules/sessions/dtos/sessions.dto.js.map +1 -1
- package/dist/server/modules/sessions/services/active-session-lookup.service.d.ts +9 -0
- package/dist/server/modules/sessions/services/active-session-lookup.service.js +70 -0
- package/dist/server/modules/sessions/services/active-session-lookup.service.js.map +1 -0
- package/dist/server/modules/sessions/services/agent-presence-aggregator.d.ts +13 -0
- package/dist/server/modules/sessions/services/agent-presence-aggregator.js +36 -0
- package/dist/server/modules/sessions/services/agent-presence-aggregator.js.map +1 -0
- package/dist/server/modules/sessions/services/delivery-failure-notifier.service.d.ts +9 -0
- package/dist/server/modules/sessions/services/delivery-failure-notifier.service.js +64 -0
- package/dist/server/modules/sessions/services/delivery-failure-notifier.service.js.map +1 -0
- package/dist/server/modules/sessions/services/message-activity-stream.service.d.ts +4 -4
- package/dist/server/modules/sessions/services/message-activity-stream.service.js +6 -6
- package/dist/server/modules/sessions/services/message-activity-stream.service.js.map +1 -1
- package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +30 -0
- package/dist/server/modules/sessions/services/message-enqueue.service.js +55 -0
- package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -0
- package/dist/server/modules/sessions/services/message-log.service.d.ts +24 -0
- package/dist/server/modules/sessions/services/message-log.service.js +110 -0
- package/dist/server/modules/sessions/services/message-log.service.js.map +1 -0
- package/dist/server/modules/sessions/services/message-pool.types.d.ts +69 -0
- package/dist/server/modules/sessions/services/message-pool.types.js +5 -0
- package/dist/server/modules/sessions/services/message-pool.types.js.map +1 -0
- package/dist/server/modules/sessions/services/provider-launch-config/index.d.ts +2 -0
- package/dist/server/modules/sessions/services/provider-launch-config/index.js +9 -0
- package/dist/server/modules/sessions/services/provider-launch-config/index.js.map +1 -0
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.d.ts +24 -0
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +45 -0
- package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -0
- package/dist/server/modules/sessions/services/session-launcher-facade.service.d.ts +13 -0
- package/dist/server/modules/sessions/services/session-launcher-facade.service.js +73 -0
- package/dist/server/modules/sessions/services/session-launcher-facade.service.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +262 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +329 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/cleanup-stack.d.ts +11 -0
- package/dist/server/modules/sessions/services/session-runtime/cleanup-stack.js +27 -0
- package/dist/server/modules/sessions/services/session-runtime/cleanup-stack.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/index.d.ts +4 -0
- package/dist/server/modules/sessions/services/session-runtime/index.js +12 -0
- package/dist/server/modules/sessions/services/session-runtime/index.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.d.ts +38 -0
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +404 -0
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.d.ts +26 -0
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +265 -0
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -0
- package/dist/server/modules/sessions/services/session-runtime/session-runtime.service.d.ts +10 -0
- package/dist/server/modules/sessions/services/session-runtime/session-runtime.service.js +34 -0
- package/dist/server/modules/sessions/services/session-runtime/session-runtime.service.js.map +1 -0
- package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +11 -84
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js +60 -185
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
- package/dist/server/modules/sessions/services/sessions.service.d.ts +25 -52
- package/dist/server/modules/sessions/services/sessions.service.js +134 -840
- package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
- package/dist/server/modules/sessions/sessions-delivery.module.d.ts +2 -0
- package/dist/server/modules/sessions/sessions-delivery.module.js +26 -0
- package/dist/server/modules/sessions/sessions-delivery.module.js.map +1 -0
- package/dist/server/modules/sessions/sessions-read.module.d.ts +2 -0
- package/dist/server/modules/sessions/sessions-read.module.js +23 -0
- package/dist/server/modules/sessions/sessions-read.module.js.map +1 -0
- package/dist/server/modules/sessions/sessions.module.js +22 -5
- package/dist/server/modules/sessions/sessions.module.js.map +1 -1
- package/dist/server/modules/sessions/utils/claude-config.d.ts +1 -1
- package/dist/server/modules/sessions/utils/claude-config.js +2 -2
- package/dist/server/modules/sessions/utils/env-builder.d.ts +1 -1
- package/dist/server/modules/sessions/utils/env-builder.js +8 -3
- package/dist/server/modules/sessions/utils/env-builder.js.map +1 -1
- package/dist/server/modules/sessions/utils/tmux-naming.util.d.ts +1 -0
- package/dist/server/modules/sessions/utils/tmux-naming.util.js +10 -0
- package/dist/server/modules/sessions/utils/tmux-naming.util.js.map +1 -0
- package/dist/server/modules/settings/dtos/settings.dto.d.ts +14 -0
- package/dist/server/modules/settings/dtos/settings.dto.js +3 -3
- package/dist/server/modules/settings/dtos/settings.dto.js.map +1 -1
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.d.ts +20 -0
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.js +499 -0
- package/dist/server/modules/settings/local/delegates/core-settings.delegate.js.map +1 -0
- package/dist/server/modules/settings/local/delegates/message-pool-settings.delegate.d.ts +14 -0
- package/dist/server/modules/settings/local/delegates/message-pool-settings.delegate.js +67 -0
- package/dist/server/modules/settings/local/delegates/message-pool-settings.delegate.js.map +1 -0
- package/dist/server/modules/settings/local/delegates/preset-settings.delegate.d.ts +36 -0
- package/dist/server/modules/settings/local/delegates/preset-settings.delegate.js +393 -0
- package/dist/server/modules/settings/local/delegates/preset-settings.delegate.js.map +1 -0
- package/dist/server/modules/settings/local/delegates/registry-settings.delegate.d.ts +20 -0
- package/dist/server/modules/settings/local/delegates/registry-settings.delegate.js +82 -0
- package/dist/server/modules/settings/local/delegates/registry-settings.delegate.js.map +1 -0
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.d.ts +16 -0
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js +107 -0
- package/dist/server/modules/settings/local/delegates/skills-settings.delegate.js.map +1 -0
- package/dist/server/modules/settings/services/settings.constants.d.ts +31 -0
- package/dist/server/modules/settings/services/settings.constants.js +24 -0
- package/dist/server/modules/settings/services/settings.constants.js.map +1 -0
- package/dist/server/modules/settings/services/settings.service.d.ts +15 -54
- package/dist/server/modules/settings/services/settings.service.js +85 -897
- package/dist/server/modules/settings/services/settings.service.js.map +1 -1
- package/dist/server/modules/skills/services/skill-search.utils.d.ts +18 -0
- package/dist/server/modules/skills/services/skill-search.utils.js +87 -0
- package/dist/server/modules/skills/services/skill-search.utils.js.map +1 -0
- package/dist/server/modules/skills/services/skills.service.js +25 -27
- package/dist/server/modules/skills/services/skills.service.js.map +1 -1
- package/dist/server/modules/storage/db/schema.d.ts +81 -0
- package/dist/server/modules/storage/db/schema.js +10 -2
- package/dist/server/modules/storage/db/schema.js.map +1 -1
- package/dist/server/modules/storage/db/transaction-runner.d.ts +8 -0
- package/dist/server/modules/storage/db/transaction-runner.js +44 -0
- package/dist/server/modules/storage/db/transaction-runner.js.map +1 -0
- package/dist/server/modules/storage/interfaces/storage.interface.d.ts +4 -0
- package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/base-storage.delegate.d.ts +2 -0
- package/dist/server/modules/storage/local/delegates/base-storage.delegate.js +2 -0
- package/dist/server/modules/storage/local/delegates/base-storage.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/epic.delegate.d.ts +2 -1
- package/dist/server/modules/storage/local/delegates/epic.delegate.js +36 -1
- package/dist/server/modules/storage/local/delegates/epic.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/profile-provider-config.delegate.js +5 -35
- package/dist/server/modules/storage/local/delegates/profile-provider-config.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/project.delegate.js +12 -20
- package/dist/server/modules/storage/local/delegates/project.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/provider-model.delegate.js +2 -12
- package/dist/server/modules/storage/local/delegates/provider-model.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/review.delegate.js +22 -38
- package/dist/server/modules/storage/local/delegates/review.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/skill-source.delegate.js +2 -17
- package/dist/server/modules/storage/local/delegates/skill-source.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/local-storage.service.d.ts +2 -1
- package/dist/server/modules/storage/local/local-storage.service.js +3 -0
- package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
- package/dist/server/modules/subscribers/actions/action.interface.d.ts +6 -6
- package/dist/server/modules/subscribers/actions/restart-agent.action.js +4 -3
- package/dist/server/modules/subscribers/actions/restart-agent.action.js.map +1 -1
- package/dist/server/modules/subscribers/actions/send-message.action.js +12 -7
- package/dist/server/modules/subscribers/actions/send-message.action.js.map +1 -1
- package/dist/server/modules/subscribers/events/event-fields-catalog.js +1 -0
- package/dist/server/modules/subscribers/events/event-fields-catalog.js.map +1 -1
- package/dist/server/modules/subscribers/services/automation-scheduler.service.d.ts +2 -13
- package/dist/server/modules/subscribers/services/automation-scheduler.service.js.map +1 -1
- package/dist/server/modules/subscribers/services/subscriber-executor.service.d.ts +9 -18
- package/dist/server/modules/subscribers/services/subscriber-executor.service.js +29 -24
- package/dist/server/modules/subscribers/services/subscriber-executor.service.js.map +1 -1
- package/dist/server/modules/subscribers/services/subscriber-scheduler.types.d.ts +23 -0
- package/dist/server/modules/subscribers/services/subscriber-scheduler.types.js +3 -0
- package/dist/server/modules/subscribers/services/subscriber-scheduler.types.js.map +1 -0
- package/dist/server/modules/subscribers/subscribers.module.js +7 -5
- package/dist/server/modules/subscribers/subscribers.module.js.map +1 -1
- package/dist/server/modules/teams/dtos/recipient-context.dto.d.ts +6 -0
- package/dist/server/modules/teams/dtos/recipient-context.dto.js +3 -0
- package/dist/server/modules/teams/dtos/recipient-context.dto.js.map +1 -0
- package/dist/server/modules/teams/services/teams.service.d.ts +4 -0
- package/dist/server/modules/teams/services/teams.service.js +68 -0
- package/dist/server/modules/teams/services/teams.service.js.map +1 -1
- package/dist/server/modules/teams/storage/teams.store.d.ts +2 -0
- package/dist/server/modules/teams/storage/teams.store.js +110 -167
- package/dist/server/modules/teams/storage/teams.store.js.map +1 -1
- package/dist/server/modules/teams/subscribers/team-config-updated-notifier.subscriber.d.ts +18 -0
- package/dist/server/modules/{events → teams}/subscribers/team-config-updated-notifier.subscriber.js +38 -43
- package/dist/server/modules/teams/subscribers/team-config-updated-notifier.subscriber.js.map +1 -0
- package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.d.ts +18 -0
- package/dist/server/modules/{events → teams}/subscribers/team-membership-changed-notifier.subscriber.js +29 -44
- package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.js.map +1 -0
- package/dist/server/modules/teams/teams.module.js +11 -3
- package/dist/server/modules/teams/teams.module.js.map +1 -1
- package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +24 -15
- package/dist/server/modules/terminal/gateways/terminal.gateway.js +317 -383
- package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
- package/dist/server/modules/terminal/services/guest-delivery.service.d.ts +7 -0
- package/dist/server/modules/terminal/services/guest-delivery.service.js +37 -0
- package/dist/server/modules/terminal/services/guest-delivery.service.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/child-process-executor.d.ts +5 -0
- package/dist/server/modules/terminal/services/process-executor/child-process-executor.js +195 -0
- package/dist/server/modules/terminal/services/process-executor/child-process-executor.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/fake-process-executor.d.ts +44 -0
- package/dist/server/modules/terminal/services/process-executor/fake-process-executor.js +106 -0
- package/dist/server/modules/terminal/services/process-executor/fake-process-executor.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.module.d.ts +2 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.module.js +31 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.module.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.port.d.ts +33 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.port.js +20 -0
- package/dist/server/modules/terminal/services/process-executor/process-executor.port.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/pty-executor.d.ts +5 -0
- package/dist/server/modules/terminal/services/process-executor/pty-executor.js +157 -0
- package/dist/server/modules/terminal/services/process-executor/pty-executor.js.map +1 -0
- package/dist/server/modules/terminal/services/process-executor/routing-process-executor.d.ts +10 -0
- package/dist/server/modules/terminal/services/process-executor/routing-process-executor.js +36 -0
- package/dist/server/modules/terminal/services/process-executor/routing-process-executor.js.map +1 -0
- package/dist/server/modules/terminal/services/pty.service.d.ts +11 -14
- package/dist/server/modules/terminal/services/pty.service.js +43 -72
- package/dist/server/modules/terminal/services/pty.service.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-activity.service.d.ts +24 -0
- package/dist/server/modules/terminal/services/terminal-activity.service.js +164 -0
- package/dist/server/modules/terminal/services/terminal-activity.service.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-delivery-facade.service.d.ts +9 -0
- package/dist/server/modules/terminal/services/terminal-delivery-facade.service.js +47 -0
- package/dist/server/modules/terminal/services/terminal-delivery-facade.service.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-delivery.types.d.ts +10 -0
- package/dist/server/modules/terminal/services/terminal-delivery.types.js +3 -0
- package/dist/server/modules/terminal/services/terminal-delivery.types.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/capture.d.ts +6 -0
- package/dist/server/modules/terminal/services/terminal-io/capture.js +77 -0
- package/dist/server/modules/terminal/services/terminal-io/capture.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/delivery.d.ts +19 -0
- package/dist/server/modules/terminal/services/terminal-io/delivery.js +230 -0
- package/dist/server/modules/terminal/services/terminal-io/delivery.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.d.ts +7 -0
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +87 -0
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/monitoring.d.ts +4 -0
- package/dist/server/modules/terminal/services/terminal-io/monitoring.js +65 -0
- package/dist/server/modules/terminal/services/terminal-io/monitoring.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/quote-shell-arg.d.ts +1 -0
- package/dist/server/modules/terminal/services/terminal-io/quote-shell-arg.js +9 -0
- package/dist/server/modules/terminal/services/terminal-io/quote-shell-arg.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +35 -0
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +210 -0
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-io/types.d.ts +42 -0
- package/dist/server/modules/terminal/services/terminal-io/types.js +3 -0
- package/dist/server/modules/terminal/services/terminal-io/types.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.d.ts +11 -0
- package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js +63 -0
- package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-seed.service.d.ts +7 -5
- package/dist/server/modules/terminal/services/terminal-seed.service.js +48 -45
- package/dist/server/modules/terminal/services/terminal-seed.service.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-session/terminal-frame-stream.d.ts +11 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-frame-stream.js +17 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-frame-stream.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.d.ts +15 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.js +62 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session-registry.js.map +1 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session.d.ts +77 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session.js +252 -0
- package/dist/server/modules/terminal/services/terminal-session/terminal-session.js.map +1 -0
- package/dist/server/modules/terminal/terminal-delivery.module.d.ts +2 -0
- package/dist/server/modules/terminal/terminal-delivery.module.js +26 -0
- package/dist/server/modules/terminal/terminal-delivery.module.js.map +1 -0
- package/dist/server/modules/terminal/terminal.module.js +29 -9
- package/dist/server/modules/terminal/terminal.module.js.map +1 -1
- package/dist/server/modules/terminal/utils/normalize-line-endings.d.ts +1 -0
- package/dist/server/modules/terminal/utils/normalize-line-endings.js +8 -0
- package/dist/server/modules/terminal/utils/normalize-line-endings.js.map +1 -0
- package/dist/server/modules/watchers/services/watcher-runner.service.d.ts +3 -3
- package/dist/server/modules/watchers/services/watcher-runner.service.js +20 -14
- package/dist/server/modules/watchers/services/watcher-runner.service.js.map +1 -1
- package/dist/server/modules/watchers/watchers.module.js +2 -2
- package/dist/server/modules/watchers/watchers.module.js.map +1 -1
- package/dist/server/templates/teams-dev.json +15 -14
- package/dist/server/tsconfig.tsbuildinfo +1 -1
- package/dist/server/ui/assets/{ReviewDetailPage-CoOg-QZq.js → ReviewDetailPage-D-vG55cH.js} +1 -1
- package/dist/server/ui/assets/ReviewsPage-GU7PX-qN.js +6 -0
- package/dist/server/ui/assets/index-59euy2RV.css +32 -0
- package/dist/server/ui/assets/index-fIGAPUv3.js +1085 -0
- package/dist/server/ui/assets/{useReviewSubscription-CnFCUxkN.js → useReviewSubscription-BjoztEj6.js} +22 -27
- package/dist/server/ui/index.html +2 -2
- package/dist/templates/teams-dev.json +15 -14
- package/package.json +15 -2
- package/dist/server/modules/core/services/provider-mcp-ensure.service.js +0 -307
- package/dist/server/modules/core/services/provider-mcp-ensure.service.js.map +0 -1
- package/dist/server/modules/events/events-domain.module.d.ts +0 -2
- package/dist/server/modules/events/events-domain.module.js.map +0 -1
- package/dist/server/modules/events/subscribers/chat-message-broadcaster.subscriber.js +0 -47
- package/dist/server/modules/events/subscribers/chat-message-broadcaster.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.d.ts +0 -28
- package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.js +0 -120
- package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/epic-assignment-notifier.subscriber.d.ts +0 -29
- package/dist/server/modules/events/subscribers/epic-assignment-notifier.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/index.d.ts +0 -2
- package/dist/server/modules/events/subscribers/index.js +0 -28
- package/dist/server/modules/events/subscribers/index.js.map +0 -1
- package/dist/server/modules/events/subscribers/project-state-broadcaster.subscriber.d.ts +0 -16
- package/dist/server/modules/events/subscribers/project-state-broadcaster.subscriber.js +0 -101
- package/dist/server/modules/events/subscribers/project-state-broadcaster.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/review-broadcaster.subscriber.d.ts +0 -16
- package/dist/server/modules/events/subscribers/review-broadcaster.subscriber.js +0 -163
- package/dist/server/modules/events/subscribers/review-broadcaster.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/review-comment-notifier.subscriber.d.ts +0 -24
- package/dist/server/modules/events/subscribers/review-comment-notifier.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/sub-epic-created-notifier.subscriber.d.ts +0 -18
- package/dist/server/modules/events/subscribers/sub-epic-created-notifier.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/team-config-updated-notifier.subscriber.d.ts +0 -18
- package/dist/server/modules/events/subscribers/team-config-updated-notifier.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/team-membership-changed-notifier.subscriber.d.ts +0 -18
- package/dist/server/modules/events/subscribers/team-membership-changed-notifier.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/transcript-broadcaster.subscriber.d.ts +0 -12
- package/dist/server/modules/events/subscribers/transcript-broadcaster.subscriber.js +0 -88
- package/dist/server/modules/events/subscribers/transcript-broadcaster.subscriber.js.map +0 -1
- package/dist/server/modules/events/subscribers/worktree-broadcaster.subscriber.d.ts +0 -8
- package/dist/server/modules/events/subscribers/worktree-broadcaster.subscriber.js +0 -48
- package/dist/server/modules/events/subscribers/worktree-broadcaster.subscriber.js.map +0 -1
- package/dist/server/modules/mcp/dtos/schema-registry.d.ts +0 -7
- package/dist/server/modules/mcp/dtos/schema-registry.js +0 -64
- package/dist/server/modules/mcp/dtos/schema-registry.js.map +0 -1
- package/dist/server/modules/mcp/mcp.module.d.ts +0 -2
- package/dist/server/modules/mcp/mcp.module.js.map +0 -1
- package/dist/server/modules/mcp/services/mcp-provider-registration.service.d.ts +0 -64
- package/dist/server/modules/mcp/services/mcp-provider-registration.service.js +0 -663
- package/dist/server/modules/mcp/services/mcp-provider-registration.service.js.map +0 -1
- package/dist/server/modules/mcp/services/terminal-activity.service.d.ts +0 -9
- package/dist/server/modules/mcp/services/terminal-activity.service.js +0 -68
- package/dist/server/modules/mcp/services/terminal-activity.service.js.map +0 -1
- package/dist/server/modules/mcp/tool-definitions.d.ts +0 -3077
- package/dist/server/modules/mcp/tool-definitions.js +0 -913
- package/dist/server/modules/mcp/tool-definitions.js.map +0 -1
- package/dist/server/modules/registry/services/template-upgrade.service.js.map +0 -1
- package/dist/server/modules/sessions/services/activity-tracker.service.d.ts +0 -17
- package/dist/server/modules/sessions/services/activity-tracker.service.js +0 -121
- package/dist/server/modules/sessions/services/activity-tracker.service.js.map +0 -1
- package/dist/server/modules/sessions/utils/template-renderer.d.ts +0 -33
- package/dist/server/modules/sessions/utils/template-renderer.js +0 -44
- package/dist/server/modules/sessions/utils/template-renderer.js.map +0 -1
- package/dist/server/modules/terminal/services/confirmed-delivery.helper.d.ts +0 -17
- package/dist/server/modules/terminal/services/confirmed-delivery.helper.js +0 -65
- package/dist/server/modules/terminal/services/confirmed-delivery.helper.js.map +0 -1
- package/dist/server/modules/terminal/services/terminal-send-coordinator.service.d.ts +0 -5
- package/dist/server/modules/terminal/services/terminal-send-coordinator.service.js +0 -36
- package/dist/server/modules/terminal/services/terminal-send-coordinator.service.js.map +0 -1
- package/dist/server/modules/terminal/services/tmux.service.d.ts +0 -78
- package/dist/server/modules/terminal/services/tmux.service.js +0 -548
- package/dist/server/modules/terminal/services/tmux.service.js.map +0 -1
- package/dist/server/templates/5-agents-dev.json +0 -1084
- package/dist/server/ui/assets/ReviewsPage-DVBA6KIu.js +0 -6
- package/dist/server/ui/assets/index-D6-SAeCU.css +0 -32
- package/dist/server/ui/assets/index-DylwMbnX.js +0 -1032
- package/dist/templates/5-agents-dev.json +0 -1084
|
@@ -0,0 +1,456 @@
|
|
|
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.TunnelHandlerService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const zod_1 = require("zod");
|
|
18
|
+
const storage_interface_1 = require("../../storage/interfaces/storage.interface");
|
|
19
|
+
const logger_1 = require("../../../common/logging/logger");
|
|
20
|
+
const logger = (0, logger_1.createLogger)('TunnelHandler');
|
|
21
|
+
const METHOD_SCHEMAS = {
|
|
22
|
+
'board.listProjects': zod_1.z.object({}).passthrough(),
|
|
23
|
+
'board.listStatuses': zod_1.z.object({ projectId: zod_1.z.string().uuid() }).passthrough(),
|
|
24
|
+
'board.listParentEpics': zod_1.z
|
|
25
|
+
.object({
|
|
26
|
+
projectId: zod_1.z.string().uuid(),
|
|
27
|
+
type: zod_1.z.enum(['active', 'archived', 'all']).optional(),
|
|
28
|
+
limit: zod_1.z.number().int().positive().optional(),
|
|
29
|
+
offset: zod_1.z.number().int().nonnegative().optional(),
|
|
30
|
+
limitPerParent: zod_1.z.number().int().positive().optional(),
|
|
31
|
+
})
|
|
32
|
+
.passthrough(),
|
|
33
|
+
'board.listParentChildren': zod_1.z
|
|
34
|
+
.object({
|
|
35
|
+
parentId: zod_1.z.string().uuid(),
|
|
36
|
+
statusId: zod_1.z.string().uuid().optional(),
|
|
37
|
+
limit: zod_1.z.number().int().positive().optional(),
|
|
38
|
+
offset: zod_1.z.number().int().nonnegative().optional(),
|
|
39
|
+
})
|
|
40
|
+
.passthrough(),
|
|
41
|
+
'board.listEpicsByStatus': zod_1.z
|
|
42
|
+
.object({
|
|
43
|
+
statusId: zod_1.z.string().uuid(),
|
|
44
|
+
projectId: zod_1.z.string().uuid().optional(),
|
|
45
|
+
limit: zod_1.z.number().int().positive().optional(),
|
|
46
|
+
offset: zod_1.z.number().int().nonnegative().optional(),
|
|
47
|
+
})
|
|
48
|
+
.passthrough(),
|
|
49
|
+
'board.listParentEpicsByStatus': zod_1.z
|
|
50
|
+
.object({
|
|
51
|
+
projectId: zod_1.z.string().uuid(),
|
|
52
|
+
statusId: zod_1.z.string().uuid(),
|
|
53
|
+
type: zod_1.z.enum(['active', 'archived', 'all']).optional(),
|
|
54
|
+
limit: zod_1.z.number().int().positive().optional(),
|
|
55
|
+
offset: zod_1.z.number().int().nonnegative().optional(),
|
|
56
|
+
})
|
|
57
|
+
.passthrough(),
|
|
58
|
+
'board.getEpicDetail': zod_1.z.object({ epicId: zod_1.z.string().uuid() }).passthrough(),
|
|
59
|
+
};
|
|
60
|
+
let TunnelHandlerService = class TunnelHandlerService {
|
|
61
|
+
constructor(storage) {
|
|
62
|
+
this.storage = storage;
|
|
63
|
+
this.handlers = {
|
|
64
|
+
'board.listProjects': (p) => this.listProjects(p),
|
|
65
|
+
'board.listStatuses': (p) => this.listStatuses(p),
|
|
66
|
+
'board.listParentEpics': (p) => this.listParentEpics(p),
|
|
67
|
+
'board.listParentChildren': (p) => this.listParentChildren(p),
|
|
68
|
+
'board.listEpicsByStatus': (p) => this.listEpicsByStatus(p),
|
|
69
|
+
'board.listParentEpicsByStatus': (p) => this.listParentEpicsByStatus(p),
|
|
70
|
+
'board.getEpicDetail': (p) => this.getEpicDetail(p),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
async handle(req) {
|
|
74
|
+
const handler = this.handlers[req.method];
|
|
75
|
+
if (!handler) {
|
|
76
|
+
logger.warn({ method: req.method, id: req.id }, 'Unknown RPC method');
|
|
77
|
+
return { jsonrpc: '2.0', id: req.id, error: { code: -32601, message: 'Method not found' } };
|
|
78
|
+
}
|
|
79
|
+
const schema = METHOD_SCHEMAS[req.method];
|
|
80
|
+
if (schema) {
|
|
81
|
+
const parseResult = schema.safeParse(req.params ?? {});
|
|
82
|
+
if (!parseResult.success) {
|
|
83
|
+
logger.warn({ method: req.method, id: req.id, errors: parseResult.error.format() }, 'Invalid params');
|
|
84
|
+
return {
|
|
85
|
+
jsonrpc: '2.0',
|
|
86
|
+
id: req.id,
|
|
87
|
+
error: { code: -32602, message: 'Invalid params', data: parseResult.error.format() },
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
const result = await handler(req.params ?? {});
|
|
93
|
+
return { jsonrpc: '2.0', id: req.id, result };
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
logger.error({ err, method: req.method, id: req.id }, 'RPC handler error');
|
|
97
|
+
return {
|
|
98
|
+
jsonrpc: '2.0',
|
|
99
|
+
id: req.id,
|
|
100
|
+
error: { code: -32603, message: err instanceof Error ? err.message : 'Internal error' },
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
async listProjects(params) {
|
|
105
|
+
const result = await this.storage.listProjects(params);
|
|
106
|
+
return this.itemsOf(result).map((project) => ({
|
|
107
|
+
id: project.id,
|
|
108
|
+
name: project.name,
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
111
|
+
async listStatuses(params) {
|
|
112
|
+
const projectId = params['projectId'];
|
|
113
|
+
const result = await this.storage.listStatuses(projectId, params);
|
|
114
|
+
const statuses = this.itemsOf(result);
|
|
115
|
+
return Promise.all(statuses.map(async (status) => {
|
|
116
|
+
const parentEpics = await this.storage.listProjectEpics(projectId, {
|
|
117
|
+
statusId: status.id,
|
|
118
|
+
parentOnly: true,
|
|
119
|
+
limit: 1,
|
|
120
|
+
offset: 0,
|
|
121
|
+
});
|
|
122
|
+
const statusDto = this.toStatusDto(status);
|
|
123
|
+
return {
|
|
124
|
+
status: statusDto,
|
|
125
|
+
epicCount: this.totalOf(parentEpics),
|
|
126
|
+
};
|
|
127
|
+
}));
|
|
128
|
+
}
|
|
129
|
+
async listParentEpics(params) {
|
|
130
|
+
const projectId = params['projectId'];
|
|
131
|
+
const type = params['type'] ?? 'active';
|
|
132
|
+
const limit = params['limit'] ?? 20;
|
|
133
|
+
const offset = params['offset'] ?? 0;
|
|
134
|
+
const limitPerParent = params['limitPerParent'] ?? 1000;
|
|
135
|
+
const result = await this.listParentEpicsWithSummary(projectId, {
|
|
136
|
+
type,
|
|
137
|
+
limit,
|
|
138
|
+
offset,
|
|
139
|
+
limitPerParent,
|
|
140
|
+
});
|
|
141
|
+
return {
|
|
142
|
+
statuses: result.statuses,
|
|
143
|
+
items: result.items,
|
|
144
|
+
total: result.total,
|
|
145
|
+
limit: result.limit,
|
|
146
|
+
offset: result.offset,
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
async listParentEpicsByStatus(params) {
|
|
150
|
+
const projectId = params['projectId'];
|
|
151
|
+
const statusId = params['statusId'];
|
|
152
|
+
const type = params['type'] ?? 'active';
|
|
153
|
+
const limit = params['limit'] ?? 20;
|
|
154
|
+
const offset = params['offset'] ?? 0;
|
|
155
|
+
await this.resolveProjectIdForStatus(statusId, projectId);
|
|
156
|
+
const result = await this.listParentEpicsWithSummary(projectId, {
|
|
157
|
+
statusId,
|
|
158
|
+
type,
|
|
159
|
+
limit,
|
|
160
|
+
offset,
|
|
161
|
+
limitPerParent: 1000,
|
|
162
|
+
});
|
|
163
|
+
return {
|
|
164
|
+
items: result.items,
|
|
165
|
+
total: result.total,
|
|
166
|
+
limit: result.limit,
|
|
167
|
+
offset: result.offset,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
async listParentEpicsWithSummary(projectId, options) {
|
|
171
|
+
const { statusId, type, limit, offset, limitPerParent } = options;
|
|
172
|
+
const [parentResult, statusesResult, agentsResult] = await Promise.all([
|
|
173
|
+
this.storage.listProjectEpics(projectId, { statusId, parentOnly: true, type, limit, offset }),
|
|
174
|
+
this.storage.listStatuses(projectId, { limit: 1000, offset: 0 }),
|
|
175
|
+
this.storage.listAgents(projectId, { limit: 1000, offset: 0 }),
|
|
176
|
+
]);
|
|
177
|
+
const parentItems = this.itemsOf(parentResult);
|
|
178
|
+
const parentIds = parentItems
|
|
179
|
+
.map((item) => item.id)
|
|
180
|
+
.filter((id) => typeof id === 'string');
|
|
181
|
+
const statusMap = this.toStatusMap(statusesResult);
|
|
182
|
+
const statuses = this.itemsOf(statusesResult).map((status) => this.toStatusDto(status));
|
|
183
|
+
const agentNameById = this.toAgentNameMap(agentsResult);
|
|
184
|
+
const subEpicsByParent = parentIds.length > 0
|
|
185
|
+
? await this.storage.listSubEpicsForParents(projectId, parentIds, { type, limitPerParent })
|
|
186
|
+
: new Map();
|
|
187
|
+
let childSummaryByParent = this.aggregateChildSummaries(parentIds, subEpicsByParent, statusMap);
|
|
188
|
+
if (this.hasPotentialChildTruncation(parentIds, subEpicsByParent, limitPerParent)) {
|
|
189
|
+
childSummaryByParent = await this.buildCountSafeChildSummary(projectId, parentIds, type, statusMap);
|
|
190
|
+
}
|
|
191
|
+
const items = parentItems.map((parent) => {
|
|
192
|
+
const parentId = parent.id;
|
|
193
|
+
const childSummary = parentId
|
|
194
|
+
? childSummaryByParent.get(parentId)
|
|
195
|
+
: { childCount: 0, childStatusCounts: [] };
|
|
196
|
+
return {
|
|
197
|
+
...this.toEpicDto(parent, statusMap, agentNameById),
|
|
198
|
+
childCount: childSummary?.childCount ?? 0,
|
|
199
|
+
childStatusCounts: childSummary?.childStatusCounts ?? [],
|
|
200
|
+
};
|
|
201
|
+
});
|
|
202
|
+
return {
|
|
203
|
+
statuses,
|
|
204
|
+
items,
|
|
205
|
+
total: this.totalOf(parentResult),
|
|
206
|
+
limit: this.limitOf(parentResult, limit),
|
|
207
|
+
offset: this.offsetOf(parentResult, offset),
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
async listEpicsByStatus(params) {
|
|
211
|
+
const statusId = params['statusId'];
|
|
212
|
+
const projectId = await this.resolveProjectIdForStatus(statusId, params['projectId']);
|
|
213
|
+
const [result, statusesResult, agentsResult] = await Promise.all([
|
|
214
|
+
this.storage.listEpicsByStatus(statusId, {
|
|
215
|
+
limit: params['limit'] ?? 100,
|
|
216
|
+
offset: params['offset'] ?? 0,
|
|
217
|
+
}),
|
|
218
|
+
this.storage.listStatuses(projectId, { limit: 1000, offset: 0 }),
|
|
219
|
+
this.storage.listAgents(projectId, { limit: 1000, offset: 0 }),
|
|
220
|
+
]);
|
|
221
|
+
const statusMap = this.toStatusMap(statusesResult);
|
|
222
|
+
const agentNameById = this.toAgentNameMap(agentsResult);
|
|
223
|
+
return this.itemsOf(result).map((epic) => this.toEpicDto(epic, statusMap, agentNameById));
|
|
224
|
+
}
|
|
225
|
+
async listParentChildren(params) {
|
|
226
|
+
const parentId = params['parentId'];
|
|
227
|
+
const statusId = params['statusId'];
|
|
228
|
+
const limit = params['limit'] ?? 50;
|
|
229
|
+
const offset = params['offset'] ?? 0;
|
|
230
|
+
const parent = (await this.storage.getEpic(parentId));
|
|
231
|
+
const projectId = parent.projectId;
|
|
232
|
+
if (!projectId) {
|
|
233
|
+
throw new Error('Parent epic is missing projectId');
|
|
234
|
+
}
|
|
235
|
+
const [childrenResult, statusesResult, agentsResult, rawChildStatusCounts] = await Promise.all([
|
|
236
|
+
this.storage.listParentChildren(parentId, { statusId, limit, offset }),
|
|
237
|
+
this.storage.listStatuses(projectId, { limit: 1000, offset: 0 }),
|
|
238
|
+
this.storage.listAgents(projectId, { limit: 1000, offset: 0 }),
|
|
239
|
+
this.storage.countSubEpicsByStatus(parentId),
|
|
240
|
+
]);
|
|
241
|
+
const statusMap = this.toStatusMap(statusesResult);
|
|
242
|
+
const agentNameById = this.toAgentNameMap(agentsResult);
|
|
243
|
+
const childStatusCounts = Object.entries(rawChildStatusCounts ?? {})
|
|
244
|
+
.filter((entry) => typeof entry[0] === 'string' &&
|
|
245
|
+
typeof entry[1] === 'number' &&
|
|
246
|
+
Number.isFinite(entry[1]) &&
|
|
247
|
+
entry[1] > 0)
|
|
248
|
+
.map(([childStatusId, count]) => {
|
|
249
|
+
const status = statusMap.get(childStatusId);
|
|
250
|
+
return {
|
|
251
|
+
statusId: childStatusId,
|
|
252
|
+
statusName: status?.name,
|
|
253
|
+
statusColor: status?.color,
|
|
254
|
+
count,
|
|
255
|
+
};
|
|
256
|
+
})
|
|
257
|
+
.sort((a, b) => {
|
|
258
|
+
const statusA = statusMap.get(a.statusId);
|
|
259
|
+
const statusB = statusMap.get(b.statusId);
|
|
260
|
+
return this.toStatusPosition(statusA) - this.toStatusPosition(statusB);
|
|
261
|
+
});
|
|
262
|
+
return {
|
|
263
|
+
items: this.itemsOf(childrenResult).map((epic) => this.toEpicDto(epic, statusMap, agentNameById)),
|
|
264
|
+
total: this.totalOf(childrenResult),
|
|
265
|
+
limit: this.limitOf(childrenResult, limit),
|
|
266
|
+
offset: this.offsetOf(childrenResult, offset),
|
|
267
|
+
childStatusCounts,
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
async getEpicDetail(params) {
|
|
271
|
+
const epic = await this.storage.getEpic(params['epicId']);
|
|
272
|
+
const projectId = epic.projectId;
|
|
273
|
+
if (!projectId) {
|
|
274
|
+
throw new Error('Epic is missing projectId');
|
|
275
|
+
}
|
|
276
|
+
const [statusesResult, agentsResult] = await Promise.all([
|
|
277
|
+
this.storage.listStatuses(projectId, { limit: 1000, offset: 0 }),
|
|
278
|
+
this.storage.listAgents(projectId, { limit: 1000, offset: 0 }),
|
|
279
|
+
]);
|
|
280
|
+
const statusMap = this.toStatusMap(statusesResult);
|
|
281
|
+
const agentNameById = this.toAgentNameMap(agentsResult);
|
|
282
|
+
return this.toEpicDto(epic, statusMap, agentNameById);
|
|
283
|
+
}
|
|
284
|
+
toStatusDto(status) {
|
|
285
|
+
return {
|
|
286
|
+
id: status.id,
|
|
287
|
+
name: status.name ?? status.label,
|
|
288
|
+
color: status.color,
|
|
289
|
+
position: status.position,
|
|
290
|
+
};
|
|
291
|
+
}
|
|
292
|
+
toStatusMap(result) {
|
|
293
|
+
return new Map(this.itemsOf(result)
|
|
294
|
+
.filter((status) => typeof status.id === 'string')
|
|
295
|
+
.map((status) => [status.id, this.toStatusDto(status)]));
|
|
296
|
+
}
|
|
297
|
+
toAgentNameMap(result) {
|
|
298
|
+
return new Map(this.itemsOf(result)
|
|
299
|
+
.filter((agent) => typeof agent.id === 'string' && typeof agent.name === 'string')
|
|
300
|
+
.map((agent) => [agent.id, agent.name]));
|
|
301
|
+
}
|
|
302
|
+
async resolveProjectIdForStatus(statusId, requestedProjectId) {
|
|
303
|
+
const status = (await this.storage.getStatus(statusId));
|
|
304
|
+
const statusProjectId = status.projectId;
|
|
305
|
+
if (!statusProjectId) {
|
|
306
|
+
throw new Error('Status is missing projectId');
|
|
307
|
+
}
|
|
308
|
+
if (typeof requestedProjectId === 'string' &&
|
|
309
|
+
requestedProjectId.length > 0 &&
|
|
310
|
+
requestedProjectId !== statusProjectId) {
|
|
311
|
+
throw new Error('projectId does not match status project');
|
|
312
|
+
}
|
|
313
|
+
return statusProjectId;
|
|
314
|
+
}
|
|
315
|
+
toEpicDto(epic, statusMap, agentNameById) {
|
|
316
|
+
const statusId = epic.statusId;
|
|
317
|
+
const status = statusId ? statusMap?.get(statusId) : undefined;
|
|
318
|
+
const agentId = epic.agentId ?? null;
|
|
319
|
+
const resolvedAgentName = (agentId ? agentNameById?.get(agentId) : undefined) ?? epic.agentName;
|
|
320
|
+
return {
|
|
321
|
+
id: epic.id,
|
|
322
|
+
title: epic.title,
|
|
323
|
+
statusId,
|
|
324
|
+
statusName: status?.name,
|
|
325
|
+
statusColor: status?.color,
|
|
326
|
+
statusPosition: status?.position,
|
|
327
|
+
status,
|
|
328
|
+
agentId,
|
|
329
|
+
agentName: resolvedAgentName,
|
|
330
|
+
parentId: epic.parentId,
|
|
331
|
+
updatedAt: epic.updatedAt,
|
|
332
|
+
description: epic.description,
|
|
333
|
+
createdAt: epic.createdAt,
|
|
334
|
+
tags: epic.tags,
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
aggregateChildSummaries(parentIds, childrenByParent, statusMap) {
|
|
338
|
+
const summaryByParent = new Map();
|
|
339
|
+
for (const parentId of parentIds) {
|
|
340
|
+
const children = childrenByParent.get(parentId) ?? [];
|
|
341
|
+
const statusCount = new Map();
|
|
342
|
+
for (const child of children) {
|
|
343
|
+
const statusId = child.statusId;
|
|
344
|
+
if (typeof statusId !== 'string' || statusId.length === 0)
|
|
345
|
+
continue;
|
|
346
|
+
statusCount.set(statusId, (statusCount.get(statusId) ?? 0) + 1);
|
|
347
|
+
}
|
|
348
|
+
const childStatusCounts = Array.from(statusCount.entries())
|
|
349
|
+
.map(([statusId, count]) => {
|
|
350
|
+
const status = statusMap.get(statusId);
|
|
351
|
+
return {
|
|
352
|
+
statusId,
|
|
353
|
+
statusName: status?.name,
|
|
354
|
+
statusColor: status?.color,
|
|
355
|
+
count,
|
|
356
|
+
};
|
|
357
|
+
})
|
|
358
|
+
.sort((a, b) => {
|
|
359
|
+
const statusA = statusMap.get(a.statusId);
|
|
360
|
+
const statusB = statusMap.get(b.statusId);
|
|
361
|
+
return this.toStatusPosition(statusA) - this.toStatusPosition(statusB);
|
|
362
|
+
});
|
|
363
|
+
summaryByParent.set(parentId, {
|
|
364
|
+
childCount: children.length,
|
|
365
|
+
childStatusCounts,
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
return summaryByParent;
|
|
369
|
+
}
|
|
370
|
+
hasPotentialChildTruncation(parentIds, childrenByParent, limitPerParent) {
|
|
371
|
+
if (limitPerParent <= 0)
|
|
372
|
+
return false;
|
|
373
|
+
return parentIds.some((parentId) => (childrenByParent.get(parentId)?.length ?? 0) >= limitPerParent);
|
|
374
|
+
}
|
|
375
|
+
async buildCountSafeChildSummary(projectId, parentIds, type, statusMap) {
|
|
376
|
+
const childrenByParent = new Map();
|
|
377
|
+
for (const parentId of parentIds) {
|
|
378
|
+
childrenByParent.set(parentId, []);
|
|
379
|
+
}
|
|
380
|
+
if (parentIds.length === 0) {
|
|
381
|
+
return this.aggregateChildSummaries(parentIds, childrenByParent, statusMap);
|
|
382
|
+
}
|
|
383
|
+
const parentSet = new Set(parentIds);
|
|
384
|
+
const pageSize = 500;
|
|
385
|
+
let offset = 0;
|
|
386
|
+
let total = Number.POSITIVE_INFINITY;
|
|
387
|
+
while (offset < total) {
|
|
388
|
+
const page = await this.storage.listProjectEpics(projectId, {
|
|
389
|
+
type,
|
|
390
|
+
limit: pageSize,
|
|
391
|
+
offset,
|
|
392
|
+
});
|
|
393
|
+
const items = this.itemsOf(page);
|
|
394
|
+
total = this.totalOf(page);
|
|
395
|
+
for (const item of items) {
|
|
396
|
+
const parentId = item.parentId;
|
|
397
|
+
if (typeof parentId !== 'string' || !parentSet.has(parentId))
|
|
398
|
+
continue;
|
|
399
|
+
const bucket = childrenByParent.get(parentId) ?? [];
|
|
400
|
+
bucket.push(item);
|
|
401
|
+
childrenByParent.set(parentId, bucket);
|
|
402
|
+
}
|
|
403
|
+
offset += pageSize;
|
|
404
|
+
if (items.length === 0)
|
|
405
|
+
break;
|
|
406
|
+
}
|
|
407
|
+
return this.aggregateChildSummaries(parentIds, childrenByParent, statusMap);
|
|
408
|
+
}
|
|
409
|
+
toStatusPosition(status) {
|
|
410
|
+
const position = status?.position;
|
|
411
|
+
if (typeof position === 'number')
|
|
412
|
+
return position;
|
|
413
|
+
return Number.MAX_SAFE_INTEGER;
|
|
414
|
+
}
|
|
415
|
+
itemsOf(result) {
|
|
416
|
+
if (Array.isArray(result))
|
|
417
|
+
return result;
|
|
418
|
+
if (typeof result === 'object' &&
|
|
419
|
+
result !== null &&
|
|
420
|
+
Array.isArray(result.items)) {
|
|
421
|
+
return result.items;
|
|
422
|
+
}
|
|
423
|
+
return [];
|
|
424
|
+
}
|
|
425
|
+
totalOf(result) {
|
|
426
|
+
if (typeof result === 'object' && result !== null) {
|
|
427
|
+
const total = result.total;
|
|
428
|
+
if (typeof total === 'number' && Number.isFinite(total))
|
|
429
|
+
return total;
|
|
430
|
+
}
|
|
431
|
+
return this.itemsOf(result).length;
|
|
432
|
+
}
|
|
433
|
+
limitOf(result, fallback) {
|
|
434
|
+
if (typeof result === 'object' && result !== null) {
|
|
435
|
+
const limit = result.limit;
|
|
436
|
+
if (typeof limit === 'number' && Number.isFinite(limit))
|
|
437
|
+
return limit;
|
|
438
|
+
}
|
|
439
|
+
return fallback;
|
|
440
|
+
}
|
|
441
|
+
offsetOf(result, fallback) {
|
|
442
|
+
if (typeof result === 'object' && result !== null) {
|
|
443
|
+
const offset = result.offset;
|
|
444
|
+
if (typeof offset === 'number' && Number.isFinite(offset))
|
|
445
|
+
return offset;
|
|
446
|
+
}
|
|
447
|
+
return fallback;
|
|
448
|
+
}
|
|
449
|
+
};
|
|
450
|
+
exports.TunnelHandlerService = TunnelHandlerService;
|
|
451
|
+
exports.TunnelHandlerService = TunnelHandlerService = __decorate([
|
|
452
|
+
(0, common_1.Injectable)(),
|
|
453
|
+
__param(0, (0, common_1.Inject)(storage_interface_1.STORAGE_SERVICE)),
|
|
454
|
+
__metadata("design:paramtypes", [Object])
|
|
455
|
+
], TunnelHandlerService);
|
|
456
|
+
//# sourceMappingURL=tunnel-handler.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tunnel-handler.service.js","sourceRoot":"","sources":["../../../../src/modules/cloud-tunnel/services/tunnel-handler.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
2
|
+
export interface StoredKeypair {
|
|
3
|
+
publicKey: string;
|
|
4
|
+
privateKey: string;
|
|
5
|
+
instanceId?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class TunnelKeypairService {
|
|
8
|
+
private readonly db;
|
|
9
|
+
private sqlite;
|
|
10
|
+
private encryptionKey;
|
|
11
|
+
constructor(db: BetterSQLite3Database);
|
|
12
|
+
getOrCreate(): Promise<StoredKeypair>;
|
|
13
|
+
generate(): Promise<StoredKeypair>;
|
|
14
|
+
sign(payload: string, privateKeyBase64: string): Promise<string>;
|
|
15
|
+
setInstanceId(instanceId: string): Promise<void>;
|
|
16
|
+
private persist;
|
|
17
|
+
private retrieve;
|
|
18
|
+
private getEncryptionKey;
|
|
19
|
+
private getOrCreateSecret;
|
|
20
|
+
private encrypt;
|
|
21
|
+
private decrypt;
|
|
22
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
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.TunnelKeypairService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const crypto_1 = require("crypto");
|
|
18
|
+
const fs_1 = require("fs");
|
|
19
|
+
const path_1 = require("path");
|
|
20
|
+
const os_1 = require("os");
|
|
21
|
+
const better_sqlite3_1 = require("drizzle-orm/better-sqlite3");
|
|
22
|
+
const db_provider_1 = require("../../storage/db/db.provider");
|
|
23
|
+
const sqlite_raw_1 = require("../../storage/db/sqlite-raw");
|
|
24
|
+
const logger_1 = require("../../../common/logging/logger");
|
|
25
|
+
const logger = (0, logger_1.createLogger)('TunnelKeypair');
|
|
26
|
+
const SETTINGS_KEY = 'cloud.tunnel.keypair';
|
|
27
|
+
const APP_SALT = Buffer.from('devchain-tunnel-keypair-store-v1-salt', 'utf8');
|
|
28
|
+
const SECRET_DIR = (0, path_1.join)((0, os_1.homedir)(), '.devchain', 'cloud');
|
|
29
|
+
const SECRET_FILE = (0, path_1.join)(SECRET_DIR, 'secret.key');
|
|
30
|
+
const SECRET_LENGTH = 32;
|
|
31
|
+
const KEY_LENGTH = 32;
|
|
32
|
+
const IV_LENGTH = 12;
|
|
33
|
+
const AUTH_TAG_LENGTH = 16;
|
|
34
|
+
const SCRYPT_COST = 16384;
|
|
35
|
+
const SCRYPT_BLOCK_SIZE = 8;
|
|
36
|
+
const SCRYPT_PARALLELIZATION = 1;
|
|
37
|
+
let TunnelKeypairService = class TunnelKeypairService {
|
|
38
|
+
constructor(db) {
|
|
39
|
+
this.db = db;
|
|
40
|
+
this.encryptionKey = null;
|
|
41
|
+
this.sqlite = (0, sqlite_raw_1.getRawSqliteClient)(this.db);
|
|
42
|
+
}
|
|
43
|
+
async getOrCreate() {
|
|
44
|
+
const stored = this.retrieve();
|
|
45
|
+
if (stored)
|
|
46
|
+
return stored;
|
|
47
|
+
return this.generate();
|
|
48
|
+
}
|
|
49
|
+
async generate() {
|
|
50
|
+
const { publicKey, privateKey } = (0, crypto_1.generateKeyPairSync)('ed25519');
|
|
51
|
+
const keypair = {
|
|
52
|
+
publicKey: publicKey.export({ type: 'spki', format: 'der' }).toString('base64'),
|
|
53
|
+
privateKey: privateKey.export({ type: 'pkcs8', format: 'der' }).toString('base64'),
|
|
54
|
+
};
|
|
55
|
+
this.persist(keypair);
|
|
56
|
+
logger.info('Generated new Ed25519 tunnel keypair');
|
|
57
|
+
return keypair;
|
|
58
|
+
}
|
|
59
|
+
async sign(payload, privateKeyBase64) {
|
|
60
|
+
const key = (0, crypto_1.createPrivateKey)({
|
|
61
|
+
key: Buffer.from(privateKeyBase64, 'base64'),
|
|
62
|
+
format: 'der',
|
|
63
|
+
type: 'pkcs8',
|
|
64
|
+
});
|
|
65
|
+
const sig = (0, crypto_1.sign)(null, Buffer.from(payload), key);
|
|
66
|
+
return sig.toString('base64');
|
|
67
|
+
}
|
|
68
|
+
async setInstanceId(instanceId) {
|
|
69
|
+
const stored = this.retrieve();
|
|
70
|
+
if (!stored)
|
|
71
|
+
return;
|
|
72
|
+
stored.instanceId = instanceId;
|
|
73
|
+
this.persist(stored);
|
|
74
|
+
}
|
|
75
|
+
persist(keypair) {
|
|
76
|
+
const encrypted = this.encrypt(JSON.stringify(keypair));
|
|
77
|
+
const now = new Date().toISOString();
|
|
78
|
+
this.sqlite
|
|
79
|
+
.prepare(`INSERT INTO settings (id, key, value, created_at, updated_at)
|
|
80
|
+
VALUES (lower(hex(randomblob(16))), ?, ?, ?, ?)
|
|
81
|
+
ON CONFLICT(key) DO UPDATE SET value = excluded.value, updated_at = excluded.updated_at`)
|
|
82
|
+
.run(SETTINGS_KEY, encrypted, now, now);
|
|
83
|
+
}
|
|
84
|
+
retrieve() {
|
|
85
|
+
const row = this.sqlite
|
|
86
|
+
.prepare('SELECT value FROM settings WHERE key = ?')
|
|
87
|
+
.get(SETTINGS_KEY);
|
|
88
|
+
if (!row)
|
|
89
|
+
return null;
|
|
90
|
+
try {
|
|
91
|
+
return JSON.parse(this.decrypt(row.value));
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
logger.warn('Failed to decrypt tunnel keypair — will regenerate');
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
getEncryptionKey() {
|
|
99
|
+
if (this.encryptionKey)
|
|
100
|
+
return this.encryptionKey;
|
|
101
|
+
const secret = this.getOrCreateSecret();
|
|
102
|
+
const machineComponent = Buffer.from(`${(0, os_1.hostname)()}:${(0, os_1.userInfo)().username}`, 'utf8');
|
|
103
|
+
const password = Buffer.concat([secret, machineComponent]);
|
|
104
|
+
this.encryptionKey = (0, crypto_1.scryptSync)(password, APP_SALT, KEY_LENGTH, {
|
|
105
|
+
N: SCRYPT_COST,
|
|
106
|
+
r: SCRYPT_BLOCK_SIZE,
|
|
107
|
+
p: SCRYPT_PARALLELIZATION,
|
|
108
|
+
});
|
|
109
|
+
return this.encryptionKey;
|
|
110
|
+
}
|
|
111
|
+
getOrCreateSecret() {
|
|
112
|
+
if ((0, fs_1.existsSync)(SECRET_FILE))
|
|
113
|
+
return (0, fs_1.readFileSync)(SECRET_FILE);
|
|
114
|
+
if (!(0, fs_1.existsSync)(SECRET_DIR))
|
|
115
|
+
(0, fs_1.mkdirSync)(SECRET_DIR, { recursive: true, mode: 0o700 });
|
|
116
|
+
const secret = (0, crypto_1.randomBytes)(SECRET_LENGTH);
|
|
117
|
+
(0, fs_1.writeFileSync)(SECRET_FILE, secret, { mode: 0o600 });
|
|
118
|
+
(0, fs_1.chmodSync)(SECRET_FILE, 0o600);
|
|
119
|
+
return secret;
|
|
120
|
+
}
|
|
121
|
+
encrypt(plaintext) {
|
|
122
|
+
const key = this.getEncryptionKey();
|
|
123
|
+
const iv = (0, crypto_1.randomBytes)(IV_LENGTH);
|
|
124
|
+
const cipher = (0, crypto_1.createCipheriv)('aes-256-gcm', key, iv, { authTagLength: AUTH_TAG_LENGTH });
|
|
125
|
+
const encrypted = Buffer.concat([cipher.update(plaintext, 'utf8'), cipher.final()]);
|
|
126
|
+
const authTag = cipher.getAuthTag();
|
|
127
|
+
return Buffer.concat([iv, authTag, encrypted]).toString('base64');
|
|
128
|
+
}
|
|
129
|
+
decrypt(ciphertext) {
|
|
130
|
+
const key = this.getEncryptionKey();
|
|
131
|
+
const data = Buffer.from(ciphertext, 'base64');
|
|
132
|
+
const iv = data.subarray(0, IV_LENGTH);
|
|
133
|
+
const authTag = data.subarray(IV_LENGTH, IV_LENGTH + AUTH_TAG_LENGTH);
|
|
134
|
+
const encrypted = data.subarray(IV_LENGTH + AUTH_TAG_LENGTH);
|
|
135
|
+
const decipher = (0, crypto_1.createDecipheriv)('aes-256-gcm', key, iv, { authTagLength: AUTH_TAG_LENGTH });
|
|
136
|
+
decipher.setAuthTag(authTag);
|
|
137
|
+
return decipher.update(encrypted) + decipher.final('utf8');
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
exports.TunnelKeypairService = TunnelKeypairService;
|
|
141
|
+
exports.TunnelKeypairService = TunnelKeypairService = __decorate([
|
|
142
|
+
(0, common_1.Injectable)(),
|
|
143
|
+
__param(0, (0, common_1.Inject)(db_provider_1.DB_CONNECTION)),
|
|
144
|
+
__metadata("design:paramtypes", [better_sqlite3_1.BetterSQLite3Database])
|
|
145
|
+
], TunnelKeypairService);
|
|
146
|
+
//# sourceMappingURL=tunnel-keypair.service.js.map
|