feat(ai): complete v3.2 risk watch agent

This commit is contained in:
2026-07-08 19:57:38 +08:00
parent deebc5404a
commit e949d0f5d3
10 changed files with 445 additions and 30 deletions

View File

@@ -68,11 +68,15 @@ V2.4 已将高增长和核心业务领域从“AppData 主写 + 关系表同步
- V2.7.4 已新增管理驾驶舱和治理设置,聚合关系表指标并维护治理字典。
- V2.7.5 已新增协作治理 RBAC/audit adapter避免新增模块绕开服务端权限和审计边界。
- V2.8 新增运维交付物集中在 `scripts/``.github/workflows/deploy-production.yml``deploy/monitoring/``docs/runbooks/``docs/deployment.md``docs/production-readiness.md`
- V3.1 Prototype Decompose Agent 已落地:后端 `/api/v1/ai/decompose`、前端产品方案 Tab 拆解入口、对账报告、去重、采纳草案、AI 估时、推荐负责人和无需求ID分组均已接入。
- V3.2 Risk Watch Agent 已落地:服务端小宝 summary 刷新后按 policy 排入 `xiaobao.ai.interpret`AI 解读只写 `xiaobao_risk_insights`V2.2 小宝快读返回最新 generated insight前端优先展示关系表 AI 解读。
- AppData 退场、RBAC/审计、性能、小宝后台化、协作治理和生产发布都通过 production readiness 证据项追踪,避免把运维稳定版误当成一次性口头验收。
### 已完成(按时间倒序)
**2026-07-08**
- V3.2 completed Risk Watch Agent read closure: `/api/v1/v2.2/xiaobao-warning` now attaches the latest generated relation-table AI insight, and the frontend merges relation-backed insights ahead of legacy AppData insight cache.
- V3.1 status corrected to completed: prototype decomposition already has backend AI calls, frontend decomposition buttons, report modal, dedupe, adoption, AI estimates, assignee recommendations, and no-requirement grouping.
- V2.8 added PostgreSQL backup, fresh DB restore with explicit overwrite confirmation, and `server_data` volume backup automation.
- V2.8 added release smoke suite and wired GitHub Actions deployment verification to runtime version, frontend root, products, V2.2 read path, and AI config checks.
- V2.8 added optional monitoring profile with Prometheus, Grafana, Loki, Promtail, postgres-exporter, node-exporter, cAdvisor, and blackbox-exporter.
@@ -239,11 +243,11 @@ V2.5 完成后的保留边界:`GET /api/v1/data/:key` 仍可读历史 JSONX
详细 Agent 规范见 `agent-spec.md`。本节只列规划,不重复 Agent 实现细节。
### V3.1 — Prototype Decompose Agent首个 Agent
### V3.1 — Prototype Decompose Agent已完成
**目标**:从产品方案的原型 + 关联需求,拆解出开发任务草案 + 测试用例草案原型中明确可拆但没有匹配到关联需求的内容按无需求ID分组进入任务/用例,不补需求池。
**已完成的数据底座**2026-06
**已完成**
- DevTask / TestCase 加 references[] + aiDraft + aiDraftAt
- 创建表单加「原型批注」字段
- 列表中 AI 草案视觉区分(紫色边 + 徽章)
@@ -251,35 +255,71 @@ V2.5 完成后的保留边界:`GET /api/v1/data/:key` 仍可读历史 JSONX
- agent-spec.md / glossary.md 文档落地
- 约定:原型链接 = 产品方案 (VersionPlan type=product) 已完成计划的 resultUrl不在 Version 上独立存储
- V2.4 已完成 DevTask/TestCase/Bug 的 `versionId` 版本主归属和领域主写AI 写入可直接走版本级领域 API。
**待实现**
1. 后端 `AiGateway` + `PrototypeDecomposeService`NestJS module
2. 前端「AI 拆解任务和用例」按钮(产品方案 Tab
3. 对账报告组件(弹窗呈现:完美对应 / 需求未见原型 / 无需求ID分组 / 含糊)
4. 用户确认后批量创建 DevTask + TestCase 草案
5. AiLog 表调用记录、token 计量、用时)
- 后端 `AiGateway` / `AiService.decompose` / `POST /api/v1/ai/decompose` 已落地。
- 前端产品方案 Tab 已有「AI 拆解开发任务 / AI 拆解测试用例」入口。
- 对账报告弹窗、重复草案过滤、用户确认后批量创建 DevTask/TestCase 草案已落地。
- AI 估时、推荐负责人、无需求ID分组和任务类型自动入库策略已落地。
- `AiLog` 表已建;调用级日志目前通过返回 `meta`、计划日志和运维慢请求/队列监控追踪,后续若要完整审计每次 AI 调用再单独接写入。
**MVP 范围限制**
- 不自动分配 assignee留给用户在草案上手填
- 不做"上一版基准 diff"(按 decisions.md #17 决议)
- 单 Agent 单 Round不做多 Agent 编排
### V3.2 — 小宝预警 / Risk Watch Agent
### V3.2 — 小宝预警 / Risk Watch Agent(已完成)
小宝预警以版本发版风险为核心,先通过规则引擎计算风险分、趋势、静默风险、预计可发日期和置信度,再由 Risk Watch Agent 自动解释高风险版本。第一版已落地页面触发模式:打开 `/xiaobao-warning` 时保存当天快照,并在满足触发条件时自动生成 AI 解读。
小宝预警以版本发版风险为核心,先通过规则引擎计算风险分、趋势、静默风险、预计可发日期和置信度,再由 Risk Watch Agent 自动解释高风险版本。
当前不做后台定时 Agent。后续如果需要主动通知再在已有 `xiaobao-risk-snapshots``xiaobao-risk-insights` 基础上增加定时巡检与消息推送。
当前完成边界:
- 领域写入标记版本风险 summary dirty并排入 `xiaobao.summary.refresh` 后台任务。
- `XiaobaoRiskService.refreshSummary()` 从关系表重算确定性风险结果,并交给 `XiaobaoAiService.evaluateSummary()` 按 policy 判断是否入队。
- `xiaobao.ai.interpret` worker 重新读取当前 summary跳过过期 signature调用 `AiService.interpretRisk()`,只写 `xiaobao_risk_insights` 缓存。
- 触发策略:`on_track` 不触发;`at_risk``likely_delayed``blocked` 自动触发;`attention` 当前服务端只在临近发版且仍有未完成工作时触发。
- 缓存策略exact signature 复用、6 小时 cooldown、风险等级升级可绕过 cooldown。
- V2.2 小宝快读返回最新 generated insight前端优先展示关系表 AI 解读,再兼容旧 AppData insight cache。
**Schedule Suggest Agent**:基于成员负载和历史耗时,建议下一阶段任务分配,仍作为后续候选
当前不继续做后台定时巡检或额外主动推送;已有 `risk_alert` 通知保持现状。若后续需要“主动每日巡检 + 消息推送”,另起阶段,不塞进 V3.2
**多 Agent 协作设计**:等 Risk Watch 与 Schedule Suggest 都稳定后再设计编排策略
**Schedule Suggest Agent**:基于成员负载和历史耗时,建议下一阶段任务分配,仍作为后续候选,本次不执行
### V3.3 — 其他场景候选
**多 Agent 协作设计**:本次不执行。等未来确实引入排期 Agent 后再设计编排策略。
### V3.3 — 其他场景候选(暂不执行)
1. 需求智能分类(自动归档到产品 / 项目)
2. 健康度智能解读(数据指标 → 自然语言报告)
3. 需求转任务(需求采纳后一键生成 DevTask 草稿)
### V3.4 — Business Analysis Agent下一阶段设计已确认
**目标**:把 `/wenfan-xiaobao` 从内置帮助问答升级为业务数据分析对话,并在产品、项目、版本详情页提供带上下文的智能分析入口。用户可以围绕产品、项目、版本、需求、部门和成员进行单维或多维提问,系统返回 Insight Card、图表、分析报告、可点击证据和连续追问。
**设计边界**
- 只读 Agent不修改业务实体、不创建草案、不触发状态流转。
- 使用 Semantic Layer 和 Metric Catalog 承接自然语言到业务指标的映射。
- Metric Catalog 必须记录 metric version便于未来算法口径变化后复现历史分析。
- Analysis Strategy 分为 Template Strategy、Rule Composition StrategyDeterministic和 AI Planning Strategy。
- AI Planning 只生成 `AnalysisPlan` 建议Analysis Plan Processor 校验并规范化后Metric Engine 才能执行。
- Metric Engine 输出 `MetricResult`ChartSpec Builder、Insight Engine、Report Builder、Follow-up Builder 并行消费。
- ChartSpec 为平台统一契约,前端第一版用 ECharts Renderer不把 ECharts option 暴露为后端契约。
- AI Analysis Design System 采用 Apple Vision 风格:大留白、大圆角、轻阴影、半透明材质、数字优先、折线面积渐变、横向圆角柱状、少颜色、无大屏炫光。
**MVP 模板候选**
1. 版本风险排行
2. 项目/版本完成趋势
3. 逾期事项分布
4. 产品需求状态分布
5. 需求完成趋势
6. 需求来源/类型占比
7. 部门负载排行
8. 成员待办排行
9. 成员投入排行
10. Bug 严重度分布
11. 测试通过率趋势
12. 加班原因占比 / 加班排行
完整设计见 `docs/superpowers/specs/2026-07-08-business-analysis-agent-design.md`
### 落地约束
- **不直接动数据**:所有 Agent 写入必须带 `aiDraft: true`,用户编辑后才转正