Repository navigation
fix: 允许仅修改自选干员潜能与练度时导出调配 - #503
Open
Xinglan233 wants to merge 1 commit into
Open
Xinglan233 wants to merge 1 commit into
Xinglan233 wants to merge 1 commit into
Conversation
Xinglan233
marked this pull request as ready for review
October 11, 2026 09:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Important
选择一种改动类型,并填写以下内容。没有相关内容填“无”,不适用填“不适用”。
改动类型
改动说明
Note
写清问题、原因和范围。
改动说明:在自选编队里选择凯尔希,只把潜能改为1、练度改为未精英化,普通干员全部保持默认时,干员调配页仍显示“已调整0”,导出按钮也被禁用。自选页导出的文件只含编队,无法带走这两项设置。
潜能与练度已经保存在调配的
ops中,现有stronghold.loadout格式及导入流程也已支持它们。原因是导出按钮只看普通名单的改动计数,没有考虑自选独有干员的ops。此次仅调整该按钮的禁用条件:普通名单有改动,或存在保存的潜能/练度设置时即可导出。沿用原有两份文件:自选编队文件保存选择、技能和模组,干员调配文件保存普通调配及所有干员的潜能/练度。同步设计文档,并补正常界面流程的导出、换浏览器导入与刷新回归。
期望效果:只有自选干员的潜能或练度变化,也能在干员调配页导出并在另一浏览器恢复。普通名单的已调整计数、筛选和全部恢复默认范围,两个文件格式与版本、导出
count含义及原有导入语义均保持原样。关联 Issue / PR:无。
依据与假设
Note
涉及规则时附官方数据字段、PRTS 或实测;未确认细节及处理方式写入 [ASSUMED],代码中同步标注。
来源依据:现有
docs/design/match.md§16、loadoutModel.js的exportPayload/parseImport、loadoutSync.js的applyLoadoutEntries,以及导出/导入调配的维护者评审和按干员配置潜能与练度的维护者说明。本次没有改动战斗数值或规则。[ASSUMED]:无新增假设;使用已有调配导出格式,不给自选编队格式增加字段。
验证结果
Note
运行相关测试、npm run ci 和 npm run golden,如实记录结果及未运行或跳过原因。Golden 变化说明场景及原因;重构不得改变结果,预期结果有意变化时运行 npm run golden:update 并同提交。界面改动附截图。
验证方法:基于0.2.4、
bc50cac01ff447eff3ab6c35f69d934bbc23b48f,Node 22.23.3 / macOS 27.2 / Chrome 154。仓库原版server/index.js(本地,不使用 fastServer)与独立 headless Chrome,使用测试驱动的正常点击、键盘输入与原有选择框;没有注入应用属性、store、存储或绕过界面的请求。先输入代号进入大厅,在6阶自选名额选择凯尔希并修改潜能/练度,切回干员调配导出;在全新浏览器分别导入自选编队文件和干员调配文件,刷新后核对编队、保存数据及凯尔希控件。覆盖仅自选潜能、仅自选练度、两项一起、仅普通、混合、全默认、普通重置、清空自选后保留设置和恢复凯尔希默认。相关测试:回归先在上游代码上跑出2通过、4失败,失败项是仅自选三种设置与普通重置后导出被禁用。修复后最终六项浏览器回归全部通过,双文件导入与刷新保留编队及设置;定向UI和文档测试87项通过。
npm run ci:exit 0,setup、全量测试、smoke、lint、imports、typecheck六步全部成功。全量测试5929通过、0失败、42跳过(默认浏览器/素材等条件;本次六项浏览器回归另行开启并通过)。lint为0错误、135条既有警告,改动文件没有警告。imports按仓库默认非严格模式退出0,仍列出
server/sim/nodeData.js的3条既有违规及3条 allowed notes。npm run golden:exit 0,287场景全部一致。
Golden 变化:无;未改Golden文件,未运行
golden:update。截图/录屏:仅修改凯尔希潜能/练度时,修前普通页显示“已调整0”且导出禁用;修后同样计数下导出可用。在全新浏览器导入自选编队与调配两份文件并刷新,凯尔希仍显示潜能1、未精英化。以下截图为完整1280×800原图,未裁剪、标注或修改。
修复前:只有自选潜能与练度变化,普通页已调整0,导出禁用。
修复后:普通页仍为已调整0,导出可用。
在全新浏览器导入两份文件并刷新后:凯尔希潜能1、未精英化。
实际导出载荷:
{"kind":"stronghold.loadout","v":1,"exportedAt":"2026-10-11T04:43:43.171Z","count":0,"entries":{},"ops":{"char_003_kalts":{"potential":1,"cultivate":0}}}导入并刷新后保存值为
entries: {}、ops: { char_003_kalts: { potential: 1, cultivate: 0 } },自选控件显示同一设置。环境未下载可选美术、字体和音频,页面使用项目原有回退,资源404和字体警告非零。未做可见GUI流程、完整素材、剪贴板/下载文件、跨设备或跨平台验证。适用性说明
检查清单
Important
最后一步:回顾回答,仅勾选已完成的项目。