feat: add configurable DSL rule manager and simplify dynamic-group settings

This commit is contained in:
2026-02-27 22:13:04 +08:00
parent f5ae91df43
commit 271b722c97
13 changed files with 1674 additions and 158 deletions

View File

@@ -1,6 +1,6 @@
# yys-editor 验收测试点(手工)
目标:覆盖“用户素材上传/管理、资产引用、Dynamic Group 规则提示、性能优化”等需求。
目标:覆盖“用户素材上传/管理、资产引用、Dynamic Group 规则提示、规则管理DSL/变量导入导出)、性能优化”等需求。
## 0. 基础启动与构建
@@ -101,18 +101,39 @@
步骤:
- 在同一分组中放入:
- “辉夜姬” 与 “破势”
- “千姬” 与 “腹肌清姬/蝮骨清姬”
- 只有式神但没有供火式神
- 只有式神但没有供火式神(不含供火名单)
- 观察右侧/控制区的规则提示列表。
预期:
- 出现对应警告提示
- 出现对应警告提示(当前默认预制规则):
- `TEAM_KAGUYA_POSHI_CONFLICT`
- `TEAM_MISSING_FIRE_SHIKIGAMI`
- 取消分组、移除节点后提示实时更新/消失。
排查点:
- `src/utils/groupRules.ts``src/configs/groupRules.ts`
- `src/configs/groupRules.ts`(预制规则与变量)
- `src/utils/groupRules.ts`(按 expressionRules 解析)
- `src/components/flow/FlowEditor.vue``scheduleGroupRuleValidation(...)` 调度时机。
## 6.1 规则管理(表格化 + 导入导出)
步骤:
- 点击顶部工具栏“规则管理”。
- 在“规则”tab 验证单行表格展示启用勾选、级别、规则ID、条件、提示
- 点击“编辑”打开单独弹窗修改规则并保存。
- 在“变量”tab 修改变量后点击“应用并生效”。
- 点击“导出规则变量”导出 JSON再点击“导入规则变量”导入。
预期:
- 规则列表为单行表格,不再是大块卡片编辑。
- 规则编辑在弹窗中完成,保存后回填列表。
- 导入后提示“请点击应用并生效”,应用后 Problems 立即刷新。
- 导出文件包含:`version``expressionRules``ruleVariables`
排查点:
- `src/components/Toolbar.vue`(规则管理 UI 与导入导出)
- `src/utils/groupRulesConfigSource.ts`(配置写入与广播)
## 7. 性能回归(矢量节点快速缩放)
步骤:
@@ -173,6 +194,7 @@
- [ ] 缺失资产降级策略通过(不阻断导出/渲染)。
- [x] Dynamic Group 分组基础行为通过(分组信息写入 `meta.groupId`,复制分组会携带组内节点)。
- [ ] 分组规则静态检查通过(冲突与供火提示正确且可实时更新)。
- [ ] 规则管理通过(规则列表表格化、弹窗编辑、导入导出可用)。
- [ ] 矢量节点快速缩放性能回归通过(无明显卡顿/卡死)。
- [ ] 导出到 wiki 数据兼容通过wiki 侧可 normalize 与预览)。
- [ ] 跨项目素材互通通过(同 origin 可复用素材,跨 origin 不互通)。
@@ -182,7 +204,7 @@
当前状态2026-02-27
- 已通过5 项基础启动与构建、用户素材上传与使用、用户素材删除与持久化、Dynamic Group 分组基础行为、导出图片时隐藏 Dynamic Group
- 部分通过1 项(跨项目规则互通方案确认)。
- 未通过/待验证:6 项(其余项待完整手测或跨仓联调)。
- 未通过/待验证:7 项(其余项待完整手测或跨仓联调)。
逐项状态:
- 基础启动与构建:已通过
@@ -192,6 +214,7 @@
- 缺失资产降级策略:未通过(待手测)
- Dynamic Group 分组基础行为:已通过
- 分组规则静态检查:未通过(待手测)
- 规则管理(表格化/导入导出):未通过(待手测)
- 矢量节点快速缩放性能回归:未通过(待手测)
- 导出到 wiki 数据兼容:未通过(待跨仓联测)
- 跨项目素材互通:未通过(待同 origin 联测)