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 -1
View File
@@ -115,7 +115,7 @@ docs/ PRD / 技术架构 / 立项建议 / 工程规范
| 构建 | `pnpm build` |
| 质量 | `pnpm lint` · `pnpm lint:fix` · `pnpm format` · `pnpm format:check` · `pnpm typecheck` |
| 测试 | `pnpm test` · `pnpm test:int` · `pnpm test:e2e` · `pnpm ci:local` |
| 数据库 | `pnpm db:migrate` · `pnpm db:reset`(禁止手工删库 / 删数据卷) |
| 数据库 | `pnpm db:init`(迁移 + 幂等种子,不重置数据)· `pnpm db:migrate` · `pnpm db:reset`(清库重建,慎用;禁止手工删库 / 删数据卷) |
| 契约 | `pnpm openapi:diff` |
> 文档、脚本、CI 中出现的命令必须与上表一致,禁止自造别名。