@shepai/cli 1.124.0-pr396.2dd2ae6 → 1.124.0-pr402.06ada70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/packages/core/src/application/ports/output/services/deployment-service.interface.d.ts +13 -2
- package/dist/packages/core/src/application/ports/output/services/deployment-service.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +5 -68
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.js +4 -6
- package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.js +2 -15
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-create-dev-servers-table.d.ts +21 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-create-dev-servers-table.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-create-dev-servers-table.js +32 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/ci-watch-fix-loop.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/ci-watch-fix-loop.js +9 -0
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.d.ts +24 -14
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.js +203 -31
- package/dist/packages/core/src/infrastructure/services/deployment/parse-port.d.ts +0 -6
- package/dist/packages/core/src/infrastructure/services/deployment/parse-port.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/deployment/parse-port.js +6 -1
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +0 -6
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +7 -127
- package/dist/src/presentation/web/app/actions/deploy-feature.js +1 -1
- package/dist/src/presentation/web/app/actions/deploy-repository.js +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +1 -2
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +4 -4
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.d.ts +0 -4
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.js +1 -32
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +1 -4
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +2 -2
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts +1 -4
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +3 -8
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts +0 -6
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.js +0 -30
- package/dist/src/presentation/web/components/common/open-action-menu/open-action-menu.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/open-action-menu/open-action-menu.stories.js +0 -3
- package/dist/src/presentation/web/components/common/repository-node/repository-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-drawer.js +3 -3
- package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +8 -5
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.d.ts +0 -4
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.js +0 -11
- 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 +12 -3
- package/dist/src/presentation/web/components/features/settings/notification-settings-section.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/notification-settings-section.js +4 -8
- package/dist/src/presentation/web/components/features/settings/notification-settings-section.stories.js +3 -3
- package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.js +12 -37
- package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +2 -3
- package/dist/src/presentation/web/hooks/use-deploy-action.d.ts.map +1 -1
- package/dist/src/presentation/web/hooks/use-deploy-action.js +69 -10
- package/dist/src/presentation/web/lib/layout-with-dagre.js +3 -3
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- 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/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +48 -63
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +60 -90
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +60 -90
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +44 -59
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +48 -63
- package/web/.next/server/app/(dashboard)/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +60 -90
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +60 -90
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +44 -59
- package/web/.next/server/app/(dashboard)/page.js +2 -2
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +44 -59
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error.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 +1 -1
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
- package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
- package/web/.next/server/app/settings/page/server-reference-manifest.json +6 -6
- 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 +6 -6
- package/web/.next/server/app/skills/page.js +1 -2
- 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 +6 -6
- package/web/.next/server/app/tools/page.js +1 -2
- 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 +1 -1
- 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/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +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/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js +3 -0
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js.map +1 -0
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js +3 -0
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56ecbe40._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56ecbe40._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__68c2d48e._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__68c2d48e._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__dfc367f2._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7a715c73._.js.map → [root-of-the-server]__dfc367f2._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e7f61cc6._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__a32640a5._.js.map → [root-of-the-server]__e7f61cc6._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_2f6f48b8._.js +1 -1
- package/web/.next/server/chunks/ssr/_2f6f48b8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_7dca1882._.js +3 -0
- package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_0e506641._.js → _918887c5._.js} +2 -2
- package/web/.next/server/chunks/ssr/_918887c5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_a2eff93a._.js +3 -0
- package/web/.next/server/chunks/ssr/_a2eff93a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_1bb131c4._.js → _d4b20e29._.js} +2 -2
- package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_e2638d5f._.js → _d7f927ec._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_e2638d5f._.js.map → _d7f927ec._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_e9703421._.js +1 -1
- package/web/.next/server/chunks/ssr/_e9703421._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_f39a1adb._.js +3 -0
- package/web/.next/server/chunks/ssr/{_135edb9c._.js.map → _f39a1adb._.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/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_073917db._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_073917db._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js +5 -0
- package/web/.next/server/chunks/ssr/{src_presentation_web_e4e3c09b._.js.map → src_presentation_web_9db47db7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js +5 -0
- package/web/.next/server/chunks/ssr/{src_presentation_web_d1d40a09._.js.map → src_presentation_web_ede4a227._.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 +285 -392
- package/web/.next/static/chunks/01ba448cf76c6014.js +1 -0
- package/web/.next/static/chunks/{80f9e0cade7d717b.js → 04f47be1504521fc.js} +1 -1
- package/web/.next/static/chunks/0a514695ca5fabc3.js +2 -0
- package/web/.next/static/chunks/1be7ac7a24009333.css +1 -0
- package/web/.next/static/chunks/28f1dddebda55af2.js +1 -0
- package/web/.next/static/chunks/2ee4a1a94f6001ea.js +1 -0
- package/web/.next/static/chunks/{8b87caa5e8e72539.js → 33d7958650742d27.js} +1 -1
- package/web/.next/static/chunks/37ada233462bcaec.js +11 -0
- package/web/.next/static/chunks/469f49ae02e8a1f6.js +1 -0
- package/web/.next/static/chunks/54481c140fd8761a.js +1 -0
- package/web/.next/static/chunks/{0a25d970e4abd189.js → b609272225ffb749.js} +1 -1
- package/web/.next/static/chunks/b70dd4985a814b27.js +1 -0
- package/web/.next/static/chunks/e651e1ec05e5a806.js +1 -0
- package/web/.next/static/chunks/eb9841ec4d80af01.js +1 -0
- package/web/.next/static/chunks/f2c96db74a878fa1.js +1 -0
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts +0 -28
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.js +0 -81
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.d.ts +0 -16
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.d.ts.map +0 -1
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.js +0 -43
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts +0 -35
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.js +0 -66
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts +0 -42
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts.map +0 -1
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.js +0 -169
- package/dist/src/presentation/web/app/actions/rebase-feature.d.ts +0 -5
- package/dist/src/presentation/web/app/actions/rebase-feature.d.ts.map +0 -1
- package/dist/src/presentation/web/app/actions/rebase-feature.js +0 -16
- package/dist/src/presentation/web/app/actions/sync-repository.d.ts +0 -5
- package/dist/src/presentation/web/app/actions/sync-repository.d.ts.map +0 -1
- package/dist/src/presentation/web/app/actions/sync-repository.js +0 -16
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_9efdd752.js +0 -3
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_9efdd752.js.map +0 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_6ce19942.js +0 -3
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_6ce19942.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__14664e9b._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__14664e9b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__16a547fc._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__16a547fc._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__4993a47c._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__4993a47c._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__545792ab._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__545792ab._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__7a715c73._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a32640a5._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a7de2711._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a7de2711._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c94704d6._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c94704d6._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0e506641._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_135edb9c._.js +0 -3
- package/web/.next/server/chunks/ssr/_1bb131c4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_966c4532._.js +0 -3
- package/web/.next/server/chunks/ssr/_966c4532._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_cc77a143._.js +0 -3
- package/web/.next/server/chunks/ssr/_cc77a143._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_883074bc.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_883074bc.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_d1d40a09._.js +0 -5
- package/web/.next/server/chunks/ssr/src_presentation_web_e4e3c09b._.js +0 -5
- package/web/.next/server/chunks/ssr/src_presentation_web_f6b57368._.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_f6b57368._.js.map +0 -1
- package/web/.next/static/chunks/11fbcb908d07e234.js +0 -1
- package/web/.next/static/chunks/3925626b99dcd57a.css +0 -1
- package/web/.next/static/chunks/4b51f8f4e49665b8.js +0 -1
- package/web/.next/static/chunks/513b719e49ca003a.js +0 -11
- package/web/.next/static/chunks/77304c4f9c5bb158.js +0 -1
- package/web/.next/static/chunks/9b7dbb75030aac3e.js +0 -1
- package/web/.next/static/chunks/ac7251026c1e2cdf.js +0 -1
- package/web/.next/static/chunks/cd008e10baaeae9a.js +0 -1
- package/web/.next/static/chunks/d71ce7044ed5a85a.js +0 -2
- package/web/.next/static/chunks/db8d50abcf46d8b3.js +0 -1
- package/web/.next/static/chunks/e2ef95d904c360f3.js +0 -1
- /package/web/.next/static/{MpP2wa-zjPqcZxmpuDBjj → FXJ9jqgleHlSoq4JKo32G}/_buildManifest.js +0 -0
- /package/web/.next/static/{MpP2wa-zjPqcZxmpuDBjj → FXJ9jqgleHlSoq4JKo32G}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{MpP2wa-zjPqcZxmpuDBjj → FXJ9jqgleHlSoq4JKo32G}/_ssgManifest.js +0 -0
package/dist/packages/core/src/application/ports/output/services/deployment-service.interface.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* - Application layer depends on this interface
|
|
10
10
|
* - Infrastructure layer provides concrete implementations
|
|
11
11
|
*/
|
|
12
|
+
import type Database from 'better-sqlite3';
|
|
12
13
|
import type { DeploymentState } from '../../../../domain/generated/output.js';
|
|
13
14
|
/** A single log line captured from a deployment's stdout or stderr. */
|
|
14
15
|
export interface LogEntry {
|
|
@@ -39,16 +40,26 @@ export interface DeploymentStatus {
|
|
|
39
40
|
* - Support graceful shutdown (SIGTERM → SIGKILL) for individual and bulk stops
|
|
40
41
|
*/
|
|
41
42
|
export interface IDeploymentService {
|
|
43
|
+
/**
|
|
44
|
+
* Inject the database connection for persistence.
|
|
45
|
+
* Must be called before start/stop/getStatus to enable DB persistence.
|
|
46
|
+
*/
|
|
47
|
+
setDatabase(db: Database.Database): void;
|
|
48
|
+
/**
|
|
49
|
+
* Recover dev servers from the database on startup.
|
|
50
|
+
* Validates each PID is still alive; removes dead rows.
|
|
51
|
+
*/
|
|
52
|
+
recoverAll(): void;
|
|
42
53
|
/**
|
|
43
54
|
* Start a dev server deployment for the given target.
|
|
44
55
|
* If a deployment already exists for this targetId, it is stopped first.
|
|
45
56
|
*
|
|
46
57
|
* @param targetId - Unique identifier for the deployment target (featureId or repositoryId)
|
|
47
58
|
* @param targetPath - Absolute filesystem path to the directory to run the dev server in
|
|
48
|
-
* @
|
|
59
|
+
* @param targetType - Type of target ('feature' or 'repository')
|
|
49
60
|
* @throws Error if no dev script is found in package.json or the process fails to spawn
|
|
50
61
|
*/
|
|
51
|
-
start(targetId: string, targetPath: string): void;
|
|
62
|
+
start(targetId: string, targetPath: string, targetType?: string): void;
|
|
52
63
|
/**
|
|
53
64
|
* Stop a running deployment gracefully.
|
|
54
65
|
* Sends SIGTERM to the process group, then SIGKILL after a timeout.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/deployment-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,uEAAuE;AACvE,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,KAAK,EAAE,eAAe,CAAC;IACvB,qEAAqE;IACrE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"deployment-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/deployment-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,uEAAuE;AACvE,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,KAAK,EAAE,eAAe,CAAC;IACvB,qEAAqE;IACrE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;IAEzC;;;OAGG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvE;;;;;;OAMG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAAC;IAErD;;;OAGG;IACH,OAAO,IAAI,IAAI,CAAC;IAIhB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC;IAE7C;;;;;OAKG;IACH,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI,CAAC;IAE3D;;;;;OAKG;IACH,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI,CAAC;CAC7D"}
|
package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts
CHANGED
|
@@ -9,17 +9,15 @@ import type { PrStatus } from '../../../../domain/generated/output.js';
|
|
|
9
9
|
* Error codes for git PR operations.
|
|
10
10
|
*/
|
|
11
11
|
export declare enum GitPrErrorCode {
|
|
12
|
+
MERGE_CONFLICT = "MERGE_CONFLICT",
|
|
12
13
|
AUTH_FAILURE = "AUTH_FAILURE",
|
|
13
|
-
BRANCH_NOT_FOUND = "BRANCH_NOT_FOUND",
|
|
14
|
-
CI_TIMEOUT = "CI_TIMEOUT",
|
|
15
14
|
GH_NOT_FOUND = "GH_NOT_FOUND",
|
|
15
|
+
NETWORK_ERROR = "NETWORK_ERROR",
|
|
16
|
+
CI_TIMEOUT = "CI_TIMEOUT",
|
|
17
|
+
BRANCH_NOT_FOUND = "BRANCH_NOT_FOUND",
|
|
16
18
|
GIT_ERROR = "GIT_ERROR",
|
|
17
|
-
MERGE_CONFLICT = "MERGE_CONFLICT",
|
|
18
19
|
MERGE_FAILED = "MERGE_FAILED",
|
|
19
|
-
|
|
20
|
-
PR_NOT_FOUND = "PR_NOT_FOUND",
|
|
21
|
-
REBASE_CONFLICT = "REBASE_CONFLICT",
|
|
22
|
-
SYNC_FAILED = "SYNC_FAILED"
|
|
20
|
+
PR_NOT_FOUND = "PR_NOT_FOUND"
|
|
23
21
|
}
|
|
24
22
|
/**
|
|
25
23
|
* Typed error for git PR operations.
|
|
@@ -320,66 +318,5 @@ export interface IGitPrService {
|
|
|
320
318
|
* @throws GitPrError with GH_NOT_FOUND or GIT_ERROR code on failure
|
|
321
319
|
*/
|
|
322
320
|
getFailureLogs(cwd: string, runId: string, branch: string, logMaxChars?: number): Promise<string>;
|
|
323
|
-
/**
|
|
324
|
-
* Fast-forward the local base branch to match its remote counterpart.
|
|
325
|
-
* If currently on the base branch, uses `git pull --ff-only`.
|
|
326
|
-
* If on a different branch, uses `git fetch origin <baseBranch>:<baseBranch>`.
|
|
327
|
-
*
|
|
328
|
-
* @param cwd - Working directory path
|
|
329
|
-
* @param baseBranch - The base branch to sync (e.g. "main")
|
|
330
|
-
* @throws GitPrError with SYNC_FAILED code if the branch has diverged and cannot fast-forward
|
|
331
|
-
* @throws GitPrError with GIT_ERROR code on other git failures
|
|
332
|
-
*/
|
|
333
|
-
syncMain(cwd: string, baseBranch: string): Promise<void>;
|
|
334
|
-
/**
|
|
335
|
-
* Rebase the feature branch onto the latest base branch.
|
|
336
|
-
* Checks for dirty worktree before starting. Detects conflict state
|
|
337
|
-
* from git exit code and stderr — throws REBASE_CONFLICT if conflicts
|
|
338
|
-
* are encountered (caller is responsible for resolution or abort).
|
|
339
|
-
*
|
|
340
|
-
* @param cwd - Working directory path
|
|
341
|
-
* @param featureBranch - The feature branch to rebase
|
|
342
|
-
* @param baseBranch - The base branch to rebase onto
|
|
343
|
-
* @throws GitPrError with GIT_ERROR code if the worktree is dirty
|
|
344
|
-
* @throws GitPrError with REBASE_CONFLICT code if conflicts are detected
|
|
345
|
-
* @throws GitPrError with BRANCH_NOT_FOUND code if a branch does not exist
|
|
346
|
-
*/
|
|
347
|
-
rebaseOnMain(cwd: string, featureBranch: string, baseBranch: string): Promise<void>;
|
|
348
|
-
/**
|
|
349
|
-
* Get the list of files with unresolved conflicts (unmerged paths).
|
|
350
|
-
* Uses `git diff --name-only --diff-filter=U` to identify conflicted files.
|
|
351
|
-
*
|
|
352
|
-
* @param cwd - Working directory path
|
|
353
|
-
* @returns Array of file paths with unresolved conflicts
|
|
354
|
-
* @throws GitPrError with GIT_ERROR code on failure
|
|
355
|
-
*/
|
|
356
|
-
getConflictedFiles(cwd: string): Promise<string[]>;
|
|
357
|
-
/**
|
|
358
|
-
* Stage specific files in the working directory.
|
|
359
|
-
* Uses `git add` for the specified file paths.
|
|
360
|
-
*
|
|
361
|
-
* @param cwd - Working directory path
|
|
362
|
-
* @param files - Array of file paths to stage
|
|
363
|
-
* @throws GitPrError with GIT_ERROR code on failure
|
|
364
|
-
*/
|
|
365
|
-
stageFiles(cwd: string, files: string[]): Promise<void>;
|
|
366
|
-
/**
|
|
367
|
-
* Continue an in-progress rebase after conflicts have been resolved.
|
|
368
|
-
* Runs `git rebase --continue`. May throw REBASE_CONFLICT if the next
|
|
369
|
-
* commit in the rebase also has conflicts.
|
|
370
|
-
*
|
|
371
|
-
* @param cwd - Working directory path
|
|
372
|
-
* @throws GitPrError with REBASE_CONFLICT code if new conflicts are detected
|
|
373
|
-
* @throws GitPrError with GIT_ERROR code on other git failures
|
|
374
|
-
*/
|
|
375
|
-
rebaseContinue(cwd: string): Promise<void>;
|
|
376
|
-
/**
|
|
377
|
-
* Abort an in-progress rebase, restoring the branch to its pre-rebase state.
|
|
378
|
-
* Runs `git rebase --abort`.
|
|
379
|
-
*
|
|
380
|
-
* @param cwd - Working directory path
|
|
381
|
-
* @throws GitPrError with GIT_ERROR code on failure
|
|
382
|
-
*/
|
|
383
|
-
rebaseAbort(cwd: string): Promise<void>;
|
|
384
321
|
}
|
|
385
322
|
//# sourceMappingURL=git-pr-service.interface.d.ts.map
|
package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-pr-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/git-pr-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAEvE;;GAEG;AACH,oBAAY,cAAc;IACxB,YAAY,iBAAiB;IAC7B,
|
|
1
|
+
{"version":3,"file":"git-pr-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/git-pr-service.interface.ts"],"names":[],"mappings":"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"}
|
package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.js
CHANGED
|
@@ -9,17 +9,15 @@
|
|
|
9
9
|
*/
|
|
10
10
|
export var GitPrErrorCode;
|
|
11
11
|
(function (GitPrErrorCode) {
|
|
12
|
+
GitPrErrorCode["MERGE_CONFLICT"] = "MERGE_CONFLICT";
|
|
12
13
|
GitPrErrorCode["AUTH_FAILURE"] = "AUTH_FAILURE";
|
|
13
|
-
GitPrErrorCode["BRANCH_NOT_FOUND"] = "BRANCH_NOT_FOUND";
|
|
14
|
-
GitPrErrorCode["CI_TIMEOUT"] = "CI_TIMEOUT";
|
|
15
14
|
GitPrErrorCode["GH_NOT_FOUND"] = "GH_NOT_FOUND";
|
|
15
|
+
GitPrErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR";
|
|
16
|
+
GitPrErrorCode["CI_TIMEOUT"] = "CI_TIMEOUT";
|
|
17
|
+
GitPrErrorCode["BRANCH_NOT_FOUND"] = "BRANCH_NOT_FOUND";
|
|
16
18
|
GitPrErrorCode["GIT_ERROR"] = "GIT_ERROR";
|
|
17
|
-
GitPrErrorCode["MERGE_CONFLICT"] = "MERGE_CONFLICT";
|
|
18
19
|
GitPrErrorCode["MERGE_FAILED"] = "MERGE_FAILED";
|
|
19
|
-
GitPrErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR";
|
|
20
20
|
GitPrErrorCode["PR_NOT_FOUND"] = "PR_NOT_FOUND";
|
|
21
|
-
GitPrErrorCode["REBASE_CONFLICT"] = "REBASE_CONFLICT";
|
|
22
|
-
GitPrErrorCode["SYNC_FAILED"] = "SYNC_FAILED";
|
|
23
21
|
})(GitPrErrorCode || (GitPrErrorCode = {}));
|
|
24
22
|
/**
|
|
25
23
|
* Typed error for git PR operations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/di/container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/di/container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAoHrC;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,SAAS,CAAC,CAmUrE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -80,9 +80,6 @@ import { CheckAndUnblockFeaturesUseCase } from '../../application/use-cases/feat
|
|
|
80
80
|
import { UpdateFeatureLifecycleUseCase } from '../../application/use-cases/features/update/update-feature-lifecycle.use-case.js';
|
|
81
81
|
import { CleanupFeatureWorktreeUseCase } from '../../application/use-cases/features/cleanup-feature-worktree.use-case.js';
|
|
82
82
|
import { UpgradeCliUseCase } from '../../application/use-cases/upgrade/upgrade-cli.use-case.js';
|
|
83
|
-
import { SyncRepositoryMainUseCase } from '../../application/use-cases/repositories/sync-repository-main.use-case.js';
|
|
84
|
-
import { RebaseFeatureOnMainUseCase } from '../../application/use-cases/features/rebase-feature-on-main.use-case.js';
|
|
85
|
-
import { ConflictResolutionService } from '../services/agents/conflict-resolution/conflict-resolution.service.js';
|
|
86
83
|
// Session listing
|
|
87
84
|
import { ClaudeCodeSessionRepository } from '../services/agents/sessions/claude-code-session.repository.js';
|
|
88
85
|
import { StubSessionRepository } from '../services/agents/sessions/stub-session.repository.js';
|
|
@@ -172,6 +169,8 @@ export async function initializeContainer() {
|
|
|
172
169
|
container.registerSingleton(AttachmentStorageService);
|
|
173
170
|
container.register('AttachmentStorageService', { useToken: AttachmentStorageService });
|
|
174
171
|
const deploymentService = new DeploymentService();
|
|
172
|
+
deploymentService.setDatabase(db);
|
|
173
|
+
deploymentService.recoverAll();
|
|
175
174
|
container.registerInstance('IDeploymentService', deploymentService);
|
|
176
175
|
// Register agent infrastructure
|
|
177
176
|
container.register('IAgentRunRepository', {
|
|
@@ -298,12 +297,6 @@ export async function initializeContainer() {
|
|
|
298
297
|
container.registerSingleton(UpdateFeatureLifecycleUseCase);
|
|
299
298
|
container.registerSingleton(CleanupFeatureWorktreeUseCase);
|
|
300
299
|
container.registerSingleton(UpgradeCliUseCase);
|
|
301
|
-
container.registerSingleton(ConflictResolutionService);
|
|
302
|
-
container.register('ConflictResolutionService', {
|
|
303
|
-
useFactory: (c) => c.resolve(ConflictResolutionService),
|
|
304
|
-
});
|
|
305
|
-
container.registerSingleton(SyncRepositoryMainUseCase);
|
|
306
|
-
container.registerSingleton(RebaseFeatureOnMainUseCase);
|
|
307
300
|
// Session repositories (per-AgentType string tokens)
|
|
308
301
|
container.register(`IAgentSessionRepository:${AgentType.ClaudeCode}`, {
|
|
309
302
|
useFactory: () => new ClaudeCodeSessionRepository(),
|
|
@@ -394,12 +387,6 @@ export async function initializeContainer() {
|
|
|
394
387
|
container.register('UpgradeCliUseCase', {
|
|
395
388
|
useFactory: (c) => c.resolve(UpgradeCliUseCase),
|
|
396
389
|
});
|
|
397
|
-
container.register('SyncRepositoryMainUseCase', {
|
|
398
|
-
useFactory: (c) => c.resolve(SyncRepositoryMainUseCase),
|
|
399
|
-
});
|
|
400
|
-
container.register('RebaseFeatureOnMainUseCase', {
|
|
401
|
-
useFactory: (c) => c.resolve(RebaseFeatureOnMainUseCase),
|
|
402
|
-
});
|
|
403
390
|
_initialized = true;
|
|
404
391
|
return container;
|
|
405
392
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Migration 040: Create dev_servers table.
|
|
3
|
+
*
|
|
4
|
+
* Persists running dev server deployments so they survive page reloads
|
|
5
|
+
* and server restarts. The DeploymentService reconciles on startup by
|
|
6
|
+
* checking PID liveness and cleaning up stale rows.
|
|
7
|
+
*
|
|
8
|
+
* Columns:
|
|
9
|
+
* - target_id TEXT PRIMARY KEY — featureId or repositoryPath
|
|
10
|
+
* - target_type TEXT NOT NULL — 'feature' | 'repository'
|
|
11
|
+
* - pid INTEGER NOT NULL — OS process ID
|
|
12
|
+
* - state TEXT NOT NULL — DeploymentState enum value
|
|
13
|
+
* - url TEXT — detected dev server URL (null while Booting)
|
|
14
|
+
* - target_path TEXT NOT NULL — filesystem path where the dev server runs
|
|
15
|
+
* - started_at INTEGER NOT NULL — unix milliseconds
|
|
16
|
+
*/
|
|
17
|
+
import type { MigrationParams } from 'umzug';
|
|
18
|
+
import type Database from 'better-sqlite3';
|
|
19
|
+
export declare function up({ context: db }: MigrationParams<Database.Database>): Promise<void>;
|
|
20
|
+
export declare function down({ context: db }: MigrationParams<Database.Database>): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=040-create-dev-servers-table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"040-create-dev-servers-table.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/infrastructure/persistence/sqlite/migrations/040-create-dev-servers-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3F;AAED,wBAAsB,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Migration 040: Create dev_servers table.
|
|
3
|
+
*
|
|
4
|
+
* Persists running dev server deployments so they survive page reloads
|
|
5
|
+
* and server restarts. The DeploymentService reconciles on startup by
|
|
6
|
+
* checking PID liveness and cleaning up stale rows.
|
|
7
|
+
*
|
|
8
|
+
* Columns:
|
|
9
|
+
* - target_id TEXT PRIMARY KEY — featureId or repositoryPath
|
|
10
|
+
* - target_type TEXT NOT NULL — 'feature' | 'repository'
|
|
11
|
+
* - pid INTEGER NOT NULL — OS process ID
|
|
12
|
+
* - state TEXT NOT NULL — DeploymentState enum value
|
|
13
|
+
* - url TEXT — detected dev server URL (null while Booting)
|
|
14
|
+
* - target_path TEXT NOT NULL — filesystem path where the dev server runs
|
|
15
|
+
* - started_at INTEGER NOT NULL — unix milliseconds
|
|
16
|
+
*/
|
|
17
|
+
export async function up({ context: db }) {
|
|
18
|
+
db.exec(`
|
|
19
|
+
CREATE TABLE IF NOT EXISTS dev_servers (
|
|
20
|
+
target_id TEXT PRIMARY KEY,
|
|
21
|
+
target_type TEXT NOT NULL,
|
|
22
|
+
pid INTEGER NOT NULL,
|
|
23
|
+
state TEXT NOT NULL DEFAULT 'Booting',
|
|
24
|
+
url TEXT,
|
|
25
|
+
target_path TEXT NOT NULL,
|
|
26
|
+
started_at INTEGER NOT NULL
|
|
27
|
+
)
|
|
28
|
+
`);
|
|
29
|
+
}
|
|
30
|
+
export async function down({ context: db }) {
|
|
31
|
+
db.exec('DROP TABLE IF EXISTS dev_servers');
|
|
32
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-watch-fix-loop.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/ci-watch-fix-loop.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AACpG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iEAAiE,CAAC;AAKrG,OAAO,EAAE,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+DAA+D,CAAC;AAK3G,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,aAAa,CAAC;IAC5B,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,qBAAqB,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/E,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,UAAU,CAAC;CACjB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAEpG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"ci-watch-fix-loop.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/ci-watch-fix-loop.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AACpG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iEAAiE,CAAC;AAKrG,OAAO,EAAE,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+DAA+D,CAAC;AAK3G,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,aAAa,CAAC;IAC5B,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,qBAAqB,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/E,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,UAAU,CAAC;CACjB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAEpG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAuJ3B"}
|
|
@@ -84,6 +84,11 @@ export async function runCiWatchFixLoop(deps, params) {
|
|
|
84
84
|
}
|
|
85
85
|
throw err;
|
|
86
86
|
}
|
|
87
|
+
// Use the run URL from watchCi — it reflects the actual run watched,
|
|
88
|
+
// which may differ from the initial getCiStatus() result when multiple
|
|
89
|
+
// workflow runs exist for the same branch.
|
|
90
|
+
if (watchResult.runUrl)
|
|
91
|
+
runUrl = watchResult.runUrl;
|
|
87
92
|
if (watchResult.status === 'success') {
|
|
88
93
|
log.info('CI passed on first watch');
|
|
89
94
|
return { ciStatus: CiStatus.Success, ciFixAttempts, ciFixHistory, ciFixStatus: 'success' };
|
|
@@ -128,6 +133,10 @@ export async function runCiWatchFixLoop(deps, params) {
|
|
|
128
133
|
}
|
|
129
134
|
throw err;
|
|
130
135
|
}
|
|
136
|
+
// Update runUrl to the run that was actually watched (avoids mismatch
|
|
137
|
+
// when multiple workflow runs exist for the same branch).
|
|
138
|
+
if (fixWatchResult.runUrl)
|
|
139
|
+
runUrl = fixWatchResult.runUrl;
|
|
131
140
|
const outcome = fixWatchResult.status === 'success' ? 'fixed' : 'failed';
|
|
132
141
|
ciFixHistory.push({
|
|
133
142
|
attempt: ciFixAttempts,
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
* Deployment Service
|
|
3
3
|
*
|
|
4
4
|
* Infrastructure service that manages local dev server deployments.
|
|
5
|
-
* Holds an in-memory Map of active deployments keyed by targetId
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* Holds an in-memory Map of active deployments keyed by targetId AND
|
|
6
|
+
* persists deployment records to the `dev_servers` SQLite table so that
|
|
7
|
+
* running dev servers survive page reloads and server restarts.
|
|
8
|
+
*
|
|
9
|
+
* On startup, call `recoverAll()` to reconcile the DB with actual
|
|
10
|
+
* process state (clean up dead PIDs, re-adopt live ones).
|
|
8
11
|
*/
|
|
9
12
|
import { spawn } from 'node:child_process';
|
|
13
|
+
import type Database from 'better-sqlite3';
|
|
10
14
|
import type { IDeploymentService, DeploymentStatus, LogEntry } from '../../../application/ports/output/services/deployment-service.interface.js';
|
|
11
15
|
import { detectDevScript } from './detect-dev-script.js';
|
|
12
16
|
export interface DeploymentServiceDeps {
|
|
@@ -19,15 +23,26 @@ export declare class DeploymentService implements IDeploymentService {
|
|
|
19
23
|
private readonly deployments;
|
|
20
24
|
private readonly deps;
|
|
21
25
|
private readonly emitter;
|
|
26
|
+
private db;
|
|
22
27
|
constructor(deps?: Partial<DeploymentServiceDeps>);
|
|
28
|
+
/**
|
|
29
|
+
* Inject the database connection. Called from DI container after DB is ready.
|
|
30
|
+
*/
|
|
31
|
+
setDatabase(db: Database.Database): void;
|
|
32
|
+
/**
|
|
33
|
+
* Recover dev servers from the database on startup.
|
|
34
|
+
* Validates each PID is still alive; removes dead rows.
|
|
35
|
+
*/
|
|
36
|
+
recoverAll(): void;
|
|
23
37
|
/**
|
|
24
38
|
* Start a deployment for the given target.
|
|
25
39
|
* If a deployment already exists for this target, it is stopped first.
|
|
26
40
|
*/
|
|
27
|
-
start(targetId: string, targetPath: string): void;
|
|
41
|
+
start(targetId: string, targetPath: string, targetType?: string): void;
|
|
28
42
|
/**
|
|
29
43
|
* Get the current deployment status for a target.
|
|
30
|
-
*
|
|
44
|
+
* Checks in-memory Map first, then falls back to DB for recovered deployments.
|
|
45
|
+
* Validates PID liveness — cleans up if dead.
|
|
31
46
|
*/
|
|
32
47
|
getStatus(targetId: string): DeploymentStatus | null;
|
|
33
48
|
/**
|
|
@@ -50,22 +65,17 @@ export declare class DeploymentService implements IDeploymentService {
|
|
|
50
65
|
* Unsubscribe from real-time log events.
|
|
51
66
|
*/
|
|
52
67
|
off(event: 'log', handler: (entry: LogEntry) => void): void;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
68
|
+
private dbUpsert;
|
|
69
|
+
private dbUpdateState;
|
|
70
|
+
private dbDelete;
|
|
71
|
+
private dbFind;
|
|
56
72
|
private killProcess;
|
|
57
73
|
/**
|
|
58
74
|
* Attach a line-buffered listener on stdout or stderr that calls parsePort
|
|
59
75
|
* and accumulates log entries.
|
|
60
76
|
*/
|
|
61
77
|
private attachOutputListener;
|
|
62
|
-
/**
|
|
63
|
-
* Poll until a process is dead or timeout expires.
|
|
64
|
-
*/
|
|
65
78
|
private pollUntilDead;
|
|
66
|
-
/**
|
|
67
|
-
* Wait for a child process to emit 'exit', with a short timeout.
|
|
68
|
-
*/
|
|
69
79
|
private waitForExit;
|
|
70
80
|
}
|
|
71
81
|
//# sourceMappingURL=deployment.service.d.ts.map
|
package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/services/deployment/deployment.service.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"deployment.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/services/deployment/deployment.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAO3C,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACT,MAAM,qEAAqE,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgCzD,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC;IAC7D,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACnC;AA6BD,qBAAa,iBAAkB,YAAW,kBAAkB;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,EAAE,CAAkC;gBAEhC,IAAI,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAIrD;;OAEG;IACH,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI;IAIxC;;;OAGG;IACH,UAAU,IAAI,IAAI;IA4ClB;;;OAGG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,SAAe,GAAG,IAAI;IAqF5E;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IA4CpD;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0D3C;;OAEG;IACH,OAAO,IAAI,IAAI;IAef;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,GAAG,IAAI;IAM5C;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI;IAI1D;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI;IAM3D,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,WAAW;IAQnB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;YA4Dd,aAAa;IAW3B,OAAO,CAAC,WAAW;CASpB"}
|