Files
wwjcloud-nest-v1/MILESTONE-0.1.1.md
2025-08-29 00:08:18 +08:00

57 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# WWJCloud 框架里程碑 0.1.1
## 一、全局评估(当前基线)
- 分层清晰config配置与适配、core通用基础/抽象、vendor第三方适配、common业务域依赖方向 App→common→core→vendor 合规。
- 配置中心落地ConfigCenterService 统一读取与开关(如 swagger.enabled、swagger.token控制器与 UI 解耦;动态配置具备基础能力。
- API 文档输出:仅输出 JSON三端点分组全量/admin/frontend鉴权改为 Bearer Tokenswagger.token
- 观测与健康Winston 日志、Terminus 健康(/healthz /readyz /startupz、Metrics 基础可用。
- 任务与事件Outboxevents表、调度与重试字段/索引齐备;队列/事件基础设施在位。
- 安全基线全局守卫、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 反代模板:固化到仓库 docsHTTPS/超时/限流/大包/真实 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脚本已内置或通过环境变量