-
由 王鹏飞 提交于
结构(fastify-cli 官方布局): - plugins/ 用 fastify-plugin 装饰共享资源(db/mysql/mongoose),生命周期随实例 - routes/ 目录即 URL 前缀,autoload 注册;DMS 用 autohooks.js 做 onRequest 鉴权 - 新增 schemas/(zod 契约)、clients/(外部系统)、lib/(纯工具)、db/schema/、models/ - 跨目录引用改用 #src/* 子路径别名 契约(破坏性): - DMS 接口的请求体/查询参数/响应字段统一 snake_case,与 MySQL 列名一致, 派生字段(can_edit_project、editable_stages、project_manager_name 等)同样下划线 - logs(Mongo) 与微信接口保持 camelCase - center-dms 需与本次同批次发布 其他: - 错误处理:4xx 记 warn(不打堆栈),5xx 记 error;统一错误响应结构 - 性能:日志索引、MySQL 连接池可配、gzip 压缩 - 运维:/health/ready 探活、x-request-id 回传、SIGTERM 优雅退出 - 依赖升级(axios/mysql2/mongoose/zod/fastify 等),生产漏洞 7 → 0
9623d948