Files
vscode-workbench/PLANNING/tasks/E-07-连续天数保护.md
T

1.9 KiB

E-07 · 连续天数保护(补签卡)

字段 值
项目 EnglishDrill · Desktop/english-drill
优先级 P1 · M3
建议模型 glm-5.3-flash(主)/ qwen3.8-flash(时间边界复核)
依赖 无
预估 0.5-1 天

一、背景(为什么做)

增长报告 P2 #11:现在断一天 → 连续记录归零 → 用户直接放弃(沉没成本被清零是最强的流失触发点)。而修复成本极低(一个字段 + 一次判定),对"已经坚持 30 天"的用户价值巨大。

二、目标(交付物)

  1. 补签卡规则:每月赠 1 张(月初发放或首次打卡发放,选一写明);使用后补回指定断签日 → 连续天数链恢复。
  2. 冻结卡(可选二选一实现):提前声明"明天不学"→ 该日不断记录。若两张都做,优先补签卡。
  3. 数据:字段/表记录(余额、使用记录、补签日期);连续天数计算函数适配补签逻辑。
  4. 前端:连续天数卡片显示补签入口(有断签+有卡时);补签后动画/反馈。
  5. 防滥用:只能补最近 N 天内(如 3 天)、不能补未来、不能重复补同一天、无卡不可补。

三、验收标准

  • 断签 1 天 → 使用补签卡 → 连续天数链恢复正确(跨月/跨年用例)
  • 重复补签同一天被拒;补 4 天前的断签被拒(超窗口)
  • 无卡时入口不可用;月初发卡逻辑正确(或选定的发放规则)
  • 连续天数计算在"正常/断签/补签/多次补签"四态下均正确(时间旅行用例:固定日期断言)
  • 既有 E2E 全绿 + 新增 ≥6 用例

四、边界(不许做)

  • 不做付费购买补签卡(增长期零收费约束)
  • 不改现有签到/连续统计的既有 API 契约(加字段不破坏)
  • 不做社交炫耀分享(另一张卡的空间)

五、交接

写 PROGRESS_E-07.md(含时间边界用例输出)。