@shepai/cli 1.183.0-pr554.2632d62 → 1.183.0-pr555.e53ab0e
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/Application.yaml +0 -22
- package/apis/json-schema/Feature.yaml +3 -0
- package/apis/json-schema/NotificationEventConfig.yaml +0 -4
- package/apis/json-schema/NotificationEventType.yaml +0 -1
- package/apis/json-schema/Plugin.yaml +86 -0
- package/apis/json-schema/PluginHealthStatus.yaml +9 -0
- package/apis/json-schema/PluginTransport.yaml +7 -0
- package/apis/json-schema/PluginType.yaml +8 -0
- package/apis/json-schema/RecordBoolean.yaml +6 -0
- package/apis/json-schema/ToolGroup.yaml +18 -0
- package/dist/eslint.config.mjs +0 -19
- package/dist/packages/core/src/application/ports/output/agents/agent-executor.interface.d.ts +7 -0
- package/dist/packages/core/src/application/ports/output/agents/agent-executor.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/agents/index.d.ts +0 -1
- package/dist/packages/core/src/application/ports/output/agents/index.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts +1 -1
- package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/repositories/index.d.ts +1 -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/plugin-repository.interface.d.ts +60 -0
- package/dist/packages/core/src/application/ports/output/repositories/plugin-repository.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/repositories/plugin-repository.interface.js +11 -0
- package/dist/packages/core/src/application/ports/output/services/index.d.ts +2 -5
- package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.d.ts +66 -0
- package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.js +12 -0
- package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.d.ts +49 -0
- package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.d.ts.map +1 -0
- package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.js +12 -0
- package/dist/packages/core/src/application/services/agents/agent-session-repository.registry.d.ts +24 -0
- package/dist/packages/core/src/application/services/agents/agent-session-repository.registry.d.ts.map +1 -0
- package/dist/packages/core/src/{infrastructure → application}/services/agents/agent-session-repository.registry.js +5 -10
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts +1 -5
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +6 -10
- package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.js +4 -10
- package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.d.ts +2 -4
- package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.js +8 -15
- package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.d.ts +2 -4
- package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.js +8 -15
- package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts +1 -7
- package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +8 -15
- package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.js +5 -7
- package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.js +7 -12
- package/dist/packages/core/src/application/use-cases/applications/delete-application.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/applications/delete-application.use-case.js +1 -2
- package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.js +1 -2
- package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.js +2 -3
- package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.js +4 -7
- package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.js +10 -17
- package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts +2 -10
- package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +10 -20
- package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +2 -0
- package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.js +4 -6
- package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.js +4 -6
- package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.js +4 -6
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts +2 -2
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.js +2 -2
- package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.js +4 -8
- package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.d.ts +35 -0
- package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.js +106 -0
- package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.d.ts +20 -0
- package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.js +72 -0
- package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.d.ts +22 -0
- package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.js +59 -0
- package/dist/packages/core/src/application/use-cases/plugins/disable-plugin.use-case.d.ts +18 -0
- package/dist/packages/core/src/application/use-cases/plugins/disable-plugin.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/{cloud-deploy/ensure-gh-authenticated.use-case.js → plugins/disable-plugin.use-case.js} +31 -12
- package/dist/packages/core/src/application/use-cases/plugins/enable-plugin.use-case.d.ts +18 -0
- package/dist/packages/core/src/application/use-cases/plugins/enable-plugin.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/{cloud-deploy/select-cloud-provider.use-case.js → plugins/enable-plugin.use-case.js} +31 -17
- package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.d.ts +21 -0
- package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.js +45 -0
- package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.d.ts +22 -0
- package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.js +50 -0
- package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.d.ts +21 -0
- package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.js +50 -0
- package/dist/packages/core/src/application/use-cases/repositories/add-repository.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/repositories/add-repository.use-case.js +11 -1
- package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.js +9 -1
- package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.d.ts +2 -6
- package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.js +7 -30
- package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.js +4 -6
- package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.d.ts +1 -3
- package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.js +4 -6
- package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.d.ts +2 -4
- package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.js +4 -8
- package/dist/packages/core/src/application/workflows/application-creation.workflow.d.ts.map +1 -0
- package/dist/packages/core/src/domain/factories/index.d.ts +1 -0
- package/dist/packages/core/src/domain/factories/index.d.ts.map +1 -1
- package/dist/packages/core/src/domain/factories/index.js +1 -0
- package/dist/packages/core/src/domain/factories/spec-yaml-parser.d.ts +29 -0
- package/dist/packages/core/src/domain/factories/spec-yaml-parser.d.ts.map +1 -0
- package/dist/packages/core/src/domain/factories/spec-yaml-parser.js +134 -0
- package/dist/packages/core/src/domain/generated/output.d.ts +113 -41
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/domain/generated/output.js +18 -25
- package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.js +679 -32
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.js +6 -23
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +8 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.d.ts +61 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.js +91 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.d.ts +13 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.js +51 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.d.ts +12 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.js +17 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.js +2 -40
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +3 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.d.ts +24 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.js +114 -0
- package/dist/packages/core/src/infrastructure/services/agents/analyze-repo/analyze-repository-graph.d.ts +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.js +2 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts +1 -2
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +6 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +18 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +12 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.d.ts +23 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.js +53 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +5 -0
- package/dist/packages/core/src/infrastructure/services/attachment-storage.service.d.ts +5 -3
- package/dist/packages/core/src/infrastructure/services/attachment-storage.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/notifications/notification.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/notifications/notification.service.js +0 -1
- package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.d.ts +51 -0
- package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.js +206 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.d.ts +52 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.js +86 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.d.ts +28 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.js +95 -0
- package/dist/src/presentation/cli/commands/app/index.d.ts +4 -10
- package/dist/src/presentation/cli/commands/app/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/app/index.js +5 -17
- package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/new.command.js +1 -2
- package/dist/src/presentation/cli/commands/plugin/add.command.d.ts +12 -0
- package/dist/src/presentation/cli/commands/plugin/add.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/add.command.js +75 -0
- package/dist/src/presentation/cli/commands/plugin/catalog.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/catalog.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/catalog.command.js +46 -0
- package/dist/src/presentation/cli/commands/plugin/configure.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/configure.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/configure.command.js +37 -0
- package/dist/src/presentation/cli/commands/plugin/disable.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/disable.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/disable.command.js +31 -0
- package/dist/src/presentation/cli/commands/plugin/enable.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/enable.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/enable.command.js +31 -0
- package/dist/src/presentation/cli/commands/plugin/index.d.ts +22 -0
- package/dist/src/presentation/cli/commands/plugin/index.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/index.js +41 -0
- package/dist/src/presentation/cli/commands/plugin/list.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/list.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/list.command.js +63 -0
- package/dist/src/presentation/cli/commands/plugin/remove.command.d.ts +11 -0
- package/dist/src/presentation/cli/commands/plugin/remove.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/remove.command.js +31 -0
- package/dist/src/presentation/cli/commands/plugin/status.command.d.ts +12 -0
- package/dist/src/presentation/cli/commands/plugin/status.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/plugin/status.command.js +126 -0
- package/dist/src/presentation/cli/index.js +2 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.js +9 -2
- package/dist/src/presentation/web/app/actions/add-plugin.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/add-plugin.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/add-plugin.js +15 -0
- package/dist/src/presentation/web/app/actions/check-plugin-health.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/check-plugin-health.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/check-plugin-health.js +15 -0
- package/dist/src/presentation/web/app/actions/configure-plugin.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/configure-plugin.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/configure-plugin.js +15 -0
- package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -0
- package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
- package/dist/src/presentation/web/app/actions/create-feature.js +3 -1
- package/dist/src/presentation/web/app/actions/deploy-application.d.ts +9 -8
- package/dist/src/presentation/web/app/actions/deploy-application.d.ts.map +1 -1
- package/dist/src/presentation/web/app/actions/deploy-application.js +38 -22
- package/dist/src/presentation/web/app/actions/get-plugin-catalog.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/get-plugin-catalog.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/get-plugin-catalog.js +13 -0
- package/dist/src/presentation/web/app/actions/list-plugins.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/list-plugins.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/list-plugins.js +13 -0
- package/dist/src/presentation/web/app/actions/remove-plugin.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/remove-plugin.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/remove-plugin.js +15 -0
- package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts +7 -0
- package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/toggle-plugin.js +23 -0
- package/dist/src/presentation/web/app/api/agent-events/route.d.ts +12 -17
- 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 +331 -58
- package/dist/src/presentation/web/app/api/applications/[id]/route.d.ts.map +1 -1
- package/dist/src/presentation/web/app/api/applications/[id]/route.js +1 -4
- package/dist/src/presentation/web/app/api/deployment-logs/route.d.ts.map +1 -1
- package/dist/src/presentation/web/app/api/deployment-logs/route.js +2 -4
- package/dist/src/presentation/web/app/build-graph-nodes.d.ts.map +1 -1
- package/dist/src/presentation/web/app/build-graph-nodes.js +1 -2
- package/dist/src/presentation/web/app/plugins/page.d.ts +4 -0
- package/dist/src/presentation/web/app/plugins/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/plugins/page.js +24 -0
- package/dist/src/presentation/web/app/plugins/plugins-page-client.d.ts +8 -0
- package/dist/src/presentation/web/app/plugins/plugins-page-client.d.ts.map +1 -0
- package/dist/src/presentation/web/app/plugins/plugins-page-client.js +61 -0
- package/dist/src/presentation/web/components/common/application-node/application-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/application-node/application-node.js +1 -2
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts +6 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.js +2 -2
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +9 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +15 -3
- package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +0 -4
- package/dist/src/presentation/web/components/common/plugin-catalog/index.d.ts +2 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/index.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/index.js +1 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.d.ts +7 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.js +32 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.d.ts +16 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.js +87 -0
- package/dist/src/presentation/web/components/common/plugin-list/index.d.ts +2 -0
- package/dist/src/presentation/web/components/common/plugin-list/index.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-list/index.js +1 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.d.ts +9 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.js +77 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.d.ts +17 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.js +114 -0
- package/dist/src/presentation/web/components/features/application-page/application-page.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/application-page/application-page.js +306 -17
- package/dist/src/presentation/web/components/features/applications/application-card.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/applications/application-card.js +1 -2
- package/dist/src/presentation/web/components/features/chat/workflow-placeholder.d.ts +1 -1
- package/dist/src/presentation/web/components/features/chat/workflow-placeholder.js +1 -1
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +1 -2
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +2 -2
- package/dist/src/presentation/web/hooks/deployment-status-provider.js +3 -4
- package/dist/translations/ar/cli.json +82 -0
- package/dist/translations/ar/web.json +2 -1
- package/dist/translations/de/cli.json +82 -0
- package/dist/translations/de/web.json +2 -1
- package/dist/translations/en/cli.json +82 -0
- package/dist/translations/en/web.json +2 -1
- package/dist/translations/es/cli.json +82 -0
- package/dist/translations/es/web.json +2 -1
- package/dist/translations/fr/cli.json +82 -0
- package/dist/translations/fr/web.json +2 -1
- package/dist/translations/he/cli.json +82 -0
- package/dist/translations/he/web.json +2 -1
- package/dist/translations/pt/cli.json +82 -0
- package/dist/translations/pt/web.json +2 -1
- package/dist/translations/ru/cli.json +82 -0
- package/dist/translations/ru/web.json +2 -1
- package/dist/translations/uk/cli.json +82 -0
- package/dist/translations/uk/web.json +2 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +1 -8
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +1 -1
- package/web/.next/required-server-files.json +1 -1
- package/web/.next/routes-manifest.json +6 -58
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +32 -32
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +3 -3
- 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/server-reference-manifest.json +30 -30
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +33 -33
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +3 -3
- 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/server-reference-manifest.json +41 -41
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +4 -4
- 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/server-reference-manifest.json +41 -41
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +4 -4
- 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/server-reference-manifest.json +31 -31
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +3 -3
- 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/server-reference-manifest.json +30 -30
- package/web/.next/server/app/(dashboard)/chat/page.js +3 -3
- package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +33 -33
- package/web/.next/server/app/(dashboard)/create/page.js +3 -3
- 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/server-reference-manifest.json +41 -41
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +4 -4
- 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/server-reference-manifest.json +41 -41
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +4 -4
- 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/server-reference-manifest.json +30 -30
- package/web/.next/server/app/(dashboard)/page.js +3 -3
- 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/server-reference-manifest.json +31 -31
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +3 -3
- 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.js +1 -1
- package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- 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/server-reference-manifest.json +7 -7
- 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/agent-events/route.js +2 -1
- package/web/.next/server/app/api/agent-events/route.js.nft.json +1 -1
- package/web/.next/server/app/api/applications/[id]/route.js +1 -1
- package/web/.next/server/app/api/applications/[id]/route.js.nft.json +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/feature-logs/route.js +1 -1
- package/web/.next/server/app/api/feature-logs/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js +2 -2
- package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js +1 -1
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
- package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +40 -70
- package/web/.next/server/app/application/[id]/page.js +3 -3
- package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
- package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/applications/page/server-reference-manifest.json +15 -15
- package/web/.next/server/app/applications/page.js +3 -3
- package/web/.next/server/app/applications/page.js.nft.json +1 -1
- package/web/.next/server/app/applications/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/features/page/server-reference-manifest.json +7 -7
- package/web/.next/server/app/features/page.js +2 -2
- package/web/.next/server/app/features/page.js.nft.json +1 -1
- package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/plugins/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/plugins/page/build-manifest.json +18 -0
- package/web/.next/server/app/plugins/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/plugins/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/plugins/page/server-reference-manifest.json +170 -0
- package/web/.next/server/app/plugins/page.js +19 -0
- package/web/.next/server/app/plugins/page.js.nft.json +1 -0
- package/web/.next/server/app/plugins/page_client-reference-manifest.js +2 -0
- package/web/.next/server/app/settings/page/server-reference-manifest.json +10 -10
- 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/server-reference-manifest.json +15 -15
- 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/server-reference-manifest.json +13 -13
- 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/server-reference-manifest.json +7 -7
- 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 +1 -8
- package/web/.next/server/chunks/{[root-of-the-server]__582ebd78._.js → [root-of-the-server]__0702fed9._.js} +2 -2
- package/web/.next/server/chunks/[root-of-the-server]__10e976f3._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__3f7e7be1._.js +2 -2
- package/web/.next/server/chunks/[root-of-the-server]__3f7e7be1._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__7a2ddaea._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__7a2ddaea._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__84fede21._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__84fede21._.js.map +1 -0
- package/web/.next/server/chunks/{[root-of-the-server]__76a92098._.js → [root-of-the-server]__88c71186._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__7de24eaf._.js → [root-of-the-server]__8b6abaa3._.js} +2 -2
- package/web/.next/server/chunks/[root-of-the-server]__aabea727._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__aabea727._.js.map +1 -0
- package/web/.next/server/chunks/{[root-of-the-server]__6af3863d._.js → [root-of-the-server]__cfba7146._.js} +2 -2
- package/web/.next/server/chunks/{[root-of-the-server]__6af3863d._.js.map → [root-of-the-server]__cfba7146._.js.map} +1 -1
- package/web/.next/server/chunks/{[root-of-the-server]__1133b25d._.js → [root-of-the-server]__dbb420e4._.js} +2 -2
- package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_4faf694b.js +12 -0
- package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_4faf694b.js.map +1 -0
- package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_fc401c5d.js +1 -1
- package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_fc401c5d.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js.map +1 -1
- 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 +2 -2
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__269765de._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__269765de._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__ec85e47f._.js → [root-of-the-server]__288ffaa6._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__ec85e47f._.js.map → [root-of-the-server]__288ffaa6._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__4101a4a8._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__4101a4a8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7ea16f3a._.js → [root-of-the-server]__46dd2baf._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7ea16f3a._.js.map → [root-of-the-server]__46dd2baf._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__538580df._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__538580df._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__58043de2._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__58043de2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__5193e3ce._.js → [root-of-the-server]__5c5de261._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__5193e3ce._.js.map → [root-of-the-server]__5c5de261._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__638955bc._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__87d5ff6e._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__87d5ff6e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9b0e14ee._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9b0e14ee._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__93be3301._.js → [root-of-the-server]__ac9ab3c5._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__93be3301._.js.map → [root-of-the-server]__ac9ab3c5._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3d233f3._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3d233f3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c6dba2b8._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c6dba2b8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__de3991d8._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__de3991d8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e4fac430._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e4fac430._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__eacd32e9._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__eacd32e9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__494cf0fb._.js → [root-of-the-server]__ef0b8905._.js} +3 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ef0b8905._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7198dce9._.js → [root-of-the-server]__f94e4165._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7198dce9._.js.map → [root-of-the-server]__f94e4165._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__149d89d9._.js → [root-of-the-server]__ff5a5243._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__149d89d9._.js.map → [root-of-the-server]__ff5a5243._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_0f41c049._.js +3 -0
- package/web/.next/server/chunks/ssr/_0f41c049._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_33a243dd._.js +1 -1
- package/web/.next/server/chunks/ssr/_33a243dd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_5bf2415e._.js → _34113cf8._.js} +2 -2
- package/web/.next/server/chunks/ssr/_34113cf8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_519d77a9._.js +3 -0
- package/web/.next/server/chunks/ssr/_519d77a9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_563be831._.js +3 -0
- package/web/.next/server/chunks/ssr/_563be831._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_57643324._.js +3 -0
- package/web/.next/server/chunks/ssr/_57643324._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_6a252f90._.js +3 -0
- package/web/.next/server/chunks/ssr/_6a252f90._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_6b254164._.js +1 -1
- package/web/.next/server/chunks/ssr/_6b254164._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_6cc2c4f7._.js +3 -0
- package/web/.next/server/chunks/ssr/_6cc2c4f7._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_6cc4c05b._.js +3 -0
- package/web/.next/server/chunks/ssr/_6cc4c05b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_6fd324a3._.js +3 -0
- package/web/.next/server/chunks/ssr/_6fd324a3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_82baa7c1._.js → _828a0b9c._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_82baa7c1._.js.map → _828a0b9c._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_8757ce67._.js +4 -0
- package/web/.next/server/chunks/ssr/_8757ce67._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_8e101e0b._.js +12 -12
- package/web/.next/server/chunks/ssr/_8e101e0b._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_93002ccf._.js +3 -0
- package/web/.next/server/chunks/ssr/_93002ccf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_9f191a54._.js +3 -0
- package/web/.next/server/chunks/ssr/_9f191a54._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_d6ba4d64._.js +3 -0
- package/web/.next/server/chunks/ssr/_d6ba4d64._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_e225a49c._.js +3 -0
- package/web/.next/server/chunks/ssr/_e225a49c._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_e28c6144._.js +3 -0
- package/web/.next/server/chunks/ssr/_e28c6144._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_e65abbd1._.js +3 -0
- package/web/.next/server/chunks/ssr/_e65abbd1._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_ebd74417._.js +9 -0
- package/web/.next/server/chunks/ssr/_ebd74417._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_750b8cfe._.js → _f39276bf._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_750b8cfe._.js.map → _f39276bf._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_f86fc1bf._.js +1 -1
- package/web/.next/server/chunks/ssr/_f86fc1bf._.js.map +1 -1
- 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_repository-drawer-client_tsx_39a00c03._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_28388798._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_28388798._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_72cc0c05._.js → node_modules__pnpm_632deb2b._.js} +2 -2
- package/web/.next/server/chunks/ssr/node_modules__pnpm_632deb2b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js +3 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js +3 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_bb8735f7._.js → src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js} +2 -2
- package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/translations_1562ae1a._.js +1 -1
- package/web/.next/server/chunks/ssr/translations_1562ae1a._.js.map +1 -1
- 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 +165 -86
- package/web/.next/static/chunks/{113f38481fc14902.js → 08fd591b02975483.js} +12 -12
- package/web/.next/static/chunks/{74d3f880029b266f.js → 0b974caf7e3c6fea.js} +1 -1
- package/web/.next/static/chunks/116e8d2a69619e48.js +1 -0
- package/web/.next/static/chunks/1b72915af68bd327.js +1 -0
- package/web/.next/static/chunks/{e0f33f0d6cb8cf21.js → 1f2f77dd2f63f257.js} +1 -1
- package/web/.next/static/chunks/3031618bf02ecd26.js +1 -0
- package/web/.next/static/chunks/{d770f7a879b2f43a.js → 3caa2489e09df522.js} +1 -1
- package/web/.next/static/chunks/463c8dd86ed296c9.js +1 -0
- package/web/.next/static/chunks/{6bac882ad18c881c.js → 534c414bd5e096af.js} +2 -2
- package/web/.next/static/chunks/59e96a965c1cc25b.js +7 -0
- package/web/.next/static/chunks/5a2f5a3c29c6c3dd.js +1 -0
- package/web/.next/static/chunks/616760ae36cf397f.js +1 -0
- package/web/.next/static/chunks/{6512133101a3eb85.js → 6aa8cfb9a0673778.js} +3 -3
- package/web/.next/static/chunks/772f87225f881091.css +1 -0
- package/web/.next/static/chunks/854d1bb6e05cadeb.js +1 -0
- package/web/.next/static/chunks/86ce4c6dcb228907.js +1 -0
- package/web/.next/static/chunks/86e9d633379e74e8.js +5 -0
- package/web/.next/static/chunks/88aa4f96ec9e8349.js +1 -0
- package/web/.next/static/chunks/{7f25b508e717b00c.js → a3ea2afcbac5ac67.js} +1 -1
- package/web/.next/static/chunks/{270528435203323f.js → b58faaa9802033ff.js} +1 -1
- package/web/.next/static/chunks/b9102b4bbe2f64f9.js +1 -0
- package/web/.next/static/chunks/b944b65ad181b84d.js +1 -0
- package/web/.next/static/chunks/c77489661f071f47.js +1 -0
- package/web/.next/static/chunks/cadb8f07b3c1e864.js +1 -0
- package/web/.next/static/chunks/d3224741c62e8767.js +1 -0
- package/web/.next/static/chunks/d51b987a73d58809.js +1 -0
- package/web/.next/static/chunks/e99459f76df95a70.js +1 -0
- package/web/.next/static/chunks/{9c4c03206c46abd2.js → f318341087d1415a.js} +1 -1
- package/web/.next/static/chunks/f76f1155e5d0d296.js +1 -0
- package/web/.next/static/chunks/fc5dbf92b25edf22.js +1 -0
- package/apis/json-schema/CloudDeploymentProvider.yaml +0 -10
- package/apis/json-schema/CloudDeploymentStatus.yaml +0 -11
- package/apis/json-schema/InteractiveSessionEventType.yaml +0 -9
- package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.d.ts +0 -23
- package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.js +0 -12
- package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.d.ts +0 -29
- package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.js +0 -9
- package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.d.ts +0 -31
- package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.js +0 -9
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.d.ts +0 -23
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.js +0 -8
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.d.ts +0 -30
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.js +0 -9
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.d.ts +0 -54
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.js +0 -10
- package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.d.ts +0 -36
- package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.js +0 -8
- package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.d.ts +0 -47
- package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.js +0 -19
- package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.d.ts +0 -41
- package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.js +0 -18
- package/dist/packages/core/src/application/ports/output/services/logger.interface.d.ts +0 -14
- package/dist/packages/core/src/application/ports/output/services/logger.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/logger.interface.js +0 -8
- package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.d.ts +0 -28
- package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.js +0 -8
- package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.d.ts +0 -25
- package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.js +0 -9
- package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.d.ts +0 -20
- package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.js +0 -12
- package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.d.ts +0 -37
- package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.js +0 -14
- package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.d.ts +0 -85
- package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.js +0 -9
- package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.d.ts +0 -22
- package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.d.ts.map +0 -1
- package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.js +0 -9
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.d.ts +0 -19
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.js +0 -74
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.d.ts +0 -17
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.js +0 -31
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.d.ts +0 -18
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.js +0 -43
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.d.ts +0 -20
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.js +0 -51
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.d.ts +0 -22
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.js +0 -59
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.d.ts +0 -73
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.js +0 -63
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.d.ts +0 -79
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.js +0 -291
- package/dist/packages/core/src/application/use-cases/applications/application-creation.workflow.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.d.ts +0 -22
- package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.js +0 -63
- package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.d.ts +0 -21
- package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.js +0 -61
- package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.d.ts +0 -14
- package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.js +0 -38
- package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.d.ts +0 -12
- package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.js +0 -41
- package/dist/packages/core/src/application/use-cases/cloud-deploy/ensure-gh-authenticated.use-case.d.ts +0 -9
- package/dist/packages/core/src/application/use-cases/cloud-deploy/ensure-gh-authenticated.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.d.ts +0 -17
- package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.js +0 -44
- package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.d.ts +0 -27
- package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.js +0 -120
- package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.d.ts +0 -16
- package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.js +0 -38
- package/dist/packages/core/src/application/use-cases/cloud-deploy/select-cloud-provider.use-case.d.ts +0 -12
- package/dist/packages/core/src/application/use-cases/cloud-deploy/select-cloud-provider.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.d.ts +0 -48
- package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.js +0 -99
- package/dist/packages/core/src/domain/errors/application-not-found.error.d.ts +0 -12
- package/dist/packages/core/src/domain/errors/application-not-found.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/application-not-found.error.js +0 -16
- package/dist/packages/core/src/domain/errors/application-not-ready.error.d.ts +0 -12
- package/dist/packages/core/src/domain/errors/application-not-ready.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/application-not-ready.error.js +0 -16
- package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.d.ts +0 -15
- package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.js +0 -20
- package/dist/packages/core/src/domain/errors/build-output-not-found.error.d.ts +0 -13
- package/dist/packages/core/src/domain/errors/build-output-not-found.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/build-output-not-found.error.js +0 -17
- package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.d.ts +0 -14
- package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.js +0 -18
- package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.d.ts +0 -12
- package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.js +0 -16
- package/dist/packages/core/src/domain/errors/no-provider-selected.error.d.ts +0 -13
- package/dist/packages/core/src/domain/errors/no-provider-selected.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/no-provider-selected.error.js +0 -17
- package/dist/packages/core/src/domain/errors/provider-not-implemented.error.d.ts +0 -12
- package/dist/packages/core/src/domain/errors/provider-not-implemented.error.d.ts.map +0 -1
- package/dist/packages/core/src/domain/errors/provider-not-implemented.error.js +0 -16
- package/dist/packages/core/src/domain/shared/feature-id.d.ts +0 -25
- package/dist/packages/core/src/domain/shared/feature-id.d.ts.map +0 -1
- package/dist/packages/core/src/domain/shared/feature-id.js +0 -33
- package/dist/packages/core/src/domain/shared/normalize-path.d.ts +0 -21
- package/dist/packages/core/src/domain/shared/normalize-path.d.ts.map +0 -1
- package/dist/packages/core/src/domain/shared/normalize-path.js +0 -29
- package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.d.ts +0 -25
- package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.d.ts.map +0 -1
- package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.js +0 -40
- package/dist/packages/core/src/infrastructure/di/modules/register-agents.d.ts +0 -8
- package/dist/packages/core/src/infrastructure/di/modules/register-agents.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-agents.js +0 -100
- package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.d.ts +0 -9
- package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.js +0 -82
- package/dist/packages/core/src/infrastructure/di/modules/register-deployment.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/di/modules/register-deployment.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-deployment.js +0 -38
- package/dist/packages/core/src/infrastructure/di/modules/register-interactive.d.ts +0 -10
- package/dist/packages/core/src/infrastructure/di/modules/register-interactive.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-interactive.js +0 -41
- package/dist/packages/core/src/infrastructure/di/modules/register-repositories.d.ts +0 -8
- package/dist/packages/core/src/infrastructure/di/modules/register-repositories.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-repositories.js +0 -70
- package/dist/packages/core/src/infrastructure/di/modules/register-services.d.ts +0 -10
- package/dist/packages/core/src/infrastructure/di/modules/register-services.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-services.js +0 -113
- package/dist/packages/core/src/infrastructure/di/modules/register-tools.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/di/modules/register-tools.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-tools.js +0 -16
- package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.d.ts +0 -12
- package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.js +0 -327
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.d.ts +0 -5
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.js +0 -36
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.d.ts +0 -5
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.js +0 -20
- package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.d.ts +0 -20
- package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.js +0 -75
- package/dist/packages/core/src/infrastructure/services/agents/agent-session-repository.registry.d.ts +0 -30
- package/dist/packages/core/src/infrastructure/services/agents/agent-session-repository.registry.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.d.ts +0 -14
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.js +0 -28
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.d.ts +0 -14
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.js +0 -25
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.js +0 -17
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.d.ts +0 -21
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.js +0 -22
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.d.ts +0 -24
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.js +0 -25
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.d.ts +0 -19
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.js +0 -48
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.d.ts +0 -52
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.js +0 -208
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.js +0 -17
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.js +0 -17
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.d.ts +0 -7
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.js +0 -17
- package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.d.ts +0 -29
- package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.js +0 -48
- package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.d.ts +0 -23
- package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.js +0 -46
- package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.d.ts +0 -14
- package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.js +0 -37
- package/dist/packages/core/src/infrastructure/services/git/git-commit.service.d.ts +0 -20
- package/dist/packages/core/src/infrastructure/services/git/git-commit.service.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/git/git-commit.service.js +0 -99
- package/dist/packages/core/src/infrastructure/services/git/git-remote.service.d.ts +0 -23
- package/dist/packages/core/src/infrastructure/services/git/git-remote.service.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/git/git-remote.service.js +0 -131
- package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.d.ts +0 -12
- package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.js +0 -24
- package/dist/packages/core/src/infrastructure/services/logging/console-logger.d.ts +0 -14
- package/dist/packages/core/src/infrastructure/services/logging/console-logger.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/logging/console-logger.js +0 -53
- package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.d.ts +0 -11
- package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.js +0 -23
- package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.d.ts +0 -24
- package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.js +0 -124
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.d.ts +0 -17
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.js +0 -31
- package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.d.ts +0 -10
- package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.js +0 -62
- package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.d.ts +0 -10
- package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.js +0 -52
- package/dist/src/presentation/cli/commands/app/cloud-providers/index.d.ts +0 -10
- package/dist/src/presentation/cli/commands/app/cloud-providers/index.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/cloud-providers/index.js +0 -18
- package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.d.ts +0 -8
- package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.js +0 -40
- package/dist/src/presentation/cli/commands/app/deploy/index.d.ts +0 -8
- package/dist/src/presentation/cli/commands/app/deploy/index.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/deploy/index.js +0 -14
- package/dist/src/presentation/cli/commands/app/deploy/initiate.command.d.ts +0 -10
- package/dist/src/presentation/cli/commands/app/deploy/initiate.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/deploy/initiate.command.js +0 -86
- package/dist/src/presentation/cli/commands/app/deploy/status.command.d.ts +0 -8
- package/dist/src/presentation/cli/commands/app/deploy/status.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/deploy/status.command.js +0 -49
- package/dist/src/presentation/cli/commands/app/git/create-remote.command.d.ts +0 -10
- package/dist/src/presentation/cli/commands/app/git/create-remote.command.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/git/create-remote.command.js +0 -49
- package/dist/src/presentation/cli/commands/app/git/index.d.ts +0 -9
- package/dist/src/presentation/cli/commands/app/git/index.d.ts.map +0 -1
- package/dist/src/presentation/cli/commands/app/git/index.js +0 -13
- package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.d.ts +0 -11
- package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.d.ts.map +0 -1
- package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.js +0 -22
- package/dist/src/presentation/web/app/actions/applications/commit-application-changes.d.ts +0 -10
- package/dist/src/presentation/web/app/actions/applications/commit-application-changes.d.ts.map +0 -1
- package/dist/src/presentation/web/app/actions/applications/commit-application-changes.js +0 -22
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.d.ts +0 -19
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.js +0 -43
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.d.ts +0 -16
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.js +0 -35
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.d.ts +0 -16
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.js +0 -23
- package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.d.ts +0 -20
- package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.js +0 -31
- package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.d.ts +0 -18
- package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.js +0 -38
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.d.ts +0 -11
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.js +0 -24
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.d.ts +0 -9
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.js +0 -18
- package/dist/src/presentation/web/app/api/cloud-providers/route.d.ts +0 -10
- package/dist/src/presentation/web/app/api/cloud-providers/route.d.ts.map +0 -1
- package/dist/src/presentation/web/app/api/cloud-providers/route.js +0 -19
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.d.ts +0 -27
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.js +0 -24
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.d.ts +0 -9
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.js +0 -79
- package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.js +0 -63
- package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.d.ts +0 -22
- package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.js +0 -28
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.js +0 -61
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.d.ts +0 -10
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.js +0 -40
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.d.ts +0 -5
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.js +0 -37
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.js +0 -13
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.d.ts +0 -9
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.js +0 -85
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.d.ts +0 -9
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.js +0 -19
- package/dist/src/presentation/web/components/features/application-page/delete-button.d.ts +0 -6
- package/dist/src/presentation/web/components/features/application-page/delete-button.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/delete-button.js +0 -24
- package/dist/src/presentation/web/components/features/application-page/delete-button.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/delete-button.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/delete-button.stories.js +0 -16
- package/dist/src/presentation/web/components/features/application-page/deploy-button.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/deploy-button.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/deploy-button.js +0 -94
- package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.d.ts +0 -11
- package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.js +0 -53
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.d.ts +0 -13
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.js +0 -113
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.js +0 -19
- package/dist/src/presentation/web/components/features/application-page/path-cluster.d.ts +0 -6
- package/dist/src/presentation/web/components/features/application-page/path-cluster.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/path-cluster.js +0 -32
- package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.js +0 -19
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.d.ts +0 -26
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.js +0 -30
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.d.ts +0 -10
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.js +0 -80
- package/dist/src/presentation/web/components/features/application-page/resizable-split.d.ts +0 -7
- package/dist/src/presentation/web/components/features/application-page/resizable-split.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/resizable-split.js +0 -30
- package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.js +0 -23
- package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.d.ts +0 -12
- package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.js +0 -53
- package/dist/src/presentation/web/components/features/application-page/session-chip.d.ts +0 -9
- package/dist/src/presentation/web/components/features/application-page/session-chip.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/session-chip.js +0 -38
- package/dist/src/presentation/web/components/features/application-page/session-chip.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/session-chip.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/session-chip.stories.js +0 -16
- package/dist/src/presentation/web/components/features/application-page/status-pill.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/status-pill.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/status-pill.js +0 -16
- package/dist/src/presentation/web/components/features/application-page/status-pill.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/status-pill.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/status-pill.stories.js +0 -22
- package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.d.ts +0 -15
- package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.js +0 -31
- package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.d.ts +0 -14
- package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.js +0 -82
- package/dist/src/presentation/web/components/features/application-page/view-body.d.ts +0 -17
- package/dist/src/presentation/web/components/features/application-page/view-body.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/view-body.js +0 -25
- package/dist/src/presentation/web/components/features/application-page/view-body.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/view-body.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/view-body.stories.js +0 -42
- package/dist/src/presentation/web/components/features/application-page/view-switcher.d.ts +0 -10
- package/dist/src/presentation/web/components/features/application-page/view-switcher.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/view-switcher.js +0 -18
- package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.d.ts +0 -8
- package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.js +0 -13
- package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.d.ts +0 -10
- package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.js +0 -49
- package/dist/src/presentation/web/hooks/use-cloud-deploy-action.d.ts +0 -20
- package/dist/src/presentation/web/hooks/use-cloud-deploy-action.d.ts.map +0 -1
- package/dist/src/presentation/web/hooks/use-cloud-deploy-action.js +0 -120
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route.js +0 -7
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route.js.nft.json +0 -1
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js +0 -7
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js.map +0 -5
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js.nft.json +0 -1
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js +0 -7
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js.map +0 -5
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js.nft.json +0 -1
- package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js +0 -7
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js.map +0 -5
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js.nft.json +0 -1
- package/web/.next/server/app/api/applications/[id]/git/create-remote/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js +0 -7
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js.map +0 -5
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js.nft.json +0 -1
- package/web/.next/server/app/api/cloud-providers/[provider]/connect/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js +0 -7
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js.map +0 -5
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js.nft.json +0 -1
- package/web/.next/server/app/api/cloud-providers/github/auth-login/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js +0 -7
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js.map +0 -5
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js.nft.json +0 -1
- package/web/.next/server/app/api/cloud-providers/github/auth-status/route_client-reference-manifest.js +0 -2
- package/web/.next/server/app/api/cloud-providers/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/api/cloud-providers/route/build-manifest.json +0 -11
- package/web/.next/server/app/api/cloud-providers/route/server-reference-manifest.json +0 -4
- package/web/.next/server/app/api/cloud-providers/route.js +0 -7
- package/web/.next/server/app/api/cloud-providers/route.js.map +0 -5
- package/web/.next/server/app/api/cloud-providers/route.js.nft.json +0 -1
- package/web/.next/server/app/api/cloud-providers/route_client-reference-manifest.js +0 -2
- package/web/.next/server/chunks/20c8b_app_api_applications_[id]_cloud-deploy_select-provider_route_actions_0b41b3f7.js +0 -3
- package/web/.next/server/chunks/20c8b_app_api_applications_[id]_cloud-deploy_select-provider_route_actions_0b41b3f7.js.map +0 -1
- package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_cloud-providers_route_actions_b29d775a.js +0 -3
- package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_cloud-providers_route_actions_b29d775a.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_initiate_route_actions_b4867bc6.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_initiate_route_actions_b4867bc6.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_status_route_actions_9a3b876b.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_status_route_actions_9a3b876b.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_git_create-remote_route_actions_41c42379.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_git_create-remote_route_actions_41c42379.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_[provider]_connect_route_actions_a0ca54c4.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_[provider]_connect_route_actions_a0ca54c4.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-login_route_actions_7bef847d.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-login_route_actions_7bef847d.js.map +0 -1
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-status_route_actions_8cdaeffc.js +0 -3
- package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-status_route_actions_8cdaeffc.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__2c15d675._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__2c15d675._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__3b3b8980._.js +0 -9
- package/web/.next/server/chunks/[root-of-the-server]__3b3b8980._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__631f5bbe._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__631f5bbe._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__770c0c09._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__770c0c09._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__83e9501d._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__83e9501d._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__9017bfe4._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__9017bfe4._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__90eb0e51._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__90eb0e51._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__9bf8eb9d._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__9bf8eb9d._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__b78eeb4f._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__b78eeb4f._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__cac531cb._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__cac531cb._.js.map +0 -1
- package/web/.next/server/chunks/[root-of-the-server]__e7e98696._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__e7e98696._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__01559f4c._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__01559f4c._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0f0865b6._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0f0865b6._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__494cf0fb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__78e103c3._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__78e103c3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_15173081._.js +0 -3
- package/web/.next/server/chunks/ssr/_15173081._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1da7af78._.js +0 -3
- package/web/.next/server/chunks/ssr/_1da7af78._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_22d60ea8._.js +0 -3
- package/web/.next/server/chunks/ssr/_22d60ea8._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_28d8fc85._.js +0 -3
- package/web/.next/server/chunks/ssr/_28d8fc85._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_35b56ded._.js +0 -3
- package/web/.next/server/chunks/ssr/_35b56ded._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_4b57bcc3._.js +0 -9
- package/web/.next/server/chunks/ssr/_4b57bcc3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_5b868d9b._.js +0 -3
- package/web/.next/server/chunks/ssr/_5b868d9b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_5bf2415e._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_6401fcb4._.js +0 -3
- package/web/.next/server/chunks/ssr/_6401fcb4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_66d02826._.js +0 -3
- package/web/.next/server/chunks/ssr/_66d02826._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_68befcc0._.js +0 -3
- package/web/.next/server/chunks/ssr/_68befcc0._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_72cc0c05._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_82c47cc2._.js +0 -3
- package/web/.next/server/chunks/ssr/_82c47cc2._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_bb8735f7._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_e9a4c41e._.js +0 -3
- package/web/.next/server/chunks/ssr/_e9a4c41e._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_ef697bcb._.js +0 -3
- package/web/.next/server/chunks/ssr/_ef697bcb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_03825509._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules__pnpm_03825509._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_b4a5d907._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules__pnpm_b4a5d907._.js.map +0 -1
- package/web/.next/static/chunks/0412f29f896ee09c.js +0 -1
- package/web/.next/static/chunks/0b7fc927918d27b7.js +0 -1
- package/web/.next/static/chunks/0de93c756f719ec3.js +0 -1
- package/web/.next/static/chunks/19327577e3a31a12.js +0 -1
- package/web/.next/static/chunks/21122562afc22707.js +0 -1
- package/web/.next/static/chunks/4f09cbb36f0ee7bc.js +0 -1
- package/web/.next/static/chunks/4fdc8e750df8ca80.js +0 -1
- package/web/.next/static/chunks/544aff2bfab6627d.js +0 -1
- package/web/.next/static/chunks/5a686ebc9fc2add1.js +0 -1
- package/web/.next/static/chunks/63b0b9bd3d9e77c1.js +0 -1
- package/web/.next/static/chunks/693bac34da5f5767.js +0 -1
- package/web/.next/static/chunks/6a7d6f15d3366b65.js +0 -1
- package/web/.next/static/chunks/6d56af6ae0a033a6.js +0 -5
- package/web/.next/static/chunks/8a44ba83aaeb4b83.js +0 -1
- package/web/.next/static/chunks/9b34d8c773ee0165.js +0 -1
- package/web/.next/static/chunks/abe2a450d1e2f77d.js +0 -1
- package/web/.next/static/chunks/b7c8bf8006038a6c.js +0 -1
- package/web/.next/static/chunks/c6011887cf4bc18e.js +0 -1
- package/web/.next/static/chunks/c7659438d8afcb6b.js +0 -1
- package/web/.next/static/chunks/d9ca1010cff1e77d.css +0 -1
- package/web/.next/static/chunks/f7677be24e542028.js +0 -7
- package/web/.next/static/chunks/fb0dc8b38808eaae.js +0 -1
- /package/dist/packages/core/src/application/{use-cases/applications → workflows}/application-creation.workflow.d.ts +0 -0
- /package/dist/packages/core/src/application/{use-cases/applications → workflows}/application-creation.workflow.js +0 -0
- /package/web/.next/server/app/{api/applications/[id]/cloud-deploy/initiate/route.js.map → plugins/page.js.map} +0 -0
- /package/web/.next/server/chunks/{[root-of-the-server]__582ebd78._.js.map → [root-of-the-server]__0702fed9._.js.map} +0 -0
- /package/web/.next/server/chunks/{[root-of-the-server]__76a92098._.js.map → [root-of-the-server]__88c71186._.js.map} +0 -0
- /package/web/.next/server/chunks/{[root-of-the-server]__7de24eaf._.js.map → [root-of-the-server]__8b6abaa3._.js.map} +0 -0
- /package/web/.next/server/chunks/{[root-of-the-server]__1133b25d._.js.map → [root-of-the-server]__dbb420e4._.js.map} +0 -0
- /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_buildManifest.js +0 -0
- /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[
|
|
1
|
+
module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},340060,e=>{"use strict";function t(e){let t=globalThis.__shepContainer;if(!t)throw Error("DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.");return t.resolve(e)}e.s(["resolve",()=>t])},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},485704,e=>{"use strict";var t=e.i(743606),r=e.i(995228),a=e.i(410230),n=e.i(415045),s=e.i(72424),o=e.i(6197),i=e.i(69424),l=e.i(251273),p=e.i(341284),d=e.i(748568),u=e.i(166818),c=e.i(393214),h=e.i(739181),x=e.i(810866),m=e.i(129191),g=e.i(193695);e.i(38881);var f=e.i(586403),v=e.i(432607),R=e.i(924868),w=e.i(814747),y=e.i(340060);let E=new Set([".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".txt",".md",".csv",".json",".yaml",".yml",".xml",".ts",".tsx",".js",".jsx",".py",".rb",".go",".rs",".java",".c",".cpp",".h",".hpp",".cs",".swift",".kt",".html",".css",".scss",".less",".sh",".bash",".zsh",".fish",".toml",".ini",".cfg",".conf",".env",".zip",".tar",".gz",".log"]),b={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".bmp":"image/bmp",".ico":"image/x-icon",".pdf":"application/pdf",".txt":"text/plain",".md":"text/markdown",".json":"application/json",".yaml":"text/yaml",".yml":"text/yaml"};async function C(e){try{let t,{path:r,sessionId:a}=await e.json();if(!r||!a)return v.NextResponse.json({error:"Missing required fields: path, sessionId"},{status:400});let n=(0,w.extname)(r).toLowerCase();if(n&&!E.has(n))return v.NextResponse.json({error:`File type "${n}" is not allowed`},{status:400});try{t=await (0,R.readFile)((0,w.resolve)(r))}catch{return v.NextResponse.json({error:"File not found or unreadable"},{status:404})}if(t.length>0xa00000)return v.NextResponse.json({error:`File exceeds 10 MB limit (${(t.length/1024/1024).toFixed(1)} MB)`},{status:413});let s=(0,w.basename)(r),o=b[n]??"application/octet-stream",i=(0,y.resolve)("AttachmentStorageService").store(t,s,o,a);return v.NextResponse.json({id:i.id,name:i.name,size:Number(i.size),mimeType:i.mimeType,path:i.path,createdAt:i.createdAt})}catch(t){let e=t instanceof Error?t.message:"Upload failed";return v.NextResponse.json({error:e},{status:500})}}e.s(["POST",()=>C],228686);var j=e.i(228686);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/attachments/upload-from-path/route",pathname:"/api/attachments/upload-from-path",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/presentation/web/app/api/attachments/upload-from-path/route.ts",nextConfigOutput:"",userland:j}),{workAsyncStorage:N,workUnitAsyncStorage:T,serverHooks:P}=A;function k(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:T})}async function S(e,t,a){A.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/attachments/upload-from-path/route";v=v.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:y,nextConfig:E,parsedUrl:b,isDraftMode:C,prerenderManifest:j,routerServerContext:N,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:k,clientReferenceManifest:S,serverActionsManifest:q}=R,O=(0,i.normalizeAppPath)(v),_=!!(j.dynamicRoutes[O]||j.routes[k]),I=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,b,!1):t.end("This page could not be found"),null);if(_&&!C){let e=!!j.routes[k],t=j.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await I();throw new g.NoFallbackError}}let H=null;!_||A.isDev||C||(H="/index"===(H=k)?"/":H);let U=!0===A.isDev||!_,M=_&&!U;q&&S&&(0,o.setManifestsSingleton)({page:v,clientReferenceManifest:S,serverActionsManifest:q});let D=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K={params:y,prerenderManifest:j,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,N)},sharedContext:{buildId:w}},z=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),L=p.NextRequestAdapter.fromNodeNextRequest(z,(0,p.signalFromNodeResponse)(t));try{let o=async e=>A.handle(L,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${v}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let p=async({previousCacheEntry:r})=>{try{if(!i&&T&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let p=K.renderOpts.collectedTags;if(!_)return await (0,c.sendResponse)(z,B,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);p&&(t[m.NEXT_CACHE_TAGS_HEADER]=p),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,a=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:T})},!1,N),t}},d=await A.handleResponse({req:e,nextConfig:E,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:j,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:p,waitUntil:a.waitUntil,isMinimalMode:i});if(!_)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==f.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&_||g.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,x.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(z,B,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};$?await l($):await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:T})},!1,N),_)throw t;return await (0,c.sendResponse)(z,B,new Response(null,{status:500})),null}}e.s(["handler",()=>S,"patchFetch",()=>k,"routeModule",()=>A,"serverHooks",()=>P,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>T],485704)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__cfba7146._.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/presentation/web/lib/server-container.ts","../../../../../../src/presentation/web/app/api/attachments/upload-from-path/route.ts","../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40opentelemetry%2Bapi%401.9.0_%40playwright%2Btest%401.58.1_react-d_d9c18bd661a1e9b7c9abe9bc5eac27bd/node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["/**\n * Server Container Accessor\n *\n * Provides a `resolve()` helper for server components and API routes to\n * obtain DI-managed instances. The tsyringe container is placed on globalThis\n * by the CLI bootstrap (`shep ui`) or the dev-server (`pnpm dev:web`).\n */\n\nimport type { DependencyContainer, InjectionToken } from 'tsyringe';\n\nconst CONTAINER_KEY = '__shepContainer';\n\n/**\n * Resolve a dependency from the DI container.\n *\n * Usage in server components / API routes:\n * ```ts\n * import { resolve } from '@/lib/server-container';\n * import { ListFeaturesUseCase } from '@shepai/core/application/use-cases/features/list-features.use-case';\n *\n * const features = await resolve(ListFeaturesUseCase).execute();\n * ```\n */\nexport function resolve<T>(token: InjectionToken<T>): T {\n const container = (globalThis as Record<string, unknown>)[CONTAINER_KEY] as\n | DependencyContainer\n | undefined;\n\n if (!container) {\n throw new Error(\n 'DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.'\n );\n }\n\n return container.resolve(token);\n}\n","import { NextResponse } from 'next/server';\nimport { readFile } from 'fs/promises';\nimport { extname, basename } from 'path';\nimport { resolve as resolvePath } from 'path';\nimport { resolve } from '@/lib/server-container';\nimport type { AttachmentStorageService } from '@shepai/core/infrastructure/services/attachment-storage.service';\n\nconst MAX_FILE_SIZE = 10 * 1024 * 1024; // 10 MB\n\nconst ALLOWED_EXTENSIONS = new Set([\n '.png',\n '.jpg',\n '.jpeg',\n '.gif',\n '.webp',\n '.svg',\n '.bmp',\n '.ico',\n '.pdf',\n '.doc',\n '.docx',\n '.xls',\n '.xlsx',\n '.ppt',\n '.pptx',\n '.txt',\n '.md',\n '.csv',\n '.json',\n '.yaml',\n '.yml',\n '.xml',\n '.ts',\n '.tsx',\n '.js',\n '.jsx',\n '.py',\n '.rb',\n '.go',\n '.rs',\n '.java',\n '.c',\n '.cpp',\n '.h',\n '.hpp',\n '.cs',\n '.swift',\n '.kt',\n '.html',\n '.css',\n '.scss',\n '.less',\n '.sh',\n '.bash',\n '.zsh',\n '.fish',\n '.toml',\n '.ini',\n '.cfg',\n '.conf',\n '.env',\n '.zip',\n '.tar',\n '.gz',\n '.log',\n]);\n\nconst MIME_MAP: Record<string, string> = {\n '.png': 'image/png',\n '.jpg': 'image/jpeg',\n '.jpeg': 'image/jpeg',\n '.gif': 'image/gif',\n '.webp': 'image/webp',\n '.svg': 'image/svg+xml',\n '.bmp': 'image/bmp',\n '.ico': 'image/x-icon',\n '.pdf': 'application/pdf',\n '.txt': 'text/plain',\n '.md': 'text/markdown',\n '.json': 'application/json',\n '.yaml': 'text/yaml',\n '.yml': 'text/yaml',\n};\n\nexport async function POST(request: Request): Promise<NextResponse> {\n try {\n const body = await request.json();\n const { path, sessionId } = body as { path?: string; sessionId?: string };\n\n if (!path || !sessionId) {\n return NextResponse.json(\n { error: 'Missing required fields: path, sessionId' },\n { status: 400 }\n );\n }\n\n const ext = extname(path).toLowerCase();\n if (ext && !ALLOWED_EXTENSIONS.has(ext)) {\n return NextResponse.json({ error: `File type \"${ext}\" is not allowed` }, { status: 400 });\n }\n\n let buffer: Buffer;\n try {\n buffer = await readFile(resolvePath(path));\n } catch {\n return NextResponse.json({ error: 'File not found or unreadable' }, { status: 404 });\n }\n\n if (buffer.length > MAX_FILE_SIZE) {\n return NextResponse.json(\n {\n error: `File exceeds 10 MB limit (${(buffer.length / 1024 / 1024).toFixed(1)} MB)`,\n },\n { status: 413 }\n );\n }\n\n const filename = basename(path);\n const mimeType = MIME_MAP[ext] ?? 'application/octet-stream';\n\n const service = resolve<AttachmentStorageService>('AttachmentStorageService');\n const attachment = service.store(buffer, filename, mimeType, sessionId);\n\n return NextResponse.json({\n id: attachment.id,\n name: attachment.name,\n size: Number(attachment.size),\n mimeType: attachment.mimeType,\n path: attachment.path,\n createdAt: attachment.createdAt,\n });\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Upload failed';\n return NextResponse.json({ error: message }, { status: 500 });\n }\n}\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { addRequestMeta, getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { setManifestsSingleton } from \"next/dist/esm/server/app-render/manifests-singleton\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/attachments/upload-from-path/route\",\n pathname: \"/api/attachments/upload-from-path\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/src/presentation/web/app/api/attachments/upload-from-path/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());\n }\n let srcPage = \"/api/attachments/upload-from-path/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, parsedUrl, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname, clientReferenceManifest, serverActionsManifest } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n const render404 = async ()=>{\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext == null ? void 0 : routerServerContext.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false);\n } else {\n res.end('This page could not be found');\n }\n return null;\n };\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404();\n }\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse;\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest\n });\n }\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${srcPage}`);\n }\n });\n };\n const isMinimalMode = Boolean(process.env.MINIMAL_MODE || getRequestMeta(req, 'minimalMode'));\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!isMinimalMode && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!isMinimalMode) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":[],"mappings":"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","ignoreList":[2]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/presentation/web/lib/server-container.ts","../../../../../../src/presentation/web/app/api/attachments/upload-from-path/route.ts","../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40opentelemetry%2Bapi%401.9.0_%40playwright%2Btest%401.58.1_react-d_d9c18bd661a1e9b7c9abe9bc5eac27bd/node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["/**\n * Server Container Accessor\n *\n * Provides a `resolve()` helper for server components and API routes to\n * obtain DI-managed instances. The tsyringe container is placed on globalThis\n * by the CLI bootstrap (`shep ui`) or the dev-server (`pnpm dev:web`).\n */\n\nimport type { DependencyContainer, InjectionToken } from 'tsyringe';\n\nconst CONTAINER_KEY = '__shepContainer';\n\n/**\n * Resolve a dependency from the DI container.\n *\n * Usage in server components / API routes:\n * ```ts\n * import { resolve } from '@/lib/server-container';\n * import { ListFeaturesUseCase } from '@shepai/core/application/use-cases/features/list-features.use-case';\n *\n * const features = await resolve(ListFeaturesUseCase).execute();\n * ```\n */\nexport function resolve<T>(token: InjectionToken<T>): T {\n const container = (globalThis as Record<string, unknown>)[CONTAINER_KEY] as\n | DependencyContainer\n | undefined;\n\n if (!container) {\n throw new Error(\n 'DI container not available. Ensure the CLI bootstrap or dev-server has initialized it.'\n );\n }\n\n return container.resolve(token);\n}\n","import { NextResponse } from 'next/server';\nimport { readFile } from 'fs/promises';\nimport { extname, basename } from 'path';\nimport { resolve as resolvePath } from 'path';\nimport { resolve } from '@/lib/server-container';\nimport type { AttachmentStorageService } from '@shepai/core/infrastructure/services/attachment-storage.service';\n\nconst MAX_FILE_SIZE = 10 * 1024 * 1024; // 10 MB\n\nconst ALLOWED_EXTENSIONS = new Set([\n '.png',\n '.jpg',\n '.jpeg',\n '.gif',\n '.webp',\n '.svg',\n '.bmp',\n '.ico',\n '.pdf',\n '.doc',\n '.docx',\n '.xls',\n '.xlsx',\n '.ppt',\n '.pptx',\n '.txt',\n '.md',\n '.csv',\n '.json',\n '.yaml',\n '.yml',\n '.xml',\n '.ts',\n '.tsx',\n '.js',\n '.jsx',\n '.py',\n '.rb',\n '.go',\n '.rs',\n '.java',\n '.c',\n '.cpp',\n '.h',\n '.hpp',\n '.cs',\n '.swift',\n '.kt',\n '.html',\n '.css',\n '.scss',\n '.less',\n '.sh',\n '.bash',\n '.zsh',\n '.fish',\n '.toml',\n '.ini',\n '.cfg',\n '.conf',\n '.env',\n '.zip',\n '.tar',\n '.gz',\n '.log',\n]);\n\nconst MIME_MAP: Record<string, string> = {\n '.png': 'image/png',\n '.jpg': 'image/jpeg',\n '.jpeg': 'image/jpeg',\n '.gif': 'image/gif',\n '.webp': 'image/webp',\n '.svg': 'image/svg+xml',\n '.bmp': 'image/bmp',\n '.ico': 'image/x-icon',\n '.pdf': 'application/pdf',\n '.txt': 'text/plain',\n '.md': 'text/markdown',\n '.json': 'application/json',\n '.yaml': 'text/yaml',\n '.yml': 'text/yaml',\n};\n\nexport async function POST(request: Request): Promise<NextResponse> {\n try {\n const body = await request.json();\n const { path, sessionId } = body as { path?: string; sessionId?: string };\n\n if (!path || !sessionId) {\n return NextResponse.json(\n { error: 'Missing required fields: path, sessionId' },\n { status: 400 }\n );\n }\n\n const ext = extname(path).toLowerCase();\n if (ext && !ALLOWED_EXTENSIONS.has(ext)) {\n return NextResponse.json({ error: `File type \"${ext}\" is not allowed` }, { status: 400 });\n }\n\n let buffer: Buffer;\n try {\n buffer = await readFile(resolvePath(path));\n } catch {\n return NextResponse.json({ error: 'File not found or unreadable' }, { status: 404 });\n }\n\n if (buffer.length > MAX_FILE_SIZE) {\n return NextResponse.json(\n {\n error: `File exceeds 10 MB limit (${(buffer.length / 1024 / 1024).toFixed(1)} MB)`,\n },\n { status: 413 }\n );\n }\n\n const filename = basename(path);\n const mimeType = MIME_MAP[ext] ?? 'application/octet-stream';\n\n const service = resolve<AttachmentStorageService>('AttachmentStorageService');\n const attachment = service.store(buffer, filename, mimeType, sessionId);\n\n return NextResponse.json({\n id: attachment.id,\n name: attachment.name,\n size: Number(attachment.size),\n mimeType: attachment.mimeType,\n path: attachment.path,\n createdAt: attachment.createdAt,\n });\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Upload failed';\n return NextResponse.json({ error: message }, { status: 500 });\n }\n}\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { addRequestMeta, getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { setManifestsSingleton } from \"next/dist/esm/server/app-render/manifests-singleton\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/attachments/upload-from-path/route\",\n pathname: \"/api/attachments/upload-from-path\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/src/presentation/web/app/api/attachments/upload-from-path/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());\n }\n let srcPage = \"/api/attachments/upload-from-path/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, parsedUrl, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname, clientReferenceManifest, serverActionsManifest } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n const render404 = async ()=>{\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext == null ? void 0 : routerServerContext.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false);\n } else {\n res.end('This page could not be found');\n }\n return null;\n };\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404();\n }\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse;\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest\n });\n }\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${srcPage}`);\n }\n });\n };\n const isMinimalMode = Boolean(process.env.MINIMAL_MODE || getRequestMeta(req, 'minimalMode'));\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!isMinimalMode && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!isMinimalMode) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":[],"mappings":"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","ignoreList":[2]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[
|
|
1
|
+
module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},132828,e=>{"use strict";e.i(912714);var t=e.i(660526),r=e.i(750227);function a(){return process.env.SHEP_HOME??(0,r.join)((0,t.homedir)(),".shep")}e.i(902157),e.s(["getShepHomeDir",()=>a])},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},230012,e=>{"use strict";var t=e.i(743606),r=e.i(995228),a=e.i(410230),n=e.i(415045),s=e.i(72424),i=e.i(6197),o=e.i(69424),l=e.i(251273),p=e.i(341284),d=e.i(748568),u=e.i(166818),c=e.i(393214),x=e.i(739181),h=e.i(810866),g=e.i(129191),v=e.i(193695);e.i(38881);var m=e.i(586403),R=e.i(432607),f=e.i(924868),w=e.i(814747),E=e.i(132828);let C={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".bmp":"image/bmp",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".txt":"text/plain",".log":"text/plain",".json":"application/json",".cast":"application/json"};async function y(e){let t=e.nextUrl.searchParams.get("path");if(!t)return R.NextResponse.json({error:"Missing path parameter"},{status:400});let r=(0,w.resolve)(t),a=(0,w.resolve)((0,E.getShepHomeDir)(),"repos");if(!r.startsWith(a))return R.NextResponse.json({error:"Access denied"},{status:403});try{await (0,f.stat)(r);let e=await (0,f.readFile)(r),t=C[(0,w.extname)(r).toLowerCase()]??"application/octet-stream";return new R.NextResponse(e,{headers:{"Content-Type":t,"Cache-Control":"private, max-age=3600"}})}catch{return R.NextResponse.json({error:"File not found"},{status:404})}}e.s(["GET",()=>y],579095);var b=e.i(579095);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/evidence/route",pathname:"/api/evidence",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/presentation/web/app/api/evidence/route.ts",nextConfigOutput:"",userland:b}),{workAsyncStorage:j,workUnitAsyncStorage:N,serverHooks:q}=A;function T(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:N})}async function P(e,t,a){A.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/evidence/route";R=R.replace(/\/index$/,"")||"/";let f=await A.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:E,nextConfig:C,parsedUrl:y,isDraftMode:b,prerenderManifest:j,routerServerContext:N,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,resolvedPathname:P,clientReferenceManifest:k,serverActionsManifest:O}=f,S=(0,o.normalizeAppPath)(R),H=!!(j.dynamicRoutes[S]||j.routes[P]),_=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,y,!1):t.end("This page could not be found"),null);if(H&&!b){let e=!!j.routes[P],t=j.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await _();throw new v.NoFallbackError}}let U=null;!H||A.isDev||b||(U="/index"===(U=P)?"/":U);let D=!0===A.isDev||!H,I=H&&!D;O&&k&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:k,serverActionsManifest:O});let M=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K={params:E,prerenderManifest:j,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,N)},sharedContext:{buildId:w}},L=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),G=p.NextRequestAdapter.fromNodeNextRequest(L,(0,p.signalFromNodeResponse)(t));try{let i=async e=>A.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${R}`)}),o=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let p=async({previousCacheEntry:r})=>{try{if(!o&&q&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let p=K.renderOpts.collectedTags;if(!H)return await (0,c.sendResponse)(L,B,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);p&&(t[g.NEXT_CACHE_TAGS_HEADER]=p),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,a=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:I,isOnDemandRevalidate:q})},!1,N),t}},d=await A.handleResponse({req:e,nextConfig:C,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:j,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,responseGenerator:p,waitUntil:a.waitUntil,isMinimalMode:o});if(!H)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",q?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let v=(0,x.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&H||v.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||v.get("Cache-Control")||v.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(L,B,new Response(d.value.body,{headers:v,status:d.value.status||200})),null};$?await l($):await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof v.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:I,isOnDemandRevalidate:q})},!1,N),H)throw t;return await (0,c.sendResponse)(L,B,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>T,"routeModule",()=>A,"serverHooks",()=>q,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>N],230012)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__dbb420e4._.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
module.exports=[473167,e=>{"use strict";var t=e.i(743606),a=e.i(995228),n=e.i(410230),i=e.i(415045),r=e.i(72424),s=e.i(6197),o=e.i(69424),l=e.i(251273),c=e.i(341284),d=e.i(748568),u=e.i(166818),p=e.i(393214),f=e.i(739181),v=e.i(810866),y=e.i(129191),m=e.i(193695);e.i(38881);var g=e.i(586403),h=e.i(340060),S=e.i(596907),R=e.i(45316);let N={[S.SdlcLifecycle.Started]:"requirements",[S.SdlcLifecycle.Analyze]:"analyze",[S.SdlcLifecycle.Requirements]:"requirements",[S.SdlcLifecycle.Research]:"research",[S.SdlcLifecycle.Planning]:"plan",[S.SdlcLifecycle.Implementation]:"implement",[S.SdlcLifecycle.Review]:"merge",[S.SdlcLifecycle.Maintain]:"maintain",[S.SdlcLifecycle.Blocked]:"blocked",[S.SdlcLifecycle.Pending]:"pending",[S.SdlcLifecycle.Deleting]:"blocked",[S.SdlcLifecycle.AwaitingUpstream]:"merge",[S.SdlcLifecycle.Archived]:"archived"},I={[S.AgentRunStatus.running]:{eventType:S.NotificationEventType.AgentStarted,severity:S.NotificationSeverity.Info},[S.AgentRunStatus.waitingApproval]:{eventType:S.NotificationEventType.WaitingApproval,severity:S.NotificationSeverity.Warning},[S.AgentRunStatus.completed]:{eventType:S.NotificationEventType.AgentCompleted,severity:S.NotificationSeverity.Success},[S.AgentRunStatus.failed]:{eventType:S.NotificationEventType.AgentFailed,severity:S.NotificationSeverity.Error},[S.AgentRunStatus.interrupted]:{eventType:S.NotificationEventType.AgentFailed,severity:S.NotificationSeverity.Warning},[S.AgentRunStatus.cancelled]:{eventType:S.NotificationEventType.AgentFailed,severity:S.NotificationSeverity.Warning}};function w(e){if(e?.startsWith("node:"))return e.slice(5)}function E(e){try{let t=new URL(e.url).searchParams.get("runId"),a=new ReadableStream({start(a){let n=new TextEncoder,i=new Map,r=new Map,s=!1;function o(e){if(!s)try{a.enqueue(n.encode(e))}catch{}}function l(e){console.log(`[SSE] emit: ${e.eventType} for "${e.featureName}"${e.phaseName?` (${e.phaseName})`:""}`),o(`event: notification
|
|
2
|
+
data: ${JSON.stringify(e)}
|
|
3
|
+
|
|
4
|
+
`)}let c=0;async function d(){if(!s)try{let e=(0,h.resolve)("ListFeaturesUseCase"),a=(0,h.resolve)("IAgentRunRepository"),n=(0,h.resolve)("IPhaseTimingRepository"),s=await e.execute();for(let{feature:e,run:r}of(await Promise.all(s.map(async e=>{let t=e.agentRunId?await a.findById(e.agentRunId):null;return{feature:e,run:t}})))){if(!r||t&&r.id!==t)continue;let a=i.get(e.id);if(!a){let t=new Set;try{for(let e of(await n.findByRunId(r.id)))e.completedAt&&t.add(e.phase)}catch{}i.set(e.id,{status:r.status,lifecycle:e.lifecycle,completedPhases:t,featureName:e.name,prStatus:e.pr?.status,prMergeable:e.pr?.mergeable,prCiStatus:e.pr?.ciStatus});continue}if(a.status!==r.status){a.status=r.status;let t=I[r.status];if(t){let a=w(r.result);l({eventType:t.eventType,agentRunId:r.id,featureId:e.id,featureName:e.name,...a&&{phaseName:a},message:`Agent status: ${r.status}`,severity:t.severity,timestamp:new Date().toISOString()})}}if((r.status===S.AgentRunStatus.running||r.status===S.AgentRunStatus.pending)&&r.pid&&!a.crashEmitted&&!(0,R.isProcessAlive)(r.pid)){a.crashEmitted=!0;let t=w(r.result);l({eventType:S.NotificationEventType.AgentFailed,agentRunId:r.id,featureId:e.id,featureName:e.name,...t&&{phaseName:t},message:`Agent crashed (PID ${r.pid} dead)`,severity:S.NotificationSeverity.Error,timestamp:new Date().toISOString()})}if(a.featureName!==e.name){a.featureName=e.name;let t=N[e.lifecycle]??"requirements";l({eventType:S.NotificationEventType.PhaseCompleted,agentRunId:r.id,featureId:e.id,featureName:e.name,phaseName:t,message:"Feature metadata updated",severity:S.NotificationSeverity.Info,timestamp:new Date().toISOString()})}if(a.lifecycle!==e.lifecycle){let t=a.lifecycle;a.lifecycle=e.lifecycle;let n=N[e.lifecycle];if(e.lifecycle===S.SdlcLifecycle.Review&&t!==S.SdlcLifecycle.Review){let t=e.pr?.url,a=t?`Ready for merge review — PR: ${t}`:"Ready for merge review";l({eventType:S.NotificationEventType.MergeReviewReady,agentRunId:r.id,featureId:e.id,featureName:e.name,phaseName:"merge",message:a,severity:S.NotificationSeverity.Info,timestamp:new Date().toISOString()})}else n&&l({eventType:S.NotificationEventType.PhaseCompleted,agentRunId:r.id,featureId:e.id,featureName:e.name,phaseName:n,message:`Entered ${n} phase`,severity:S.NotificationSeverity.Info,timestamp:new Date().toISOString()})}let s=e.pr?.status,o=e.pr?.mergeable,c=e.pr?.ciStatus;if(s!==a.prStatus||o!==a.prMergeable||c!==a.prCiStatus){a.prStatus=s,a.prMergeable=o,a.prCiStatus=c;let t=N[e.lifecycle]??"merge";l({eventType:S.NotificationEventType.PhaseCompleted,agentRunId:r.id,featureId:e.id,featureName:e.name,phaseName:t,message:!1===o?`PR #${e.pr?.number} has merge conflicts`:"PR status updated",severity:!1===o?S.NotificationSeverity.Warning:S.NotificationSeverity.Info,timestamp:new Date().toISOString()})}try{for(let t of(await n.findByRunId(r.id)))t.completedAt&&!a.completedPhases.has(t.phase)&&(a.completedPhases.add(t.phase),l({eventType:S.NotificationEventType.PhaseCompleted,agentRunId:r.id,featureId:e.id,featureName:e.name,phaseName:t.phase,message:`Completed ${t.phase} phase`,severity:S.NotificationSeverity.Info,timestamp:new Date().toISOString()}))}catch{}}try{let e=(0,h.resolve)("IInteractiveSessionRepository"),t=await e.findAllActive();for(let e of t){let t=r.get(e.id);if(t?.status!==e.status){r.set(e.id,{status:e.status});let t={type:e.status===S.InteractiveSessionStatus.booting?"interactive_session_booting":e.status===S.InteractiveSessionStatus.ready?"interactive_session_ready":e.status===S.InteractiveSessionStatus.error?"interactive_session_error":"interactive_session_stopped",sessionId:e.id,featureId:e.featureId};o(`event: interactive_session
|
|
5
|
+
data: ${JSON.stringify(t)}
|
|
6
|
+
|
|
7
|
+
`)}}for(let[a,n]of r)if((n.status===S.InteractiveSessionStatus.booting||n.status===S.InteractiveSessionStatus.ready)&&!t.find(e=>e.id===a)){let t=await e.findById(a);if(t){r.set(a,{status:t.status});let e={type:t.status===S.InteractiveSessionStatus.error?"interactive_session_error":"interactive_session_stopped",sessionId:t.id,featureId:t.featureId};o(`event: interactive_session
|
|
8
|
+
data: ${JSON.stringify(e)}
|
|
9
|
+
|
|
10
|
+
`)}else r.delete(a)}}catch{}c=0}catch(e){(++c<=3||c%60==0)&&console.error(`[SSE /api/agent-events] poll error #${c}:`,e instanceof Error?e.message:e)}}d();let u=setInterval(()=>void d(),2e3),p=setInterval(()=>{o(": heartbeat\n\n")},3e4);e.signal.addEventListener("abort",()=>{s=!0,clearInterval(u),clearInterval(p);try{a.close()}catch{}},{once:!0})}});return new Response(a,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}catch(e){return console.error("[SSE route] GET handler error:",e),new Response(JSON.stringify({error:String(e)}),{status:500,headers:{"Content-Type":"application/json"}})}}e.s(["GET",()=>E,"dynamic",0,"force-dynamic"],650328);var T=e.i(650328);let A=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/agent-events/route",pathname:"/api/agent-events",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/presentation/web/app/api/agent-events/route.ts",nextConfigOutput:"",userland:T}),{workAsyncStorage:C,workUnitAsyncStorage:P,serverHooks:b}=A;function x(){return(0,n.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:P})}async function _(e,t,n){A.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let h="/api/agent-events/route";h=h.replace(/\/index$/,"")||"/";let S=await A.prepare(e,t,{srcPage:h,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:N,nextConfig:I,parsedUrl:w,isDraftMode:E,prerenderManifest:T,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:b,resolvedPathname:x,clientReferenceManifest:_,serverActionsManifest:O}=S,L=(0,o.normalizeAppPath)(h),$=!!(T.dynamicRoutes[L]||T.routes[x]),D=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,w,!1):t.end("This page could not be found"),null);if($&&!E){let e=!!T.routes[x],t=T.dynamicRoutes[L];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await D();throw new m.NoFallbackError}}let q=null;!$||A.isDev||E||(q="/index"===(q=x)?"/":q);let M=!0===A.isDev||!$,U=$&&!M;O&&_&&(0,s.setManifestsSingleton)({page:h,clientReferenceManifest:_,serverActionsManifest:O});let k=e.method||"GET",H=(0,r.getTracer)(),F=H.getActiveScopeSpan(),B={params:N,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,n,i)=>A.onRequestError(e,t,n,i,C)},sharedContext:{buildId:R}},j=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),W=c.NextRequestAdapter.fromNodeNextRequest(j,(0,c.signalFromNodeResponse)(t));try{let s=async e=>A.handle(W,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=H.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${k} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${k} ${h}`)}),o=!!(0,i.getRequestMeta)(e,"minimalMode"),l=async i=>{var r,l;let c=async({previousCacheEntry:a})=>{try{if(!o&&P&&b&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await s(i);e.fetchMetrics=B.renderOpts.fetchMetrics;let l=B.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let c=B.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(j,K,r,B.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(r.headers);c&&(t[y.NEXT_CACHE_TAGS_HEADER]=c),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,n=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==a?void 0:a.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:h,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,C),t}},d=await A.handleResponse({req:e,nextConfig:I,cacheKey:q,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:b,responseGenerator:c,waitUntil:n.waitUntil,isMinimalMode:o});if(!$)return null;if((null==d||null==(r=d.value)?void 0:r.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&$||m.delete(y.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,v.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(j,K,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};F?await l(F):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${k} ${h}`,kind:r.SpanKind.SERVER,attributes:{"http.method":k,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:L,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,C),$)throw t;return await (0,p.sendResponse)(j,K,new Response(null,{status:500})),null}}e.s(["handler",()=>_,"patchFetch",()=>x,"routeModule",()=>A,"serverHooks",()=>b,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>P],473167)}];
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=d9f3b_next_dist_esm_build_templates_app-route_4faf694b.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/presentation/web/app/api/agent-events/route.ts","../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40opentelemetry%2Bapi%401.9.0_%40playwright%2Btest%401.58.1_react-d_d9c18bd661a1e9b7c9abe9bc5eac27bd/node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["/**\n * SSE API Route: GET /api/agent-events\n *\n * Streams agent lifecycle notification events to connected web UI clients\n * via Server-Sent Events (SSE).\n *\n * Uses DB polling with a per-connection cache so only deltas are sent.\n * This avoids cross-module singleton issues with an in-process event bus.\n *\n * - Polls features + agent runs every 500ms\n * - Compares against cached state and emits only changes\n * - Sends heartbeat comments every 30 seconds to keep connection alive\n * - Supports optional ?runId query parameter to filter events\n * - Cleans up intervals on client disconnect\n */\n\nimport { resolve } from '@/lib/server-container';\nimport type { IAgentRunRepository } from '@shepai/core/application/ports/output/agents/agent-run-repository.interface';\nimport type { IPhaseTimingRepository } from '@shepai/core/application/ports/output/agents/phase-timing-repository.interface';\nimport type { IInteractiveSessionRepository } from '@shepai/core/application/ports/output/repositories/interactive-session-repository.interface';\nimport type { Feature, AgentRun } from '@shepai/core/domain/generated/output';\nimport {\n AgentRunStatus,\n InteractiveSessionStatus,\n SdlcLifecycle,\n NotificationEventType,\n NotificationSeverity,\n} from '@shepai/core/domain/generated/output';\nimport { isProcessAlive } from '@shepai/core/infrastructure/services/process/is-process-alive';\nimport type { NotificationEvent } from '@shepai/core/domain/generated/output';\nimport type { ListFeaturesUseCase } from '@shepai/core/application/use-cases/features/list-features.use-case';\n\n// Force dynamic — SSE streams must never be statically optimized or cached\nexport const dynamic = 'force-dynamic';\n\nconst POLL_INTERVAL_MS = 2_000;\nconst HEARTBEAT_INTERVAL_MS = 30_000;\n\ninterface CachedFeatureState {\n status: AgentRunStatus | null;\n lifecycle: string;\n completedPhases: Set<string>;\n featureName: string;\n prStatus: string | undefined;\n prMergeable: boolean | undefined;\n prCiStatus: string | undefined;\n /** Set to true once we've detected and emitted a crash event for this feature */\n crashEmitted?: boolean;\n}\n\n/**\n * Maps SdlcLifecycle values to agent graph node names so the client\n * can derive the correct FeatureLifecyclePhase via mapPhaseNameToLifecycle().\n */\nconst LIFECYCLE_TO_NODE: Record<SdlcLifecycle, string> = {\n [SdlcLifecycle.Started]: 'requirements',\n [SdlcLifecycle.Analyze]: 'analyze',\n [SdlcLifecycle.Requirements]: 'requirements',\n [SdlcLifecycle.Research]: 'research',\n [SdlcLifecycle.Planning]: 'plan',\n [SdlcLifecycle.Implementation]: 'implement',\n [SdlcLifecycle.Review]: 'merge',\n [SdlcLifecycle.Maintain]: 'maintain',\n [SdlcLifecycle.Blocked]: 'blocked',\n [SdlcLifecycle.Pending]: 'pending',\n [SdlcLifecycle.Deleting]: 'blocked',\n [SdlcLifecycle.AwaitingUpstream]: 'merge',\n [SdlcLifecycle.Archived]: 'archived',\n};\n\nconst STATUS_TO_EVENT: Partial<\n Record<AgentRunStatus, { eventType: NotificationEventType; severity: NotificationSeverity }>\n> = {\n [AgentRunStatus.running]: {\n eventType: NotificationEventType.AgentStarted,\n severity: NotificationSeverity.Info,\n },\n [AgentRunStatus.waitingApproval]: {\n eventType: NotificationEventType.WaitingApproval,\n severity: NotificationSeverity.Warning,\n },\n [AgentRunStatus.completed]: {\n eventType: NotificationEventType.AgentCompleted,\n severity: NotificationSeverity.Success,\n },\n [AgentRunStatus.failed]: {\n eventType: NotificationEventType.AgentFailed,\n severity: NotificationSeverity.Error,\n },\n [AgentRunStatus.interrupted]: {\n eventType: NotificationEventType.AgentFailed,\n severity: NotificationSeverity.Warning,\n },\n [AgentRunStatus.cancelled]: {\n eventType: NotificationEventType.AgentFailed,\n severity: NotificationSeverity.Warning,\n },\n};\n\n/** Map agent graph node name from AgentRun.result to a phase name. */\nfunction resultToPhase(result: string | undefined): string | undefined {\n if (!result?.startsWith('node:')) return undefined;\n return result.slice(5); // \"node:analyze\" → \"analyze\"\n}\n\n/** Payload emitted for interactive session lifecycle SSE events. */\nexport interface InteractiveSessionEvent {\n type:\n | 'interactive_session_booting'\n | 'interactive_session_ready'\n | 'interactive_session_stopped'\n | 'interactive_session_error';\n sessionId: string;\n featureId: string;\n}\n\n/** Per-connection cache entry for interactive sessions. */\ninterface CachedSessionState {\n status: InteractiveSessionStatus;\n}\n\nexport function GET(request: Request): Response {\n try {\n const url = new URL(request.url);\n const runIdFilter = url.searchParams.get('runId');\n\n const stream = new ReadableStream<Uint8Array>({\n start(controller) {\n const encoder = new TextEncoder();\n\n // Per-connection cache: featureId → last-seen state\n const cache = new Map<string, CachedFeatureState>();\n // Per-connection cache: sessionId → last-seen interactive session state\n const sessionCache = new Map<string, CachedSessionState>();\n let stopped = false;\n\n function enqueue(text: string) {\n if (stopped) return;\n try {\n controller.enqueue(encoder.encode(text));\n } catch {\n // Stream may be closed\n }\n }\n\n function emitEvent(event: NotificationEvent) {\n // eslint-disable-next-line no-console\n console.log(\n `[SSE] emit: ${event.eventType} for \"${event.featureName}\"${event.phaseName ? ` (${event.phaseName})` : ''}`\n );\n enqueue(`event: notification\\ndata: ${JSON.stringify(event)}\\n\\n`);\n }\n\n let pollErrorCount = 0;\n\n async function poll() {\n if (stopped) return;\n\n try {\n const listFeatures = resolve<ListFeaturesUseCase>('ListFeaturesUseCase');\n const agentRunRepo = resolve<IAgentRunRepository>('IAgentRunRepository');\n const phaseTimingRepo = resolve<IPhaseTimingRepository>('IPhaseTimingRepository');\n\n const features = await listFeatures.execute();\n\n // Build current state for features with agent runs\n const entries: { feature: Feature; run: AgentRun | null }[] = await Promise.all(\n features.map(async (feature) => {\n const run = feature.agentRunId\n ? await agentRunRepo.findById(feature.agentRunId)\n : null;\n return { feature, run };\n })\n );\n\n for (const { feature, run } of entries) {\n if (!run) continue;\n\n // Apply runId filter if present\n if (runIdFilter && run.id !== runIdFilter) continue;\n\n const prev = cache.get(feature.id);\n\n if (!prev) {\n // First time seeing this feature — seed cache, don't emit\n const completedPhases = new Set<string>();\n try {\n const timings = await phaseTimingRepo.findByRunId(run.id);\n for (const t of timings) {\n if (t.completedAt) completedPhases.add(t.phase);\n }\n } catch {\n // Ignore timing errors\n }\n\n cache.set(feature.id, {\n status: run.status,\n lifecycle: feature.lifecycle,\n completedPhases,\n featureName: feature.name,\n prStatus: feature.pr?.status,\n prMergeable: feature.pr?.mergeable,\n prCiStatus: feature.pr?.ciStatus,\n });\n continue;\n }\n\n // Check for status change\n if (prev.status !== run.status) {\n prev.status = run.status;\n const mapping = STATUS_TO_EVENT[run.status];\n if (mapping) {\n const phase = resultToPhase(run.result);\n emitEvent({\n eventType: mapping.eventType,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n ...(phase && { phaseName: phase }),\n message: `Agent status: ${run.status}`,\n severity: mapping.severity,\n timestamp: new Date().toISOString(),\n });\n }\n }\n\n // Check for crashed agent: status is running/pending but PID is dead\n const isActive =\n run.status === AgentRunStatus.running || run.status === AgentRunStatus.pending;\n if (isActive && run.pid && !prev.crashEmitted && !isProcessAlive(run.pid)) {\n prev.crashEmitted = true;\n const phase = resultToPhase(run.result);\n emitEvent({\n eventType: NotificationEventType.AgentFailed,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n ...(phase && { phaseName: phase }),\n message: `Agent crashed (PID ${run.pid} dead)`,\n severity: NotificationSeverity.Error,\n timestamp: new Date().toISOString(),\n });\n }\n\n // Check for feature name change (AI metadata generation updates name)\n if (prev.featureName !== feature.name) {\n prev.featureName = feature.name;\n const nodeName =\n LIFECYCLE_TO_NODE[feature.lifecycle as SdlcLifecycle] ?? 'requirements';\n emitEvent({\n eventType: NotificationEventType.PhaseCompleted,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n phaseName: nodeName,\n message: `Feature metadata updated`,\n severity: NotificationSeverity.Info,\n timestamp: new Date().toISOString(),\n });\n }\n\n // Check for lifecycle change (agent stays \"running\" but moves through phases)\n if (prev.lifecycle !== feature.lifecycle) {\n const prevLifecycle = prev.lifecycle;\n prev.lifecycle = feature.lifecycle;\n const nodeName = LIFECYCLE_TO_NODE[feature.lifecycle as SdlcLifecycle];\n\n // Emit MergeReviewReady when lifecycle transitions TO Review\n if (\n feature.lifecycle === SdlcLifecycle.Review &&\n prevLifecycle !== SdlcLifecycle.Review\n ) {\n const prUrl = feature.pr?.url;\n const message = prUrl\n ? `Ready for merge review — PR: ${prUrl}`\n : 'Ready for merge review';\n emitEvent({\n eventType: NotificationEventType.MergeReviewReady,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n phaseName: 'merge',\n message,\n severity: NotificationSeverity.Info,\n timestamp: new Date().toISOString(),\n });\n } else if (nodeName) {\n emitEvent({\n eventType: NotificationEventType.PhaseCompleted,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n phaseName: nodeName,\n message: `Entered ${nodeName} phase`,\n severity: NotificationSeverity.Info,\n timestamp: new Date().toISOString(),\n });\n }\n }\n\n // Check for PR data changes (status / mergeable / CI status)\n const curPrStatus = feature.pr?.status;\n const curMergeable = feature.pr?.mergeable;\n const curCiStatus = feature.pr?.ciStatus;\n if (\n curPrStatus !== prev.prStatus ||\n curMergeable !== prev.prMergeable ||\n curCiStatus !== prev.prCiStatus\n ) {\n prev.prStatus = curPrStatus;\n prev.prMergeable = curMergeable;\n prev.prCiStatus = curCiStatus;\n const nodeName = LIFECYCLE_TO_NODE[feature.lifecycle as SdlcLifecycle] ?? 'merge';\n emitEvent({\n eventType: NotificationEventType.PhaseCompleted,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n phaseName: nodeName,\n message:\n curMergeable === false\n ? `PR #${feature.pr?.number} has merge conflicts`\n : `PR status updated`,\n severity:\n curMergeable === false\n ? NotificationSeverity.Warning\n : NotificationSeverity.Info,\n timestamp: new Date().toISOString(),\n });\n }\n\n // Check for new phase completions\n try {\n const timings = await phaseTimingRepo.findByRunId(run.id);\n for (const t of timings) {\n if (t.completedAt && !prev.completedPhases.has(t.phase)) {\n prev.completedPhases.add(t.phase);\n emitEvent({\n eventType: NotificationEventType.PhaseCompleted,\n agentRunId: run.id,\n featureId: feature.id,\n featureName: feature.name,\n phaseName: t.phase,\n message: `Completed ${t.phase} phase`,\n severity: NotificationSeverity.Info,\n timestamp: new Date().toISOString(),\n });\n }\n }\n } catch {\n // Ignore timing errors\n }\n }\n // Poll interactive sessions for lifecycle status changes\n try {\n const sessionRepo = resolve<IInteractiveSessionRepository>(\n 'IInteractiveSessionRepository'\n );\n const activeSessions = await sessionRepo.findAllActive();\n\n for (const session of activeSessions) {\n const prev = sessionCache.get(session.id);\n if (prev?.status !== session.status) {\n sessionCache.set(session.id, { status: session.status });\n const eventType =\n session.status === InteractiveSessionStatus.booting\n ? 'interactive_session_booting'\n : session.status === InteractiveSessionStatus.ready\n ? 'interactive_session_ready'\n : session.status === InteractiveSessionStatus.error\n ? 'interactive_session_error'\n : 'interactive_session_stopped';\n const payload: InteractiveSessionEvent = {\n type: eventType,\n sessionId: session.id,\n featureId: session.featureId,\n };\n enqueue(`event: interactive_session\\ndata: ${JSON.stringify(payload)}\\n\\n`);\n }\n }\n\n // Emit stopped/error events for sessions that disappeared from active list\n for (const [sessionId, cached] of sessionCache) {\n if (\n (cached.status === InteractiveSessionStatus.booting ||\n cached.status === InteractiveSessionStatus.ready) &&\n !activeSessions.find((s) => s.id === sessionId)\n ) {\n // Session no longer active — fetch to get final status\n const session = await sessionRepo.findById(sessionId);\n if (session) {\n sessionCache.set(sessionId, { status: session.status });\n const eventType =\n session.status === InteractiveSessionStatus.error\n ? 'interactive_session_error'\n : 'interactive_session_stopped';\n const payload: InteractiveSessionEvent = {\n type: eventType,\n sessionId: session.id,\n featureId: session.featureId,\n };\n enqueue(`event: interactive_session\\ndata: ${JSON.stringify(payload)}\\n\\n`);\n } else {\n sessionCache.delete(sessionId);\n }\n }\n }\n } catch {\n // Ignore interactive session poll errors to not affect main polling\n }\n\n pollErrorCount = 0; // Reset on success\n } catch (error) {\n pollErrorCount++;\n // Log first few errors, then throttle to avoid spamming\n if (pollErrorCount <= 3 || pollErrorCount % 60 === 0) {\n // eslint-disable-next-line no-console\n console.error(\n `[SSE /api/agent-events] poll error #${pollErrorCount}:`,\n error instanceof Error ? error.message : error\n );\n }\n }\n }\n\n // First poll immediately, then every POLL_INTERVAL_MS\n void poll();\n const pollInterval = setInterval(() => void poll(), POLL_INTERVAL_MS);\n\n // Heartbeat to keep connection alive\n const heartbeatInterval = setInterval(() => {\n enqueue(': heartbeat\\n\\n');\n }, HEARTBEAT_INTERVAL_MS);\n\n // Cleanup on client disconnect\n const cleanup = () => {\n stopped = true;\n clearInterval(pollInterval);\n clearInterval(heartbeatInterval);\n try {\n controller.close();\n } catch {\n // Stream may already be closed\n }\n };\n\n request.signal.addEventListener('abort', cleanup, { once: true });\n },\n });\n\n return new Response(stream, {\n headers: {\n 'Content-Type': 'text/event-stream',\n 'Cache-Control': 'no-cache',\n Connection: 'keep-alive',\n },\n });\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('[SSE route] GET handler error:', error);\n return new Response(JSON.stringify({ error: String(error) }), {\n status: 500,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n}\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { addRequestMeta, getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { setManifestsSingleton } from \"next/dist/esm/server/app-render/manifests-singleton\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/agent-events/route\",\n pathname: \"/api/agent-events\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/src/presentation/web/app/api/agent-events/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());\n }\n let srcPage = \"/api/agent-events/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, parsedUrl, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname, clientReferenceManifest, serverActionsManifest } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n const render404 = async ()=>{\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext == null ? void 0 : routerServerContext.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false);\n } else {\n res.end('This page could not be found');\n }\n return null;\n };\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404();\n }\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse;\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest\n });\n }\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${srcPage}`);\n }\n });\n };\n const isMinimalMode = Boolean(process.env.MINIMAL_MODE || getRequestMeta(req, 'minimalMode'));\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!isMinimalMode && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!isMinimalMode) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":[],"mappings":"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","ignoreList":[1]}
|