docs: add milestone 0.1.1
This commit is contained in:
57
MILESTONE-0.1.1.md
Normal file
57
MILESTONE-0.1.1.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# WWJCloud 框架里程碑 0.1.1
|
||||
|
||||
## 一、全局评估(当前基线)
|
||||
- 分层清晰:config(配置与适配)、core(通用基础/抽象)、vendor(第三方适配)、common(业务域),依赖方向 App→common→core→vendor 合规。
|
||||
- 配置中心落地:ConfigCenterService 统一读取与开关(如 swagger.enabled、swagger.token),控制器与 UI 解耦;动态配置具备基础能力。
|
||||
- API 文档输出:仅输出 JSON,三端点分组(全量/admin/frontend),鉴权改为 Bearer Token(swagger.token)。
|
||||
- 观测与健康:Winston 日志、Terminus 健康(/healthz /readyz /startupz)、Metrics 基础可用。
|
||||
- 任务与事件:Outbox(events)表、调度与重试字段/索引齐备;队列/事件基础设施在位。
|
||||
- 安全基线:全局守卫、RBAC;文档 JSON 受 Token 保护;Throttler 可用。
|
||||
- 启动可观测:启动成功日志输出后端基地址与文档 JSON 三路由,便于联调。
|
||||
|
||||
## 二、风险与待确认
|
||||
- 动态配置能力的“变更通知/缓存 TTL/审计记录”需在进入多域前补完细节。
|
||||
- CI 质量门禁需在 PR 阶段强制(ESLint/TS/coverage/e2e 阈值)。
|
||||
- DB 初始化要强制走 migration,避免纯 SQL 造成偏差。
|
||||
- 文档 JSON 的密钥管理建议生产具备轮换机制。
|
||||
- Nginx 反代模板建议固化(由 1Panel 管理也可)。
|
||||
|
||||
## 三、绿通项(已完成,可直接使用)
|
||||
- Swagger JSON 鉴权与分组输出(/api-json、/api/admin-json、/api/frontend-json)。
|
||||
- events 表(含 site_id、trace_id 等)完整建表与索引 SQL。
|
||||
- 启动成功日志输出(服务地址与三条 JSON 路由)。
|
||||
- 文档站联调(实时直连 + 备用离线脚本,带 Token)。
|
||||
- 移除循环依赖隐患(Swagger 纳入 config 核心模块,barrel 不再导出 swagger module)。
|
||||
|
||||
## 四、网关(Kong)结论
|
||||
- 单体阶段:不必须启用;1Panel/Nginx 反代 + 后端限流/鉴权足够。
|
||||
- 多应用授权/域名授权阶段:建议引入网关统一鉴权/配额/策略,后端专注业务授权与审计。现有改造路径已预留。
|
||||
|
||||
## 五、PHP 框架迁移前置调整
|
||||
- 数据与命名:表/字段/DTO/错误码与 PHP 对齐;返回格式统一。
|
||||
- 鉴权与越权:管理端统一 JwtAuthGuard + RolesGuard;`site_id` 租户隔离在业务流全链路透传与校验。
|
||||
- 配置迁移:PHP 配置项映射到 ConfigCenterService 键(camelCase),环境变量 UPPER_SNAKE_CASE;生产设置 swagger.token。
|
||||
- 依赖与集成:异步任务/事件对齐 Queue + Outbox(只传 ID、支持幂等重试);vendor 适配上传/存储/短信/支付。
|
||||
- 测试与门禁:将 PHP 关键路径用例迁为 e2e/集成测试;CI 强制 ESLint/TS/coverage/e2e 阈值。
|
||||
- 文档对齐:PHP 接口文档合流至当前 Swagger JSON 输出,docs 站读取三份 JSON。
|
||||
|
||||
## 六、是否定稿 core/vendor/config,进入 common 层?
|
||||
- 结论:可以。core/vendor/config 已达“可用基线”,足以支撑 common 层建设与业务迁移。
|
||||
- core:健康、拦截器/守卫/HTTP、队列与事件抽象、指标与 tracing 框架就绪。
|
||||
- vendor:第三方适配器骨架可用,按业务逐步补实现。
|
||||
- config:配置中心、控制器出口、Swagger JSON 鉴权与分组稳定;Barrel 导出已规避循环。
|
||||
|
||||
## 七、近期执行建议(进入 common)
|
||||
- 业务域落地顺序:IAM(用户/角色/权限)→ Settings → Upload → Notification → Schedule。
|
||||
- 分层落地:Controller(路由+DTO)→ AppService(编排)→ Core(规则)→ Infra(持久化);全链路 `site_id` 隔离。
|
||||
- 测试覆盖:补关键用例(认证登录、权限越权、租户隔离、上传、事件投递/消费)单测/集成/e2e。
|
||||
- 质量门禁:开启 ESLint/TS/coverage≥阈值 与 e2e 关键路径门禁。
|
||||
- Nginx 反代模板:固化到仓库 docs(HTTPS/超时/限流/大包/真实 IP 透传)。
|
||||
|
||||
## 八、版本说明(0.1.1)
|
||||
- 特性:Swagger JSON 分组与鉴权、配置中心接入、events 表与索引、启动可观测日志、docs 联调脚本支持 Token。
|
||||
- 破坏性变更:移除旧 swagger integrations 引用与循环依赖;文档 JSON 访问需携带 Bearer Token。
|
||||
- 升级指引:
|
||||
1) 数据库执行 `events` 建表 SQL(含 site_id/trace_id 等);
|
||||
2) 配置中心设置 `swagger.token`;
|
||||
3) docs 侧按需携带 Bearer Token(脚本已内置或通过环境变量)。
|
||||
Reference in New Issue
Block a user