diff --git a/Local-Development-and-Verification.-.md b/Local-Development-and-Verification.-.md index 4ef46b7..d2c57a6 100644 --- a/Local-Development-and-Verification.-.md +++ b/Local-Development-and-Verification.-.md @@ -51,7 +51,7 @@ Sense/Bell 的 Go、Node 与 pnpm 基线已冻结并记录于下文;Brain 的 |---|---|---|---|---| | Sense | 待骨架工单冻结 | 待冻结 | 待冻结 | 未初始化业务代码 | | Brain | 待骨架工单冻结 | 待冻结 | 待冻结 | 未初始化业务代码 | -| Bell | 待骨架工单冻结 | 待冻结 | 待冻结 | 未初始化业务代码 | +| Bell | `go build ./...`;`pnpm build:prod` | `go test ./...`;`pnpm lint` | `go run . migrate`;`go run . serve`;`pnpm dev` | 首个独立纵切已实现,待验收 | 不得复制旧仓库命令来填空。每个骨架工单必须同时建立 README、可复制命令和最小测试。 @@ -99,7 +99,7 @@ pnpm --version `D:\github\goadmin` 下三个仓库只允许读取和核对,不允许在其中开发或提交 yovision 产品代码。本机路径不是跨机器事实;缺少该路径时,应从清单中的上游 URL 检出相同 commit 到仓库外目录。 -截至 2026-08-12 的本机核对结果:Go 1.23.0,不满足 go-admin `go.mod` 声明的 Go 1.26.5;Node.js 22.22.1 符合基线;pnpm 尚未安装,Corepack 0.34.6 可用。因此后端构建和 pnpm 前端构建均未完成验证。安装隔离的 Go 1.26.5 并通过 Corepack 启用 pnpm 9.15.1 后,才可执行后续骨架构建验收。 +截至 2026-08-12,系统 Go 1.23.0 仍不满足基线;开发机已在仓库外安装并校验隔离 Go 1.26.5,并通过 Corepack 使用 pnpm 9.15.1。Sense、Bell 的后端测试/构建与前端 lint/build 已在该隔离工具链完成。隔离目录是开发机临时事实,不得写入部署配置;其他机器应从官方来源安装相同精确版本。 `go-admin-doc` 只用于理解上游框架;项目自己的架构、开发规则和版本事实仍以 yovision Wiki、Agent 规则与 `goadmin-baseline.json` 为准。 @@ -124,3 +124,27 @@ powershell -ExecutionPolicy Bypass -File .\Sense\scripts\bootstrap\smoke.ps1 正式后端启动必须设置 `SENSE_DATABASE_MODE=postgres` 和仓库外提供的 `SENSE_DATABASE_URL`。健康检查为 `GET /healthz`,就绪检查为 `GET /readyz`。本地 smoke 明确设置 `SENSE_DATABASE_MODE=memory`,不能代替 PostgreSQL 部署验证。 + + + +## Bell 本地构建与验证 + +先从根 `goadmin-baseline.json` 核对精确版本,再从仓库外环境设置 Bell 专用数据库与会话密钥。命令中的值只能使用本地测试凭据,不得提交: + +```powershell +powershell -ExecutionPolicy Bypass -File .\Bell\scripts\bootstrap\check-toolchain.ps1 +Set-Location Bell\server +go test ./... +go build ./... +go run . migrate +go run . serve +Set-Location ..\web +corepack pnpm@9.15.1 install --frozen-lockfile +corepack pnpm@9.15.1 lint +corepack pnpm@9.15.1 build:prod +``` + +后端启动前必须提供独立 `BELL_DATABASE_URL` 与至少 32 字符的 `BELL_SESSION_SECRET`;`BELL_ENV` 可取 development、test、production。健康检查为 `GET /healthz`,就绪检查为 `GET /readyz`。首次管理员用 `go run . create-admin` 创建,密码通过 `BELL_BOOTSTRAP_PASSWORD` 进程环境一次性提供。 + +在 Sense、Brain 停止时,development/test 可使用“合成事件测试”完成 Event 入站、规则匹配、Alert 关联、ack 和结果必填 close。production 必须验证 `/api/v1/synthetic/*` 返回 404。PostgreSQL 集成测试使用空的 Bell 专用测试数据库,禁止复用 Sense 或生产数据库。 + \ No newline at end of file