• 王鹏飞's avatar
    refactor!: 迁移到 Fastify 5 并统一 DMS snake_case 契约 · 9623d948
    由 王鹏飞 提交于
    结构(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
名称
最后提交
最后更新
..
cases.js 正在载入提交数据...
columns.js 正在载入提交数据...
products.js 正在载入提交数据...
project-roles.js 正在载入提交数据...
projects.js 正在载入提交数据...