# LSFX Mock Phase 2 Random Hit Frontend Implementation Plan > **For agentic workers:** REQUIRED: Use superpowers:subagent-driven-development (if subagents available) or superpowers:executing-plans to implement this plan. Steps use checkbox (`- [ ]`) syntax for tracking. **Goal:** 明确本次 `lsfx-mock-server` 第二期稳定随机命中改造不引入前端代码变更,同时验证现有前端页面与接口契约无需调整。 **Architecture:** 本次改造只作用于 Mock 服务与本地数据库基线,不新增前端页面、字段、交互或路由。前端实施计划采用“零代码变更 + 契约核验 + 文档沉淀”的最短路径,若核验发现返回结构变化,再停止并回到设计阶段,而不是在本计划中临时扩展前端实现。 **Tech Stack:** Vue 2, npm, Axios request wrapper, Markdown docs --- ## File Structure - `ruoyi-ui/src/api/`: 本次预期不修改,只用于核验现有接口调用契约是否保持不变。 - `ruoyi-ui/src/views/ccdiProject/`: 本次预期不修改,只用于核验“拉取本行信息”“重打标结果展示”“流水详情标签展示”相关页面是否无需联动调整。 - `docs/reports/implementation/2026-03-20-lsfx-mock-phase2-random-hit-frontend-record.md`: 记录本次前端无代码改动的范围说明。 - `docs/tests/records/2026-03-20-lsfx-mock-phase2-random-hit-frontend-verification.md`: 记录前端契约核验与页面回归结论。 ### Task 1: 核验前端接口契约无需调整 **Files:** - Reference: `ruoyi-ui/src/api/` - Reference: `ruoyi-ui/src/views/ccdiProject/` - Reference: `docs/design/2026-03-20-lsfx-mock-phase2-random-hit-design.md` - [ ] **Step 1: Check the existing frontend touchpoints** 检查以下现有前端触点,不写代码: - `拉取本行信息` 入口对应的接口调用位置 - `项目重打标` 入口对应的接口调用位置 - `流水详情命中标签` 展示链路 重点确认: - 请求参数没有新增字段要求 - 返回结构没有新增前端必填字段要求 - 结果展示仍依赖现有标签结果接口,不需要额外渲染第二期专属字段 - [ ] **Step 2: Verify no code change is needed** Run: ```bash cd ruoyi-ui rg -n "pull-bank-info|tags/rebuild|bank-statement/detail|hitTags" src ``` Expected: - 只看到现有调用点 - 设计文档中的第二期改造不要求新增前端字段适配 - [ ] **Step 3: If contract drift is found, stop instead of patching** 若核验发现以下任一情况,则停止执行并回到设计阶段: - 后端返回结构新增前端必须消费的新字段 - 结果展示需要新增新的专属列或筛选条件 - 现有页面无法承接第二期命中结果 若未发现上述情况,则保持前端零代码变更。 - [ ] **Step 4: Record the no-op decision** 在计划执行时将“无需前端改动”的事实沉淀到实施记录与验证记录,不创建任何前端源码改动。 - [ ] **Step 5: Commit** ```bash git add docs/reports/implementation/2026-03-20-lsfx-mock-phase2-random-hit-frontend-record.md docs/tests/records/2026-03-20-lsfx-mock-phase2-random-hit-frontend-verification.md git commit -m "补充第二期Mock联调前端核验记录" ``` ### Task 2: 补前端实施与验证记录 **Files:** - Create: `docs/reports/implementation/2026-03-20-lsfx-mock-phase2-random-hit-frontend-record.md` - Create: `docs/tests/records/2026-03-20-lsfx-mock-phase2-random-hit-frontend-verification.md` - [ ] **Step 1: Write implementation record** 在 `docs/reports/implementation/2026-03-20-lsfx-mock-phase2-random-hit-frontend-record.md` 中记录: - 本次需求范围仅涉及 Mock 服务与数据库基线 - 前端页面、接口封装、路由和交互均不需要改动 - 不做“为了联调看起来完整”而新增无业务价值的前端补丁 - [ ] **Step 2: Write verification record** 在 `docs/tests/records/2026-03-20-lsfx-mock-phase2-random-hit-frontend-verification.md` 中记录: - 核验的页面与接口触点 - 检查命令 - “无需前端改动”的依据 - 最终结论 - [ ] **Step 3: Confirm no frontend build/test is required** 若无源码改动,则不运行 `npm run build:prod`;在验证记录中明确写明“本次为零代码改动核验,因此未执行构建”。 - [ ] **Step 4: Verify git diff stays docs-only** Run: ```bash git diff --name-only -- ruoyi-ui ``` Expected: - 无输出 - 证明本次前端计划执行保持零代码改动 - [ ] **Step 5: Commit** ```bash git add docs/reports/implementation/2026-03-20-lsfx-mock-phase2-random-hit-frontend-record.md docs/tests/records/2026-03-20-lsfx-mock-phase2-random-hit-frontend-verification.md git commit -m "记录第二期Mock联调前端零改动结论" ```