新增 Web、后台与 AGC 一键开发入口 #569

Closed
opened 2026-10-01 16:36:26 +08:00 by suzmii · 0 comments
Member

问题原因

当前 npm run dev 只启动主站完整栈:SpacetimeDB、BgFilter worker、api-server、主站 Vite 和管理后台;AGC 需要另行执行 npm run agc。两套入口默认使用不同的 database/data dir,直接并行时容易产生两套 API/worker/SpacetimeDB,并重复启动管理后台,.app/dev-stack.json 也会被不同启动器覆盖。

计划修改

新增 npm run dev:all,保持 npm run dev 现有语义不变。一键入口固定使用 AGC 配套 database=genarrative-game-creator-dev 与 server-rs/.spacetimedb/ai-game-creator/data,先启动根完整栈,等待五个服务和两个前端真实就绪后再启动 AGC Vite 与 Tauri。AGC 设置 AGC_DEV_ADMIN_WEB=0,只保留根开发栈启动的管理后台;AGC 复用带有匹配 repoRoot、instanceId、database 和 data dir 的后端。

编排器会预留 AGC Vite 端口,跨平台管理 npm 子进程树;任一子进程异常退出或收到 Ctrl+C/SIGTERM 时收束另一侧。dev:all 拒绝覆盖 database/data dir,避免静默形成第二套后端。

验收

  • npm run dev:all 启动主站、后台、API、worker、SpacetimeDB、AGC Vite 和 Tauri。
  • 共享一份后端,管理后台只启动一份。
  • 子进程异常退出和 Windows/POSIX 信号能收束进程树。
  • npm run dev、npm run agc 及单模块入口保持不变。
  • 补充参数/状态/生命周期测试,并更新本地开发运维文档。
## 问题原因 当前 `npm run dev` 只启动主站完整栈:SpacetimeDB、BgFilter worker、api-server、主站 Vite 和管理后台;AGC 需要另行执行 `npm run agc`。两套入口默认使用不同的 database/data dir,直接并行时容易产生两套 API/worker/SpacetimeDB,并重复启动管理后台,`.app/dev-stack.json` 也会被不同启动器覆盖。 ## 计划修改 新增 `npm run dev:all`,保持 `npm run dev` 现有语义不变。一键入口固定使用 AGC 配套 database=`genarrative-game-creator-dev` 与 `server-rs/.spacetimedb/ai-game-creator/data`,先启动根完整栈,等待五个服务和两个前端真实就绪后再启动 AGC Vite 与 Tauri。AGC 设置 `AGC_DEV_ADMIN_WEB=0`,只保留根开发栈启动的管理后台;AGC 复用带有匹配 repoRoot、instanceId、database 和 data dir 的后端。 编排器会预留 AGC Vite 端口,跨平台管理 npm 子进程树;任一子进程异常退出或收到 Ctrl+C/SIGTERM 时收束另一侧。`dev:all` 拒绝覆盖 database/data dir,避免静默形成第二套后端。 ## 验收 - `npm run dev:all` 启动主站、后台、API、worker、SpacetimeDB、AGC Vite 和 Tauri。 - 共享一份后端,管理后台只启动一份。 - 子进程异常退出和 Windows/POSIX 信号能收束进程树。 - `npm run dev`、`npm run agc` 及单模块入口保持不变。 - 补充参数/状态/生命周期测试,并更新本地开发运维文档。
suzmii self-assigned this 2026-10-01 16:36:26 +08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GenarrativeAI/Genarrative#569