@shepai/cli 1.151.2-pr470.ec33cce → 1.152.0-pr476.5b101f5
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/apis/json-schema/InteractiveAgentConfig.yaml +25 -0
- package/apis/json-schema/InteractiveMessage.yaml +23 -0
- package/apis/json-schema/InteractiveMessageRole.yaml +7 -0
- package/apis/json-schema/InteractiveSession.yaml +30 -0
- package/apis/json-schema/InteractiveSessionStatus.yaml +9 -0
- package/apis/json-schema/Settings.yaml +3 -0
- package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts +17 -0
- package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/agents/index.d.ts +1 -0
- package/dist/packages/core/src/application/ports/output/agents/index.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.d.ts +53 -0
- package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.js +13 -0
- package/dist/packages/core/src/application/ports/output/repositories/index.d.ts +2 -0
- package/dist/packages/core/src/application/ports/output/repositories/index.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.d.ts +37 -0
- package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.js +10 -0
- package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.d.ts +78 -0
- package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.js +10 -0
- package/dist/packages/core/src/application/ports/output/services/index.d.ts +1 -0
- package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.d.ts +187 -0
- package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/services/interactive-session-service.interface.js +12 -0
- package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.d.ts +26 -0
- package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/interactive/get-interactive-chat-state.use-case.js +41 -0
- package/dist/packages/core/src/application/use-cases/interactive/index.d.ts +14 -0
- package/dist/packages/core/src/application/use-cases/interactive/index.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/interactive/index.js +9 -0
- package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.d.ts +31 -0
- package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/interactive/send-interactive-message.use-case.js +43 -0
- package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.d.ts +34 -0
- package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/interactive/start-interactive-session.use-case.js +43 -0
- package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.d.ts +27 -0
- package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/interactive/stop-interactive-session.use-case.js +42 -0
- package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.d.ts +13 -0
- package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.d.ts.map +1 -0
- package/dist/packages/core/src/domain/errors/concurrent-session-limit.error.js +19 -0
- package/dist/packages/core/src/domain/generated/output.d.ts +77 -0
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/domain/generated/output.js +12 -0
- package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.js +47 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.d.ts +36 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-message.mapper.js +41 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.d.ts +39 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/interactive-session.mapper.js +47 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +3 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +10 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.d.ts +22 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/045-create-interactive-tables.js +52 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.d.ts +16 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/046-add-interactive-agent-settings.js +27 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/047-add-agent-session-id.d.ts +15 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/047-add-agent-session-id.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/047-add-agent-session-id.js +27 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/048-add-turn-status.d.ts +15 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/048-add-turn-status.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/048-add-turn-status.js +20 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.d.ts +18 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-message.repository.js +58 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.d.ts +28 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-interactive-session.repository.js +137 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +10 -3
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.d.ts +18 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.js +27 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.d.ts +43 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-interactive-executor.service.js +288 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts +3 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.js +6 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +1 -1
- package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.d.ts +26 -0
- package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/interactive/feature-context.builder.js +140 -0
- package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.d.ts +90 -0
- package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/interactive/interactive-session.service.js +889 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.d.ts +3 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/chat/page.js +6 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
- package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/page.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
- package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.d.ts +11 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +18 -0
- package/dist/src/presentation/web/app/(dashboard)/chat/page.d.ts +3 -0
- package/dist/src/presentation/web/app/(dashboard)/chat/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/(dashboard)/chat/page.js +4 -0
- package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.d.ts +3 -0
- package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +4 -0
- package/dist/src/presentation/web/app/api/agent-events/route.d.ts +6 -0
- package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
- package/dist/src/presentation/web/app/api/agent-events/route.js +54 -1
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/mark-read/route.d.ts +19 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/mark-read/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/mark-read/route.js +24 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.d.ts +24 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/messages/route.js +76 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.d.ts +16 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stop/route.js +21 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.d.ts +21 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/chat/[featureId]/stream/route.js +87 -0
- package/dist/src/presentation/web/app/api/interactive/chat/turn-statuses/route.d.ts +12 -0
- package/dist/src/presentation/web/app/api/interactive/chat/turn-statuses/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/chat/turn-statuses/route.js +28 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.d.ts +19 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/messages/route.js +78 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.d.ts +18 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/route.js +43 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.d.ts +19 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/[id]/stream/route.js +92 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/route.d.ts +12 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/interactive/sessions/route.js +37 -0
- package/dist/src/presentation/web/app/layout.d.ts.map +1 -1
- package/dist/src/presentation/web/app/layout.js +2 -1
- package/dist/src/presentation/web/components/assistant-ui/thread.d.ts +6 -0
- package/dist/src/presentation/web/components/assistant-ui/thread.d.ts.map +1 -0
- package/dist/src/presentation/web/components/assistant-ui/thread.js +192 -0
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts +1 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.js +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts +3 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +5 -6
- package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.d.ts +2 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/global-chat-drawer-client.js +17 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts +3 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +15 -8
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +7 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +11 -4
- package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.js +10 -2
- package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.d.ts +9 -2
- package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.js +11 -16
- package/dist/src/presentation/web/components/common/merge-review/merge-review.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/merge-review/merge-review.js +2 -28
- package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +10 -2
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.d.ts +21 -0
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.js +46 -0
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.d.ts +20 -0
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/AgentStatusBadge.stories.js +52 -0
- package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts +18 -0
- package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatComposer.js +16 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.d.ts +14 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.js +13 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.stories.d.ts +9 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatDotIndicator.stories.js +19 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.d.ts +19 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.js +42 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.stories.d.ts +14 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatInput.stories.js +56 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.d.ts +21 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.js +43 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.d.ts +24 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.stories.js +84 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageList.d.ts +25 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageList.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatMessageList.js +36 -0
- package/dist/src/presentation/web/components/features/chat/ChatSheet.d.ts +2 -0
- package/dist/src/presentation/web/components/features/chat/ChatSheet.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatSheet.js +259 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts +6 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.js +67 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.stories.d.ts +25 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/ChatTab.stories.js +237 -0
- package/dist/src/presentation/web/components/features/chat/useChatRuntime.d.ts +34 -0
- package/dist/src/presentation/web/components/features/chat/useChatRuntime.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/chat/useChatRuntime.js +272 -0
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +71 -8
- package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.d.ts +8 -0
- package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.js +29 -0
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts +1 -2
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.js +5 -13
- package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.js +45 -2
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +25 -66
- package/dist/src/presentation/web/components/providers/query-provider.d.ts +4 -0
- package/dist/src/presentation/web/components/providers/query-provider.d.ts.map +1 -0
- package/dist/src/presentation/web/components/providers/query-provider.js +16 -0
- package/dist/src/presentation/web/hooks/turn-statuses-provider.d.ts +15 -0
- package/dist/src/presentation/web/hooks/turn-statuses-provider.d.ts.map +1 -0
- package/dist/src/presentation/web/hooks/turn-statuses-provider.js +26 -0
- package/dist/src/presentation/web/hooks/use-attachments.d.ts +26 -0
- package/dist/src/presentation/web/hooks/use-attachments.d.ts.map +1 -0
- package/dist/src/presentation/web/hooks/use-attachments.js +227 -0
- package/dist/src/presentation/web/hooks/use-turn-statuses.d.ts +12 -0
- package/dist/src/presentation/web/hooks/use-turn-statuses.d.ts.map +1 -0
- package/dist/src/presentation/web/hooks/use-turn-statuses.js +26 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +13 -0
- package/web/.next/build-manifest.json +5 -5
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +2 -2
- package/web/.next/required-server-files.json +2 -2
- package/web/.next/routes-manifest.json +83 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +82 -82
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/build-manifest.json +18 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/react-loadable-manifest.json +8 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +395 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +22 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.map +5 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +2 -0
- package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +84 -84
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +98 -98
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +98 -98
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/build-manifest.json +18 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +8 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +395 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +22 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.map +5 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +2 -0
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +78 -78
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/chat/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(dashboard)/chat/page/build-manifest.json +18 -0
- package/web/.next/server/app/(dashboard)/chat/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/chat/page/react-loadable-manifest.json +8 -0
- package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +395 -0
- package/web/.next/server/app/(dashboard)/chat/page.js +22 -0
- package/web/.next/server/app/(dashboard)/chat/page.js.map +5 -0
- package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +2 -0
- package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +84 -84
- package/web/.next/server/app/(dashboard)/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +98 -98
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +98 -98
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +78 -78
- package/web/.next/server/app/(dashboard)/page.js +2 -2
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/build-manifest.json +18 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +8 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +395 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +22 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.map +5 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +2 -0
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +3 -3
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +78 -78
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +36 -6
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/attachments/preview/route.js +1 -1
- package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
- package/web/.next/server/app/api/attachments/upload-from-path/route.js +1 -1
- package/web/.next/server/app/api/attachments/upload-from-path/route.js.nft.json +1 -1
- package/web/.next/server/app/api/evidence/route.js +1 -1
- package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js +1 -1
- package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route.js +7 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/mark-read/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js +7 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js +7 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stop/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js +6 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/chat/[featureId]/stream/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route.js +7 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/chat/turn-statuses/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js +7 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/messages/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route.js +7 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js +6 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/sessions/[id]/stream/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/interactive/sessions/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/interactive/sessions/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/interactive/sessions/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/interactive/sessions/route.js +7 -0
- package/web/.next/server/app/api/interactive/sessions/route.js.map +5 -0
- package/web/.next/server/app/api/interactive/sessions/route.js.nft.json +1 -0
- package/web/.next/server/app/api/interactive/sessions/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/web/.next/server/app/api/sessions-batch/route.js +1 -1
- package/web/.next/server/app/api/sessions-batch/route.js.nft.json +1 -1
- package/web/.next/server/app/api/tools/route.js +2 -2
- package/web/.next/server/app/settings/page/build-manifest.json +3 -3
- package/web/.next/server/app/settings/page/server-reference-manifest.json +42 -42
- package/web/.next/server/app/settings/page.js +3 -3
- package/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/skills/page/build-manifest.json +3 -3
- package/web/.next/server/app/skills/page/server-reference-manifest.json +46 -16
- package/web/.next/server/app/skills/page.js +3 -3
- package/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/build-manifest.json +3 -3
- package/web/.next/server/app/tools/page/server-reference-manifest.json +46 -16
- package/web/.next/server/app/tools/page.js +3 -3
- package/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/build-manifest.json +3 -3
- package/web/.next/server/app/version/page/server-reference-manifest.json +36 -6
- package/web/.next/server/app/version/page.js +2 -2
- package/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app-paths-manifest.json +13 -0
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +8 -2
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
- package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_interactive_sessions_route_actions_f2e7447f.js +3 -0
- package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_interactive_sessions_route_actions_f2e7447f.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_mark-read_route_actions_ce79c730.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_mark-read_route_actions_ce79c730.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_messages_route_actions_f98e5802.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_messages_route_actions_f98e5802.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stop_route_actions_36518d35.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stop_route_actions_36518d35.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stream_route_actions_e6210931.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_[featureId]_stream_route_actions_e6210931.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_turn-statuses_route_actions_f97e4de7.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_chat_turn-statuses_route_actions_f97e4de7.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_messages_route_actions_be179971.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_messages_route_actions_be179971.js.map +1 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_stream_route_actions_58ab2b5b.js +3 -0
- package/web/.next/server/chunks/8ba4b_server_app_api_interactive_sessions_[id]_stream_route_actions_58ab2b5b.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__10852c5c._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__10852c5c._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__2b71641f._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__2b71641f._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__2bb675ff._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__2bb675ff._.js.map +1 -0
- package/web/.next/server/chunks/{[root-of-the-server]__0d33c29e._.js → [root-of-the-server]__31598852._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__0d33c29e._.js.map → [root-of-the-server]__31598852._.js.map} +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__32b04219._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__32b04219._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__4408a5ba._.js +12 -0
- package/web/.next/server/chunks/[root-of-the-server]__4408a5ba._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__6565a045._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__6565a045._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__8a281f8d._.js +18 -0
- package/web/.next/server/chunks/[root-of-the-server]__8a281f8d._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__8f8d6afe._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__8f8d6afe._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__9191749c._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__9191749c._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__ab4951b1._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__ab4951b1._.js.map +1 -0
- package/web/.next/server/chunks/{[root-of-the-server]__26565141._.js → [root-of-the-server]__acea6565._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__26565141._.js.map → [root-of-the-server]__acea6565._.js.map} +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
- package/web/.next/server/chunks/{[root-of-the-server]__25f23d5d._.js → [root-of-the-server]__e3692208._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__25f23d5d._.js.map → [root-of-the-server]__e3692208._.js.map} +1 -1
- package/web/.next/server/chunks/{[root-of-the-server]__a5879003._.js → [root-of-the-server]__ea653642._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__a5879003._.js.map → [root-of-the-server]__ea653642._.js.map} +1 -1
- package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_interactive_sessions_[id]_route_actions_a4ea4d16.js +3 -0
- package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_interactive_sessions_[id]_route_actions_a4ea4d16.js.map +1 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +1 -1
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2c44200f.js +4 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2c44200f.js.map +1 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_56f4f121.js +4 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_56f4f121.js.map +1 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_77436e06.js +4 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_77436e06.js.map +1 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_b9bb0443.js +4 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_b9bb0443.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web_app_(dashboard)_repository_[repositoryId]_[tab]_page_tsx_2e9a3025._.js +3 -0
- package/web/.next/server/chunks/ssr/744ca_web_app_(dashboard)_repository_[repositoryId]_[tab]_page_tsx_2e9a3025._.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +7 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_4b319ae6._.js +3 -0
- package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_4b319ae6._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__17ed7ed1._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__17ed7ed1._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__42bf1807._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__42bf1807._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__7528eb6f._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__7528eb6f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__88f7e8e6._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__88f7e8e6._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__b14946f5._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__b8d4bd27._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__b8d4bd27._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e91ffd5e._.js +7 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e91ffd5e._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f80bfc75._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f80bfc75._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
- package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
- package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_34a8a162._.js → _245b6623._.js} +3 -3
- package/web/.next/server/chunks/ssr/_245b6623._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_3a0b989f._.js +6 -0
- package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_6c7faa01._.js → _507a8382._.js} +2 -2
- package/web/.next/server/chunks/ssr/_507a8382._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_51af0bf4._.js +3 -0
- package/web/.next/server/chunks/ssr/_51af0bf4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_56b9d60f._.js +3 -0
- package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_5f69c13f._.js +4 -0
- package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_78ff6f1d._.js +3 -0
- package/web/.next/server/chunks/ssr/_78ff6f1d._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_7c5b97c6._.js +4 -0
- package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_8219712a._.js +3 -0
- package/web/.next/server/chunks/ssr/_8219712a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_82c57f10._.js +4 -0
- package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_0020fddd._.js → _8b57edb8._.js} +2 -2
- package/web/.next/server/chunks/ssr/_8b57edb8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_8d733ce4._.js +3 -0
- package/web/.next/server/chunks/ssr/_8d733ce4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_6256a985._.js → _9495d50b._.js} +3 -3
- package/web/.next/server/chunks/ssr/{_6256a985._.js.map → _9495d50b._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +4 -0
- package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_ac4a3873._.js +3 -0
- package/web/.next/server/chunks/ssr/_ac4a3873._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +4 -0
- package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_cb5a021e._.js +4 -0
- package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_cfbd1d7e._.js +1 -1
- package/web/.next/server/chunks/ssr/_cfbd1d7e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d4b20e29._.js +1 -1
- package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d86175ae._.js +4 -0
- package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_d8bedf13._.js +4 -0
- package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_e9a73a63._.js +9 -0
- package/web/.next/server/chunks/ssr/_e9a73a63._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_4093a637._.js → _fa0acc22._.js} +2 -2
- package/web/.next/server/chunks/ssr/_fa0acc22._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_fa7efce3._.js +6 -0
- package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_global-chat-drawer-client_tsx_158c4b12._.js +3 -0
- package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_global-chat-drawer-client_tsx_158c4b12._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_ef15a0bd._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_ef15a0bd._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_324a47da._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_324a47da._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_chat_page_tsx_85327270._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_chat_page_tsx_85327270._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
- package/web/.next/server/middleware-build-manifest.js +3 -3
- package/web/.next/server/pages/500.html +2 -2
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +1346 -562
- package/web/.next/static/chunks/0aa0c51000c61a82.js +5 -0
- package/web/.next/static/chunks/0bb071bc5f7487be.js +1 -0
- package/web/.next/static/chunks/0c38793438b8c038.js +1 -0
- package/web/.next/static/chunks/0df0e1499e672836.js +3 -0
- package/web/.next/static/chunks/11091b676d1b3bd4.js +1 -0
- package/web/.next/static/chunks/19e9b142ad142695.js +7 -0
- package/web/.next/static/chunks/22c459f1877b1e4f.js +1 -0
- package/web/.next/static/chunks/2354d39c63978576.js +1 -0
- package/web/.next/static/chunks/29f375627d0eccca.js +1 -0
- package/web/.next/static/chunks/2ea8e9030cd5ab2b.js +1 -0
- package/web/.next/static/chunks/40b6bcf1a2de4a0f.js +1 -0
- package/web/.next/static/chunks/4b2c4a5c35ebb70d.js +1 -0
- package/web/.next/static/chunks/5ae60a052ab5f437.js +5 -0
- package/web/.next/static/chunks/811d8a0007da9137.js +1 -0
- package/web/.next/static/chunks/8a83eca1de6a4ed0.js +1 -0
- package/web/.next/static/chunks/8ba1c07ef18b15a9.js +1 -0
- package/web/.next/static/chunks/9033e51dfc21b48d.js +1 -0
- package/web/.next/static/chunks/a36ca50cbdfb3ffe.js +1 -0
- package/web/.next/static/chunks/b4cde06eff374c59.js +5 -0
- package/web/.next/static/chunks/be7d8a4fee3b9860.js +1 -0
- package/web/.next/static/chunks/c86594475dcb03d5.css +1 -0
- package/web/.next/static/chunks/cd54b758f58061d0.js +1 -0
- package/web/.next/static/chunks/{cfe4dc9904fcfddb.js → d0e04c4bd51d2553.js} +1 -1
- package/web/.next/static/chunks/{e558b4b9d066763c.js → fab1eb6312340c1b.js} +2 -2
- package/web/.next/static/chunks/{turbopack-c2d183e05f30c7dc.js → turbopack-432ef324fc27240c.js} +1 -1
- package/web/package.json +7 -2
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.d.ts +0 -15
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.d.ts.map +0 -1
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.js +0 -43
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.d.ts +0 -18
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.js +0 -125
- package/dist/src/presentation/web/components/common/evidence-lightbox/index.d.ts +0 -3
- package/dist/src/presentation/web/components/common/evidence-lightbox/index.d.ts.map +0 -1
- package/dist/src/presentation/web/components/common/evidence-lightbox/index.js +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__c6e32a23._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__c6e32a23._.js.map +0 -1
- package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js +0 -3
- package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__2138fa7e._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__2138fa7e._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__3ef34e4c._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__3ef34e4c._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +0 -7
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__df7c1cd3._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__df7c1cd3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0020fddd._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_01046927._.js +0 -9
- package/web/.next/server/chunks/ssr/_01046927._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0c473fef._.js +0 -6
- package/web/.next/server/chunks/ssr/_0c473fef._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1b719e7f._.js +0 -4
- package/web/.next/server/chunks/ssr/_1b719e7f._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_34a8a162._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_37e8548b._.js +0 -4
- package/web/.next/server/chunks/ssr/_37e8548b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_4093a637._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_55d763e2._.js +0 -4
- package/web/.next/server/chunks/ssr/_55d763e2._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_6c7faa01._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_762bbdd5._.js +0 -3
- package/web/.next/server/chunks/ssr/_762bbdd5._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_8fcc39d4._.js +0 -3
- package/web/.next/server/chunks/ssr/_8fcc39d4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_b71645b4._.js +0 -4
- package/web/.next/server/chunks/ssr/_b71645b4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_d8575088._.js +0 -3
- package/web/.next/server/chunks/ssr/_d8575088._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_e9e9ed20._.js +0 -6
- package/web/.next/server/chunks/ssr/_e9e9ed20._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b437e763._.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_b437e763._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +0 -1
- package/web/.next/static/chunks/08baac5434d9528e.js +0 -13
- package/web/.next/static/chunks/0d473fbdf724361c.js +0 -1
- package/web/.next/static/chunks/1ef9dfc624cdd5c0.js +0 -1
- package/web/.next/static/chunks/2c4e4027386847dc.js +0 -1
- package/web/.next/static/chunks/331e2a1232d9f855.js +0 -5
- package/web/.next/static/chunks/48a36b37fc27443b.js +0 -1
- package/web/.next/static/chunks/49057cf8cd37e262.js +0 -1
- package/web/.next/static/chunks/4cec255f2754e5ec.js +0 -1
- package/web/.next/static/chunks/52470bcbe2e8198d.css +0 -1
- package/web/.next/static/chunks/601d93593f5f664f.js +0 -1
- package/web/.next/static/chunks/6e406c42f179f73f.js +0 -1
- package/web/.next/static/chunks/706819c360883af1.js +0 -1
- package/web/.next/static/chunks/7bf35c5612fdba16.js +0 -1
- package/web/.next/static/chunks/b70dd4985a814b27.js +0 -1
- package/web/.next/static/chunks/c286aae364899eae.js +0 -1
- package/web/.next/static/chunks/d8685c1bf2415bc5.js +0 -1
- package/web/.next/static/chunks/ebebc7a215e04768.js +0 -1
- package/web/.next/static/chunks/f66c996402a430f5.js +0 -1
- /package/web/.next/static/{crqlqgDegiKDLReFt70L0 → vc6t9IqXHzQXsbrkf5_dt}/_buildManifest.js +0 -0
- /package/web/.next/static/{crqlqgDegiKDLReFt70L0 → vc6t9IqXHzQXsbrkf5_dt}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{crqlqgDegiKDLReFt70L0 → vc6t9IqXHzQXsbrkf5_dt}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
$schema: https://json-schema.org/draft/2020-12/schema
|
|
2
|
+
$id: InteractiveAgentConfig.yaml
|
|
3
|
+
type: object
|
|
4
|
+
properties:
|
|
5
|
+
enabled:
|
|
6
|
+
type: boolean
|
|
7
|
+
default: true
|
|
8
|
+
description: "Whether the interactive agent Chat tab is enabled (default: true)"
|
|
9
|
+
autoTimeoutMinutes:
|
|
10
|
+
type: integer
|
|
11
|
+
minimum: -2147483648
|
|
12
|
+
maximum: 2147483647
|
|
13
|
+
default: 15
|
|
14
|
+
description: "Idle timeout in minutes before auto-stopping the agent (default: 15, range: 1-120)"
|
|
15
|
+
maxConcurrentSessions:
|
|
16
|
+
type: integer
|
|
17
|
+
minimum: -2147483648
|
|
18
|
+
maximum: 2147483647
|
|
19
|
+
default: 3
|
|
20
|
+
description: "Maximum number of concurrent active interactive sessions (default: 3)"
|
|
21
|
+
required:
|
|
22
|
+
- enabled
|
|
23
|
+
- autoTimeoutMinutes
|
|
24
|
+
- maxConcurrentSessions
|
|
25
|
+
description: Interactive agent chat tab configuration
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
$schema: https://json-schema.org/draft/2020-12/schema
|
|
2
|
+
$id: InteractiveMessage.yaml
|
|
3
|
+
type: object
|
|
4
|
+
properties:
|
|
5
|
+
featureId:
|
|
6
|
+
type: string
|
|
7
|
+
description: "Polymorphic scope key: feature UUID, 'repo-<id>', or 'global'. Future: rename to scopeId + scopeType."
|
|
8
|
+
sessionId:
|
|
9
|
+
type: string
|
|
10
|
+
description: Session ID during which this message was sent (optional)
|
|
11
|
+
role:
|
|
12
|
+
$ref: InteractiveMessageRole.yaml
|
|
13
|
+
description: "Author role: user or assistant"
|
|
14
|
+
content:
|
|
15
|
+
type: string
|
|
16
|
+
description: Full message content (finalised after streaming for assistant messages)
|
|
17
|
+
required:
|
|
18
|
+
- featureId
|
|
19
|
+
- role
|
|
20
|
+
- content
|
|
21
|
+
allOf:
|
|
22
|
+
- $ref: BaseEntity.yaml
|
|
23
|
+
description: A single chat message in a per-feature interactive agent session
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
$schema: https://json-schema.org/draft/2020-12/schema
|
|
2
|
+
$id: InteractiveSession.yaml
|
|
3
|
+
type: object
|
|
4
|
+
properties:
|
|
5
|
+
featureId:
|
|
6
|
+
$ref: UUID.yaml
|
|
7
|
+
description: "Polymorphic scope key: feature UUID, 'repo-<id>', or 'global'. Future: rename to scopeId + scopeType."
|
|
8
|
+
status:
|
|
9
|
+
$ref: InteractiveSessionStatus.yaml
|
|
10
|
+
description: Current lifecycle status of the interactive session
|
|
11
|
+
startedAt:
|
|
12
|
+
type: string
|
|
13
|
+
format: date-time
|
|
14
|
+
description: Timestamp when the agent process was spawned
|
|
15
|
+
stoppedAt:
|
|
16
|
+
type: string
|
|
17
|
+
format: date-time
|
|
18
|
+
description: Timestamp when the session ended (null if still active)
|
|
19
|
+
lastActivityAt:
|
|
20
|
+
type: string
|
|
21
|
+
format: date-time
|
|
22
|
+
description: Timestamp of last user message or agent stdout activity
|
|
23
|
+
required:
|
|
24
|
+
- featureId
|
|
25
|
+
- status
|
|
26
|
+
- startedAt
|
|
27
|
+
- lastActivityAt
|
|
28
|
+
allOf:
|
|
29
|
+
- $ref: BaseEntity.yaml
|
|
30
|
+
description: Per-feature interactive agent session record
|
|
@@ -30,6 +30,9 @@ properties:
|
|
|
30
30
|
type: boolean
|
|
31
31
|
default: false
|
|
32
32
|
description: "Whether first-run onboarding has been completed (default: false)"
|
|
33
|
+
interactiveAgent:
|
|
34
|
+
$ref: InteractiveAgentConfig.yaml
|
|
35
|
+
description: Interactive agent chat configuration (optional, defaults applied at runtime)
|
|
33
36
|
required:
|
|
34
37
|
- models
|
|
35
38
|
- user
|
package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts
CHANGED
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import type { AgentType, AgentConfig } from '../../../../domain/generated/output.js';
|
|
20
20
|
import type { IAgentExecutor } from './agent-executor.interface.js';
|
|
21
|
+
import type { IInteractiveAgentExecutor } from './interactive-agent-executor.interface.js';
|
|
21
22
|
/**
|
|
22
23
|
* CLI binary info for an agent executor, used for version detection.
|
|
23
24
|
*/
|
|
@@ -67,5 +68,21 @@ export interface IAgentExecutorFactory {
|
|
|
67
68
|
* @returns Array of model identifier strings, or empty array for unknown/dev agents
|
|
68
69
|
*/
|
|
69
70
|
getSupportedModels(agentType: AgentType): string[];
|
|
71
|
+
/**
|
|
72
|
+
* Create an interactive executor for multi-turn agent sessions.
|
|
73
|
+
*
|
|
74
|
+
* @param agentType - The type of agent to create an interactive executor for
|
|
75
|
+
* @param authConfig - Agent authentication and configuration
|
|
76
|
+
* @returns A configured interactive agent executor
|
|
77
|
+
* @throws Error if the agent type does not support interactive sessions
|
|
78
|
+
*/
|
|
79
|
+
createInteractiveExecutor(agentType: AgentType, authConfig: AgentConfig): IInteractiveAgentExecutor;
|
|
80
|
+
/**
|
|
81
|
+
* Check whether the given agent type supports interactive sessions.
|
|
82
|
+
*
|
|
83
|
+
* @param agentType - The agent type to query
|
|
84
|
+
* @returns true if createInteractiveExecutor can be called for this type
|
|
85
|
+
*/
|
|
86
|
+
supportsInteractive(agentType: AgentType): boolean;
|
|
70
87
|
}
|
|
71
88
|
//# sourceMappingURL=agent-executor-factory.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-executor-factory.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/agent-executor-factory.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-executor-factory.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/agent-executor-factory.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,SAAS,EAAE,SAAS,CAAC;IACrB,sCAAsC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,GAAG,cAAc,CAAC;IAE9E;;;;OAIG;IACH,kBAAkB,IAAI,SAAS,EAAE,CAAC;IAElC;;;;;OAKG;IACH,UAAU,IAAI,YAAY,EAAE,CAAC;IAE7B;;;;;;OAMG;IACH,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,EAAE,CAAC;IAEnD;;;;;;;OAOG;IACH,yBAAyB,CACvB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,WAAW,GACtB,yBAAyB,CAAC;IAE7B;;;;;OAKG;IACH,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC;CACpD"}
|
|
@@ -15,4 +15,5 @@ export type { IFeatureAgentProcessService } from './feature-agent-process.interf
|
|
|
15
15
|
export type { IStructuredAgentCaller, StructuredCallOptions, } from './structured-agent-caller.interface.js';
|
|
16
16
|
export { StructuredCallError } from './structured-call-error.js';
|
|
17
17
|
export type { IAgentSessionRepository, ListSessionsOptions, GetSessionOptions, } from './agent-session-repository.interface.js';
|
|
18
|
+
export type { IInteractiveAgentExecutor, InteractiveAgentOptions, InteractiveAgentEvent, InteractiveAgentSessionHandle, } from './interactive-agent-executor.interface.js';
|
|
18
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACjG,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,YAAY,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChG,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,YAAY,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACxF,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,yCAAyC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACjG,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,YAAY,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChG,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,YAAY,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC7F,YAAY,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACxF,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EACV,yBAAyB,EACzB,uBAAuB,EACvB,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,2CAA2C,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Agent Executor Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for creating and managing interactive agent sessions.
|
|
5
|
+
* Provides clean domain types (InteractiveAgentEvent, InteractiveAgentSessionHandle)
|
|
6
|
+
* that decouple the application layer from any SDK specifics.
|
|
7
|
+
*
|
|
8
|
+
* Following Clean Architecture:
|
|
9
|
+
* - Application layer depends on this interface and its domain types
|
|
10
|
+
* - Infrastructure layer provides concrete implementations
|
|
11
|
+
* - No SDK types leak through this boundary
|
|
12
|
+
*/
|
|
13
|
+
/** Options for creating/resuming an interactive agent session. */
|
|
14
|
+
export interface InteractiveAgentOptions {
|
|
15
|
+
/** Absolute worktree path (CWD for agent) */
|
|
16
|
+
cwd: string;
|
|
17
|
+
/** Model override (e.g. 'claude-sonnet-4-6') */
|
|
18
|
+
model?: string;
|
|
19
|
+
/** Feature context string to append to system prompt */
|
|
20
|
+
systemPrompt?: string;
|
|
21
|
+
}
|
|
22
|
+
/** Event emitted by an interactive agent session stream. */
|
|
23
|
+
export interface InteractiveAgentEvent {
|
|
24
|
+
type: 'delta' | 'tool_use' | 'tool_result' | 'status' | 'done' | 'error' | 'init' | 'api_retry' | 'rate_limit' | 'task_started' | 'task_progress' | 'task_done';
|
|
25
|
+
content?: string;
|
|
26
|
+
label?: string;
|
|
27
|
+
detail?: string;
|
|
28
|
+
/** Usage/cost metadata (attached to 'done' events) */
|
|
29
|
+
usage?: {
|
|
30
|
+
costUsd?: number;
|
|
31
|
+
inputTokens?: number;
|
|
32
|
+
outputTokens?: number;
|
|
33
|
+
numTurns?: number;
|
|
34
|
+
durationMs?: number;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/** Handle to a live interactive agent session. */
|
|
38
|
+
export interface InteractiveAgentSessionHandle {
|
|
39
|
+
/** The agent's session ID (used for resumption) */
|
|
40
|
+
readonly sessionId: string;
|
|
41
|
+
/** Send a user message to the agent */
|
|
42
|
+
send(message: string): Promise<void>;
|
|
43
|
+
/** Iterate response events from the agent */
|
|
44
|
+
stream(): AsyncIterable<InteractiveAgentEvent>;
|
|
45
|
+
/** Terminate the session */
|
|
46
|
+
close(): Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
/** Executor interface for interactive agent sessions. */
|
|
49
|
+
export interface IInteractiveAgentExecutor {
|
|
50
|
+
createSession(options: InteractiveAgentOptions): Promise<InteractiveAgentSessionHandle>;
|
|
51
|
+
resumeSession(sessionId: string, options: InteractiveAgentOptions): Promise<InteractiveAgentSessionHandle>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=interactive-agent-executor.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-agent-executor.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/agents/interactive-agent-executor.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,kEAAkE;AAClE,MAAM,WAAW,uBAAuB;IACtC,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,4DAA4D;AAC5D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EACA,OAAO,GACP,UAAU,GACV,aAAa,GACb,QAAQ,GACR,MAAM,GACN,OAAO,GACP,MAAM,GACN,WAAW,GACX,YAAY,GACZ,cAAc,GACd,eAAe,GACf,WAAW,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,kDAAkD;AAClD,MAAM,WAAW,6BAA6B;IAC5C,mDAAmD;IACnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uCAAuC;IACvC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,6CAA6C;IAC7C,MAAM,IAAI,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAC/C,4BAA4B;IAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,yDAAyD;AACzD,MAAM,WAAW,yBAAyB;IACxC,aAAa,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;IACxF,aAAa,CACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC3C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Agent Executor Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for creating and managing interactive agent sessions.
|
|
5
|
+
* Provides clean domain types (InteractiveAgentEvent, InteractiveAgentSessionHandle)
|
|
6
|
+
* that decouple the application layer from any SDK specifics.
|
|
7
|
+
*
|
|
8
|
+
* Following Clean Architecture:
|
|
9
|
+
* - Application layer depends on this interface and its domain types
|
|
10
|
+
* - Infrastructure layer provides concrete implementations
|
|
11
|
+
* - No SDK types leak through this boundary
|
|
12
|
+
*/
|
|
13
|
+
export {};
|
|
@@ -6,4 +6,6 @@
|
|
|
6
6
|
export type { IFeatureRepository, FeatureListFilters } from './feature-repository.interface.js';
|
|
7
7
|
export type { ISettingsRepository } from './settings.repository.interface.js';
|
|
8
8
|
export type { IRepositoryRepository } from './repository-repository.interface.js';
|
|
9
|
+
export type { IInteractiveSessionRepository } from './interactive-session-repository.interface.js';
|
|
10
|
+
export type { IInteractiveMessageRepository } from './interactive-message-repository.interface.js';
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/repositories/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAChG,YAAY,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,YAAY,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/repositories/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAChG,YAAY,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,YAAY,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAClF,YAAY,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AACnG,YAAY,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Message Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for InteractiveMessage persistence operations.
|
|
5
|
+
*
|
|
6
|
+
* Following Clean Architecture:
|
|
7
|
+
* - Domain and Application layers depend on this interface
|
|
8
|
+
* - Infrastructure layer provides the SQLite implementation
|
|
9
|
+
*/
|
|
10
|
+
import type { InteractiveMessage } from '../../../../domain/generated/output.js';
|
|
11
|
+
/**
|
|
12
|
+
* Repository interface for InteractiveMessage entity persistence.
|
|
13
|
+
*/
|
|
14
|
+
export interface IInteractiveMessageRepository {
|
|
15
|
+
/**
|
|
16
|
+
* Persist a new message record.
|
|
17
|
+
*/
|
|
18
|
+
create(message: InteractiveMessage): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Find all messages for a feature, ordered by created_at ASC.
|
|
21
|
+
* Messages are scoped by featureId (not sessionId) for cross-session continuity.
|
|
22
|
+
*
|
|
23
|
+
* @param featureId - Polymorphic scope key: may be a spec ID, repo ID, or any
|
|
24
|
+
* future entity that owns an interactive chat. Not a FK to a single table.
|
|
25
|
+
* @param limit - Maximum number of messages to return (default 200)
|
|
26
|
+
*/
|
|
27
|
+
findByFeatureId(featureId: string, limit?: number): Promise<InteractiveMessage[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Find all messages for a specific session, ordered by created_at ASC.
|
|
30
|
+
*/
|
|
31
|
+
findBySessionId(sessionId: string): Promise<InteractiveMessage[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Delete all messages for a feature. Used for "clear chat" functionality.
|
|
34
|
+
*/
|
|
35
|
+
deleteByFeatureId(featureId: string): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=interactive-message-repository.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-message-repository.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/repositories/interactive-message-repository.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;;;;OAOG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAElF;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAElE;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Message Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for InteractiveMessage persistence operations.
|
|
5
|
+
*
|
|
6
|
+
* Following Clean Architecture:
|
|
7
|
+
* - Domain and Application layers depend on this interface
|
|
8
|
+
* - Infrastructure layer provides the SQLite implementation
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Session Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for InteractiveSession persistence operations.
|
|
5
|
+
*
|
|
6
|
+
* Following Clean Architecture:
|
|
7
|
+
* - Domain and Application layers depend on this interface
|
|
8
|
+
* - Infrastructure layer provides the SQLite implementation
|
|
9
|
+
*/
|
|
10
|
+
import type { InteractiveSession, InteractiveSessionStatus } from '../../../../domain/generated/output.js';
|
|
11
|
+
/**
|
|
12
|
+
* Repository interface for InteractiveSession entity persistence.
|
|
13
|
+
*/
|
|
14
|
+
export interface IInteractiveSessionRepository {
|
|
15
|
+
/**
|
|
16
|
+
* Create a new interactive session record.
|
|
17
|
+
*/
|
|
18
|
+
create(session: InteractiveSession): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Find a session by its unique ID.
|
|
21
|
+
*/
|
|
22
|
+
findById(id: string): Promise<InteractiveSession | null>;
|
|
23
|
+
/**
|
|
24
|
+
* Find the most recent session for a given feature.
|
|
25
|
+
*
|
|
26
|
+
* @param featureId - Polymorphic scope key: may be a spec ID, repo ID, or any
|
|
27
|
+
* future entity that owns an interactive chat. Not a FK to a single table.
|
|
28
|
+
*/
|
|
29
|
+
findByFeatureId(featureId: string): Promise<InteractiveSession | null>;
|
|
30
|
+
/**
|
|
31
|
+
* Find all sessions with status 'booting' or 'ready'.
|
|
32
|
+
* Used for concurrent session cap enforcement and zombie cleanup.
|
|
33
|
+
*/
|
|
34
|
+
findAllActive(): Promise<InteractiveSession[]>;
|
|
35
|
+
/**
|
|
36
|
+
* Update session status and optionally set stoppedAt.
|
|
37
|
+
*/
|
|
38
|
+
updateStatus(id: string, status: InteractiveSessionStatus, stoppedAt?: Date): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Update the lastActivityAt timestamp for a session.
|
|
41
|
+
*/
|
|
42
|
+
updateLastActivity(id: string, lastActivityAt: Date): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Mark all sessions with status 'booting' or 'ready' as 'stopped'.
|
|
45
|
+
* Called on server startup to clean up zombie sessions from prior restart.
|
|
46
|
+
*/
|
|
47
|
+
markAllActiveStopped(): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* Count sessions with status 'booting' or 'ready'.
|
|
50
|
+
* Used to enforce the concurrent session cap.
|
|
51
|
+
*/
|
|
52
|
+
countActiveSessions(): Promise<number>;
|
|
53
|
+
/**
|
|
54
|
+
* Persist the agent SDK session ID for resumption across service restarts.
|
|
55
|
+
* Agent-agnostic: works with Claude, Cursor, Codex, or any future agent.
|
|
56
|
+
*/
|
|
57
|
+
updateAgentSessionId(id: string, agentSessionId: string): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Retrieve the agent SDK session ID for a given session.
|
|
60
|
+
*/
|
|
61
|
+
getAgentSessionId(id: string): Promise<string | null>;
|
|
62
|
+
/**
|
|
63
|
+
* Update the turn status for a session.
|
|
64
|
+
* Values: 'idle' | 'processing' | 'unread'
|
|
65
|
+
*/
|
|
66
|
+
updateTurnStatus(id: string, turnStatus: string): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Get turn statuses for multiple feature IDs in a single query.
|
|
69
|
+
* Returns a map of featureId → turnStatus for features that have an active session.
|
|
70
|
+
*/
|
|
71
|
+
getTurnStatuses(featureIds: string[]): Promise<Map<string, string>>;
|
|
72
|
+
/**
|
|
73
|
+
* Get ALL non-idle turn statuses across all active sessions.
|
|
74
|
+
* Returns a map of featureId → turnStatus (only 'processing' | 'unread' entries).
|
|
75
|
+
*/
|
|
76
|
+
getAllActiveTurnStatuses(): Promise<Map<string, string>>;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=interactive-session-repository.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-session-repository.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/repositories/interactive-session-repository.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,wCAAwC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAEzD;;;;;OAKG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAEvE;;;OAGG;IACH,aAAa,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE/C;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5F;;OAEG;IACH,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE;;;OAGG;IACH,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;OAGG;IACH,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExE;;OAEG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEtD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpE;;;OAGG;IACH,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC1D"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Session Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for InteractiveSession persistence operations.
|
|
5
|
+
*
|
|
6
|
+
* Following Clean Architecture:
|
|
7
|
+
* - Domain and Application layers depend on this interface
|
|
8
|
+
* - Infrastructure layer provides the SQLite implementation
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
@@ -19,4 +19,5 @@ export type { IDaemonService, DaemonState } from './daemon-service.interface.js'
|
|
|
19
19
|
export type { IDeploymentService, DeploymentStatus } from './deployment-service.interface.js';
|
|
20
20
|
export type { IGitHubRepositoryService, GitHubRepo, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl, } from './github-repository-service.interface.js';
|
|
21
21
|
export { GitHubAuthError, GitHubCloneError, GitHubUrlParseError, GitHubRepoListError, } from './github-repository-service.interface.js';
|
|
22
|
+
export type { IInteractiveSessionService, StreamChunk, UnsubscribeFn, ChatState, } from './interactive-session-service.interface.js';
|
|
22
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EACV,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACjG,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC3E,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC9F,YAAY,EACV,wBAAwB,EACxB,UAAU,EACV,2BAA2B,EAC3B,YAAY,EACZ,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EACV,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACjG,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC3E,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC9F,YAAY,EACV,wBAAwB,EACxB,UAAU,EACV,2BAA2B,EAC3B,YAAY,EACZ,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,YAAY,EACV,0BAA0B,EAC1B,WAAW,EACX,aAAa,EACb,SAAS,GACV,MAAM,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Session Service Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for managing per-feature interactive agent sessions.
|
|
5
|
+
* Handles session lifecycle (start, stop), message I/O, and real-time
|
|
6
|
+
* stdout streaming to SSE consumers.
|
|
7
|
+
*
|
|
8
|
+
* Following Clean Architecture:
|
|
9
|
+
* - Application layer depends on this interface
|
|
10
|
+
* - Infrastructure layer provides the concrete implementation (singleton)
|
|
11
|
+
*/
|
|
12
|
+
import type { InteractiveSession, InteractiveMessage } from '../../../../domain/generated/output.js';
|
|
13
|
+
/**
|
|
14
|
+
* A single streaming chunk forwarded from agent stdout to an SSE consumer.
|
|
15
|
+
*/
|
|
16
|
+
export interface StreamChunk {
|
|
17
|
+
/** Incremental output text from the agent */
|
|
18
|
+
delta: string;
|
|
19
|
+
/** True when the agent has finished this response turn */
|
|
20
|
+
done: boolean;
|
|
21
|
+
/** Optional log entry for tool use / thinking events (shown as status indicator) */
|
|
22
|
+
log?: string;
|
|
23
|
+
/** Structured activity event for rich rendering in the thread */
|
|
24
|
+
activity?: StreamActivity;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A structured activity event emitted during agent execution.
|
|
28
|
+
* Rendered as a distinct inline entry in the chat thread.
|
|
29
|
+
*/
|
|
30
|
+
export interface StreamActivity {
|
|
31
|
+
kind: 'tool_use' | 'tool_result' | 'thinking' | 'system';
|
|
32
|
+
/** Tool name or system event label */
|
|
33
|
+
label: string;
|
|
34
|
+
/** Human-readable detail (file path, command, pattern, etc.) */
|
|
35
|
+
detail?: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Function returned by subscribe() to remove the listener.
|
|
39
|
+
*/
|
|
40
|
+
export type UnsubscribeFn = () => void;
|
|
41
|
+
/**
|
|
42
|
+
* Chat state returned by getChatState — single response for the frontend.
|
|
43
|
+
*/
|
|
44
|
+
export interface ChatState {
|
|
45
|
+
/** All persisted messages for the feature, ordered by created_at ASC */
|
|
46
|
+
messages: InteractiveMessage[];
|
|
47
|
+
/** Status of the active session (null if no session exists) */
|
|
48
|
+
sessionStatus: string | null;
|
|
49
|
+
/** In-progress streaming text from the agent (null when idle) */
|
|
50
|
+
streamingText: string | null;
|
|
51
|
+
/** Session info for the toolbar (null if no active session) */
|
|
52
|
+
sessionInfo: SessionInfo | null;
|
|
53
|
+
/** Turn activity status: 'idle' | 'processing' | 'unread' (for dot indicators) */
|
|
54
|
+
turnStatus: string;
|
|
55
|
+
}
|
|
56
|
+
/** Live session metadata for the frontend toolbar. */
|
|
57
|
+
export interface SessionInfo {
|
|
58
|
+
pid: number | null;
|
|
59
|
+
sessionId: string | null;
|
|
60
|
+
model: string | null;
|
|
61
|
+
startedAt: string;
|
|
62
|
+
idleTimeoutMinutes: number;
|
|
63
|
+
lastActivityAt: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Service interface for interactive session lifecycle management.
|
|
67
|
+
*
|
|
68
|
+
* Implementations are expected to be singletons: they maintain in-memory
|
|
69
|
+
* state (process handles, timers, subscriber maps) across multiple HTTP
|
|
70
|
+
* requests for the duration of the server process.
|
|
71
|
+
*
|
|
72
|
+
* **Polymorphic `featureId` scope key:** The `featureId` parameter used
|
|
73
|
+
* throughout this interface is a polymorphic scope key that determines
|
|
74
|
+
* message and session isolation:
|
|
75
|
+
* - Feature chat: actual feature UUID (e.g. `"feat-abc123"`)
|
|
76
|
+
* - Repository chat: repo identifier (e.g. `"repo-<repoId>"`)
|
|
77
|
+
* - Global chat: literal string `"global"`
|
|
78
|
+
*
|
|
79
|
+
* All messages and sessions are scoped by this key regardless of chat type.
|
|
80
|
+
*
|
|
81
|
+
* @todo Consider renaming to `scopeId` with a `scopeType` discriminator
|
|
82
|
+
* for better type safety and clarity.
|
|
83
|
+
*/
|
|
84
|
+
export interface IInteractiveSessionService {
|
|
85
|
+
/**
|
|
86
|
+
* Start a new interactive session for the given feature.
|
|
87
|
+
* Creates a DB record (status=booting), spawns the agent process with
|
|
88
|
+
* the feature worktree as CWD, injects the feature context prompt, and
|
|
89
|
+
* waits for the agent's first response before returning.
|
|
90
|
+
*
|
|
91
|
+
* @param featureId - The feature to associate the session with
|
|
92
|
+
* @param worktreePath - Absolute path to the feature worktree (CWD for the agent)
|
|
93
|
+
* @returns The newly created session record (status may still be 'booting')
|
|
94
|
+
* @throws ConcurrentSessionLimitError when the configured cap is reached
|
|
95
|
+
*/
|
|
96
|
+
startSession(featureId: string, worktreePath: string, model?: string, agentType?: string): Promise<InteractiveSession>;
|
|
97
|
+
/**
|
|
98
|
+
* Stop an active session: send SIGTERM to the process, cancel the idle
|
|
99
|
+
* timer, and mark the DB record as stopped. Idempotent — calling on an
|
|
100
|
+
* already-stopped session is a no-op.
|
|
101
|
+
*
|
|
102
|
+
* @param sessionId - The session to stop
|
|
103
|
+
*/
|
|
104
|
+
stopSession(sessionId: string): Promise<void>;
|
|
105
|
+
/**
|
|
106
|
+
* Send a user message to the agent stdin and persist it to the DB.
|
|
107
|
+
* Resets the idle timeout clock. Returns the persisted message record.
|
|
108
|
+
*
|
|
109
|
+
* @param sessionId - The target session
|
|
110
|
+
* @param content - Message text (max 32 KB)
|
|
111
|
+
* @returns The persisted InteractiveMessage
|
|
112
|
+
* @throws Error if the session is not in 'ready' status
|
|
113
|
+
*/
|
|
114
|
+
sendMessage(sessionId: string, content: string): Promise<InteractiveMessage>;
|
|
115
|
+
/**
|
|
116
|
+
* Return all messages for the feature, ordered by created_at ASC.
|
|
117
|
+
* History is scoped per feature (not per session) for cross-session continuity.
|
|
118
|
+
*
|
|
119
|
+
* @param featureId - The feature whose message history to retrieve
|
|
120
|
+
* @param limit - Max messages to return (default 200)
|
|
121
|
+
*/
|
|
122
|
+
getMessages(featureId: string, limit?: number): Promise<InteractiveMessage[]>;
|
|
123
|
+
/**
|
|
124
|
+
* Return the most recent session for the given ID, or null if not found.
|
|
125
|
+
*
|
|
126
|
+
* @param sessionId - The session ID to look up
|
|
127
|
+
*/
|
|
128
|
+
getSession(sessionId: string): Promise<InteractiveSession | null>;
|
|
129
|
+
/**
|
|
130
|
+
* Delete all messages for a feature (clear chat history).
|
|
131
|
+
*
|
|
132
|
+
* @param featureId - The feature whose messages to delete
|
|
133
|
+
*/
|
|
134
|
+
clearMessages(featureId: string): Promise<void>;
|
|
135
|
+
/**
|
|
136
|
+
* Subscribe to real-time stdout chunks for a session.
|
|
137
|
+
* The callback is invoked with each agent output chunk as it arrives and
|
|
138
|
+
* once more with done=true when the turn ends.
|
|
139
|
+
*
|
|
140
|
+
* @param sessionId - The session to subscribe to
|
|
141
|
+
* @param onChunk - Callback invoked with each chunk
|
|
142
|
+
* @returns An unsubscribe function; call it to stop receiving events
|
|
143
|
+
*/
|
|
144
|
+
subscribe(sessionId: string, onChunk: (chunk: StreamChunk) => void): UnsubscribeFn;
|
|
145
|
+
/**
|
|
146
|
+
* Send a user message for a feature. The service handles session lifecycle:
|
|
147
|
+
* - Persists the user message to DB immediately
|
|
148
|
+
* - If session is ready: sends to agent
|
|
149
|
+
* - If session is booting: queues the message
|
|
150
|
+
* - If no session: boots one and queues the message
|
|
151
|
+
*
|
|
152
|
+
* @returns The persisted user message
|
|
153
|
+
*/
|
|
154
|
+
sendUserMessage(featureId: string, content: string, worktreePath: string): Promise<InteractiveMessage>;
|
|
155
|
+
/**
|
|
156
|
+
* Get the complete chat state for a feature in a single call.
|
|
157
|
+
* Merges DB messages with any in-flight streaming content.
|
|
158
|
+
*/
|
|
159
|
+
getChatState(featureId: string): Promise<ChatState>;
|
|
160
|
+
/**
|
|
161
|
+
* Subscribe to real-time chunks for a feature's active session.
|
|
162
|
+
* Resolves the active session internally.
|
|
163
|
+
*/
|
|
164
|
+
subscribeByFeature(featureId: string, onChunk: (chunk: StreamChunk) => void): UnsubscribeFn;
|
|
165
|
+
/**
|
|
166
|
+
* Stop the active session for a feature. Kills the agent process.
|
|
167
|
+
* Idempotent — no-op if no active session exists.
|
|
168
|
+
*/
|
|
169
|
+
stopByFeature(featureId: string): Promise<void>;
|
|
170
|
+
/**
|
|
171
|
+
* Mark a feature's chat as read — clears the 'unread' turn status to 'idle'.
|
|
172
|
+
* Called when the user opens/views the chat tab.
|
|
173
|
+
*/
|
|
174
|
+
markRead(featureId: string): Promise<void>;
|
|
175
|
+
/**
|
|
176
|
+
* Get turn statuses for multiple features in a single call.
|
|
177
|
+
* Returns a map of featureId → 'idle' | 'processing' | 'unread'.
|
|
178
|
+
* Used by UI to show dot indicators on all chat buttons.
|
|
179
|
+
*/
|
|
180
|
+
getTurnStatuses(featureIds: string[]): Promise<Map<string, string>>;
|
|
181
|
+
/**
|
|
182
|
+
* Get ALL non-idle turn statuses. No IDs needed — returns every
|
|
183
|
+
* active session's status ('processing' | 'unread').
|
|
184
|
+
*/
|
|
185
|
+
getAllActiveTurnStatuses(): Promise<Map<string, string>>;
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=interactive-session-service.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-session-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/interactive-session-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,wCAAwC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzD,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,wEAAwE;IACxE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,+DAA+D;IAC/D,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iEAAiE;IACjE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,+DAA+D;IAC/D,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,sDAAsD;AACtD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;;;;;OAUG;IACH,YAAY,CACV,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;OAMG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;;;;;;;OAQG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE7E;;;;;;OAMG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE9E;;;;OAIG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAElE;;;;OAIG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,aAAa,CAAC;IAInF;;;;;;;;OAQG;IACH,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEpD;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,aAAa,CAAC;IAE5F;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpE;;;OAGG;IACH,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC1D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive Session Service Interface
|
|
3
|
+
*
|
|
4
|
+
* Output port for managing per-feature interactive agent sessions.
|
|
5
|
+
* Handles session lifecycle (start, stop), message I/O, and real-time
|
|
6
|
+
* stdout streaming to SSE consumers.
|
|
7
|
+
*
|
|
8
|
+
* Following Clean Architecture:
|
|
9
|
+
* - Application layer depends on this interface
|
|
10
|
+
* - Infrastructure layer provides the concrete implementation (singleton)
|
|
11
|
+
*/
|
|
12
|
+
export {};
|