worker-mirrorwire
0f64acbd05
feat(download): 把 download.region / download.mirror_preference 接进源选择(M294)
两个键此前在引擎侧零消费者:设置页画着三档 chip,改它不影响任何一次下载。
现在它们是 RegionProfile 之上的一层显式覆盖(读时叠加,不落盘,region.json
仍是自动判定的结论):
显式 mirror_preference(official/mirror)
> 显式 region(cn/global)
> 自动探测(时区+语言+系统信号)与 24h 缓存
- core::download::preference(新):两个枚举的 from_raw(未知值/空串 ⇒ auto)
与 apply;两个键都落到 RegionMode 这一个「谁在前」开关上,不造第二套排序
- region::RegionProfile::overridden:在已有判定上叠一层模式(探测逻辑不动)
- DownloadTuning 加 region / mirror_preference 与 apply_source_selection
(组合顺序 = 优先级),shared::build 改用它;默认 Auto ⇒ 逐值等于今天
- 未进 RawTuning:CLI 的 tuning() 用完整字段字面量构造它,加字段会连累
crates/cli(不在本 mission scope),改走 with_source_selection 入口
- presenter 的 tuning_of 读这两个键(否则 GUI 侧仍是假行)
判据断具体源名序列:不设/auto/未知 ⇒ ["bmclapi","official"] /
["official","bmclapi"] 逐项不变;official/mirror/cn/global ⇒ 顺序跟着换;
另有一条从设置原文到引擎 plan() 的端到端用例。
2026-11-13 08:26:30 +08:00
..
2026-11-12 12:06:46 +08:00
2026-11-05 14:08:37 +08:00
2026-11-12 23:55:24 +08:00
2026-11-13 03:35:08 +08:00
2026-11-13 08:26:30 +08:00
2026-11-12 10:50:02 +08:00
2026-11-12 19:55:51 +08:00
2026-11-12 12:06:46 +08:00
2026-11-13 08:26:30 +08:00