Skip to content

Fix Windows startup, log growth, and history resume - #300

Open
Aschenbath wants to merge 3 commits into
teikengstudio:devfrom
Aschenbath:fix/windows-startup-center-dev-20261114
Open

Aschenbath wants to merge 3 commits into
teikengstudio:devfrom
Aschenbath:fix/windows-startup-center-dev-20261114

Conversation

@Aschenbath

@Aschenbath Aschenbath commented Nov 13, 2026 •

Copy link
Copy Markdown
Collaborator

Windows 首次启动偏离屏幕中央,详细日志可增长到上百 MiB;云历史已显示收听进度后,若再次查询历史失败,点击播放还会丢掉已知位置并从头开始。本 PR 修复这三条路径。

  • Windows 在显示界面前应用隐藏标题栏,并按显示器可用区域居中。Fixes 首次启动界面并不在屏幕中间 #299.
  • 单次运行日志超过 8 MiB 后保留最近约 4 MiB 的完整记录;待写队列限制为 1 MiB,超大单条保存有明确标记的有效 JSON 摘要。
  • 日志导出使用独立冻结副本;旧大文件仅截取最近约 8 MiB。无法创建副本时提供有界内存片段,完成、取消和失败后释放临时文件。写入失败重试及缺失提示保持序号顺序。
  • 历史页点击和菜单播放传入已有进度及其保存时间,与本地、新查询的云端进度按时间选择。历史查询失败或超时仍保留已知位置;同时间优先本地,书签和手动跳转仍优先。候选不会直接写成新的收听记录。

Refs #266(日志体积反馈,订阅分页根因仍待相邻页响应);Refs #268(补齐已加载历史在后续查询失败时的续播场景)。

验证:

  • 离线锁定依赖解析、静态分析、格式和差异检查通过,方法日志覆盖 3365/3365。
  • 21 项续播回归通过,涵盖真实历史页面点击和菜单入口、查询失败及 2 秒超时、时间先后及零位置、较新云记录、书签与片头跳过、手动跳转、切换声音/账号、旧页面回调和无实际播放时不写入进度。相同页面回归在修改前得到 0 秒,修改后得到正确的 85 秒。验证工程与应用共享的 140 个包解析路径一致。
  • 日志部分此前的 15 项真实文件 I/O 回归通过,涵盖体积边界、快照稳定性、Windows 共享锁、写入失败及日志突发交错、同会话重启、百 MiB 旧日志和临时文件释放。
  • 当前提交的 CI 执行 Android 编译验证。

@Aschenbath Aschenbath changed the title Fix Windows startup window centering Fix Windows startup placement and bound diagnostic logs Nov 13, 2026
@Aschenbath Aschenbath changed the title Fix Windows startup placement and bound diagnostic logs Fix Windows startup, log growth, and history resume Nov 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant