OhGithubLost 5.2.0 · 正式版 / Stable
主题 · Theme — 动画严格按档位分级(降档 = 降质量)、一轮性能优化、以及一次被对抗性探针发现的内核一致性硬化。 Strictly tiered animations (lowering the tier reduces quality, never removes effects), a performance pass, and a kernel-consistency hardening found by an adversarial probe.
变更 · Changed
-
动效改成「按档位给质量」· Animation tiers now mean quality 每一档都保留完整动效,只是开销逐级降低;档位
0静默但内容依旧完整呈现:档位 快/中/慢 入场效果 错峰项数 过渡位移 缩放 模糊 0 静默 0 / 0 / 0 无 0 0 无 无 1 保守(默认) 110 / 150 / 190 ms 只淡入 前 4 项 0.012 无 无 2 标准 170 / 220 / 280 ms 淡入 + 轻位移 前 9 项 0.035 无 无 3 拉满 220 / 300 / 380 ms 淡入 + 位移 + 轻微缩放 前 17 项 0.06 0.99 / 0.985 ≤6 Every tier keeps the full vocabulary; only cost drops. Tier 0 is silent but shows all content. 设置项文案随之改为 静默 / 保守 / 标准 / 拉满(15 种语言同步,写清每档做了什么)。
- 入场动画按档位限项 · Bounded entrance animation
OgLAnim.staggerOf()对超出档位上限的序号返回null,OgLReveal见到null直接静态渲染。此前长列表的每一项都挂动画、且越靠后的项越晚——这是”列表滑动发涩”的常见来源。 - 长列表懒加载 · Lazy long lists
5 处数据驱动长列表改用懒加载(其余保持急加载的已在审计里登记理由):
仓库文件列表 / PR 文件 / 提交文件 →
CustomScrollView+SliverList.builder; 议题评论 →OgLAsyncSliver;Actions 作业 →SliverList.builder。 Five data-driven lists now build rows on demand instead of eagerly; bounded lists are explicitly registered in the audit with reasons. - 窄
MediaQuery选择器 · Narrow selectorsOgLAnim.enabled改用MediaQuery.disableAnimationsOf:列表项不再因为键盘 / 旋转 / insets 变化整列重建。 - 隐藏页停表 · Offscreen pages stop ticking
切 tab 时给隐藏页套
TickerMode(enabled: false)。 - 主题缓存 · Theme cache
主题按(亮度 + 种子色 + 密度 + 动效档位)缓存,避免每次重建
ThemeData。 - 日志通知合并 · Coalesced log notifications 批量写日志时把通知合并为同一事件循环一次(微任务,不引入计时器;数据仍逐条入表)。
新增 · Added
- 内核一致性硬化:清单 ↔ 运行期模块交叉校验 · Manifest coverage cross-check
引导清单声明了某模块、装配时却没提供它,此前既不拒绝也不留痕;现在记为
OGL-BOOT-108(warn 级诊断 + 引导信任告警)——仍可启动,但一定留痕。附回归用例。 Found by a throwaway adversarial probe: a declared-but-never-assembled module is now recorded asOGL-BOOT-108instead of passing silently. - CI 门禁扩到四个维度 · Four CI gates
layer_audit(依赖只能向下)、i18n_scan(界面文案 0 遗漏 / 分片键集合一致)、motion_audit(动画必须走档位质量表,禁止硬编码时长 / 缩放 / 模糊)、perf_audit(禁止shrinkWrap与过宽MediaQuery.of)。
修复 · Fixed
- 修掉
issue_page在列表懒加载改造中丢失「发表评论」输入区的问题 (由 CI 的unused_element警告当场拦下,已按原文恢复)。 - 修掉主题切换 / 切换 tab / 下载进度 / 引导翻页绕开档位硬编码时长的问题。
已知限制 · Known limitations
- 分片下载的暂停 = 重新开始(不假装续传);单连接库任务的断点续传不受影响。
- 数量有界的列表(关于 / 账号 / Gist 文件 / Release 附件 / 工作流 inputs / 分支弹层) 刻意保持急加载:数据量小,懒加载反而多一层每帧判断。
- 桌面端仍使用库下载;分片引擎按
Range能力自动判定。 - 翻译由 AI 产出并通过格式 / 占位符校验,未逐条人工校对。
产物 · Artifacts
Android(arm64-v8a / armeabi-v7a / x86_64 / universal APK / AAB)、Windows、Linux、macOS、iOS,以及引导清单 boot-manifest.zip —— 共 19 个文件。
Android (arm64-v8a / armeabi-v7a / x86_64 / universal APK / AAB), Windows, Linux, macOS, iOS plus the signed boot manifest — 19 files in total.
下载 / Download
本版本共 19 个构件产物。
Android
| 文件 | 大小 |
|---|---|
| Android.AAB.zip | 61 MB |
| Android.arm64-v8a.zip | 11 MB |
| Android.armeabi-v7a.zip | 10 MB |
| Android.universal-APK.zip | 29 MB |
| Android.x86_64.zip | 11 MB |
Windows
| 文件 | 大小 |
|---|---|
| Windows.arm64-best-effort.zip | 13 MB |
| Windows.x64.zip | 14 MB |
Linux
| 文件 | 大小 |
|---|---|
| Linux.arm64-best-effort.zip | 11 MB |
| Linux.x64.zip | 12 MB |
macOS
| 文件 | 大小 |
|---|---|
| macOS.arm64.zip | 65 MB |
| macOS.x64.zip | 65 MB |
iOS
| 文件 | 大小 |
|---|---|
| iOS.device-arm64.zip | 9.8 MB |
| iOS.simulator.zip | 58 MB |
完整列表与校验信息见 Releases v5.2.0。