0
Fork 0
mirror of https://github.com/Silent1566/webhtv.git synced 2026-10-25 10:16:33 +00:00

merge+review(C80): 合并 origin/beta c9eca9bc1a(PR #457)并复评 dev3 三个未推送提交,修复未覆写 noConfig 的宿主永久停在加载中

合并结果零内容变更:索引树与 HEAD 树对象同为 00bae7852a,第二父为
c9eca9bc1ab7dc2e23efaf4c84311e19e11b29ec。PR #457 只把 44e2dad6b0 并进
origin/beta,c9eca9bc1a 相对 44e2dad6b0 的内容差异经实测为空,故本次
「已移除的回退提交」不存在任何引入通道。

复评 dev3 三个已提交未推送提交(首页「未配置」空态与状态自收)发现 1 项真缺陷:
Callback.noConfig() 原为空实现,而全仓 load(new Callback(){...}) 匿名回调
普遍只覆写 start()/error(String)。TV 标题长按 -> HomeActivity.reloadConfig()
先进 progressLayout.showProgress(),无配置时没有任何调用能收掉转圈
(旧行为由 error("") 收掉,空消息在 Notify.show 里直接返回不弹吐司)。
默认实现改回 error(""),逐字保留改动前的收尾行为;两端首页已覆写,不受影响。
新增守卫 defaultNoConfigStillTerminatesTheLoadingState 钉住该收尾约定。

另更正 HOME-STATE-NO-CONFIG-20261018.md 自述「默认空实现」的失真,
并补记 noConfig 行为边界与 ProgressLayout 的预存过期注释(只报告不修)。

验证:TvErrorStateContractTest 14/14、MobileHomeStateContractTest 9/9;
双 flavor Java + 双 flavor UnitTest Java 四目标编译通过;git diff --check 与
冲突标记扫描为空。变异 M1(默认实现改回空)使新守卫生效转红(1 例
AssertionError),还原后 git hash-object = c63b39aea7
逐字节一致。零复活三层证据含检测器阳性对照,文件级命中的 4 条路径经行级核对
交集为 0。
This commit is contained in:
Silent1566 2026-10-18 18:32:08 +08:00
commit 64ebe4be58
6 changed files with 231 additions and 2 deletions