Repository navigation
v1.19.1
v1.19.1 — 交互一致性修复 + 配置写入通道重建
修复
「自动切换」报错根除:此前页面报「ubus uci.apply 失败:[5]」——深入查证后确认这不是系统故障:错误码 5 是 uci.apply 在「没有待应用变更」时的正常返回(官方 LuCI 页面同样如此),根因是前端把这种正常语义当致命错误弹窗,且开关状态与配置值不同步时更易触发。本版把插件全部配置写入改走 uci 命令行通道(新增 netsteer-cfg 脚本,写入即落盘),链路更简单直接,同类误报一次根治。
「自动切换」开关并入智能模式:独立开关概念冗余——都叫智能模式了,不该再问"要不要自动"。现在智能模式开启即自动联动:检测到看视频/打游戏自动切到更合适的模式,闲时恢复均衡,您手动选的档位始终优先。场景卡里的说明文字即全部,无需理解第二个开关。
顺带修复:总开关关闭时联动不再拉起优化(此前"关闭"状态下场景切换可能把优化重新打开);智能模式页不再出现 "null" 文字(控件渲染缺陷)。
变更明细
- 新增
netsteer-cfg:netsteer 配置统一写入脚本(uci set + commit 即时落盘,绕开异常的 ubus apply) - 前端 6 处配置写入全部切换到新通道(自动切换/识别排除表/设备加速/P2P 直通/自动调优标记/批量管理)
- 场景联动默认开启(
sense_linked缺省 0→1),且总开关 off 时不接管 - UI:删除「自动切换」独立卡片,智能场景卡新增一行联动说明
质量门
单测 440 项全绿(core 302 / cfg 18 / bulk 33 / sense 21 / tune 15 / qos-awk 9 / feed 11),e2e 16 项真机全绿,R5C 真机终装 + md5 对账通过。
Full Changelog: v1.19.0...v1.19.1
v1.19.1 — Interaction consistency fixes + config write path rebuild
Fixes
Root-cause fix for the "auto-switch" error: the page used to show "ubus uci.apply failed: [5]" — deep-dive verification confirmed this is NOT a system fault: code 5 is simply what uci.apply returns when there is nothing to apply (stock LuCI behaves the same). The real defect was our frontend treating that normal reply as a fatal error, made more likely by UI state drifting from the stored value. This release moves ALL plugin config writes to the uci command-line channel (new netsteer-cfg helper — write and commit immediately), a simpler and more direct path, eliminating this class of errors for good.
The "auto-switch" toggle is now part of Smart Mode: a separate toggle was conceptually redundant — Smart Mode should not ask whether to be smart. With Smart Mode on, scene linking is always active: when someone watches video or plays games the router switches to a better-suited profile automatically, and falls back when idle. Whatever profile you picked manually always wins. One line of explanation in the scene card is all there is — no second switch to understand.
Also fixed: scene linking no longer re-enables optimization while the master switch is off (previously a scene change could turn it back on); the Smart Mode page no longer renders a stray "null" text (a widget rendering defect).
Change details
- New
netsteer-cfg: unified config-write helper for netsteer (uci set + commit, effective immediately, bypasses the broken ubus apply) - All 6 frontend config writes migrated to the new channel (scene linking / detection exclude list / device boost / P2P passthrough / autotune flag / bulk devices)
- Scene linking is now on by default (
sense_linkeddefault 0→1) and never takes over while the master switch is off - UI: removed the standalone "auto-switch" card; the Smart Scene card gained one line explaining the linking behavior
Quality gates
440 unit checks green (core 302 / cfg 18 / bulk 33 / sense 21 / tune 15 / qos-awk 9 / feed 11), 16 e2e checks green on the live router, R5C on-device install + md5 reconciliation passed.
Full Changelog: v1.19.0...v1.19.1
Download the .apk matching your device architecture (check /etc/apk/arch on the router).
Install (OpenWrt 24.10+/25.12):
apk add --allow-untrusted /tmp/luci-app-netsteer-*.apk
Built automatically by CI from this tag — unit tests + 4-arch build matrix.
Every package is verified with apk verify before it is attached.