Bladeren bron

docs(openspec): add BACKLOG.md + mark init-baseline verifications done

- 新增 openspec/BACKLOG.md:跨 change 的待办看板,按阶段 A/B.1/B.2/C 编排
- 勾选 init-project-baseline tasks 5.1-5.3(目录/文档结构验证通过)
- 5.4 编译冒烟阻塞在本机未装 Maven,已标注

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
malk 2 weken geleden
bovenliggende
commit
d847d2b677
2 gewijzigde bestanden met toevoegingen van 78 en 4 verwijderingen
  1. 74 0
      openspec/BACKLOG.md
  2. 4 4
      openspec/changes/init-project-baseline/tasks.md

+ 74 - 0
openspec/BACKLOG.md

@@ -0,0 +1,74 @@
+# mjava-ai 待办看板
+
+> 更新:2026-04-18
+> 范围:跨 change 的待办池 + 每 change 内部进度汇总
+> 用途:按优先级顺序执行;完成一项立即更新对应 `tasks.md` 和本文件
+
+## 执行阶段
+
+| 阶段 | 内容 | 当前状态 |
+|------|------|---------|
+| A | 开发规范 + 待办清单(文档层) | 进行中 |
+| B.1 | 代码优化:补全 mjava 模块 API 能力 | 待启动 |
+| B.2 | 代码优化:待办功能添加(非 pro/com 的基座增强) | 待启动 |
+| C | mjava-pro / mjava-com 两个专项子模块开发 | 待 B 完成后启动 |
+
+## 阶段 A 待办
+
+| ID | 任务 | 状态 |
+|----|------|------|
+| A1 | 开发规范 11 章(mjava-baseline.md)写到 §3.5 审计、§3.4 Client/Service 分层 | ✅ 完成 |
+| A2 | yida-serverside.md 从原 CLAUDE.md 拆出 | ✅ 完成 |
+| A3 | 后端/CLAUDE.md 改为总索引 | ✅ 完成 |
+| A4 | 上层 claude/CLAUDE.md 同步索引 | ✅ 完成 |
+| A5 | server 目录分层 cur/pre | ✅ 完成 |
+| A6 | mjava-ai 仓库 git init + 首次 commit + push | ✅ 完成 |
+| A7 | 敏感文件 .gitignore 防护 + .example 模板 | ✅ 完成 |
+| A8 | mjava-pro / mjava-com 专项提案四件套 | ✅ 完成 |
+| A9 | init-project-baseline tasks 5.1-5.3 验证 | ✅ 完成 |
+| A10 | **执行 `/opsx:archive extract-dingtalk-standard-api`**(全部 tasks 已 `[x]`) | ⏳ 等用户触发 |
+| A11 | `brew install maven` 后补做 init-baseline 任务 5.4(编译冒烟) | ⏳ 阻塞在本机未装 Maven |
+| A12 | `/Users/malk/Desktop/Tech/claude/` 是否 git init(规范文档版本化)? | ❓ 待用户决定 |
+
+## 阶段 B.1 — 补全 mjava 模块 API 能力
+
+现状观察:`mjava/service/{vendor}/` 下每个 vendor 已有 `Client` + `Client_{Domain}` 的骨架,但官方新 API 不断增加,部分 endpoint 可能缺失。
+
+| ID | 任务 | 备注 |
+|----|------|------|
+| B1.1 | 盘点钉钉 Client 覆盖度(对照钉钉开放平台官方 API 列表) | 输出缺失 endpoint 清单 |
+| B1.2 | 盘点 YDClient 覆盖度 | 对照宜搭 API 文档 |
+| B1.3 | 盘点 BSClient(北森)覆盖度 | 对照北森 API 文档 |
+| B1.4 | 盘点其余 vendor(teambition / fxiaoke / h3yun / vika / xbongbong / feishu / ekuaibao)覆盖度 | 低优先级,按需补 |
+| B1.5 | 按 §3.4 规范补缺失 endpoint:**方法签名必须兼容官方全部参数,禁止为图省事删减字段** | 每个 vendor 一个 PR |
+| B1.6 | Client 新增方法的 Service 层编排(如需批量 / 分页聚合) | 按需 |
+
+## 阶段 B.2 — 待办功能添加(基座增强)
+
+不依赖 pro/com 专项的基座功能增强,都先做在 `mjava/` 基座里,让三个现存客户模块可立刻受益。
+
+| ID | 任务 | 需求出处 | 备注 |
+|----|------|---------|------|
+| B2.1 | `UtilHttp` 内部落实 §3.5 审计日志(请求/响应脱敏 + latency + success) | mjava-baseline §3.5 | 脱敏规则:token/appSecret/password/aesKey/privateKey → `***` |
+| B2.2 | `UtilToken` 支持 namespace 参数(为 mjava-pro 租户隔离铺路) | mjava-pro design.md | API:`put(namespace, key, value, ttl)`;回退模式保留无 namespace 版本 |
+| B2.3 | `CallerRateLimiter` 抽象(通用限流组件) | mjava-com design.md | Guava RateLimiter 封装;也可服务 pro 的租户级限流 |
+| B2.4 | 完成 `add-observability-foundation` tasks 4.2 / 5.2(生产冒烟) | observability change | 需 Maven |
+| B2.5 | 把 `Client` 方法兼容全参数的**代码审查清单**(checklist)沉淀进 `/opsx:propose` 的模板 | 用户规范要求 | 避免将来 PR 漏传字段 |
+| B2.6 | 请求监听的 trace 输出示例(配合 `TraceIdFilter` 展示完整链路格式) | baseline §3.5 / §8 | 文档用 |
+
+## 阶段 C — 专项子模块开发(最后启动)
+
+| 专项 | tasks.md 进度 |
+|------|--------------|
+| `add-mjava-pro/` | 0 / 30 |
+| `add-mjava-com/` | 0 / 30 |
+
+按 tasks.md 依序走 `/opsx:apply`。
+
+## 进度总览(累计)
+
+```
+✅ 已完成:~20 项(初始化 + 规范 + 归档准备 + 验证)
+⏳ 阻塞:2 项(Maven 未装)
+📋 代办:~66 项(B.1 清单待出 + B.2 六项 + C 两专项 60 项)
+```

+ 4 - 4
openspec/changes/init-project-baseline/tasks.md

@@ -21,8 +21,8 @@
 
 ## 5. 验证
 
-- [ ] 5.1 `ls /Users/malk/server/cur/mjava-ai/openspec/specs/` 含 `project-baseline.md`
-- [ ] 5.2 `ls /Users/malk/Desktop/Tech/claude/后端/` 含 `CLAUDE.md` `mjava-baseline.md` `yida-serverside.md`
-- [ ] 5.3 `ls /Users/malk/server/` 只剩 `_Tool cur pre`
+- [x] 5.1 `ls /Users/malk/server/cur/mjava-ai/openspec/specs/` 含 `project-baseline.md`
+- [x] 5.2 `ls /Users/malk/Desktop/Tech/claude/后端/` 含 `CLAUDE.md` `mjava-baseline.md` `yida-serverside.md`
+- [x] 5.3 `ls /Users/malk/server/` 只剩 `_Tool cur pre`
 - [ ] 5.4 `mvn -pl mjava-mcli -am clean compile`(在 `/Users/malk/server/cur/mjava-ai/` 下)通过
-      — 可选验证,确认目录搬移后 maven 依赖完好
+      — **阻塞**:本机未装 Maven(见 memory `todo_install_maven.md`);`brew install maven` 后补做