fix(dev): 明确启动不重置数据库并新增安全 db:init
ci / 质量门禁 (push) Canceled after 0s

背景:开发机每次重启后被反馈需要重新用默认密码登录并强改,排查确认仓库启动链路(dev.sh / pnpm dev / API / worker / db:seed)均不重置密码;只有 db:reset / migrate reset / 重建数据卷会恢复种子密码。A2 收尾时为干净截图执行过 db:reset,是最近一次重置的直接原因。

改动:
- 新增 pnpm db:init = prisma migrate deploy + 幂等 seed,作为首次/迁移后的安全初始化;不重置数据、不覆盖已有密码。
- README / dev.sh / AGENTS 命令契约 / SEED.md / A1·A2 实施报告明确:日常启动不需要 DB 命令,db:reset 仅用于清库。
- 实测:对已改密的 admin 执行 db:init 后 password_hash 与 must_change_password 均未变化。

验证:pnpm format:check / pnpm lint 通过;db:init 实际执行通过。
This commit is contained in:
Stev_Wang committed 2026-11-03 13:37:34 +08:00
1 parent 7fb458f62f
commit 7824bc7b32
7 files changed
+27 -11

No files matched your search

+1
View File
@@ -25,6 +25,7 @@
"ci:local": "node scripts/ci-local.mjs",
"db:generate": "prisma generate",
"db:migrate": "prisma migrate dev",
"db:init": "prisma migrate deploy && pnpm db:seed",
"db:reset": "prisma migrate reset --force",
"db:seed": "tsx prisma/seed.ts",
"openapi:export": "tsx --tsconfig apps/api/tsconfig.json apps/api/src/scripts/export-openapi.ts && openapi-typescript openapi/lingxi.openapi.json -o apps/web/src/api/generated/openapi.d.ts && prettier --write apps/web/src/api/generated/openapi.d.ts",