---
name: fec-plan
description: 统一前端规划入口——实现/架构计划或测试策略。默认走实施路径；当用户明确要测试计划、覆盖矩阵、测试分层、risk-to-test 等时，输出完整测试策略。
---

在改代码前创建前端计划。根据用户意图自动分流到实施规划或测试规划。

## 意图识别

- **实施规划**（默认）：用户要拆组件、设计数据流、安排目录结构、迁移步骤、架构方案。
- **测试规划**：用户明确说"测试计划"、"测试策略"、"覆盖矩阵"、"测试分层"、"测什么"、"risk-to-test"等。
- **混合**：用户同时有实施和测试诉求。

若意图不清，先问用户想看实施计划还是测试策略。

## 实施规划路径

1. 重述用户目标、成功标准和不在范围内的内容。
2. 阅读相关代码、模板、规则、配置、测试和已有实现，避免脱离项目现状。
3. 若涉及页面拆分、状态流、目录结构、数据流或大型重构，委托 **`fec-architect`**。
4. 输出计划：
   - 影响范围
   - 关键文件或模块
   - 架构与模块边界
   - 数据流 / 状态流 / API 交互
   - 实施阶段
   - 回滚或渐进迁移策略
   - 风险与缓解
   - 最小验证门禁（lint、type-check、test、build、E2E 或人工验收）
5. 对版本敏感、依赖升级或外部库相关决策，列出事实来源、版本范围、迁移影响和需要查证的文档。
6. 在用户确认前不执行实现。

实施规划保存到 `reports/architecture-proposal-YYYY-MM-DD-HHmmss.md`。

## 测试规划路径

1. 确定范围：
   - 用户指定功能、PR、文件或业务流程时，以该范围为准。
   - 用户未指定时，查看最近变更并推断主要风险面。
   - 若用户要的是模块拆分、状态流、目录结构或迁移步骤，回到实施规划路径。

2. 使用 `fec-testing-strategy` Skill 建立测试分层矩阵：
   - 静态检查
   - 单元测试
   - 组件测试
   - 轻量集成测试
   - E2E 测试
   - 视觉 / Storybook / interaction
   - a11y / 安全 / 性能等专项质量验证

3. 对每个风险给出建议测试层、优先级、建议命令、责任 skill 和失败定位证据。

4. 标明哪些风险只需要现有门禁覆盖，哪些需要新增测试，哪些暂不覆盖并说明原因。

5. 必要时委托 **`fec-test-planner`** 子代理生成独立测试计划。

6. 将计划保存到 `reports/test-plan-YYYY-MM-DD-HHmmss.md`：

   ```markdown
   # 前端测试计划

   > 生成时间: YYYY-MM-DD HH:mm
   > 范围: ...

   ## 风险概览

   | Risk | Impact | Suggested Layer | Priority | Evidence |
   | ---- | ------ | --------------- | -------- | -------- |

   ## 覆盖矩阵

   | Layer | What to Cover | Tooling / Command | Skill |
   | ----- | ------------- | ----------------- | ----- |

   ## 执行顺序

   ## 不覆盖项与原因
   ```

7. 若用户要求继续实现测试，按矩阵分流到对应专项 skill 或 agent。

## 混合路径

当用户同时需要实施计划和测试策略时：

1. 先输出完整实施规划。
2. 在实施规划末尾追加"测试策略"章节，列出关键风险对应的测试层级和验证门禁。
3. 只有用户明确要求完整覆盖矩阵时，才额外生成 `test-plan-*` 独立报告。

## 边界

- 不在计划阶段直接写代码，除非用户明确要求继续实现。
- 不默认要求补齐完整测试金字塔，只按风险和维护成本选择覆盖。
- 不负责大规模编写测试文件；用户明确要求落地时再分流到专项测试 skill。
