|
|
@@ -0,0 +1,87 @@
|
|
|
+{
|
|
|
+ "version": 1,
|
|
|
+ "updated": "2026-10-23",
|
|
|
+ "note": "任务池(T13 盘点补充)。T01-T14 历史条目因仓库迁移丢失,此处从 T15 起重新建档,覆盖 T13 盘点确认的真实缺口;后续巡检补位以本文件为准。",
|
|
|
+ "tasks": [
|
|
|
+ {
|
|
|
+ "id": "T15",
|
|
|
+ "title": "规划师培训认证前端:认证中心/课程/题库管理端 + 小程序培训中心页",
|
|
|
+ "priority": "P0",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-10-22-planner-learning-assessment-gate-design.md",
|
|
|
+ "prompt": "规格文档 2026-10-22-planner-learning-assessment-gate-design.md 后端已全量落地(迁移394-401 九表 + PlannerCertificationService 认证状态机 + PlannerCertificationGuard 中央闸门 + 规划师端7接口 + 管理端26接口),但前端缺失,本任务补齐:①小程序规划师端「培训认证」中心页:展示类别(planner/nutritionist/assessor)认证状态、课程列表与学习进度(planner_courses/planner_course_progress)、考试入口(planner_exam_attempts)、线下课打卡(activity_checkins);②cfc-web 管理端三页:认证看板(审批/状态流转,对接管理端26接口)、课程管理(CRUD + 关联类别)、题库管理(题目/试卷维护);③引导计划:认证通过后 Guide.status=active 的联动说明与失败态提示。落点:cfc-frontend/pages/guide/ 新增 training 相关页面并注册 pages.json;cfc-web/src/views/ 新增 admin 认证管理页 + 路由 + perm 配置;utils/api.js 与 cfc-web/src/api/ 增加对应封装。验收要点:后端已存在的 7+26 接口全部被前端调用;认证状态机 init/learning→exam_passed→certified 在小程序可视可操作;管理端可完成课程/题库维护与认证审批;mvn clean compile 与两前端 node --check/build 通过;不触碰后端 Java 代码(除非发现接口缺口,需先回来汇报)。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T16",
|
|
|
+ "title": "后台多渠道发货对话框:按 deliveryType 切换快递/同城/自提/虚拟商品",
|
|
|
+ "priority": "P1",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-10-22-fulfillment-multi-mode-design.md",
|
|
|
+ "prompt": "规格 2026-10-22-fulfillment-multi-mode-design.md:管理端发货要对齐微信小程序后台四种方式——快递 logistics_type=1 / 同城配送 2(ProductOrder.deliveryMethod 的注释已含 6=同城配送)/ 用户自提 4(不再跳过微信同步)/ 虚拟商品 3(支付成功自动发货 autoShipVirtualOrder 幂等 fail-open)。现后端已具备 ship(orderNo, shipType, ...) 与 WechatService.uploadShippingInfo 按 logisticsType 1/2/3/4 分流;缺口在 cfc-web 发货对话框仍是旧的仅快递/自提二态(OrderManage.vue / OrderDetail.vue 中 deliveryMethod==2 才显示自提)。本任务:①OrderManage.vue 发货对话框按订单 deliveryMethod 切换表单字段(快递=物流公司+单号;同城配送=配送公司+运单;自提=仅确认提示,仍同步微信 logisticsType=4;虚拟商品=展示自动发货状态,按钮置灰并说明);②OrderDetail.vue 配送方式展示扩展为 1/2/3/4/5/6 全编码可读文案与图标;③确认发货后子订单明细同样是微信对照 logisticsType 传参。落点:cfc-web/src/views/admin/OrderManage.vue、OrderDetail.vue,必要时改 src/api/。验收要点:四类订单发货表单正确切换且微信同步参数类型正确(同城走 logistics_type=2 需单号公司、自提=4 无单号、虚拟=3 自动发货不弹表单);deliveryMethod=6 的订单显示「同城配送」而非「快递」;vue-cli-service build SUCCESS;微信 upload_shipping_info URL 带 /wxa 前缀;不改后端接口签名。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T17",
|
|
|
+ "title": "报告快速分析:Redis 每日频控(免费1次/日)+ 付费多轮 + 配额联动",
|
|
|
+ "priority": "P1",
|
|
|
+ "module": "backend",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-09-10-report-quick-analyze-design.md",
|
|
|
+ "prompt": "规格 2026-09-10-report-quick-analyze-design.md 与扩展版 2026-09-13-report-quick-analyze-extend-design.md:报告详情页快速分析需免费版每日 1 次 Redis 计数、付费版多轮,复用 chat_graph + AiGateway/langgraph,LangGraph 零改动。现状:后端已有 POST /api/chat/report/analyze(AIChatController#report/analyze,与 /chat/send 共用 buildChatInputs),前端 report-detail.vue 已接入报告反馈入口,但「每日限次」与「付费多轮」尚未落地(代码检索未发现 reportAnalyzeLimit/多轮配额逻辑)。本任务:①引入 Redis 依赖与配置(application.yml 已有 redis 配置则复用),新增 ReportAnalyzeQuotaService:免费用户每日 1 次(key=report:analyze:{userId}:{yyyyMMdd},INCR+EXPIRE),会员按 membership levels features/maxDailyAnalyze 配置次数;②超限返回 Result 明确 message(区分「今日已用完/请升级会员」);③前端 report-detail.vue 消费限次结果:展示剩余次数、超限弹窗带升级入口(跳 membership 页);④付费多轮在同一订单/会话内计数,不可重复刷。落点:cfc-backend/src/main/java/com/etotem/cfc/service/ 新增 QuotaService + AIChatController 限流接线;cfc-frontend/pages/health/report-detail.vue 适配。验收要点:免费用户第 2 次调用被拒且 Redis key 到期后恢复;会员次数准确;mvn clean compile 通过;新增 2-3 个纯 Mockito 单测(不依赖真实 Redis,可用模拟);API_REFERENCE 4.x 同步限次语义。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T18",
|
|
|
+ "title": "五维自检深度 AI 集成(P1-1 历史趋势解读 + P1-2 Chat 上下文注入)",
|
|
|
+ "priority": "P1",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-08-31-self-check-ai-integration-design.md",
|
|
|
+ "prompt": "规格 2026-08-31-self-check-ai-integration-design.md:P0-1 纯AI替换静态建议与 P0-2 用户点击生成健康计划已在 self-check-result.vue 落地(有 AI 解读区块、生成健康计划按钮、self-check-ai.vue AI出题页),P1-1 历史趋势AI解读与 P1-2 Chat 上下文注入未实现。本任务:①P1-1:自检结果页新增「历史趋势」区块,调后端聚合该成员历次自检得分(FiveDimensionSelfCheck 表按维度)→ 组装上下文 → 走 AiGateway/langgraph chat_graph 生成趋势解读(上升/下降/波动 + 建议),展示折线趋势与 AI 解读文字;②P1-2:AIChatController 或统一上下文中注入最近一次自检摘要(维度分 + 低分项),使 /chat/send 能针对自检结果连续对话;③后端零 LangGraph 改动,仅 Java 侧组装 prompt 上下文(遵循 AiGateway 熔断/超时/Fallback 规范)。落点:cfc-backend/src/main/java/com/etotem/cfc/service/ 新增 SelfCheckTrendService(或扩展 FiveDimensionSelfCheckService)+ AIChatController 上下文注入;cfc-frontend/pages/family/self-check-result.vue 新增趋势区块。验收要点:3 次以上自检记录可出趋势解读;无记录时优雅降级(隐藏区块或引导);Chat 提问「我上次自检哪项最低」能答对;mvn clean compile + node --check 通过;新增单测覆盖上下文拼装与历史聚合。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T19",
|
|
|
+ "title": "营养商品标注:Product 营养成分信息 + 管理端录入 + 小程序展示",
|
|
|
+ "priority": "P2",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/plans/2026-10-12-nutrition-product-tagging.md",
|
|
|
+ "prompt": "实现计划 2026-10-12-nutrition-product-tagging.md:为商城商品补齐营养成分信息(热量/蛋白质/脂肪/碳水/膳食纤维等)与营养标签,支撑饮食推荐按营养学口径排序。现状:Product 实体无营养字段(grep 无 protein/calorie 等字段),Food 实体有 nutritionTags 与营养成分(AdminFoodController 已透出)但商品侧缺失。本任务:①Product 表迁移新增 nutrition 相关列(如 calories_kcal/protein_g/fat_g/carb_g/fiber_g + nutrition_tags JSON 或复用字符串逗号分隔),同步 schema.sql 与 DatabaseInitializer 幂等迁移;②管理端 ProductEdit.vue 加营养成分表单区块(可空,保存 NULL);③小程序 product-detail.vue 展示营养成分表(无数据隐藏区块),推荐接口可按标签过滤;④商品-营养同步:如 dan 商城已有营养数据可复用则做映射导入。落点:cfc-backend schema.sql/DatabaseInitializer + Product 实体/DTO + AdminProductController 保存链路;cfc-web/src/views/admin/ProductEdit.vue;cfc-frontend/pages/discover-detail/product-detail/product-detail.vue。验收要点:mvn clean compile 通过;迁移幂等可重复执行;管理端可保存/回显营养成分;小程序无值不显示、有值正确展示;新增 2-3 个单测(DTO 映射/默认值)。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T20",
|
|
|
+ "title": "食材营养均衡分析链路落地(diet-ingredient-balance)",
|
|
|
+ "priority": "P2",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-09-13-diet-ingredient-balance-design.md",
|
|
|
+ "prompt": "规格 2026-09-13-diet-ingredient-balance-design.md 设计的是饮食均衡分析(按食材类别/营养素覆盖评估家庭成员食谱缺口),目前代码检索未发现对应实现(无 ingredientBalance 相关后端类与前端页面)。本任务按规格落地最小可用的 P0 范围:①后端新增 DietBalanceService:入参家庭成员的饮食偏好/忌口/近期打卡(diet_checkin / diet_preferences),输出五类食材(谷薯/蔬果/肉蛋奶/豆坚果/油盐)覆盖度与缺口建议(缺口建议可调用 AiGateway/langgraph 生成自然语言,失败降级为模板文案);暴露 POST /api/diet/balance 接口(Result 包装 + JWT 鉴权);②小程序新增或复用 diet 页展示均衡结果(雷达/环形 canvas 或纯文本卡片均可),入口放在 dial 打卡页或 diet-index;③涉及新表则优先 DB 迁移幂等,尽量复用现有表。落点:cfc-backend/src/main/java/com/etotem/cfc/service/DietBalanceService.java + controller/diet/DietBalanceController.java + 迁移(如需要);cfc-frontend/pages/diet/ 新增 balance 区块。验收要点:mvn clean compile 通过;接口可按成员返回均衡评分与缺口清单;无打卡数据时给出可用默认分析或友好空态;新增 2 个纯 Mockito 单测;API_REFERENCE 同步新增接口(4.x 递增)。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T21",
|
|
|
+ "title": "团队层级树形可视化完善 + 富页面推荐码清理",
|
|
|
+ "priority": "P2",
|
|
|
+ "module": "frontend",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/specs/2026-09-09-team-hierarchy-design.md",
|
|
|
+ "prompt": "规格 2026-09-09-team-hierarchy-design.md:团队层级树从下往上生长 + 团队消费额分级统计 + 直推成员消费/CF明细 + 我的推荐人展示 + 去掉富页面推荐码。现状:promotion/team.vue 已有团队统计卡(团队规模/返佣比例/档位)、L1/L2 Tab、成员列表、成长曲线与消费曲线(canvas),后端 CommissionController 已提供 team/team/list/team/consumption/my-referrer/team/tree/team/growth-curve/team/all-members-consumption-curve 等接口;「我的推荐人展示」与「树形生长图」「富页面推荐码移除」未确认落地。本任务:①team.vue 增加「我的推荐人」区块(调 /my-referrer,无推荐人时展示邀请入口);②在现有列表/曲线基础上叠加层级树形视图(用后端 /team/tree 扁平数据递归渲染成员树,方向自下而上为符合规格,如 canvas 成本高可先以嵌套列表+缩进呈现,注明偏离);③检索并移除富(profile)页面的推荐码展示(规格明确要求去掉),并核对 promotion 页不受影响;④消费分级统计(按档位聚合)若接口已存在则前端展示。落点:cfc-frontend/pages/promotion/team.vue、profile 相关页面;必要时补 utils/api.js 封装(后端接口已存在则零后端改动)。验收要点:node --check 通过;我的推荐人/无推荐人引导正确;树形视图数据与 /team/tree 响应一致;富页面不再出现推荐码;不影响现有 L1/L2 列表与曲线。"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "T22",
|
|
|
+ "title": "方案→任务全链路回流传真(plan_json.sections[].tasks 驱动任务中心,含删除/降级兜底验收)",
|
|
|
+ "priority": "P2",
|
|
|
+ "module": "fullstack",
|
|
|
+ "instance": "",
|
|
|
+ "status": "pending",
|
|
|
+ "spec": "docs/superpowers/plans/2026-09-04-plan-to-task-unification.md",
|
|
|
+ "prompt": "实现计划 2026-09-04-plan-to-task-unification.md 与本仓库 AGENTS.md 所述:plan_json.sections[].tasks 是唯一事实源,配套 plan-standard-content(2026-08-28)已有 LangGraph 输出 tasks + 正则兜底 + 存量懒加载回填 + 规划师端结构化编辑 UI。任务要求对「方案→任务」全链路做一次端到端确认与收尾:①确认 approveAndPublish 后 HealthPlan 的 plan_json.sections[].tasks 是否正确生成 tasks 实例(source_type=plan,关联 taskId),缺失时是否有懒加载回填兜底;②确认方案删除(2026-10-17 已实施)与每日实例二次删除对 plan 任务同样生效;③确认小程序任务中心 tasks.vue 对 plan 来源任务的展示(来源标签/跳转方案页/完成回写);④管理端/schema:确认无孤儿任务(方案删任务留)与重复生成(重复发布同方案不应重复插任务,应幂等);⑤如发现缺口,修复修复,不做范围外重构。落点:cfc-backend TaskPlanService/GrowthTaskService/HealthPlanService 相关链路 + cfc-frontend/pages/tasks/tasks.vue。验收要点:发布含 tasks 的方案后任务中心可见 plan 任务且不重复;删除方案后其 tasks 级联删除(含每日实例);对存量无 plan_json.tasks 的方案懒加载回填生效;mvn clean compile 通过;补 2-3 个单测覆盖幂等与级联。"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+}
|