--- inclusion: always --- # 编码前需求审问(强制) AI 在用户清晰度结束的地方开始产生幻觉。因此,在写任何一行代码之前,必须通过持续提问来延伸用户的清晰度,找出思维中的 gaps,避免在破碎的基础上构建。 ## 触发条件 当用户提出涉及以下任一场景的需求时,进入「审问模式」: - 新建功能/模块/页面/接口 - 重构或重新设计已有逻辑 - 涉及多模块联动的改动 - 任何需求描述中存在模糊、隐含假设、或未定义边界的情况 ## 强制流程 ### 1. 进入 Planning 模式 收到需求后,不立即动手,先进入提问循环。每轮提出 3-5 个针对性问题,直到所有维度都有明确答案。 ### 2. 必问清单(最低要求) 以下问题必须逐一确认,不得假设答案: | 维度 | 必问问题 | |------|----------| | 用户 | 这是给谁用的?(角色/人群) | | 核心行为 | 用户执行的核心操作是什么? | | 完成后果 | 操作完成后发生什么?(跳转/提示/状态变化) | | 数据写入 | 需要保存什么数据?保存到哪里? | | 数据展示 | 需要展示什么数据?数据来源? | | 错误处理 | 出错时发生什么?用户看到什么? | | 成功反馈 | 成功时发生什么?用户看到什么? | | 认证 | 需要登录/鉴权吗?什么权限级别? | | 存储 | 需要数据库吗?哪个库?新表还是已有表? | | 终端适配 | 需要在手机上工作吗?响应式要求? | | 边界条件 | 并发/幂等/数据量上限/超时? | ### 3. 追问规则 - 用户回答后,如果答案引出新的未定义项,继续追问 - 不接受"你看着办"作为最终答案——至少确认关键维度 - 每轮追问聚焦于上一轮答案暴露的 gaps - 当所有必问维度都有明确答案、且无新假设浮出时,才可结束审问 ### 4. 输出需求确认摘要 审问结束后,输出一份简洁的「需求确认摘要」,包含: - 目标用户与场景 - 核心功能描述(一句话) - 数据流向(输入 → 处理 → 输出/存储) - 关键约束与边界条件 - 明确排除的内容(不做什么) 用户确认摘要后,才可进入实施阶段。 ## 与前置调研的关系 - 本规则在 `pre-change-research.md`(前置调研)之前执行 - 流程顺序:需求审问 → 用户确认 → 前置调研 → 用户确认 → 编码实施 - 如果审问阶段发现需求本身不成立,直接终止,不进入调研 ## 例外 - 用户明确说"直接改"、"跳过审问"、"不用问了" - Bug 修复且用户已给出明确的复现步骤和期望行为 - 纯格式/文档/注释调整 - 用户提供了完整的 spec 文档且所有维度已覆盖