devchain-cli 0.12.3 → 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 +116 -111
- 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 +20 -2
- 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 +274 -4
- 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 +36 -23
- 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 +14 -2
- package/dist/server/modules/providers/adapters/gemini.adapter.js +48 -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.factory.d.ts +4 -1
- package/dist/server/modules/providers/adapters/provider-adapter.factory.js +28 -2
- package/dist/server/modules/providers/adapters/provider-adapter.factory.js.map +1 -1
- package/dist/server/modules/providers/adapters/provider-adapter.interface.d.ts +8 -8
- package/dist/server/modules/providers/adapters/provider-adapters.module.js +3 -0
- 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 +13 -84
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js +66 -184
- 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 +139 -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-Dy3PfRrg.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-jEyfNAEJ.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 +20 -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 -16
- package/dist/server/modules/terminal/services/confirmed-delivery.helper.js +0 -60
- 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 -77
- package/dist/server/modules/terminal/services/tmux.service.js +0 -535
- 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-DUPZ_NtL.js +0 -6
- package/dist/server/ui/assets/index-BzphIngp.css +0 -32
- package/dist/server/ui/assets/index-CIlp3VXc.js +0 -1027
- package/dist/templates/5-agents-dev.json +0 -1084
|
@@ -0,0 +1,136 @@
|
|
|
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.EgressQueueService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const logger_1 = require("../../../common/logging/logger");
|
|
18
|
+
const cloud_session_manager_service_1 = require("./cloud-session-manager.service");
|
|
19
|
+
const refresh_gate_service_1 = require("./refresh-gate.service");
|
|
20
|
+
const realtime_broadcaster_port_1 = require("../../realtime/ports/realtime-broadcaster.port");
|
|
21
|
+
const logger = (0, logger_1.createLogger)('EgressQueue');
|
|
22
|
+
const MAX_QUEUE_SIZE = 1000;
|
|
23
|
+
const MAX_DELIVERY_ATTEMPTS = 3;
|
|
24
|
+
const DRAIN_INTERVAL_MS = 100;
|
|
25
|
+
const BASE_BACKOFF_MS = 1000;
|
|
26
|
+
const NOTIFICATIONS_SERVICE_URL = process.env.NOTIFICATIONS_SERVICE_URL || 'http://localhost:3003';
|
|
27
|
+
let EgressQueueService = class EgressQueueService {
|
|
28
|
+
constructor(cloudSession, refreshGate, broadcaster) {
|
|
29
|
+
this.cloudSession = cloudSession;
|
|
30
|
+
this.refreshGate = refreshGate;
|
|
31
|
+
this.broadcaster = broadcaster;
|
|
32
|
+
this.queue = [];
|
|
33
|
+
this.drainTimer = null;
|
|
34
|
+
this.paused = false;
|
|
35
|
+
this.pauseBackoffMs = BASE_BACKOFF_MS;
|
|
36
|
+
this.drainTimer = setInterval(() => this.drainOnce(), DRAIN_INTERVAL_MS);
|
|
37
|
+
}
|
|
38
|
+
onModuleDestroy() {
|
|
39
|
+
if (this.drainTimer) {
|
|
40
|
+
clearInterval(this.drainTimer);
|
|
41
|
+
this.drainTimer = null;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
enqueue(payload) {
|
|
45
|
+
if (this.queue.length >= MAX_QUEUE_SIZE) {
|
|
46
|
+
this.queue.shift();
|
|
47
|
+
logger.warn('Queue overflow — dropped oldest entry');
|
|
48
|
+
}
|
|
49
|
+
this.queue.push({ payload, attempts: 0, nextAttemptAt: Date.now() });
|
|
50
|
+
}
|
|
51
|
+
get length() {
|
|
52
|
+
return this.queue.length;
|
|
53
|
+
}
|
|
54
|
+
async drainOnce() {
|
|
55
|
+
if (this.paused || this.queue.length === 0)
|
|
56
|
+
return;
|
|
57
|
+
const now = Date.now();
|
|
58
|
+
const entry = this.queue[0];
|
|
59
|
+
if (!entry || entry.nextAttemptAt > now)
|
|
60
|
+
return;
|
|
61
|
+
const token = this.cloudSession.getAccessToken();
|
|
62
|
+
if (!token)
|
|
63
|
+
return;
|
|
64
|
+
try {
|
|
65
|
+
const response = await fetch(`${NOTIFICATIONS_SERVICE_URL}/api/v1/ingest/local-app`, {
|
|
66
|
+
method: 'POST',
|
|
67
|
+
headers: {
|
|
68
|
+
'Content-Type': 'application/json',
|
|
69
|
+
Authorization: `Bearer ${token}`,
|
|
70
|
+
},
|
|
71
|
+
body: JSON.stringify(entry.payload),
|
|
72
|
+
});
|
|
73
|
+
if (response.ok || response.status === 409) {
|
|
74
|
+
this.queue.shift();
|
|
75
|
+
this.pauseBackoffMs = BASE_BACKOFF_MS;
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
if (response.status === 401) {
|
|
79
|
+
await this.handle401();
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
entry.attempts++;
|
|
83
|
+
if (entry.attempts >= MAX_DELIVERY_ATTEMPTS) {
|
|
84
|
+
this.queue.shift();
|
|
85
|
+
logger.warn({ sourceEventId: entry.payload.sourceEventId, attempts: entry.attempts }, 'Dropping event after max delivery attempts');
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
entry.nextAttemptAt = now + BASE_BACKOFF_MS * Math.pow(2, entry.attempts - 1);
|
|
89
|
+
logger.debug({ sourceEventId: entry.payload.sourceEventId, attempt: entry.attempts }, 'Delivery failed — scheduling retry');
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
entry.attempts++;
|
|
93
|
+
if (entry.attempts >= MAX_DELIVERY_ATTEMPTS) {
|
|
94
|
+
this.queue.shift();
|
|
95
|
+
logger.warn({ sourceEventId: entry.payload.sourceEventId, error }, 'Dropping event after network error');
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
entry.nextAttemptAt = now + BASE_BACKOFF_MS * Math.pow(2, entry.attempts - 1);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async handle401() {
|
|
102
|
+
this.paused = true;
|
|
103
|
+
logger.info('401 received — initiating single-flight refresh');
|
|
104
|
+
const outcome = await this.refreshGate.attemptRefresh();
|
|
105
|
+
switch (outcome) {
|
|
106
|
+
case 'success':
|
|
107
|
+
this.paused = false;
|
|
108
|
+
this.pauseBackoffMs = BASE_BACKOFF_MS;
|
|
109
|
+
logger.info('Refresh succeeded — resuming queue');
|
|
110
|
+
break;
|
|
111
|
+
case 'transient_failure':
|
|
112
|
+
this.pauseBackoffMs = Math.min(this.pauseBackoffMs * 2, 30_000);
|
|
113
|
+
logger.warn({ backoffMs: this.pauseBackoffMs }, 'Transient refresh failure — pausing with backoff');
|
|
114
|
+
setTimeout(() => {
|
|
115
|
+
this.paused = false;
|
|
116
|
+
}, this.pauseBackoffMs);
|
|
117
|
+
break;
|
|
118
|
+
case 'permanent_failure':
|
|
119
|
+
logger.warn('Permanent refresh failure — draining queue');
|
|
120
|
+
this.queue = [];
|
|
121
|
+
this.paused = false;
|
|
122
|
+
this.broadcaster.broadcastEvent('cloud', 'egress_disconnected', {
|
|
123
|
+
reason: 'refresh_failed',
|
|
124
|
+
});
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
exports.EgressQueueService = EgressQueueService;
|
|
130
|
+
exports.EgressQueueService = EgressQueueService = __decorate([
|
|
131
|
+
(0, common_1.Injectable)(),
|
|
132
|
+
__param(2, (0, common_1.Inject)(realtime_broadcaster_port_1.REALTIME_BROADCASTER)),
|
|
133
|
+
__metadata("design:paramtypes", [cloud_session_manager_service_1.CloudSessionManagerService,
|
|
134
|
+
refresh_gate_service_1.RefreshGateService, Object])
|
|
135
|
+
], EgressQueueService);
|
|
136
|
+
//# sourceMappingURL=egress-queue.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"egress-queue.service.js","sourceRoot":"","sources":["../../../../src/modules/cloud/services/egress-queue.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
2
|
+
import type { CloudTokens } from '../types';
|
|
3
|
+
export declare class EncryptedTokenStoreService {
|
|
4
|
+
private readonly db;
|
|
5
|
+
private sqlite;
|
|
6
|
+
private encryptionKey;
|
|
7
|
+
constructor(db: BetterSQLite3Database);
|
|
8
|
+
private getEncryptionKey;
|
|
9
|
+
private getOrCreateSecret;
|
|
10
|
+
private encrypt;
|
|
11
|
+
private decrypt;
|
|
12
|
+
store(tokens: CloudTokens): void;
|
|
13
|
+
retrieve(): CloudTokens | null;
|
|
14
|
+
clear(): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,131 @@
|
|
|
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.EncryptedTokenStoreService = 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)('EncryptedTokenStore');
|
|
26
|
+
const APP_SALT = Buffer.from('devchain-cloud-token-store-v1-salt', 'utf8');
|
|
27
|
+
const SETTINGS_KEY = 'cloud.tokens.encrypted';
|
|
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 EncryptedTokenStoreService = class EncryptedTokenStoreService {
|
|
38
|
+
constructor(db) {
|
|
39
|
+
this.db = db;
|
|
40
|
+
this.encryptionKey = null;
|
|
41
|
+
this.sqlite = (0, sqlite_raw_1.getRawSqliteClient)(this.db);
|
|
42
|
+
}
|
|
43
|
+
getEncryptionKey() {
|
|
44
|
+
if (this.encryptionKey) {
|
|
45
|
+
return this.encryptionKey;
|
|
46
|
+
}
|
|
47
|
+
const secret = this.getOrCreateSecret();
|
|
48
|
+
const machineComponent = Buffer.from(`${(0, os_1.hostname)()}:${(0, os_1.userInfo)().username}`, 'utf8');
|
|
49
|
+
const password = Buffer.concat([secret, machineComponent]);
|
|
50
|
+
this.encryptionKey = (0, crypto_1.scryptSync)(password, APP_SALT, KEY_LENGTH, {
|
|
51
|
+
N: SCRYPT_COST,
|
|
52
|
+
r: SCRYPT_BLOCK_SIZE,
|
|
53
|
+
p: SCRYPT_PARALLELIZATION,
|
|
54
|
+
});
|
|
55
|
+
return this.encryptionKey;
|
|
56
|
+
}
|
|
57
|
+
getOrCreateSecret() {
|
|
58
|
+
if ((0, fs_1.existsSync)(SECRET_FILE)) {
|
|
59
|
+
return (0, fs_1.readFileSync)(SECRET_FILE);
|
|
60
|
+
}
|
|
61
|
+
if (!(0, fs_1.existsSync)(SECRET_DIR)) {
|
|
62
|
+
(0, fs_1.mkdirSync)(SECRET_DIR, { recursive: true, mode: 0o700 });
|
|
63
|
+
}
|
|
64
|
+
const secret = (0, crypto_1.randomBytes)(SECRET_LENGTH);
|
|
65
|
+
(0, fs_1.writeFileSync)(SECRET_FILE, secret, { mode: 0o600 });
|
|
66
|
+
(0, fs_1.chmodSync)(SECRET_FILE, 0o600);
|
|
67
|
+
logger.info('Created new cloud token encryption secret');
|
|
68
|
+
return secret;
|
|
69
|
+
}
|
|
70
|
+
encrypt(plaintext) {
|
|
71
|
+
const key = this.getEncryptionKey();
|
|
72
|
+
const iv = (0, crypto_1.randomBytes)(IV_LENGTH);
|
|
73
|
+
const cipher = (0, crypto_1.createCipheriv)('aes-256-gcm', key, iv, {
|
|
74
|
+
authTagLength: AUTH_TAG_LENGTH,
|
|
75
|
+
});
|
|
76
|
+
const encrypted = Buffer.concat([cipher.update(plaintext, 'utf8'), cipher.final()]);
|
|
77
|
+
const authTag = cipher.getAuthTag();
|
|
78
|
+
return Buffer.concat([iv, authTag, encrypted]).toString('base64');
|
|
79
|
+
}
|
|
80
|
+
decrypt(ciphertext) {
|
|
81
|
+
const key = this.getEncryptionKey();
|
|
82
|
+
const data = Buffer.from(ciphertext, 'base64');
|
|
83
|
+
const iv = data.subarray(0, IV_LENGTH);
|
|
84
|
+
const authTag = data.subarray(IV_LENGTH, IV_LENGTH + AUTH_TAG_LENGTH);
|
|
85
|
+
const encrypted = data.subarray(IV_LENGTH + AUTH_TAG_LENGTH);
|
|
86
|
+
const decipher = (0, crypto_1.createDecipheriv)('aes-256-gcm', key, iv, {
|
|
87
|
+
authTagLength: AUTH_TAG_LENGTH,
|
|
88
|
+
});
|
|
89
|
+
decipher.setAuthTag(authTag);
|
|
90
|
+
return decipher.update(encrypted) + decipher.final('utf8');
|
|
91
|
+
}
|
|
92
|
+
store(tokens) {
|
|
93
|
+
const plaintext = JSON.stringify(tokens);
|
|
94
|
+
const encrypted = this.encrypt(plaintext);
|
|
95
|
+
const now = new Date().toISOString();
|
|
96
|
+
this.sqlite
|
|
97
|
+
.prepare(`INSERT INTO settings (id, key, value, created_at, updated_at)
|
|
98
|
+
VALUES (lower(hex(randomblob(16))), ?, ?, ?, ?)
|
|
99
|
+
ON CONFLICT(key) DO UPDATE SET value = excluded.value, updated_at = excluded.updated_at`)
|
|
100
|
+
.run(SETTINGS_KEY, encrypted, now, now);
|
|
101
|
+
logger.info({ userId: tokens.userId }, 'Cloud tokens stored');
|
|
102
|
+
}
|
|
103
|
+
retrieve() {
|
|
104
|
+
const row = this.sqlite
|
|
105
|
+
.prepare('SELECT value FROM settings WHERE key = ?')
|
|
106
|
+
.get(SETTINGS_KEY);
|
|
107
|
+
if (!row) {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
try {
|
|
111
|
+
const plaintext = this.decrypt(row.value);
|
|
112
|
+
return JSON.parse(plaintext);
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
logger.warn({ error }, 'Failed to decrypt cloud tokens — clearing stale data');
|
|
116
|
+
this.clear();
|
|
117
|
+
return null;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
clear() {
|
|
121
|
+
this.sqlite.prepare('DELETE FROM settings WHERE key = ?').run(SETTINGS_KEY);
|
|
122
|
+
logger.info('Cloud tokens cleared');
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
exports.EncryptedTokenStoreService = EncryptedTokenStoreService;
|
|
126
|
+
exports.EncryptedTokenStoreService = EncryptedTokenStoreService = __decorate([
|
|
127
|
+
(0, common_1.Injectable)(),
|
|
128
|
+
__param(0, (0, common_1.Inject)(db_provider_1.DB_CONNECTION)),
|
|
129
|
+
__metadata("design:paramtypes", [better_sqlite3_1.BetterSQLite3Database])
|
|
130
|
+
], EncryptedTokenStoreService);
|
|
131
|
+
//# sourceMappingURL=encrypted-token-store.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encrypted-token-store.service.js","sourceRoot":"","sources":["../../../../src/modules/cloud/services/encrypted-token-store.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { EpicCreatedEventPayload } from '../../events/catalog/epic.created';
|
|
2
|
+
import type { EpicDeletedEventPayload } from '../../events/catalog/epic.deleted';
|
|
3
|
+
import type { EpicUpdatedEventPayload } from '../../events/catalog/epic.updated';
|
|
4
|
+
import type { EpicCommentCreatedEventPayload } from '../../events/catalog/epic.comment.created';
|
|
5
|
+
import type { SessionCrashedEventPayload } from '../../events/catalog/session.crashed';
|
|
6
|
+
import type { SessionStoppedEventPayload } from '../../events/catalog/session.stopped';
|
|
7
|
+
export interface IngestPayload {
|
|
8
|
+
source: 'workflow';
|
|
9
|
+
sourceEventId: string;
|
|
10
|
+
sourceEventType: string;
|
|
11
|
+
forwardingUserId: string;
|
|
12
|
+
recipientMode: 'self';
|
|
13
|
+
recipientHints: never[];
|
|
14
|
+
occurredAt: string;
|
|
15
|
+
payload: Record<string, unknown>;
|
|
16
|
+
projectId: string | null;
|
|
17
|
+
orgId: null;
|
|
18
|
+
}
|
|
19
|
+
type AllowlistedEvent = {
|
|
20
|
+
name: 'epic.created';
|
|
21
|
+
payload: EpicCreatedEventPayload;
|
|
22
|
+
} | {
|
|
23
|
+
name: 'epic.updated';
|
|
24
|
+
payload: EpicUpdatedEventPayload;
|
|
25
|
+
} | {
|
|
26
|
+
name: 'epic.deleted';
|
|
27
|
+
payload: EpicDeletedEventPayload;
|
|
28
|
+
} | {
|
|
29
|
+
name: 'epic.comment.created';
|
|
30
|
+
payload: EpicCommentCreatedEventPayload;
|
|
31
|
+
} | {
|
|
32
|
+
name: 'session.crashed';
|
|
33
|
+
payload: SessionCrashedEventPayload;
|
|
34
|
+
} | {
|
|
35
|
+
name: 'session.stopped';
|
|
36
|
+
payload: SessionStoppedEventPayload;
|
|
37
|
+
};
|
|
38
|
+
export declare class EventMapperService {
|
|
39
|
+
mapToIngestPayload(event: AllowlistedEvent, sourceEventId: string, forwardingUserId: string): IngestPayload;
|
|
40
|
+
private extractProjectId;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.EventMapperService = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
let EventMapperService = class EventMapperService {
|
|
12
|
+
mapToIngestPayload(event, sourceEventId, forwardingUserId) {
|
|
13
|
+
const projectId = this.extractProjectId(event);
|
|
14
|
+
return {
|
|
15
|
+
source: 'workflow',
|
|
16
|
+
sourceEventId,
|
|
17
|
+
sourceEventType: event.name,
|
|
18
|
+
forwardingUserId,
|
|
19
|
+
recipientMode: 'self',
|
|
20
|
+
recipientHints: [],
|
|
21
|
+
occurredAt: new Date().toISOString(),
|
|
22
|
+
payload: event.payload,
|
|
23
|
+
projectId,
|
|
24
|
+
orgId: null,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
extractProjectId(event) {
|
|
28
|
+
switch (event.name) {
|
|
29
|
+
case 'epic.created':
|
|
30
|
+
case 'epic.updated':
|
|
31
|
+
case 'epic.deleted':
|
|
32
|
+
case 'epic.comment.created':
|
|
33
|
+
return event.payload.projectId;
|
|
34
|
+
case 'session.crashed':
|
|
35
|
+
case 'session.stopped':
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
exports.EventMapperService = EventMapperService;
|
|
41
|
+
exports.EventMapperService = EventMapperService = __decorate([
|
|
42
|
+
(0, common_1.Injectable)()
|
|
43
|
+
], EventMapperService);
|
|
44
|
+
//# sourceMappingURL=event-mapper.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-mapper.service.js","sourceRoot":"","sources":["../../../../src/modules/cloud/services/event-mapper.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AA8BrC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,kBAAkB,CAChB,KAAuB,EACvB,aAAqB,EACrB,gBAAwB;QAExB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE/C,OAAO;YACL,MAAM,EAAE,UAAU;YAClB,aAAa;YACb,eAAe,EAAE,KAAK,CAAC,IAAI;YAC3B,gBAAgB;YAChB,aAAa,EAAE,MAAM;YACrB,cAAc,EAAE,EAAE;YAClB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,OAAO,EAAE,KAAK,CAAC,OAA6C;YAC5D,SAAS;YACT,KAAK,EAAE,IAAI;SACZ,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,KAAuB;QAC9C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc,CAAC;YACpB,KAAK,sBAAsB;gBACzB,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YACjC,KAAK,iBAAiB,CAAC;YACvB,KAAK,iBAAiB;gBACpB,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;CACF,CAAA;AAlCY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CAkC9B"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
2
|
+
import type { SessionActivityChangedEventPayload } from '../../events/catalog/session.activity.changed';
|
|
3
|
+
import { CloudSessionManagerService } from './cloud-session-manager.service';
|
|
4
|
+
import { RefreshGateService } from './refresh-gate.service';
|
|
5
|
+
interface TouchProjectOptions {
|
|
6
|
+
respectThrottle?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare class ProjectActivityReporterService {
|
|
9
|
+
private readonly cloudSession;
|
|
10
|
+
private readonly refreshGate;
|
|
11
|
+
private readonly sqlite;
|
|
12
|
+
private readonly lastTouchedByProjectId;
|
|
13
|
+
constructor(db: BetterSQLite3Database, cloudSession: CloudSessionManagerService, refreshGate: RefreshGateService);
|
|
14
|
+
onSessionActivityChanged(payload: SessionActivityChangedEventPayload): Promise<void>;
|
|
15
|
+
touchProject(projectId: string, options?: TouchProjectOptions): Promise<null>;
|
|
16
|
+
private resolveSessionProjectId;
|
|
17
|
+
private isThrottled;
|
|
18
|
+
private forwardUpstream;
|
|
19
|
+
private callUpstream;
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,138 @@
|
|
|
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.ProjectActivityReporterService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const event_emitter_1 = require("@nestjs/event-emitter");
|
|
18
|
+
const better_sqlite3_1 = require("drizzle-orm/better-sqlite3");
|
|
19
|
+
const logger_1 = require("../../../common/logging/logger");
|
|
20
|
+
const db_provider_1 = require("../../storage/db/db.provider");
|
|
21
|
+
const sqlite_raw_1 = require("../../storage/db/sqlite-raw");
|
|
22
|
+
const cloud_session_manager_service_1 = require("./cloud-session-manager.service");
|
|
23
|
+
const refresh_gate_service_1 = require("./refresh-gate.service");
|
|
24
|
+
const PROJECT_ACTIVITY_THROTTLE_MS = 60_000;
|
|
25
|
+
const logger = (0, logger_1.createLogger)('ProjectActivityReporter');
|
|
26
|
+
let ProjectActivityReporterService = class ProjectActivityReporterService {
|
|
27
|
+
constructor(db, cloudSession, refreshGate) {
|
|
28
|
+
this.cloudSession = cloudSession;
|
|
29
|
+
this.refreshGate = refreshGate;
|
|
30
|
+
this.lastTouchedByProjectId = new Map();
|
|
31
|
+
this.sqlite = (0, sqlite_raw_1.getRawSqliteClient)(db);
|
|
32
|
+
}
|
|
33
|
+
async onSessionActivityChanged(payload) {
|
|
34
|
+
if (payload.state !== 'busy')
|
|
35
|
+
return;
|
|
36
|
+
const projectId = this.resolveSessionProjectId(payload.sessionId);
|
|
37
|
+
if (!projectId)
|
|
38
|
+
return;
|
|
39
|
+
try {
|
|
40
|
+
await this.touchProject(projectId);
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
logger.debug({ error, projectId, sessionId: payload.sessionId }, 'Activity touch failed');
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
async touchProject(projectId, options = {}) {
|
|
47
|
+
const normalizedProjectId = projectId.trim();
|
|
48
|
+
if (!normalizedProjectId) {
|
|
49
|
+
throw new common_1.HttpException('Project id is required', common_1.HttpStatus.BAD_REQUEST);
|
|
50
|
+
}
|
|
51
|
+
const respectThrottle = options.respectThrottle ?? true;
|
|
52
|
+
if (respectThrottle && this.isThrottled(normalizedProjectId)) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
if (respectThrottle) {
|
|
56
|
+
this.lastTouchedByProjectId.set(normalizedProjectId, Date.now());
|
|
57
|
+
}
|
|
58
|
+
return this.forwardUpstream('POST', `/api/v1/activity/projects/${encodeURIComponent(normalizedProjectId)}/touch`);
|
|
59
|
+
}
|
|
60
|
+
resolveSessionProjectId(sessionId) {
|
|
61
|
+
const row = this.sqlite
|
|
62
|
+
.prepare(`SELECT agents.project_id AS projectId
|
|
63
|
+
FROM sessions
|
|
64
|
+
JOIN agents ON agents.id = sessions.agent_id
|
|
65
|
+
WHERE sessions.id = ?`)
|
|
66
|
+
.get(sessionId);
|
|
67
|
+
return row?.projectId ?? null;
|
|
68
|
+
}
|
|
69
|
+
isThrottled(projectId) {
|
|
70
|
+
const lastTouchedAt = this.lastTouchedByProjectId.get(projectId);
|
|
71
|
+
return lastTouchedAt !== undefined && Date.now() - lastTouchedAt < PROJECT_ACTIVITY_THROTTLE_MS;
|
|
72
|
+
}
|
|
73
|
+
async forwardUpstream(method, path, body) {
|
|
74
|
+
const status = this.cloudSession.getStatus();
|
|
75
|
+
if (!status.connected)
|
|
76
|
+
throw new common_1.UnauthorizedException('Cloud is not connected');
|
|
77
|
+
return this.callUpstream(method, path, body, this.cloudSession.getAccessToken());
|
|
78
|
+
}
|
|
79
|
+
async callUpstream(method, path, body, token) {
|
|
80
|
+
if (!token)
|
|
81
|
+
throw new common_1.UnauthorizedException('No access token');
|
|
82
|
+
const baseUrl = process.env.NOTIFICATIONS_SERVICE_URL ?? 'http://localhost:3003';
|
|
83
|
+
const hasBody = body !== undefined;
|
|
84
|
+
const headers = {
|
|
85
|
+
Authorization: `Bearer ${token}`,
|
|
86
|
+
...(hasBody ? { 'Content-Type': 'application/json' } : {}),
|
|
87
|
+
};
|
|
88
|
+
const init = {
|
|
89
|
+
method,
|
|
90
|
+
headers,
|
|
91
|
+
...(hasBody ? { body: JSON.stringify(body) } : {}),
|
|
92
|
+
};
|
|
93
|
+
const res = await fetch(`${baseUrl}${path}`, init);
|
|
94
|
+
if (res.status === 401) {
|
|
95
|
+
const outcome = await this.refreshGate.attemptRefresh();
|
|
96
|
+
if (outcome === 'success') {
|
|
97
|
+
const refreshed = this.cloudSession.getAccessToken();
|
|
98
|
+
if (!refreshed)
|
|
99
|
+
throw new common_1.UnauthorizedException('Refresh succeeded but no token');
|
|
100
|
+
const retryHeaders = {
|
|
101
|
+
Authorization: `Bearer ${refreshed}`,
|
|
102
|
+
...(hasBody ? { 'Content-Type': 'application/json' } : {}),
|
|
103
|
+
};
|
|
104
|
+
const retry = await fetch(`${baseUrl}${path}`, { ...init, headers: retryHeaders });
|
|
105
|
+
if (!retry.ok)
|
|
106
|
+
throw new common_1.HttpException(await safeText(retry), retry.status);
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
throw new common_1.UnauthorizedException('Cloud session expired');
|
|
110
|
+
}
|
|
111
|
+
if (!res.ok)
|
|
112
|
+
throw new common_1.HttpException(await safeText(res), res.status);
|
|
113
|
+
return null;
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
exports.ProjectActivityReporterService = ProjectActivityReporterService;
|
|
117
|
+
__decorate([
|
|
118
|
+
(0, event_emitter_1.OnEvent)('session.activity.changed', { async: true }),
|
|
119
|
+
__metadata("design:type", Function),
|
|
120
|
+
__metadata("design:paramtypes", [Object]),
|
|
121
|
+
__metadata("design:returntype", Promise)
|
|
122
|
+
], ProjectActivityReporterService.prototype, "onSessionActivityChanged", null);
|
|
123
|
+
exports.ProjectActivityReporterService = ProjectActivityReporterService = __decorate([
|
|
124
|
+
(0, common_1.Injectable)(),
|
|
125
|
+
__param(0, (0, common_1.Inject)(db_provider_1.DB_CONNECTION)),
|
|
126
|
+
__metadata("design:paramtypes", [better_sqlite3_1.BetterSQLite3Database,
|
|
127
|
+
cloud_session_manager_service_1.CloudSessionManagerService,
|
|
128
|
+
refresh_gate_service_1.RefreshGateService])
|
|
129
|
+
], ProjectActivityReporterService);
|
|
130
|
+
async function safeText(res) {
|
|
131
|
+
try {
|
|
132
|
+
return await res.text();
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
return '';
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=project-activity-reporter.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-activity-reporter.service.js","sourceRoot":"","sources":["../../../../src/modules/cloud/services/project-activity-reporter.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
2
|
+
export declare class ProjectEgressConfigService {
|
|
3
|
+
private readonly db;
|
|
4
|
+
private sqlite;
|
|
5
|
+
private cache;
|
|
6
|
+
constructor(db: BetterSQLite3Database);
|
|
7
|
+
isEnabled(projectId: string): boolean;
|
|
8
|
+
hasAnyEnabled(): boolean;
|
|
9
|
+
setEnabled(projectId: string, enabled: boolean): void;
|
|
10
|
+
getAll(): Record<string, boolean>;
|
|
11
|
+
private getMap;
|
|
12
|
+
private persist;
|
|
13
|
+
}
|