Files
dcalc/.github/instructions/frontend-migration.instructions.md
T
2026-05-18 20:02:16 +08:00

2.1 KiB

name, applyTo, description
name applyTo description
frontend-migration frontendNew/src/pages/Dcalc/Character/**/*.vue,frontendNew/src/stores/**/*.ts,frontendNew/src/api/**/*.ts Use when migrating frontend Character pages to frontendNew, preserving config->execute->save flow, keeping /calc and IResult contract stable, and implementing same-page config+result with minimal behavior changes for Skill/Forge.

Frontend Migration Rules (frontend -> frontendNew)

Core Target

  • 迁移目标是行为保真,不是推倒重做。
  • 结果必须保持:配置变化可触发计算,结果区稳定刷新,配置可持久化。

Required Data Flow

  • 保持以下链路成立:
    • config mutate
    • Character 容器 watch config
    • result.execute()
    • saveConfig()
  • 不在 Skill/Forge 子页直接做并发调度或替代容器级触发策略。

API/Type Contract

  • 不修改 /calc 入参与返回结构。
  • 不破坏 IResult 的关键字段语义:skills、info、suits、buffer。

Skill/Forge Migration Constraints

  • Skill、Forge 优先沿用现有业务逻辑与限制条件(例如 VP/UP 数量限制、等级限制)。
  • 允许替换 UI 结构与组件,但不改核心规则语义。
  • 新行为必须可追踪到 pushChangeSource,便于结果回溯。

Result Panel Requirements

  • 必须具备 4 态:loading、error、empty、success。
  • 同页可查看结果,不依赖跳页。
  • 允许以 Tab 汇总展示(如详情/结果切换),但不得导致计算链路断开。

Source of Truth

Existing Pattern to Reuse