前端任务域拆分闭环
核心目标
- 把前端开发任务拆成可独立实现、独立验证、独立回归的域。
- 让 AI 在开发时只关注当前域,降低上下文负担。
- 保证域内内容/交互可穷举,支持 e2e 审查全覆盖。
- 坚持严格域隔离:不观测其他域内部动作,跨域信息一律以本域
输入形式进入。
闭环流程
- 域拆分
- 先按页面拆域。
- 页面过大再按独立区域拆域。
- 拆分标准:该域可单独实现、单独验证、单独回归。
- 域内定义
- 每个域定义两层内容:
- A. 状态机四项:
状态、输入、转换事件、副作用 - B. 边界与契约四项:
Owned State、Input Contract、Output Contract、Invariant
- A. 状态机四项:
状态:域在当前时刻的界面状态集合,不是单一值;由多个相互独立子状态组成。输入:域外信号(raw),触发域变化的来源(用户操作、系统变化、异步返回、其他域产物)。转换事件:域内标准语义事件(normalized intent),是状态机唯一触发器。副作用:域对外动作(请求、跳转、外部通知),其结果需回流为新输入。Input Contract:本域可接收输入的字段、类型、时序与错误语义。Output Contract:本域对外发出的副作用/事件及其语义约束。- 每个子状态独立变化、独立观测、独立断言;子状态必须正交,禁止隐式耦合。
- 页面表现由子状态组合决定;组合覆盖按“可见结果差异”建断言,不做无差异全排列穷举。
- 目标:完整覆盖该域内所有可见内容与可执行交互。
- 审查清单
- 每个域产出三列若干行清单:
入口状态、用户操作、结果与副作用。 入口状态:从哪个状态开始执行该条用例。用户操作:用户实际执行的点击、输入、选择、提交等动作。结果与副作用:用户可见变化 + 可观测副作用(如请求发送、路由跳转、外部通知触发)。- 要求:该域内所有可交互项与可见分支全部入清单。
- e2e 执行
- 逐个执行。
- 清单项全通过,才算该域通过。