{
  "schema_version": "2.0",
  "id": "D-2",
  "name": "单词闯关 · 挑词",
  "module": "练习-看英选中",
  "ui_family": "practice",
  "viewport": {
    "width": 390,
    "height": 844
  },
  "purpose": "六题型共用挑词，不截断范围，所选内容快照进入对应玩法。",
  "entry": {
    "preconditions": [
      "已登录、已有当前课本；无课本入口先共用选书",
      "演示数据与API契约分开"
    ],
    "rule_status": "confirmed",
    "from": [
      "练习首页及本模块上一页",
      "共用准备或来源报告",
      "同页演示状态"
    ]
  },
  "ui_elements": [
    {
      "id": "D-2.ui.0",
      "label": "当前题型",
      "type": "control",
      "rule_status": "proposed"
    },
    {
      "id": "D-2.ui.1",
      "label": "出题顺序",
      "type": "control",
      "rule_status": "proposed"
    },
    {
      "id": "D-2.ui.2",
      "label": "全选／反选／没练过的",
      "type": "control",
      "rule_status": "proposed"
    },
    {
      "id": "D-2.ui.3",
      "label": "词条试听",
      "type": "control",
      "rule_status": "proposed"
    },
    {
      "id": "D-2.ui.4",
      "label": "所选数",
      "type": "control",
      "rule_status": "proposed"
    },
    {
      "id": "D-2.ui.5",
      "label": "开始对应题型",
      "type": "control",
      "rule_status": "proposed"
    }
  ],
  "interactions": [
    {
      "trigger": "选择／取消词",
      "effect": "保留题型及选择；没练过的按完成的练习记录查询，不按打印推断",
      "destination": "本页",
      "condition": "当前操作可用",
      "rule_status": "proposed",
      "payload": [
        "mode与来源",
        "课本／课文ID",
        "选择的稳定内容ID及固定题序",
        "sessionId、阶段、首答与再练结果",
        "当前题／分组及剩余时间"
      ],
      "source": "原UE D-1～D-14及用户本轮确认；未确认补全标proposed",
      "prototype_behavior": "本地样例可操作；标准音、录音、评测、词库、错题及云记录未接入",
      "id": "D-2-I-1"
    },
    {
      "trigger": "切出题顺序",
      "effect": "按教材顺序或开始时一次打乱；答题过程中不重新洗牌",
      "destination": "本页",
      "condition": "当前操作可用",
      "rule_status": "proposed",
      "payload": [
        "mode与来源",
        "课本／课文ID",
        "选择的稳定内容ID及固定题序",
        "sessionId、阶段、首答与再练结果",
        "当前题／分组及剩余时间"
      ],
      "source": "原UE D-1～D-14及用户本轮确认；未确认补全标proposed",
      "prototype_behavior": "本地样例可操作；标准音、录音、评测、词库、错题及云记录未接入",
      "id": "D-2-I-2"
    },
    {
      "trigger": "开始对应题型",
      "effect": "冻结所选词并进入该题型；读单词走共用朗读",
      "destination": "对应D-9／D-10／D-11／D-12／D-19／D-3",
      "condition": "所选非空、题库可生成无歧义题",
      "rule_status": "confirmed",
      "payload": [
        "mode与来源",
        "课本／课文ID",
        "选择的稳定内容ID及固定题序",
        "sessionId、阶段、首答与再练结果",
        "当前题／分组及剩余时间"
      ],
      "source": "原UE D-1～D-14及用户本轮确认；未确认补全标proposed",
      "prototype_behavior": "本地样例可操作；标准音、录音、评测、词库、错题及云记录未接入",
      "id": "D-2-I-3"
    },
    {
      "trigger": "返回",
      "effect": "保留词表与选择回选单元",
      "destination": "D-1",
      "condition": "当前操作可用",
      "rule_status": "proposed",
      "payload": [
        "mode与来源",
        "课本／课文ID",
        "选择的稳定内容ID及固定题序",
        "sessionId、阶段、首答与再练结果",
        "当前题／分组及剩余时间"
      ],
      "source": "原UE D-1～D-14及用户本轮确认；未确认补全标proposed",
      "prototype_behavior": "本地样例可操作；标准音、录音、评测、词库、错题及云记录未接入",
      "id": "D-2-I-4"
    }
  ],
  "back_behavior": {
    "destination": "按mode=text/read或客观题型返回真实来源",
    "preserve": [
      "选择与筛选",
      "题序及当前项",
      "首答与再练结果",
      "最高有效分和音频引用",
      "反馈剩余时间"
    ],
    "rule_status": "proposed"
  },
  "data_source": [
    {
      "name": "教材词条、义项、标准音、课文内容",
      "contract_status": "pending"
    },
    {
      "name": "录音／语音评测／练习记录／错题服务",
      "contract_status": "pending"
    }
  ],
  "data_model": [
    {
      "id": "draft",
      "type": "object",
      "description": "按课本和玩法来源隔离范围与选择",
      "rule_status": "proposed"
    },
    {
      "id": "session",
      "type": "object",
      "description": "id/mode/items/phase/index/firstAnswers/retryAnswers/completed/cancelled；固定题序",
      "rule_status": "proposed"
    },
    {
      "id": "attempt",
      "type": "object",
      "description": "itemId/answer/firstStatus/correct/hint/skipped/activeDuration/audioRef/requestId",
      "rule_status": "proposed"
    },
    {
      "id": "readingItem",
      "type": "object",
      "description": "type:word/phrase/sentence、历次有效评分、最高分、其对应音频；删录音不删分",
      "rule_status": "proposed"
    },
    {
      "id": "report",
      "type": "object",
      "description": "首次correct/wrong/hint/skipped/unattempted；再练；reading有效平均分与未读；saveStatus",
      "rule_status": "proposed"
    },
    {
      "id": "wrongCandidates",
      "type": "array",
      "description": "五种客观题首答错误／跳过的待收录事件，sessionId+itemId+mode+book+source；未触达、提示项和朗读低分不擅自收录",
      "rule_status": "proposed"
    }
  ],
  "states": [
    {
      "id": "ready",
      "description": "本页ready状态",
      "rule_status": "proposed"
    },
    {
      "id": "empty",
      "description": "空状态不自动选入内容，主操作禁用；目录空状态可返回。",
      "rule_status": "proposed"
    },
    {
      "id": "insufficient",
      "description": "排除重复义项、等价词及错误干扰项后不足选项，明确提示换词／换题型，不重复凑选项。",
      "rule_status": "proposed"
    }
  ],
  "prototype_states": [
    {
      "id": "ready",
      "label": "默认主流程",
      "scope": "prototype_only"
    },
    {
      "id": "empty",
      "label": "未选择单词",
      "scope": "prototype_only"
    },
    {
      "id": "insufficient",
      "label": "题目暂时无法生成",
      "scope": "prototype_only"
    }
  ],
  "default_preview_state": "ready",
  "user_confirmed_rules": [
    {
      "id": "P-RANGE",
      "description": "六种单词闯关整单元选择后挑词，不自动截断数量或剔除长词。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-TEXT",
      "description": "课文跟读选课文，再挑选课文中的单词、短语或句子；不是强制整篇逐句跟读。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-RECORD",
      "description": "点击录音，停顿后结束，可手动结束；有效反馈留5秒后自动推进，重读或回放暂停推进。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-REVIEW",
      "description": "客观题不限时；首答错误或跳过在本轮末尾再练一次，首次正确率与再练结果分开。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-MATCH",
      "description": "中英连线点英文再点中文，每组最多4对，尾组不凑词。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-FILL",
      "description": "字母填空使用候选字母池，支持点击或拖入；每词缺1～2字母，提示完成不算独立正确。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-SCORE",
      "description": "朗读取本次最高有效分，低于80分需要再读；无声、录音或评测失败不计0分。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-AUDIO",
      "description": "朗读录音随练习记录保存，可删除；分享只成绩，不公开录音。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "P-WRONG",
      "description": "五种客观练习首答错误与跳过可收录错题本，记录题型来源；朗读低分独立。",
      "rule_status": "confirmed",
      "source": "用户2026-10-12确认；课文跟读与字母池按用户更正"
    },
    {
      "id": "GROWTH-WORD",
      "description": "积累单词统计成功导出的练习卷、已提交听写／客观练习、有效朗读涉及的词库单词，跨课本去重；答案卷不计，短语句子不拆词；表示接触，不表示掌握。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "GROWTH-CORRECT",
      "description": "同一稳定错题首次改对计一次；同轮末尾再练答对也计入；首答正确率保持原成绩。反复错后再对不重复累计。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "KEEP",
      "description": "三类记录与错题长期保留，不按会员截断，支持主动删除；自建词表历史独立保留。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "PRICE",
      "description": "年卡68元、终身98元；手动续费，无自动续费。价格由正式商品配置校验。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "PLATFORM",
      "description": "中国区iOS使用系统内购，国内安卓使用微信或支付宝；恢复权益、延迟到账与取消／失败都有独立状态。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "QUOTA",
      "description": "每账号免费累计3个成功导出文件、累计5轮听写／读单词／课文跟读批改评测，共用总额度，不按天恢复。失败不扣，同轮重试重读不重复扣。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "BENEFIT",
      "description": "客观练习不限次；免费开放6个专题、答案卷带水印；会员不限次数，手写／纸笔批改需会员。到期不重置已用免费总额度。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "WRONG",
      "description": "错题本仅做管理、来源／类型筛选、详情、移除及按原来源再练。听写与五种客观题收录，朗读低分独立。AI排期留25。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "INVITE",
      "description": "新用户经邀请完成注册即奖励邀请人7天会员，每月最多3次；年卡／赠送时长顺延，终身只记邀请不叠加时长；老用户重复邀请不奖励。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "CANCEL",
      "description": "验证身份并二次确认后立即注销；退出登录保留账号资产；退款按真实渠道与正式条款处理。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    },
    {
      "id": "HELP",
      "description": "先做帮助文章与邮箱联系版式；客服邮箱尚未确定；不编造可用邮箱。",
      "rule_status": "confirmed",
      "source": "用户2026-10-13回复"
    }
  ],
  "business_rules": [
    {
      "description": "录音停顿建议1.5秒、单词上限10秒、句子上限30秒；客户端及实际音频校准，这些为设计建议。",
      "rule_status": "proposed"
    },
    {
      "description": "选择题干扰项按词库义项生成，不能出现多个合理正确选项；不足时不凑重复选项。",
      "rule_status": "proposed"
    },
    {
      "description": "连线首次对每个英文匹配作答记录独立正确，错误不擦掉首次记录；仍须配对正确才完成该组。",
      "rule_status": "proposed"
    },
    {
      "description": "字母池保留正确缺字所需多重集合，附2个干扰tile；1字母词全字母填空，其他词保留至少一个字母，短语空格不挖空。",
      "rule_status": "proposed"
    },
    {
      "description": "首答提示完成单独统计，并加入再练，重复练一次仍错不无限循环；错题本已确认收录错误／跳过，提示项是否收录留错题模块确认。",
      "rule_status": "proposed"
    },
    {
      "description": "首次平均答题时长扣除暂停、音源加载及后台等待；连线只展示组用时，不宣称逐词最快。",
      "rule_status": "proposed"
    },
    {
      "description": "后台暂停自动推进；恢复需用户继续，不在后台采音／判题。",
      "rule_status": "proposed"
    },
    {
      "description": "退出可结束未完成会话，未作答项与已答跳过区分，不把未触达项生成错题。",
      "rule_status": "proposed"
    }
  ],
  "acceptance_criteria": [
    {
      "given": "当前操作可用",
      "when": "选择／取消词",
      "then": "保留题型及选择；没练过的按完成的练习记录查询，不按打印推断",
      "rule_status": "proposed"
    },
    {
      "given": "当前操作可用",
      "when": "切出题顺序",
      "then": "按教材顺序或开始时一次打乱；答题过程中不重新洗牌",
      "rule_status": "proposed"
    },
    {
      "given": "所选非空、题库可生成无歧义题",
      "when": "开始对应题型",
      "then": "冻结所选词并进入该题型；读单词走共用朗读",
      "rule_status": "confirmed"
    },
    {
      "given": "当前操作可用",
      "when": "返回",
      "then": "保留词表与选择回选单元",
      "rule_status": "proposed"
    }
  ],
  "pending_from_source": [],
  "additional_unspecified": [
    "正式教材／课文／标准音与语音评测服务契约；只有服务提供的维度和定位可展示，不编造音素级结论。"
  ],
  "implementation_constraints": [
    "题型标签沿练习首页UI；屏幕内不显示模块编号／演示开关。",
    "D-1/D-2由六题型复用；D-3～D-8由课文内容跟读与读单词复用；D-13/D-14由五种客观题复用。",
    "五种客观练习错题写入来源标记，朗读低分不写知识错题；错题与AI复习策略仍在24/25。"
  ],
  "prototype_limitations": [
    "标准音、录音与评测用本地状态演示，不采集真实麦克风、不发送录音；演示分数和波形不是测量结果。",
    "教材词库／课文／分句为具名示例，不能视为正式教研目录。",
    "报告与录音删除为本地示例；生产云保存、跨设备同步及删除失败需真实服务验证。",
    "分享用宿主提示演示，未接微信／系统相册；不公开录音。",
    "画布静态预览不启动倒计时，也不写练习或错题记录。",
    "标准音用1.3秒模拟播放、录音用4秒计时自动结束、评测用900毫秒模拟；这些定时不是实际音频结束、静音检测或服务时延。"
  ],
  "sources": [
    "https://xzx.huajian.io/",
    "原UE D至D-14",
    "当前UI练习首页D",
    "用户2026-10-12九项确认"
  ],
  "runtime_view": "pick",
  "module_base": "看英选中",
  "tabs": [
    "练习"
  ],
  "product": "英语默写AI版",
  "handoff_version": "0.12.3",
  "page_id": "D-2",
  "date": "2026-10-13",
  "references": {
    "interface": "D-2.interface.md",
    "prototype": "D-2.prototype.html",
    "design": "UI-DESIGN.md"
  },
  "source_of_truth": {
    "visual": "D-2.prototype.html 屏幕内产品 UI",
    "behavior": "原 UE 明确要求及当前用户已确认规则；proposed 与 pending 不构成已确认业务契约",
    "viewer_chrome": "手机外壳、项目导航、演示选择器、说明与页面编号属于预览宿主"
  }
}
