Files
soul-yongping/.cursor/skills/new-version-analyze/SKILL.md

13 KiB
Raw Blame History

description
description
新版快速分析 Skill。甲方/第三方 AI 写的新版本逻辑不完善、接口不规范、存在逻辑冲突时使用。快速分析、体验评估、逻辑补齐、抽取需求在稳定版迭代。Use when 新版分析、版本对比、迁移分析、甲方代码分析、快速分析新版、new-soul 分析.

SKILL - 新版快速分析(甲方代码迁移)

针对「甲方/第三方用 AI 写的新版本,逻辑不完善、接口不规范、存在逻辑冲突」的场景,快速分析、抽取需求、在稳定版迭代。


1. 何时使用本 Skill

触发词 场景
新版分析版本对比迁移分析 需要系统对比 new-soul 与稳定版
甲方代码分析快速分析新版 对方改了代码,逻辑不完善、接口不规范
@new-soul 分析抽取需求 从新版抽取需求,在稳定版更新迭代

典型困境

  • 对方有改接口,但不符合规范(路由、响应格式、鉴权)
  • 存在逻辑冲突(如余额消费不写 orders、分润规则不统一
  • 纯界面需求变更,底层逻辑未考虑
  • 稳定版也有新增功能,甲方版本并未更新 → 功能对齐与取舍需明确
  • 需要在短时间内补齐完整逻辑

2. 核心原则

原则 说明
稳定版为基准 稳定版是生产环境,逻辑已验证;新版只做增量补齐
接口不以新版为准 新版接口编写必然很多没考虑(路由、鉴权、事务、分润、幂等)。接口设计必须以稳定版规范为准,按 api-dev SKILL 重新设计,不照搬新版实现
界面当需求,逻辑自己写 对方界面/交互可参考,业务逻辑按规范重写
先分析再实现 先出清单、方案、冲突表,再写代码
规范优先 接口不符合规范的一律按 api-dev/miniprogram-dev 修正
最小功能迁移 按最小功能单元迁移,每个功能迁移后都能完整运行;界面修改可先迁,大逻辑排后

接口处理方式:新版接口仅作「能力参考」(知道要什么),实现时在稳定版 soul-api 中按规范从零设计,不直接复用新版代码。


2.5 保护区域(迁移时禁止动或慎动)

以下模块是稳定版核心逻辑,新需求迁移时务必谨慎,不得影响:

保护区域 说明 处理方式
文章详情 @/# 标签 @某人、#链接标签、contentParser、onMentionTap、onLinkTagTap、存客宝对接 禁止动。迁移时不得修改 read 页的 @/# 解析与点击逻辑
分销 推荐码绑定、分润计算、referral 相关接口与订单关联 禁止动。新增功能(如余额消费)若涉及购买,必须与分销逻辑兼容,不得覆盖或冲突
支付 微信支付、pay 接口、PayNotify 回调、订单创建与状态 禁止动。余额支付等新增支付方式需在现有支付流程上扩展,不得替换或破坏原有逻辑

迁移前检查:若新版改动涉及 read 页正文、contentParser、ckb/lead、referral、pay、orders必须逐行对比,确认不覆盖保护区域。有冲突时以稳定版为准。


2.6 迁移前必做:需求评审

迁移前必须先做需求评审,评审通过后再开始迁移。

步骤 动作 产出
1 需求评审 召集评审,明确迁移范围与优先级
2 列出功能点 逐项列出:新增功能、修改功能、移除功能
3 列出样式变更 逐项列出:布局、配色、文案、交互变化
4 逐一确认 每个功能点、每项样式变更经确认后再迁
5 开始迁移 评审通过后,按确认清单逐项迁移

产出文档开发文档/新版迁移-需求评审清单.md(功能点 + 样式变更表,含确认状态)


2.7 迁移顺序(最小功能 + 可运行优先)

顺序 类型 说明
先迁 界面修改 纯 WXML/WXSS/布局、文案、样式,不涉及新接口或新逻辑 → 可直接迁移
后迁 大逻辑 涉及新接口、DB、事务、支付、分润等 → 排后,逐个迁移

原则

  • 最小功能拆:一个功能 = 一个可独立运行、可验证的单元
  • 每次迁移后必须能完整运行:迁完即测,不积压半成品
  • 界面优先:先迁界面类,快速见效;大逻辑逐个排期,降低风险

3. 功能对齐与取舍(必做)

背景:稳定版有新增功能,甲方版本未同步;甲方版本也有新功能。需先做双向对齐,再决定取舍。

3.0 功能三向分类

分类 说明 取舍原则
仅稳定版有 你已开发,甲方未更新 保留,不因迁移而删除
仅新版有 甲方新增,稳定版无 按需求评估:有价值则迁(界面当需求,逻辑重写);无价值则弃
两者共有 同一功能,实现不同 以稳定版为准;若新版交互更好,可只迁界面/交互,逻辑仍用稳定版

3.0.1 取舍决策表(产出)

功能 分类 取舍 理由
链接人与事 仅稳定版有 保留 已上线,甲方无
钱包/余额 仅新版有 迁移 有业务价值,按规范重写
首页精选展开 两者共有 迁界面、逻辑用稳定版 新版交互可参考,数据源用 book/recommended 或 hot

产出:在功能差异清单中增加「分类」「取舍」「理由」三列。


4. 分析流程(五步)

4.1 第一步快速摸底12 小时)

