devchain-cli 0.19.1 → 0.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/drizzle/0069_fluffy_exodus.sql +2 -0
- package/dist/drizzle/0070_lyrical_tombstone.sql +1 -0
- package/dist/drizzle/0071_special_avengers.sql +22 -0
- package/dist/drizzle/meta/0069_snapshot.json +5767 -0
- package/dist/drizzle/meta/0070_snapshot.json +5774 -0
- package/dist/drizzle/meta/0071_snapshot.json +5931 -0
- package/dist/drizzle/meta/_journal.json +22 -1
- package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts +0 -1
- package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js +0 -2
- package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js.map +1 -1
- package/dist/node_modules/@devchain/shared/e2ee/base64.js +1 -1
- package/dist/node_modules/@devchain/shared/e2ee/base64.js.map +1 -1
- package/dist/node_modules/@devchain/shared/host-resolver.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/host-resolver.js.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/claude-launch-settings.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/claude-launch-settings.js +23 -0
- package/dist/node_modules/@devchain/shared/schemas/claude-launch-settings.js.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts +475 -15
- package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/schemas/export-schema.js +22 -9
- package/dist/node_modules/@devchain/shared/schemas/export-schema.js.map +1 -1
- package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
- package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts.map +1 -1
- package/dist/node_modules/@devchain/shared/tunnel-protocol.js +0 -1
- package/dist/node_modules/@devchain/shared/tunnel-protocol.js.map +1 -1
- package/dist/server/app.main.module.js +0 -2
- package/dist/server/app.main.module.js.map +1 -1
- package/dist/server/app.normal.module.js +0 -2
- package/dist/server/app.normal.module.js.map +1 -1
- package/dist/server/common/config/container-scope.d.ts +4 -0
- package/dist/server/common/config/container-scope.js +11 -0
- package/dist/server/common/config/container-scope.js.map +1 -0
- package/dist/server/common/test/app-bootstrap.helper.js +1 -0
- package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js +11 -4
- package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.d.ts +1 -3
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js +1 -1
- package/dist/server/modules/agent-message-delivery/adapters/legacy-recipient-resolver.adapter.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js +0 -2
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.module.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.d.ts +1 -0
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +19 -7
- package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -1
- package/dist/server/modules/agent-message-delivery/dtos/delivery.types.d.ts +16 -5
- package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.d.ts +1 -3
- package/dist/server/modules/agent-message-delivery/ports/delivery-recipient-resolver.js.map +1 -1
- package/dist/server/modules/agents/controllers/agents.controller.d.ts +1 -0
- package/dist/server/modules/agents/controllers/agents.controller.js +7 -1
- package/dist/server/modules/agents/controllers/agents.controller.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
- package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.d.ts +1 -1
- package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +0 -8
- package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -1
- package/dist/server/modules/epics/services/epics.service.d.ts +2 -0
- package/dist/server/modules/epics/services/epics.service.js +17 -3
- package/dist/server/modules/epics/services/epics.service.js.map +1 -1
- package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.d.ts +6 -0
- package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.js +111 -34
- package/dist/server/modules/epics/subscribers/epic-assignment-notifier.subscriber.js.map +1 -1
- package/dist/server/modules/events/catalog/agent.message.sent.d.ts +89 -0
- package/dist/server/modules/events/catalog/agent.message.sent.js +16 -0
- package/dist/server/modules/events/catalog/agent.message.sent.js.map +1 -1
- package/dist/server/modules/events/catalog/broadcast-registry.js +1 -21
- package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
- package/dist/server/modules/events/catalog/index.d.ts +103 -22
- package/dist/server/modules/events/catalog/index.js +9 -3
- package/dist/server/modules/events/catalog/index.js.map +1 -1
- package/dist/server/modules/events/catalog/review.created.d.ts +4 -4
- package/dist/server/modules/events/catalog/session.recommendation.d.ts +2 -2
- package/dist/server/modules/events/catalog/session.stopped.d.ts +14 -0
- package/dist/server/modules/events/catalog/session.stopped.js +10 -1
- package/dist/server/modules/events/catalog/session.stopped.js.map +1 -1
- package/dist/server/modules/events/services/event-log.service.d.ts +3 -3
- package/dist/server/modules/events/services/event-log.service.js +58 -26
- package/dist/server/modules/events/services/event-log.service.js.map +1 -1
- package/dist/server/modules/events/services/events.service.d.ts +1 -1
- package/dist/server/modules/events/services/events.service.js +5 -0
- package/dist/server/modules/events/services/events.service.js.map +1 -1
- package/dist/server/modules/mcp/constants.d.ts +0 -4
- package/dist/server/modules/mcp/constants.js +1 -15
- package/dist/server/modules/mcp/constants.js.map +1 -1
- package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +34 -308
- package/dist/server/modules/mcp/dtos/mcp.dto.js +22 -94
- package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
- package/dist/server/modules/mcp/mcp-full.module.js +2 -2
- package/dist/server/modules/mcp/mcp-full.module.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/chat-context.d.ts +2 -4
- package/dist/server/modules/mcp/services/handlers/chat-tools.d.ts +0 -3
- package/dist/server/modules/mcp/services/handlers/chat-tools.js +81 -382
- package/dist/server/modules/mcp/services/handlers/chat-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/epic-tools.js +7 -3
- package/dist/server/modules/mcp/services/handlers/epic-tools.js.map +1 -1
- package/dist/server/modules/mcp/services/handlers/project-context.d.ts +6 -0
- package/dist/server/modules/mcp/services/handlers/{activity-context.js → project-context.js} +1 -1
- package/dist/server/modules/mcp/services/handlers/project-context.js.map +1 -0
- package/dist/server/modules/mcp/services/handlers/project-tools.d.ts +3 -0
- package/dist/server/modules/mcp/services/handlers/project-tools.js +32 -0
- package/dist/server/modules/mcp/services/handlers/project-tools.js.map +1 -0
- package/dist/server/modules/mcp/services/mappers/dto-mappers.js +1 -0
- package/dist/server/modules/mcp/services/mappers/dto-mappers.js.map +1 -1
- package/dist/server/modules/mcp/services/mcp.service.d.ts +4 -4
- package/dist/server/modules/mcp/services/mcp.service.js +46 -51
- package/dist/server/modules/mcp/services/mcp.service.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js +0 -3
- package/dist/server/modules/mcp/tool-descriptors/chat.bindings.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js +8 -58
- package/dist/server/modules/mcp/tool-descriptors/chat.metadata.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/index.js +4 -4
- package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -1
- package/dist/server/modules/mcp/tool-descriptors/project.bindings.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/project.bindings.js +8 -0
- package/dist/server/modules/mcp/tool-descriptors/project.bindings.js.map +1 -0
- package/dist/server/modules/mcp/tool-descriptors/project.metadata.d.ts +2 -0
- package/dist/server/modules/mcp/tool-descriptors/project.metadata.js +37 -0
- package/dist/server/modules/mcp/tool-descriptors/project.metadata.js.map +1 -0
- package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js +0 -2
- package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js.map +1 -1
- package/dist/server/modules/profiles/dto.d.ts +4 -4
- package/dist/server/modules/project-communication/dtos/project-communication.types.d.ts +44 -0
- package/dist/server/modules/project-communication/dtos/project-communication.types.js +3 -0
- package/dist/server/modules/project-communication/dtos/project-communication.types.js.map +1 -0
- package/dist/server/modules/project-communication/project-communication.module.d.ts +2 -0
- package/dist/server/modules/project-communication/project-communication.module.js +24 -0
- package/dist/server/modules/project-communication/project-communication.module.js.map +1 -0
- package/dist/server/modules/project-communication/project-communication.service.d.ts +16 -0
- package/dist/server/modules/project-communication/project-communication.service.js +224 -0
- package/dist/server/modules/project-communication/project-communication.service.js.map +1 -0
- package/dist/server/modules/projects/controllers/projects.controller.d.ts +4 -11
- package/dist/server/modules/projects/controllers/projects.controller.js +3 -10
- package/dist/server/modules/projects/controllers/projects.controller.js.map +1 -1
- package/dist/server/modules/projects/helpers/project-export.d.ts +2 -5
- package/dist/server/modules/projects/helpers/project-runtime.helpers.d.ts +2 -5
- package/dist/server/modules/projects/helpers/project-runtime.helpers.js.map +1 -1
- package/dist/server/modules/projects/services/projects.service.d.ts +2 -5
- package/dist/server/modules/projects/template-codec/codecs/agents.codec.d.ts +2 -0
- package/dist/server/modules/projects/template-codec/codecs/agents.codec.js +2 -0
- package/dist/server/modules/projects/template-codec/codecs/agents.codec.js.map +1 -1
- package/dist/server/modules/projects/template-codec/codecs/subscribers.codec.d.ts +3 -10
- package/dist/server/modules/projects/template-codec/codecs/subscribers.codec.js.map +1 -1
- package/dist/server/modules/providers/adapters/capabilities/index.d.ts +2 -2
- package/dist/server/modules/providers/adapters/capabilities/index.js +2 -1
- package/dist/server/modules/providers/adapters/capabilities/index.js.map +1 -1
- package/dist/server/modules/providers/adapters/capabilities/provider-plugin.capability.d.ts +6 -0
- package/dist/server/modules/providers/adapters/capabilities/provider-plugin.capability.js +3 -0
- package/dist/server/modules/providers/adapters/capabilities/provider-plugin.capability.js.map +1 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.d.ts +3 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js +6 -0
- package/dist/server/modules/providers/adapters/capabilities/type-guards.js.map +1 -1
- package/dist/server/modules/providers/adapters/claude.adapter.d.ts +6 -2
- package/dist/server/modules/providers/adapters/claude.adapter.js +53 -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 +46 -0
- package/dist/server/modules/providers/adapters/codex.adapter.js.map +1 -1
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.d.ts +15 -0
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.js +62 -0
- package/dist/server/modules/providers/adapters/plugin-catalog.utils.js.map +1 -0
- package/dist/server/modules/providers/controllers/provider-plugin-policy.controller.d.ts +18 -0
- package/dist/server/modules/providers/controllers/provider-plugin-policy.controller.js +149 -0
- package/dist/server/modules/providers/controllers/provider-plugin-policy.controller.js.map +1 -0
- package/dist/server/modules/providers/controllers/provider-plugins.controller.d.ts +8 -0
- package/dist/server/modules/providers/controllers/provider-plugins.controller.js +78 -0
- package/dist/server/modules/providers/controllers/provider-plugins.controller.js.map +1 -0
- package/dist/server/modules/providers/dtos/provider-plugin.dto.d.ts +28 -0
- package/dist/server/modules/providers/dtos/provider-plugin.dto.js +3 -0
- package/dist/server/modules/providers/dtos/provider-plugin.dto.js.map +1 -0
- package/dist/server/modules/providers/providers.module.js +15 -1
- package/dist/server/modules/providers/providers.module.js.map +1 -1
- package/dist/server/modules/providers/services/provider-plugin-policy.service.d.ts +20 -0
- package/dist/server/modules/providers/services/provider-plugin-policy.service.js +146 -0
- package/dist/server/modules/providers/services/provider-plugin-policy.service.js.map +1 -0
- package/dist/server/modules/providers/services/provider-plugins.service.d.ts +21 -0
- package/dist/server/modules/providers/services/provider-plugins.service.js +169 -0
- package/dist/server/modules/providers/services/provider-plugins.service.js.map +1 -0
- package/dist/server/modules/registry/controllers/templates.controller.d.ts +14 -2
- package/dist/server/modules/reviews/dtos/review.dto.d.ts +2 -2
- package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.js +0 -1
- package/dist/server/modules/reviews/subscribers/review-comment-notifier.subscriber.js.map +1 -1
- package/dist/server/modules/runtime-context-capture/claude-launch-settings-materializer.service.d.ts +9 -1
- package/dist/server/modules/runtime-context-capture/claude-launch-settings-materializer.service.js +102 -16
- package/dist/server/modules/runtime-context-capture/claude-launch-settings-materializer.service.js.map +1 -1
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.d.ts +53 -0
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +842 -0
- package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -0
- package/dist/server/modules/runtime-context-capture/index.d.ts +2 -1
- package/dist/server/modules/runtime-context-capture/index.js +5 -1
- package/dist/server/modules/runtime-context-capture/index.js.map +1 -1
- package/dist/server/modules/runtime-context-capture/runtime-context-capture.module.js +11 -2
- package/dist/server/modules/runtime-context-capture/runtime-context-capture.module.js.map +1 -1
- package/dist/server/modules/scheduled-epics/dtos/scheduled-epic.dto.d.ts +1 -1
- package/dist/server/modules/session-reader/data/pricing.json +32 -19
- package/dist/server/modules/sessions/controllers/sessions.controller.js +4 -1
- package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
- package/dist/server/modules/sessions/services/delivery-failure-disclosure.d.ts +12 -0
- package/dist/server/modules/sessions/services/delivery-failure-disclosure.js +25 -0
- package/dist/server/modules/sessions/services/delivery-failure-disclosure.js.map +1 -0
- package/dist/server/modules/sessions/services/delivery-failure-notifier.service.js +7 -3
- package/dist/server/modules/sessions/services/delivery-failure-notifier.service.js.map +1 -1
- package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +2 -1
- package/dist/server/modules/sessions/services/message-enqueue.service.js +1 -0
- package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
- package/dist/server/modules/sessions/services/message-pool.types.d.ts +4 -1
- package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js +8 -2
- package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +20 -0
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +26 -2
- package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.d.ts +5 -1
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +70 -12
- package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.d.ts +5 -1
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +68 -10
- package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
- package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +2 -1
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js +63 -28
- package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
- package/dist/server/modules/sessions/services/sessions.service.d.ts +6 -3
- package/dist/server/modules/sessions/services/sessions.service.js +82 -92
- package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
- package/dist/server/modules/sessions/utils/profile-options.d.ts +1 -0
- package/dist/server/modules/sessions/utils/profile-options.js +7 -0
- package/dist/server/modules/sessions/utils/profile-options.js.map +1 -1
- package/dist/server/modules/storage/db/schema.d.ts +255 -0
- package/dist/server/modules/storage/db/schema.js +34 -3
- package/dist/server/modules/storage/db/schema.js.map +1 -1
- package/dist/server/modules/storage/interfaces/storage.interface.d.ts +15 -3
- package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/agent.delegate.d.ts +1 -0
- package/dist/server/modules/storage/local/delegates/agent.delegate.js +43 -1
- package/dist/server/modules/storage/local/delegates/agent.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/epic.delegate.js +6 -0
- package/dist/server/modules/storage/local/delegates/epic.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/project.delegate.d.ts +1 -0
- package/dist/server/modules/storage/local/delegates/project.delegate.js +21 -0
- package/dist/server/modules/storage/local/delegates/project.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/delegates/provider-plugin-policy.delegate.d.ts +13 -0
- package/dist/server/modules/storage/local/delegates/provider-plugin-policy.delegate.js +90 -0
- package/dist/server/modules/storage/local/delegates/provider-plugin-policy.delegate.js.map +1 -0
- package/dist/server/modules/storage/local/delegates/review.delegate.d.ts +0 -1
- package/dist/server/modules/storage/local/delegates/review.delegate.js +0 -20
- package/dist/server/modules/storage/local/delegates/review.delegate.js.map +1 -1
- package/dist/server/modules/storage/local/local-storage.service.d.ts +12 -2
- package/dist/server/modules/storage/local/local-storage.service.js +33 -3
- package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
- package/dist/server/modules/storage/models/domain.models.d.ts +26 -5
- package/dist/server/modules/subscribers/actions/restart-agent.action.js +4 -1
- package/dist/server/modules/subscribers/actions/restart-agent.action.js.map +1 -1
- package/dist/server/modules/subscribers/actions/send-message.action.js +47 -12
- package/dist/server/modules/subscribers/actions/send-message.action.js.map +1 -1
- package/dist/server/modules/subscribers/dtos/subscriber.dto.d.ts +231 -23
- package/dist/server/modules/subscribers/dtos/subscriber.dto.js +10 -5
- package/dist/server/modules/subscribers/dtos/subscriber.dto.js.map +1 -1
- package/dist/server/modules/subscribers/events/event-fields-catalog.js +6 -1
- package/dist/server/modules/subscribers/events/event-fields-catalog.js.map +1 -1
- package/dist/server/modules/subscribers/services/subscriber-executor.service.d.ts +3 -0
- package/dist/server/modules/subscribers/services/subscriber-executor.service.js +44 -0
- package/dist/server/modules/subscribers/services/subscriber-executor.service.js.map +1 -1
- package/dist/server/modules/teams/services/teams.service.js +4 -1
- package/dist/server/modules/teams/services/teams.service.js.map +1 -1
- package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.js +3 -1
- package/dist/server/modules/teams/subscribers/team-membership-changed-notifier.subscriber.js.map +1 -1
- package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +0 -6
- package/dist/server/modules/terminal/gateways/terminal.gateway.js +1 -33
- package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.d.ts +2 -1
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js +38 -0
- package/dist/server/modules/terminal/services/terminal-io/lifecycle.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +13 -2
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +141 -25
- package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
- package/dist/server/modules/terminal/services/terminal-io/types.d.ts +15 -0
- package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js +8 -5
- package/dist/server/modules/terminal/services/terminal-registry-rehydrator.service.js.map +1 -1
- package/dist/server/modules/watchers/dtos/watcher.dto.d.ts +2 -2
- package/dist/server/templates/teams-dev.json +157 -104
- package/dist/server/tsconfig.tsbuildinfo +1 -1
- package/dist/server/ui/assets/{ReviewDetailPage-yOe1a_fn.js → ReviewDetailPage-BZoAe0G2.js} +1 -1
- package/dist/server/ui/assets/{ReviewsPage-Bib-IgPo.js → ReviewsPage-J3XZDw7k.js} +1 -1
- package/dist/server/ui/assets/index-CxmSxl5f.css +32 -0
- package/dist/server/ui/assets/index-DoKUmi74.js +1153 -0
- package/dist/server/ui/assets/{useReviewSubscription-BmU3yczR.js → useReviewSubscription-CNUx-AWQ.js} +19 -19
- package/dist/server/ui/index.html +2 -2
- package/dist/templates/teams-dev.json +157 -104
- package/package.json +16 -2
- package/dist/drizzle/PHASE2_MIGRATION_GUIDE.md +0 -109
- package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.d.ts +0 -22
- package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js +0 -64
- package/dist/server/modules/agent-message-delivery/subscribers/chat-message-delivery.subscriber.js.map +0 -1
- package/dist/server/modules/chat/chat.module.d.ts +0 -2
- package/dist/server/modules/chat/chat.module.js +0 -38
- package/dist/server/modules/chat/chat.module.js.map +0 -1
- package/dist/server/modules/chat/controllers/chat-settings.controller.d.ts +0 -8
- package/dist/server/modules/chat/controllers/chat-settings.controller.js +0 -67
- package/dist/server/modules/chat/controllers/chat-settings.controller.js.map +0 -1
- package/dist/server/modules/chat/controllers/chat.controller.d.ts +0 -15
- package/dist/server/modules/chat/controllers/chat.controller.js +0 -153
- package/dist/server/modules/chat/controllers/chat.controller.js.map +0 -1
- package/dist/server/modules/chat/dtos/chat-settings.dto.d.ts +0 -31
- package/dist/server/modules/chat/dtos/chat-settings.dto.js +0 -17
- package/dist/server/modules/chat/dtos/chat-settings.dto.js.map +0 -1
- package/dist/server/modules/chat/dtos/chat.dto.d.ts +0 -309
- package/dist/server/modules/chat/dtos/chat.dto.js +0 -80
- package/dist/server/modules/chat/dtos/chat.dto.js.map +0 -1
- package/dist/server/modules/chat/services/chat-session-invite.service.d.ts +0 -16
- package/dist/server/modules/chat/services/chat-session-invite.service.js +0 -200
- package/dist/server/modules/chat/services/chat-session-invite.service.js.map +0 -1
- package/dist/server/modules/chat/services/chat-settings.service.d.ts +0 -12
- package/dist/server/modules/chat/services/chat-settings.service.js +0 -123
- package/dist/server/modules/chat/services/chat-settings.service.js.map +0 -1
- package/dist/server/modules/chat/services/chat.service.d.ts +0 -47
- package/dist/server/modules/chat/services/chat.service.js +0 -693
- package/dist/server/modules/chat/services/chat.service.js.map +0 -1
- package/dist/server/modules/chat/services/invite-template.util.d.ts +0 -17
- package/dist/server/modules/chat/services/invite-template.util.js +0 -70
- package/dist/server/modules/chat/services/invite-template.util.js.map +0 -1
- package/dist/server/modules/events/catalog/chat.message.read.d.ts +0 -21
- package/dist/server/modules/events/catalog/chat.message.read.js +0 -14
- package/dist/server/modules/events/catalog/chat.message.read.js.map +0 -1
- package/dist/server/modules/mcp/services/handlers/activity-context.d.ts +0 -6
- package/dist/server/modules/mcp/services/handlers/activity-context.js.map +0 -1
- package/dist/server/modules/mcp/services/handlers/activity-tools.d.ts +0 -4
- package/dist/server/modules/mcp/services/handlers/activity-tools.js +0 -179
- package/dist/server/modules/mcp/services/handlers/activity-tools.js.map +0 -1
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.d.ts +0 -2
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js +0 -9
- package/dist/server/modules/mcp/tool-descriptors/activity.bindings.js.map +0 -1
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.d.ts +0 -2
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js +0 -49
- package/dist/server/modules/mcp/tool-descriptors/activity.metadata.js.map +0 -1
- package/dist/server/ui/assets/index-B2TO-QTO.js +0 -1156
- package/dist/server/ui/assets/index-DowJ3ZtQ.css +0 -32
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-plugin-policy.controller.js","sourceRoot":"","sources":["../../../../src/modules/providers/controllers/provider-plugin-policy.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ProviderPluginsService } from '../services/provider-plugins.service';
|
|
2
|
+
export declare class ProviderPluginsController {
|
|
3
|
+
private readonly providerPlugins;
|
|
4
|
+
constructor(providerPlugins: ProviderPluginsService);
|
|
5
|
+
listCatalog(): Promise<import("../dtos/provider-plugin.dto").ProviderPluginCatalogDto>;
|
|
6
|
+
refreshCatalog(): Promise<import("../dtos/provider-plugin.dto").ProviderPluginCatalogDto>;
|
|
7
|
+
install(body: unknown): Promise<import("../dtos/provider-plugin.dto").ProviderPluginInstallDto>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
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.ProviderPluginsController = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const zod_1 = require("zod");
|
|
18
|
+
const logger_1 = require("../../../common/logging/logger");
|
|
19
|
+
const provider_plugins_service_1 = require("../services/provider-plugins.service");
|
|
20
|
+
const logger = (0, logger_1.createLogger)('ProviderPluginsController');
|
|
21
|
+
const ASCII_CONTROL_PATTERN = /[\u0000-\u001f\u007f]/;
|
|
22
|
+
const InstallProviderPluginSchema = zod_1.z
|
|
23
|
+
.object({
|
|
24
|
+
providerId: zod_1.z.string().trim().min(1).max(100),
|
|
25
|
+
pluginId: zod_1.z
|
|
26
|
+
.string()
|
|
27
|
+
.trim()
|
|
28
|
+
.min(1)
|
|
29
|
+
.max(512)
|
|
30
|
+
.refine((value) => !ASCII_CONTROL_PATTERN.test(value), {
|
|
31
|
+
message: 'pluginId must not contain ASCII control characters',
|
|
32
|
+
}),
|
|
33
|
+
})
|
|
34
|
+
.strict();
|
|
35
|
+
let ProviderPluginsController = class ProviderPluginsController {
|
|
36
|
+
providerPlugins;
|
|
37
|
+
constructor(providerPlugins) {
|
|
38
|
+
this.providerPlugins = providerPlugins;
|
|
39
|
+
}
|
|
40
|
+
listCatalog() {
|
|
41
|
+
logger.info('GET /api/provider-plugins');
|
|
42
|
+
return this.providerPlugins.listCatalog();
|
|
43
|
+
}
|
|
44
|
+
refreshCatalog() {
|
|
45
|
+
logger.info('POST /api/provider-plugins/refresh');
|
|
46
|
+
return this.providerPlugins.refreshCatalog();
|
|
47
|
+
}
|
|
48
|
+
install(body) {
|
|
49
|
+
logger.info('POST /api/provider-plugins/install');
|
|
50
|
+
const request = InstallProviderPluginSchema.parse(body);
|
|
51
|
+
return this.providerPlugins.install(request.providerId, request.pluginId);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.ProviderPluginsController = ProviderPluginsController;
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, common_1.Get)(),
|
|
57
|
+
__metadata("design:type", Function),
|
|
58
|
+
__metadata("design:paramtypes", []),
|
|
59
|
+
__metadata("design:returntype", void 0)
|
|
60
|
+
], ProviderPluginsController.prototype, "listCatalog", null);
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, common_1.Post)('refresh'),
|
|
63
|
+
__metadata("design:type", Function),
|
|
64
|
+
__metadata("design:paramtypes", []),
|
|
65
|
+
__metadata("design:returntype", void 0)
|
|
66
|
+
], ProviderPluginsController.prototype, "refreshCatalog", null);
|
|
67
|
+
__decorate([
|
|
68
|
+
(0, common_1.Post)('install'),
|
|
69
|
+
__param(0, (0, common_1.Body)()),
|
|
70
|
+
__metadata("design:type", Function),
|
|
71
|
+
__metadata("design:paramtypes", [Object]),
|
|
72
|
+
__metadata("design:returntype", void 0)
|
|
73
|
+
], ProviderPluginsController.prototype, "install", null);
|
|
74
|
+
exports.ProviderPluginsController = ProviderPluginsController = __decorate([
|
|
75
|
+
(0, common_1.Controller)('api/provider-plugins'),
|
|
76
|
+
__metadata("design:paramtypes", [provider_plugins_service_1.ProviderPluginsService])
|
|
77
|
+
], ProviderPluginsController);
|
|
78
|
+
//# sourceMappingURL=provider-plugins.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-plugins.controller.js","sourceRoot":"","sources":["../../../../src/modules/providers/controllers/provider-plugins.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA6D;AAC7D,6BAAwB;AACxB,2DAA8D;AAC9D,mFAA8E;AAE9E,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,2BAA2B,CAAC,CAAC;AACzD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAEtD,MAAM,2BAA2B,GAAG,OAAC;KAClC,MAAM,CAAC;IACN,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7C,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACrD,OAAO,EAAE,oDAAoD;KAC9D,CAAC;CACL,CAAC;KACD,MAAM,EAAE,CAAC;AAGL,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACP;IAA7B,YAA6B,eAAuC;QAAvC,oBAAe,GAAf,eAAe,CAAwB;IAAG,CAAC;IAGxE,WAAW;QACT,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAGD,cAAc;QACZ,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC;IAC/C,CAAC;IAGD,OAAO,CAAS,IAAa;QAC3B,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5E,CAAC;CACF,CAAA;AArBY,8DAAyB;AAIpC;IADC,IAAA,YAAG,GAAE;;;;4DAIL;AAGD;IADC,IAAA,aAAI,EAAC,SAAS,CAAC;;;;+DAIf;AAGD;IADC,IAAA,aAAI,EAAC,SAAS,CAAC;IACP,WAAA,IAAA,aAAI,GAAE,CAAA;;;;wDAId;oCApBU,yBAAyB;IADrC,IAAA,mBAAU,EAAC,sBAAsB,CAAC;qCAEa,iDAAsB;GADzD,yBAAyB,CAqBrC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface ProviderPluginCatalogEntry {
|
|
2
|
+
pluginId: string;
|
|
3
|
+
name: string;
|
|
4
|
+
description: string | null;
|
|
5
|
+
marketplaceName: string | null;
|
|
6
|
+
version: string | null;
|
|
7
|
+
installed: boolean;
|
|
8
|
+
available: boolean;
|
|
9
|
+
providerEnabled: boolean;
|
|
10
|
+
installationScopes: string[];
|
|
11
|
+
installCount: number | null;
|
|
12
|
+
installPolicy: string | null;
|
|
13
|
+
authPolicy: string | null;
|
|
14
|
+
}
|
|
15
|
+
export interface ProviderPluginDto extends ProviderPluginCatalogEntry {
|
|
16
|
+
providerId: string;
|
|
17
|
+
providerName: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ProviderPluginCatalogDto {
|
|
20
|
+
items: ProviderPluginDto[];
|
|
21
|
+
total: number;
|
|
22
|
+
}
|
|
23
|
+
export interface ProviderPluginInstallDto {
|
|
24
|
+
success: true;
|
|
25
|
+
providerId: string;
|
|
26
|
+
providerName: string;
|
|
27
|
+
pluginId: string;
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-plugin.dto.js","sourceRoot":"","sources":["../../../../src/modules/providers/dtos/provider-plugin.dto.ts"],"names":[],"mappings":""}
|
|
@@ -11,6 +11,8 @@ const common_1 = require("@nestjs/common");
|
|
|
11
11
|
const providers_controller_1 = require("./controllers/providers.controller");
|
|
12
12
|
const provider_models_controller_1 = require("./controllers/provider-models.controller");
|
|
13
13
|
const provider_efforts_controller_1 = require("./controllers/provider-efforts.controller");
|
|
14
|
+
const provider_plugins_controller_1 = require("./controllers/provider-plugins.controller");
|
|
15
|
+
const provider_plugin_policy_controller_1 = require("./controllers/provider-plugin-policy.controller");
|
|
14
16
|
const storage_module_1 = require("../storage/storage.module");
|
|
15
17
|
const adapters_1 = require("./adapters");
|
|
16
18
|
const provider_state_manager_service_1 = require("./services/provider-state-manager.service");
|
|
@@ -23,6 +25,8 @@ const settings_module_1 = require("../settings/settings.module");
|
|
|
23
25
|
const registry_module_1 = require("../registry/registry.module");
|
|
24
26
|
const process_executor_module_1 = require("../terminal/services/process-executor/process-executor.module");
|
|
25
27
|
const provider_effort_seeding_module_1 = require("./services/provider-effort-seeding.module");
|
|
28
|
+
const provider_plugin_policy_service_1 = require("./services/provider-plugin-policy.service");
|
|
29
|
+
const provider_plugins_service_1 = require("./services/provider-plugins.service");
|
|
26
30
|
let ProvidersModule = class ProvidersModule {
|
|
27
31
|
};
|
|
28
32
|
exports.ProvidersModule = ProvidersModule;
|
|
@@ -36,7 +40,13 @@ exports.ProvidersModule = ProvidersModule = __decorate([
|
|
|
36
40
|
process_executor_module_1.ProcessExecutorModule,
|
|
37
41
|
provider_effort_seeding_module_1.ProviderEffortSeedingModule,
|
|
38
42
|
],
|
|
39
|
-
controllers: [
|
|
43
|
+
controllers: [
|
|
44
|
+
providers_controller_1.ProvidersController,
|
|
45
|
+
provider_models_controller_1.ProviderModelsController,
|
|
46
|
+
provider_efforts_controller_1.ProviderEffortsController,
|
|
47
|
+
provider_plugins_controller_1.ProviderPluginsController,
|
|
48
|
+
provider_plugin_policy_controller_1.ProviderPluginPolicyController,
|
|
49
|
+
],
|
|
40
50
|
providers: [
|
|
41
51
|
provider_state_manager_service_1.ProviderStateManager,
|
|
42
52
|
provider_project_sync_service_1.ProviderProjectSyncService,
|
|
@@ -47,6 +57,8 @@ exports.ProvidersModule = ProvidersModule = __decorate([
|
|
|
47
57
|
mcp_registration_1.AntigravityMcpRegistrationAdapter,
|
|
48
58
|
mcp_provider_registration_service_1.McpProviderRegistrationService,
|
|
49
59
|
provider_mcp_ensure_service_1.ProviderMcpEnsureService,
|
|
60
|
+
provider_plugin_policy_service_1.ProviderPluginPolicyService,
|
|
61
|
+
provider_plugins_service_1.ProviderPluginsService,
|
|
50
62
|
],
|
|
51
63
|
exports: [
|
|
52
64
|
provider_project_sync_service_1.ProviderProjectSyncService,
|
|
@@ -54,6 +66,8 @@ exports.ProvidersModule = ProvidersModule = __decorate([
|
|
|
54
66
|
mcp_provider_registration_service_1.McpProviderRegistrationService,
|
|
55
67
|
mcp_registration_1.McpRegistrationPort,
|
|
56
68
|
provider_mcp_ensure_service_1.ProviderMcpEnsureService,
|
|
69
|
+
provider_plugin_policy_service_1.ProviderPluginPolicyService,
|
|
70
|
+
provider_plugins_service_1.ProviderPluginsService,
|
|
57
71
|
],
|
|
58
72
|
})
|
|
59
73
|
], ProvidersModule);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.module.js","sourceRoot":"","sources":["../../../src/modules/providers/providers.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6EAAyE;AACzE,yFAAoF;AACpF,2FAAsF;AACtF,8DAA0D;AAC1D,yCAAoD;AACpD,8FAAiF;AACjF,4FAAsF;AACtF,sFAAiF;AACjF,oGAA8F;AAC9F,wFAAkF;AAClF,kEAKqC;AACrC,iEAA6D;AAC7D,iEAA6D;AAC7D,2GAAsG;AACtG,8FAAwF;
|
|
1
|
+
{"version":3,"file":"providers.module.js","sourceRoot":"","sources":["../../../src/modules/providers/providers.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6EAAyE;AACzE,yFAAoF;AACpF,2FAAsF;AACtF,2FAAsF;AACtF,uGAAiG;AACjG,8DAA0D;AAC1D,yCAAoD;AACpD,8FAAiF;AACjF,4FAAsF;AACtF,sFAAiF;AACjF,oGAA8F;AAC9F,wFAAkF;AAClF,kEAKqC;AACrC,iEAA6D;AAC7D,iEAA6D;AAC7D,2GAAsG;AACtG,8FAAwF;AACxF,8FAAwF;AACxF,kFAA6E;AAyCtE,IAAM,eAAe,GAArB,MAAM,eAAe;CAAG,CAAA;AAAlB,0CAAe;0BAAf,eAAe;IAvC3B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,8BAAa;YACb,iCAAsB;YACtB,gCAAc;YACd,gCAAc;YACd,+CAAqB;YACrB,4DAA2B;SAC5B;QACD,WAAW,EAAE;YACX,0CAAmB;YACnB,qDAAwB;YACxB,uDAAyB;YACzB,uDAAyB;YACzB,kEAA8B;SAC/B;QACD,SAAS,EAAE;YACT,qDAAoB;YACpB,0DAA0B;YAC1B,qDAAwB;YACxB,sCAAmB;YACnB,4CAAyB;YACzB,mDAAgC;YAChC,oDAAiC;YACjC,kEAA8B;YAC9B,sDAAwB;YACxB,4DAA2B;YAC3B,iDAAsB;SACvB;QACD,OAAO,EAAE;YACP,0DAA0B;YAC1B,qDAAwB;YACxB,kEAA8B;YAC9B,sCAAmB;YACnB,sDAAwB;YACxB,4DAA2B;YAC3B,iDAAsB;SACvB;KACF,CAAC;GACW,eAAe,CAAG"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type StorageService } from '../../storage/interfaces/storage.interface';
|
|
2
|
+
export type ProviderPluginPolicySource = 'project' | 'default';
|
|
3
|
+
export interface EffectiveProviderPluginPolicy {
|
|
4
|
+
providerId: string;
|
|
5
|
+
pluginId: string;
|
|
6
|
+
enabled: boolean;
|
|
7
|
+
source: ProviderPluginPolicySource;
|
|
8
|
+
}
|
|
9
|
+
export declare class ProviderPluginPolicyService {
|
|
10
|
+
private readonly storage;
|
|
11
|
+
constructor(storage: StorageService);
|
|
12
|
+
setDefault(providerId: string, pluginId: string, enabled: boolean): Promise<EffectiveProviderPluginPolicy>;
|
|
13
|
+
resetDefault(providerId: string, pluginId: string): Promise<boolean>;
|
|
14
|
+
setProjectOverride(projectId: string, providerId: string, pluginId: string, enabled: boolean): Promise<EffectiveProviderPluginPolicy>;
|
|
15
|
+
resetProjectOverride(projectId: string, providerId: string, pluginId: string): Promise<boolean>;
|
|
16
|
+
resolve(projectId: string, providerId: string, pluginId: string): Promise<EffectiveProviderPluginPolicy | null>;
|
|
17
|
+
resolveAll(projectId: string, providerId: string): Promise<EffectiveProviderPluginPolicy[]>;
|
|
18
|
+
listConfigured(projectId: string, providerId: string): Promise<EffectiveProviderPluginPolicy[]>;
|
|
19
|
+
private normalizePluginId;
|
|
20
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.ProviderPluginPolicyService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const error_types_1 = require("../../../common/errors/error-types");
|
|
18
|
+
const storage_interface_1 = require("../../storage/interfaces/storage.interface");
|
|
19
|
+
const MAX_PLUGIN_ID_LENGTH = 512;
|
|
20
|
+
const ASCII_CONTROL_PATTERN = /[\u0000-\u001f\u007f]/;
|
|
21
|
+
let ProviderPluginPolicyService = class ProviderPluginPolicyService {
|
|
22
|
+
storage;
|
|
23
|
+
constructor(storage) {
|
|
24
|
+
this.storage = storage;
|
|
25
|
+
}
|
|
26
|
+
async setDefault(providerId, pluginId, enabled) {
|
|
27
|
+
const normalizedPluginId = this.normalizePluginId(pluginId);
|
|
28
|
+
const row = await this.storage.upsertProviderPluginDefault({
|
|
29
|
+
providerId,
|
|
30
|
+
pluginId: normalizedPluginId,
|
|
31
|
+
enabled,
|
|
32
|
+
});
|
|
33
|
+
return {
|
|
34
|
+
providerId: row.providerId,
|
|
35
|
+
pluginId: row.pluginId,
|
|
36
|
+
enabled: row.enabled,
|
|
37
|
+
source: 'default',
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
async resetDefault(providerId, pluginId) {
|
|
41
|
+
return this.storage.deleteProviderPluginDefault(providerId, this.normalizePluginId(pluginId));
|
|
42
|
+
}
|
|
43
|
+
async setProjectOverride(projectId, providerId, pluginId, enabled) {
|
|
44
|
+
const normalizedPluginId = this.normalizePluginId(pluginId);
|
|
45
|
+
const row = await this.storage.upsertProjectProviderPluginOverride({
|
|
46
|
+
projectId,
|
|
47
|
+
providerId,
|
|
48
|
+
pluginId: normalizedPluginId,
|
|
49
|
+
enabled,
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
providerId: row.providerId,
|
|
53
|
+
pluginId: row.pluginId,
|
|
54
|
+
enabled: row.enabled,
|
|
55
|
+
source: 'project',
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
async resetProjectOverride(projectId, providerId, pluginId) {
|
|
59
|
+
return this.storage.deleteProjectProviderPluginOverride(projectId, providerId, this.normalizePluginId(pluginId));
|
|
60
|
+
}
|
|
61
|
+
async resolve(projectId, providerId, pluginId) {
|
|
62
|
+
const normalizedPluginId = this.normalizePluginId(pluginId);
|
|
63
|
+
const projectOverride = await this.storage.getProjectProviderPluginOverride(projectId, providerId, normalizedPluginId);
|
|
64
|
+
if (projectOverride) {
|
|
65
|
+
return {
|
|
66
|
+
providerId,
|
|
67
|
+
pluginId: projectOverride.pluginId,
|
|
68
|
+
enabled: projectOverride.enabled,
|
|
69
|
+
source: 'project',
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
const providerDefault = await this.storage.getProviderPluginDefault(providerId, normalizedPluginId);
|
|
73
|
+
return providerDefault
|
|
74
|
+
? {
|
|
75
|
+
providerId,
|
|
76
|
+
pluginId: providerDefault.pluginId,
|
|
77
|
+
enabled: providerDefault.enabled,
|
|
78
|
+
source: 'default',
|
|
79
|
+
}
|
|
80
|
+
: null;
|
|
81
|
+
}
|
|
82
|
+
async resolveAll(projectId, providerId) {
|
|
83
|
+
const [defaults, overrides] = await Promise.all([
|
|
84
|
+
this.storage.listProviderPluginDefaults(providerId),
|
|
85
|
+
this.storage.listProjectProviderPluginOverrides(projectId, providerId),
|
|
86
|
+
]);
|
|
87
|
+
const effectiveByPluginId = new Map();
|
|
88
|
+
for (const row of defaults) {
|
|
89
|
+
effectiveByPluginId.set(row.pluginId, {
|
|
90
|
+
providerId,
|
|
91
|
+
pluginId: row.pluginId,
|
|
92
|
+
enabled: row.enabled,
|
|
93
|
+
source: 'default',
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
for (const row of overrides) {
|
|
97
|
+
effectiveByPluginId.set(row.pluginId, {
|
|
98
|
+
providerId,
|
|
99
|
+
pluginId: row.pluginId,
|
|
100
|
+
enabled: row.enabled,
|
|
101
|
+
source: 'project',
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
return [...effectiveByPluginId.values()].sort((left, right) => left.pluginId.localeCompare(right.pluginId));
|
|
105
|
+
}
|
|
106
|
+
async listConfigured(projectId, providerId) {
|
|
107
|
+
const [defaults, overrides] = await Promise.all([
|
|
108
|
+
this.storage.listProviderPluginDefaults(providerId),
|
|
109
|
+
this.storage.listProjectProviderPluginOverrides(projectId, providerId),
|
|
110
|
+
]);
|
|
111
|
+
return [
|
|
112
|
+
...defaults.map((row) => ({
|
|
113
|
+
providerId,
|
|
114
|
+
pluginId: row.pluginId,
|
|
115
|
+
enabled: row.enabled,
|
|
116
|
+
source: 'default',
|
|
117
|
+
})),
|
|
118
|
+
...overrides.map((row) => ({
|
|
119
|
+
providerId,
|
|
120
|
+
pluginId: row.pluginId,
|
|
121
|
+
enabled: row.enabled,
|
|
122
|
+
source: 'project',
|
|
123
|
+
})),
|
|
124
|
+
].sort((left, right) => left.pluginId.localeCompare(right.pluginId) || left.source.localeCompare(right.source));
|
|
125
|
+
}
|
|
126
|
+
normalizePluginId(pluginId) {
|
|
127
|
+
if (typeof pluginId !== 'string') {
|
|
128
|
+
throw new error_types_1.ValidationError('Plugin ID must contain 1 to 512 characters and no ASCII control characters.', { field: 'pluginId' });
|
|
129
|
+
}
|
|
130
|
+
const normalized = pluginId.trim();
|
|
131
|
+
const characterCount = Array.from(normalized).length;
|
|
132
|
+
if (characterCount === 0 ||
|
|
133
|
+
characterCount > MAX_PLUGIN_ID_LENGTH ||
|
|
134
|
+
ASCII_CONTROL_PATTERN.test(normalized)) {
|
|
135
|
+
throw new error_types_1.ValidationError('Plugin ID must contain 1 to 512 characters and no ASCII control characters.', { field: 'pluginId' });
|
|
136
|
+
}
|
|
137
|
+
return normalized;
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
exports.ProviderPluginPolicyService = ProviderPluginPolicyService;
|
|
141
|
+
exports.ProviderPluginPolicyService = ProviderPluginPolicyService = __decorate([
|
|
142
|
+
(0, common_1.Injectable)(),
|
|
143
|
+
__param(0, (0, common_1.Inject)(storage_interface_1.STORAGE_SERVICE)),
|
|
144
|
+
__metadata("design:paramtypes", [Object])
|
|
145
|
+
], ProviderPluginPolicyService);
|
|
146
|
+
//# sourceMappingURL=provider-plugin-policy.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-plugin-policy.service.js","sourceRoot":"","sources":["../../../../src/modules/providers/services/provider-plugin-policy.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type StorageService } from '../../storage/interfaces/storage.interface';
|
|
2
|
+
import { ProcessExecutor } from '../../terminal/services/process-executor/process-executor.port';
|
|
3
|
+
import { ProviderAdapterFactory } from '../adapters/provider-adapter.factory';
|
|
4
|
+
import type { ProviderPluginCatalogDto, ProviderPluginInstallDto } from '../dtos/provider-plugin.dto';
|
|
5
|
+
export declare class ProviderPluginsService {
|
|
6
|
+
private readonly storage;
|
|
7
|
+
private readonly adapterFactory;
|
|
8
|
+
private readonly executor;
|
|
9
|
+
private readonly catalogCache;
|
|
10
|
+
constructor(storage: StorageService, adapterFactory: ProviderAdapterFactory, executor: ProcessExecutor);
|
|
11
|
+
listCatalog(options?: {
|
|
12
|
+
refresh?: boolean;
|
|
13
|
+
}): Promise<ProviderPluginCatalogDto>;
|
|
14
|
+
refreshCatalog(): Promise<ProviderPluginCatalogDto>;
|
|
15
|
+
install(providerId: string, pluginId: string): Promise<ProviderPluginInstallDto>;
|
|
16
|
+
private listProviderCatalog;
|
|
17
|
+
private hasProviderPluginCapability;
|
|
18
|
+
private resolveProviderBinary;
|
|
19
|
+
private assertCommandSucceeded;
|
|
20
|
+
private normalizePluginId;
|
|
21
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
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.ProviderPluginsService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const error_types_1 = require("../../../common/errors/error-types");
|
|
18
|
+
const resolve_binary_1 = require("../../../common/resolve-binary");
|
|
19
|
+
const storage_interface_1 = require("../../storage/interfaces/storage.interface");
|
|
20
|
+
const process_executor_port_1 = require("../../terminal/services/process-executor/process-executor.port");
|
|
21
|
+
const provider_adapter_factory_1 = require("../adapters/provider-adapter.factory");
|
|
22
|
+
const type_guards_1 = require("../adapters/capabilities/type-guards");
|
|
23
|
+
const CATALOG_TTL_MS = 10_000;
|
|
24
|
+
const PLUGIN_COMMAND_TIMEOUT_MS = 60_000;
|
|
25
|
+
const PLUGIN_COMMAND_MAX_BYTES = 2 * 1024 * 1024;
|
|
26
|
+
const MAX_PLUGIN_ID_LENGTH = 512;
|
|
27
|
+
const ASCII_CONTROL_PATTERN = /[\u0000-\u001f\u007f]/;
|
|
28
|
+
let ProviderPluginsService = class ProviderPluginsService {
|
|
29
|
+
storage;
|
|
30
|
+
adapterFactory;
|
|
31
|
+
executor;
|
|
32
|
+
catalogCache = new Map();
|
|
33
|
+
constructor(storage, adapterFactory, executor) {
|
|
34
|
+
this.storage = storage;
|
|
35
|
+
this.adapterFactory = adapterFactory;
|
|
36
|
+
this.executor = executor;
|
|
37
|
+
}
|
|
38
|
+
async listCatalog(options = {}) {
|
|
39
|
+
const providers = await this.storage.listProviders({ limit: 1_000, offset: 0 });
|
|
40
|
+
const pluginProviders = providers.items.filter((provider) => this.hasProviderPluginCapability(provider));
|
|
41
|
+
const entries = await Promise.all(pluginProviders.map((provider) => this.listProviderCatalog(provider, options.refresh === true)));
|
|
42
|
+
const items = entries
|
|
43
|
+
.flat()
|
|
44
|
+
.sort((left, right) => left.providerName.localeCompare(right.providerName) ||
|
|
45
|
+
(left.marketplaceName ?? '').localeCompare(right.marketplaceName ?? '') ||
|
|
46
|
+
left.name.localeCompare(right.name));
|
|
47
|
+
return { items, total: items.length };
|
|
48
|
+
}
|
|
49
|
+
async refreshCatalog() {
|
|
50
|
+
this.catalogCache.clear();
|
|
51
|
+
return this.listCatalog({ refresh: true });
|
|
52
|
+
}
|
|
53
|
+
async install(providerId, pluginId) {
|
|
54
|
+
const normalizedPluginId = this.normalizePluginId(pluginId);
|
|
55
|
+
const provider = await this.storage.getProvider(providerId);
|
|
56
|
+
const adapter = this.adapterFactory.getAdapter(provider.name);
|
|
57
|
+
if (!(0, type_guards_1.isProviderPluginCapable)(adapter)) {
|
|
58
|
+
throw new error_types_1.ValidationError(`Provider ${provider.name} does not support plugin installation`, {
|
|
59
|
+
providerId,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
const binaryPath = await this.resolveProviderBinary(provider);
|
|
63
|
+
const result = await this.executor.run({
|
|
64
|
+
argv: [binaryPath, ...adapter.installProviderPlugin(normalizedPluginId)],
|
|
65
|
+
mode: 'pipe',
|
|
66
|
+
timeout: PLUGIN_COMMAND_TIMEOUT_MS,
|
|
67
|
+
outputLimits: { maxBytes: PLUGIN_COMMAND_MAX_BYTES },
|
|
68
|
+
});
|
|
69
|
+
this.assertCommandSucceeded(result, provider, 'installation');
|
|
70
|
+
this.catalogCache.delete(provider.id);
|
|
71
|
+
return {
|
|
72
|
+
success: true,
|
|
73
|
+
providerId: provider.id,
|
|
74
|
+
providerName: provider.name,
|
|
75
|
+
pluginId: normalizedPluginId,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
async listProviderCatalog(provider, refresh) {
|
|
79
|
+
const cached = this.catalogCache.get(provider.id);
|
|
80
|
+
if (!refresh && cached && cached.expiresAt > Date.now()) {
|
|
81
|
+
return cached.items;
|
|
82
|
+
}
|
|
83
|
+
const adapter = this.adapterFactory.getAdapter(provider.name);
|
|
84
|
+
if (!(0, type_guards_1.isProviderPluginCapable)(adapter)) {
|
|
85
|
+
throw new error_types_1.ValidationError(`Provider ${provider.name} does not support plugin catalogs`, {
|
|
86
|
+
providerId: provider.id,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
const binaryPath = await this.resolveProviderBinary(provider);
|
|
90
|
+
const result = await this.executor.run({
|
|
91
|
+
argv: [binaryPath, ...adapter.listProviderPlugins()],
|
|
92
|
+
mode: 'pipe',
|
|
93
|
+
timeout: PLUGIN_COMMAND_TIMEOUT_MS,
|
|
94
|
+
outputLimits: { maxBytes: PLUGIN_COMMAND_MAX_BYTES },
|
|
95
|
+
});
|
|
96
|
+
this.assertCommandSucceeded(result, provider, 'catalog');
|
|
97
|
+
let parsed;
|
|
98
|
+
try {
|
|
99
|
+
parsed = adapter.parseProviderPluginCatalog(result.stdout);
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
throw new error_types_1.IOError(`Unable to parse ${provider.name} plugin catalog`, {
|
|
103
|
+
providerId: provider.id,
|
|
104
|
+
cause: error instanceof Error ? error.message : 'Unknown parser error',
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
const items = parsed.map((entry) => ({
|
|
108
|
+
...entry,
|
|
109
|
+
providerId: provider.id,
|
|
110
|
+
providerName: provider.name,
|
|
111
|
+
}));
|
|
112
|
+
this.catalogCache.set(provider.id, {
|
|
113
|
+
expiresAt: Date.now() + CATALOG_TTL_MS,
|
|
114
|
+
items,
|
|
115
|
+
});
|
|
116
|
+
return items;
|
|
117
|
+
}
|
|
118
|
+
hasProviderPluginCapability(provider) {
|
|
119
|
+
if (!this.adapterFactory.isSupported(provider.name)) {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
return (0, type_guards_1.isProviderPluginCapable)(this.adapterFactory.getAdapter(provider.name));
|
|
123
|
+
}
|
|
124
|
+
async resolveProviderBinary(provider) {
|
|
125
|
+
const candidate = provider.binPath ?? provider.name;
|
|
126
|
+
const binaryPath = await (0, resolve_binary_1.resolveBinary)(candidate, this.executor);
|
|
127
|
+
if (!binaryPath) {
|
|
128
|
+
throw new error_types_1.IOError(`Unable to resolve plugin provider binary for ${provider.name}`, {
|
|
129
|
+
providerId: provider.id,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
return binaryPath;
|
|
133
|
+
}
|
|
134
|
+
assertCommandSucceeded(result, provider, operation) {
|
|
135
|
+
if (result.timedOut) {
|
|
136
|
+
throw new error_types_1.TimeoutError(`${provider.name} plugin ${operation} timed out`, {
|
|
137
|
+
providerId: provider.id,
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
if (operation === 'catalog' && result.truncated) {
|
|
141
|
+
throw new error_types_1.IOError(`${provider.name} plugin ${operation} output exceeded the size limit`, {
|
|
142
|
+
providerId: provider.id,
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
if (!result.success) {
|
|
146
|
+
throw new error_types_1.IOError(`${provider.name} plugin ${operation} failed`, {
|
|
147
|
+
providerId: provider.id,
|
|
148
|
+
exitCode: result.exitCode,
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
normalizePluginId(pluginId) {
|
|
153
|
+
const normalized = pluginId.trim();
|
|
154
|
+
if (normalized.length === 0 ||
|
|
155
|
+
normalized.length > MAX_PLUGIN_ID_LENGTH ||
|
|
156
|
+
ASCII_CONTROL_PATTERN.test(normalized)) {
|
|
157
|
+
throw new error_types_1.ValidationError('Plugin ID must contain 1 to 512 characters and no ASCII control characters.', { field: 'pluginId' });
|
|
158
|
+
}
|
|
159
|
+
return normalized;
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
exports.ProviderPluginsService = ProviderPluginsService;
|
|
163
|
+
exports.ProviderPluginsService = ProviderPluginsService = __decorate([
|
|
164
|
+
(0, common_1.Injectable)(),
|
|
165
|
+
__param(0, (0, common_1.Inject)(storage_interface_1.STORAGE_SERVICE)),
|
|
166
|
+
__metadata("design:paramtypes", [Object, provider_adapter_factory_1.ProviderAdapterFactory,
|
|
167
|
+
process_executor_port_1.ProcessExecutor])
|
|
168
|
+
], ProviderPluginsService);
|
|
169
|
+
//# sourceMappingURL=provider-plugins.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-plugins.service.js","sourceRoot":"","sources":["../../../../src/modules/providers/services/provider-plugins.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,9 +52,9 @@ export declare class TemplatesController {
|
|
|
52
52
|
providerConfigs?: {
|
|
53
53
|
name: string;
|
|
54
54
|
providerName: string;
|
|
55
|
+
description?: string | null | undefined;
|
|
55
56
|
options?: string | null | undefined;
|
|
56
57
|
env?: Record<string, string> | null | undefined;
|
|
57
|
-
description?: string | null | undefined;
|
|
58
58
|
model?: string | null | undefined;
|
|
59
59
|
effort?: string | null | undefined;
|
|
60
60
|
position?: number | undefined;
|
|
@@ -62,6 +62,7 @@ export declare class TemplatesController {
|
|
|
62
62
|
}[];
|
|
63
63
|
agents: {
|
|
64
64
|
name: string;
|
|
65
|
+
isProjectOwner: boolean;
|
|
65
66
|
description?: string | null | undefined;
|
|
66
67
|
id?: string | undefined;
|
|
67
68
|
profileId?: string | undefined;
|
|
@@ -115,7 +116,18 @@ export declare class TemplatesController {
|
|
|
115
116
|
eventFilter?: {
|
|
116
117
|
value: string;
|
|
117
118
|
field: string;
|
|
118
|
-
operator: "contains" | "regex" | "equals";
|
|
119
|
+
operator: "contains" | "regex" | "equals" | "is_null" | "is_not_null";
|
|
120
|
+
} | {
|
|
121
|
+
combinator: "and" | "or";
|
|
122
|
+
filters: [{
|
|
123
|
+
value: string;
|
|
124
|
+
field: string;
|
|
125
|
+
operator: "contains" | "regex" | "equals" | "is_null" | "is_not_null";
|
|
126
|
+
}, ...{
|
|
127
|
+
value: string;
|
|
128
|
+
field: string;
|
|
129
|
+
operator: "contains" | "regex" | "equals" | "is_null" | "is_not_null";
|
|
130
|
+
}[]];
|
|
119
131
|
} | null | undefined;
|
|
120
132
|
groupName?: string | null | undefined;
|
|
121
133
|
}[];
|