## Summary by Sourcery
更新 v6.3.0-beta.5 的配置处理、错误恢复机制和发布流程。
Bug 修复:
- 确保 Infrast 自定义方案和 PlanSelect 在 JSON 反序列化以及文件加载出错后能够安全初始化。
- 在禁用保存石头时,反序列化后重置 FightTask 的石头使用状态,并在配置转换过程中修正剩余理智关卡启用逻辑。
- 通过让新配置与先前配置文件对齐并保证当前配置存在,防止当前配置缺失或无效。
- 修复崩溃日志处理,避免出现无限循环,并确保始终清理崩溃日志文件。
- 处理直达剿灭关卡导航失败时,改为禁用父级战斗任务,而不是导致整次运行失败。
- 改进商店信用刷图计划的排程逻辑,正确检测后续启用的 FightTask 和空关卡配置。
- 在推进 Infrast 自定义方案索引超过最后一个方案时进行循环,避免越界访问。
- 通过设置合适的模板匹配方法和阈值,提高技能选择图像匹配的稳定性。
- 修正 Windows 未处理异常过滤器,使其终止进程而不是继续执行。
增强:
- 为任务添加反序列化后的钩子,用于规范化配置值和派生状态。
- 放宽 JSON 编码器的字符范围,并从 JSON 反序列化 Root.Current,以更好地保留国际化配置名称。
- 对齐工厂和转换器之间的配置清理逻辑,移除在先前配置中不存在的配置项,并重新同步当前激活的配置。
- 在检测到崩溃日志时,将最近的崩溃转储文件复制到专用调试目录,以便诊断问题。
CI:
- 扩展发布打包工作流,新增可选任务用于将 Windows 构建产物上传至腾讯云
COS,并更新发布准备自动分配(auto-assign)动作的版本。
<details>
<summary>Original summary in English</summary>
## Summary by Sourcery
Update configuration handling, error recovery, and release workflows for
v6.3.0-beta.5.
Bug Fixes:
- Ensure Infrast custom plans and PlanSelect are safely initialized
after JSON deserialization and file loading errors.
- Reset FightTask stone usage after deserialization when saving stones
is disabled, and correct remaining sanity stage enabling logic during
config conversion.
- Prevent missing or invalid current configuration by aligning new
configuration with the previous file and guaranteeing the current config
exists.
- Fix crash log handling to avoid infinite loops and to always clean up
crash log files.
- Handle direct annihilation stage navigation failures by disabling the
parent fight task instead of failing the run.
- Improve mall credit-fight scheduling by correctly detecting subsequent
enabled FightTask and empty stage configuration.
- Wrap Infrast custom plan index when advancing beyond the last plan to
avoid out-of-range access.
- Improve skill selection image matching stability by setting an
appropriate template-matching method and threshold.
- Correct Windows unhandled-exception filter to terminate the process
instead of continuing execution.
Enhancements:
- Add post-deserialization hooks to tasks to normalize configuration
values and derived state.
- Relax JSON encoder character ranges and deserialize Root.Current from
JSON to better preserve internationalized configuration names.
- Align configuration cleanup logic between factory and converter to
remove configs not present in the previous configuration and resync the
active configuration.
- Copy recent crash dump files into a dedicated debug directory when a
crash log is detected to aid diagnostics.
CI:
- Extend release packaging workflow with an optional job to upload
Windows artifacts to Tencent COS and bump the release-preparation
auto-assign action version.
</details>