动作双向对比 new-soul 与稳定版,建立差异清单(含功能三向分类)

对比维度 产出
页面 新增/移除/改版页面列表
接口 新增/修改/删除的 API 列表
字段 请求/响应/DB 字段差异
功能分类 仅稳定版有 / 仅新版有 / 两者共有
标注 每个变更: 可用 / ⚠️ 不完整 / 逻辑错误

产出文档开发文档/新版迁移-功能差异清单.md(可复用已有迁移文档补充)


4.2 第二步:逻辑分层检查

对每个功能按三层过一遍,避免漏改:

┌─────────────────────────────────────┐
│ 界面层WXML/WXSS/JS、事件、数据绑定  │  ← 对方常只改这里
├─────────────────────────────────────┤
│ 接口层:调哪个 API、入参、返回、错误   │  ← 易漏:参数、鉴权、响应格式
├─────────────────────────────────────┤
│ 数据层DB 表、字段、事务、幂等       │  ← 易漏orders、分润、状态机
└─────────────────────────────────────┘

检查项

  • 界面改了,接口是否已提供且规范?
  • 接口改了DB/事务是否已同步?
  • 是否有逻辑冲突(如 consume 不写 orders

4.3 第三步:体验评估

维度 检查点
交互 加载态、空态、错误态是否完整
反馈 操作成功/失败是否有提示
边界 未登录、余额不足、网络失败等处理
一致性 与稳定版其他页面的风格、文案是否统一

产出:在差异清单中增加「体验评估」列


4.4 第四步:接口规范与冲突清单

默认立场:新版接口不照搬。从新版只提取「需要什么能力」,在稳定版按 api-dev 规范重新设计

接口规范检查(以 api-dev SKILL 为准):

维度 稳定版约定 检查
路由分组 miniprogram / admin / db 小程序是否只调 miniprogram
响应格式 { success, data, message } 是否统一
鉴权 Bearer token、openId 是否按约定
命名 REST、资源名 是否统一

逻辑冲突识别

冲突类型 示例 处理原则
数据不一致 余额扣了不写 orders 同一事务内补齐
规则不统一 微信支付有分润、余额消费没有 统一规则
字段语义冲突 同一字段不同含义 定死语义,全项目统一
幂等缺失 回调重复执行 加幂等(订单号去重)

产出文档开发文档/新版迁移-接口规范与冲突清单.md


4.5 第五步:抽取需求,排期迭代

动作

  1. 从差异清单中抽取「可迁移需求」
  2. 排除:技术债、规则不清、与稳定版冲突的部分
  3. 最小功能拆分,保证每个任务迁移后能完整运行
  4. 排期顺序:界面修改优先 → 大逻辑排后P0逻辑不通→ P1功能缺失→ P2优化
  5. 写入需求汇总,形成迁移任务清单

产出

  • 开发文档/1、需求/需求汇总.md 追加需求
  • 开发文档/新版迁移-开发方案与清单.md 或等价迁移清单

5. 产出物模板

5.1 功能差异清单(表格)

功能 分类 取舍 页面 接口 数据 甲方实现 体验 迁移动作
链接人与事 仅稳定版有 保留 - - - - - 不删
钱包 仅新版有 迁移 wallet balance/* user_balance ⚠️ 不完整 待补空态 迁界面+补 consume 写 orders

5.2 接口规范与冲突清单(表格)

接口 甲方实现 规范要求 冲突说明 处理
POST balance/consume 只扣余额 扣余额+写 orders check-purchased 判未购买 重写 consume

5.3 需求评审清单(迁移前必产出)

类型 说明 确认
功能点 钱包页 新增余额、充值、交易记录
功能点 我的页余额入口 第 4 项统计,点击进 wallet
样式变更 首页精选展开 默认 3 条,可展开更多
样式变更 Banner 按钮文案 「开始阅读」→「点击阅读」

确认:每个项经评审确认后再迁;未确认不迁。

5.4 功能闭环 Checklist每功能必过

□ 界面:页面、交互、数据绑定
□ 接口API 存在、参数正确、响应格式规范
□ 数据DB/事务/幂等
□ 边界:未登录、余额不足、网络失败
□ 三端:小程序+后端+管理端(如需)是否都改到
□ 保护区域:未动 @/#、分销、支付 核心逻辑;若涉及则在原逻辑上扩展

6. 与其它 Skill 的衔接

阶段 衔接 Skill
分析完成,开始实现 change-checklist:变更完成必过三端关联检查
实现完成,经验沉淀 assistant-doc-sync:吸收经验、同步需求文档
新增需求需三端规划 product-manager:加个需求 → 三端分析 → 指派
跨端功能开发 role-flow-control:后端先行 → 小程序 → 管理端
需求评审 team-meeting:开会、需求评审 → 各角色发言 → 形成决议

7. 执行顺序(单次分析)

  1. Read 本 Skill 完整内容
  2. 功能对齐与取舍:先做三向分类(仅稳定版有/仅新版有/两者共有),产出取舍决策表
  3. 快速摸底:双向对比 new-soul 与稳定版,产出/更新功能差异清单(含分类、取舍列)
  4. 逻辑分层:每个功能过三层(界面/接口/数据)
  5. 体验评估:补充空态、错误态、边界处理
  6. 接口规范与冲突:产出接口规范与冲突清单
  7. 抽取需求:写入需求汇总,形成迁移任务清单
  8. 需求评审(迁移前必做):列出功能点 + 样式变更,逐一确认,产出评审清单
  9. 回复用户:给出分析摘要 + 文档路径 + 建议执行顺序;迁移须在需求评审通过后开始

8. 文档写入位置

文档 路径
功能差异清单 开发文档/新版迁移-功能差异清单.md
接口规范与冲突 开发文档/新版迁移-接口规范与冲突清单.md
迁移方案/清单 开发文档/新版迁移-开发方案与清单.md新版功能迁移到稳定版方案.md
需求评审清单 开发文档/新版迁移-需求评审清单.md(功能点 + 样式变更,含确认状态)
需求汇总 开发文档/1、需求/需求汇总.md

若已有同名文档,在其基础上追加或更新,不重复创建。


9. 一句话总结

迁移前必做需求评审:列出功能点 + 样式变更,逐一确认后再迁。先做功能对齐与取舍,评审通过后按最小功能迁移;界面修改先迁、大逻辑排后;@/#、分销、支付为保护区域;用五步分析产出差异清单、接口冲突表、评审清单,再按 checklist 逐功能闭环。