From 21c8dbd5e57d00b9314f9812782cd94896ce4876 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 6 Oct 2026 23:42:56 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=B6=20Sync=202026-10-06=2023:42:56?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- honk/Makefile | 2 +- honk/files/config.dae | 19 +- luci-app-adguardhome/.official_channel | 2 +- .../.official_version_snapshot | 2 +- .../luasrc/controller/gpsysupgrade.lua | 2 +- luci-app-honk/Makefile | 2 +- .../root/usr/share/rpcd/ucode/honk.uc | 5 - .../resources/view/honk/dashboard.js | 4 +- luci-app-open-box/Makefile | 4 +- luci-app-substore/CHANGELOG.md | 25 + luci-app-substore/Makefile | 4 +- luci-app-substore/docs/LEGACY_ISSUES.md | 39 +- .../share/luci/menu.d/luci-app-wizard.json | 2 +- luci-theme-vantage/Makefile | 2 +- .../htdocs/luci-static/vantage/pattern.svg | 550 ++++++++++++++++++ .../htdocs/luci-static/vantage/vantage.css | 23 +- wwand-ipa/Makefile | 4 +- wwand-ipad/Makefile | 4 +- wwand-rsim/Makefile | 4 +- 19 files changed, 653 insertions(+), 46 deletions(-) create mode 100644 luci-theme-vantage/htdocs/luci-static/vantage/pattern.svg diff --git a/honk/Makefile b/honk/Makefile index d8f8d5830..1203c9bc4 100644 --- a/honk/Makefile +++ b/honk/Makefile @@ -4,7 +4,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=honk PKG_VERSION:=2026.10.6_pre1 -PKG_RELEASE:=10 +PKG_RELEASE:=11 # Raw upstream release tag. It keeps the dots in qualifiers (e.g. v0.0.1.beta.49) # because that is what the GitHub release asset name uses. diff --git a/honk/files/config.dae b/honk/files/config.dae index 0db77a7dc..0e58a5c2d 100644 --- a/honk/files/config.dae +++ b/honk/files/config.dae @@ -22,16 +22,9 @@ global { udp_check_dns: 'dns.google.com:53', '8.8.8.8', '2001:4860:4860::8888' } -# API access (native_api) is configured separately in config.d/api.dae -# to allow web dashboard configuration without locking the config as read-only. -# -# Optional cache-file configuration: -#experimental { -# cache_file { -# enabled: true -# path: '/etc/honk/cache.db' -# cache_id: '' -# store_fakeip: false #in this time, this field will be ignored -# } -#} - +assets { + geodata { + geosite: 'https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/release/geosite.dat' + geoip: 'https://raw.githubusercontent.com/QiuSimons/geoip-moedove/refs/heads/main/geoip.dat' + } +} diff --git a/luci-app-adguardhome/.official_channel b/luci-app-adguardhome/.official_channel index 49f33a8c6..8ab67f2e7 100644 --- a/luci-app-adguardhome/.official_channel +++ b/luci-app-adguardhome/.official_channel @@ -1 +1 @@ -both +snapshot diff --git a/luci-app-adguardhome/.official_version_snapshot b/luci-app-adguardhome/.official_version_snapshot index 71cbc87fe..1e7a6cbae 100644 --- a/luci-app-adguardhome/.official_version_snapshot +++ b/luci-app-adguardhome/.official_version_snapshot @@ -1 +1 @@ -26.278.51556~9c9ad92 +26.278.67349~0257cc0 diff --git a/luci-app-gpsysupgrade/luasrc/controller/gpsysupgrade.lua b/luci-app-gpsysupgrade/luasrc/controller/gpsysupgrade.lua index 12d48f97f..a7b0c367a 100644 --- a/luci-app-gpsysupgrade/luasrc/controller/gpsysupgrade.lua +++ b/luci-app-gpsysupgrade/luasrc/controller/gpsysupgrade.lua @@ -9,7 +9,7 @@ local sysupgrade = require "luci.model.cbi.gpsysupgrade.sysupgrade" function index() appname = "gpsysupgrade" entry({"admin", "system", appname}).dependent = true - entry({"admin", "system", appname}, template("gpsysupgrade/system_version"), _("System upgrade"), 1) + entry({"admin", "system", appname}, template("gpsysupgrade/system_version"), _("System upgrade"), 2) entry({"admin", "system", appname, "sysversion_check"}, call("sysversion_check")).leaf = true entry({"admin", "system", appname, "sysversion_update"}, call("sysversion_update")).leaf = true end diff --git a/luci-app-honk/Makefile b/luci-app-honk/Makefile index 2e12a438b..1c35fdb84 100644 --- a/luci-app-honk/Makefile +++ b/luci-app-honk/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-honk PKG_VERSION:=1.1.4 -PKG_RELEASE:=13 +PKG_RELEASE:=14 LUCI_TITLE:=LuCI support for honk LUCI_PKGARCH:=all diff --git a/luci-app-honk/root/usr/share/rpcd/ucode/honk.uc b/luci-app-honk/root/usr/share/rpcd/ucode/honk.uc index 3d4a70db1..a684634af 100644 --- a/luci-app-honk/root/usr/share/rpcd/ucode/honk.uc +++ b/luci-app-honk/root/usr/share/rpcd/ucode/honk.uc @@ -375,7 +375,6 @@ function switch_dashboard_api(target_type) { if (parsed_native && parsed_native.enabled && parsed_native.listen && parsed_native.config_write && - parsed_native.geosite_download_url && parsed_native.geoip_download_url && parsed_native.ui == target_ui) { return { success: true, type: target_type, noop: true }; } @@ -389,8 +388,6 @@ function switch_dashboard_api(target_type) { let sec = (parsed_native && parsed_native.secret && length(parsed_native.secret) >= 8) ? parsed_native.secret : "honk114514"; let listen = (parsed_native && parsed_native.listen) ? parsed_native.listen : "0.0.0.0:9527"; let ui = target_ui; - let geosite = (parsed_native && parsed_native.geosite_download_url) ? parsed_native.geosite_download_url : "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/release/geosite.dat"; - let geoip = (parsed_native && parsed_native.geoip_download_url) ? parsed_native.geoip_download_url : "https://raw.githubusercontent.com/QiuSimons/geoip-moedove/refs/heads/main/geoip.dat"; let api_inner = " native_api {\n" + @@ -399,8 +396,6 @@ function switch_dashboard_api(target_type) { " secret: '" + sec + "'\n" + " ui: '" + ui + "'\n" + " config_write: true\n" + -" geosite_download_url: '" + geosite + "'\n" + -" geoip_download_url: '" + geoip + "'\n" + " }\n"; let default_block = "experimental {\n" + api_inner + "}\n"; diff --git a/luci-app-honk/root/www/luci-static/resources/view/honk/dashboard.js b/luci-app-honk/root/www/luci-static/resources/view/honk/dashboard.js index aafc2f72e..397a525ad 100644 --- a/luci-app-honk/root/www/luci-static/resources/view/honk/dashboard.js +++ b/luci-app-honk/root/www/luci-static/resources/view/honk/dashboard.js @@ -31,7 +31,7 @@ return view.extend({ apiName: 'Native API', defaultPort: '9527', defaultDir: '/etc/honk/zashboard', - exampleConfig: "experimental {\n native_api {\n enabled: true\n listen: '0.0.0.0:9527'\n secret: 'honk114514'\n ui: '/etc/honk/zashboard'\n config_write: true\n geosite_download_url: 'https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/release/geosite.dat'\n geoip_download_url: 'https://raw.githubusercontent.com/QiuSimons/geoip-moedove/refs/heads/main/geoip.dat'\n }\n}", + exampleConfig: "experimental {\n native_api {\n enabled: true\n listen: '0.0.0.0:9527'\n secret: 'honk114514'\n ui: '/etc/honk/zashboard'\n config_write: true\n }\n}", buildUrl: function(info, targetHost, port, secret, protocol, forceFresh) { var hostPart = (targetHost.indexOf(':') !== -1 && targetHost.charAt(0) !== '[') ? '[' + targetHost + ']' : targetHost; var query = 'hostname=' + encodeURIComponent(targetHost) + @@ -58,7 +58,7 @@ return view.extend({ apiName: 'Native API', defaultPort: '9527', defaultDir: '/etc/honk/doona', - exampleConfig: "experimental {\n native_api {\n enabled: true\n listen: '0.0.0.0:9527'\n secret: 'honk114514'\n ui: '/etc/honk/doona'\n config_write: true\n geosite_download_url: 'https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/release/geosite.dat'\n geoip_download_url: 'https://raw.githubusercontent.com/QiuSimons/geoip-moedove/refs/heads/main/geoip.dat'\n }\n}", + exampleConfig: "experimental {\n native_api {\n enabled: true\n listen: '0.0.0.0:9527'\n secret: 'honk114514'\n ui: '/etc/honk/doona'\n config_write: true\n }\n}", buildUrl: function(info, targetHost, port, secret, protocol, forceFresh) { var hostPart = (targetHost.indexOf(':') !== -1 && targetHost.charAt(0) !== '[') ? '[' + targetHost + ']' : targetHost; var url = protocol + '://' + hostPart + ':' + port + '/ui/'; diff --git a/luci-app-open-box/Makefile b/luci-app-open-box/Makefile index 936835789..0c49cd499 100644 --- a/luci-app-open-box/Makefile +++ b/luci-app-open-box/Makefile @@ -1,8 +1,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-open-box -PKG_VERSION:=0.1.288 -PKG_RELEASE:=12 +PKG_VERSION:=0.1.290 +PKG_RELEASE:=13 PKG_MAINTAINER:=liandu2024 PKG_LICENSE:=GPL-3.0-or-later diff --git a/luci-app-substore/CHANGELOG.md b/luci-app-substore/CHANGELOG.md index 1092db5b4..03432d6ba 100644 --- a/luci-app-substore/CHANGELOG.md +++ b/luci-app-substore/CHANGELOG.md @@ -2,6 +2,31 @@ All notable changes to this project will be documented in this file. +## [2.7.3-r1] - 结清「附:P2 修复范围」:改写为历史范围定义(仅文档) + +`docs/LEGACY_ISSUES.md` 末尾的「附:P2 修复范围」一节,是 P2 **开工时**写下的范围 +定义(`2d29250`,即 P2 批次一那次提交),原文用「**例如** … 等」,本身即带示例 +性质。它此前读起来像一份待办清单,容易让人以为还剩一批中危 / 低危项没修。 + +本轮核对后的结论:**P2 已全部结清**。范围区间共 38 项,其中 **35 项**能逐一对到 +CHANGELOG 落点 —— 批次一~批次七(`[2.6.3-r1]`~`[2.6.9-r1]`),M26 更早在 +P0 批次四(`[2.6.0-r5]`)就已修复。该节现在补了一张 ID → 落点的索引表。 + +**三项查无实据:M6 / L15 / L19。** 原始 70 项审计表(高危 14 / 中危 30 / 低危 26) +从未落盘(见该文件开头的「编写纪律」):M6 只在那一行范围定义里被提及过一次, +L15 / L19 连提及都没有、是被 `L8~L26` 区间顺带覆盖进去的。编号不指向任何模块, +无从复核当时指的是什么 —— 按「不猜」原则**不为它们补写描述**,也不假装它们已被 +评估过,只在该节如实写明「无据可查」。区间外的 L2(死代码,P4 已删)与同样查无 +记录的 L7 一并备查。 + +### 影响 + +**仅文档,无代码、无测试变更。** PKG_RELEASE 按 Makefile 的版本约定滚动: +`2.7.2` 已用到 r9,达到 r10 触发 PKG_VERSION 末位 +1、PKG_RELEASE 重置为 1, +故本轮为 `2.7.3-r1`。 + +全套 **59 个测试文件、0 失败**(未改动任何被测代码,跑一遍确认无意外)。 + ## [2.7.2-r9] - Loon 引号包裹的位置参数放行逗号(LEGACY_ISSUES 7.9 e 修订) 第五轮把 7.9(e) 判为「含英文逗号就整条丢弃」,理由里有一句是错的。本轮复核后 diff --git a/luci-app-substore/Makefile b/luci-app-substore/Makefile index b90d3cc2c..522b5e04b 100644 --- a/luci-app-substore/Makefile +++ b/luci-app-substore/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-substore # 版本约定:每次提交 PKG_RELEASE +1(2.1.2-r1 ~ r9); # 达到 r10 时 PKG_VERSION 末位 +1(2.1.2 -> 2.1.3),PKG_RELEASE 重置为 1。 -PKG_VERSION:=2.7.2 -PKG_RELEASE:=23 +PKG_VERSION:=2.7.3 +PKG_RELEASE:=24 LUCI_DEPENDS:=+luci-lua-runtime +luci-compat diff --git a/luci-app-substore/docs/LEGACY_ISSUES.md b/luci-app-substore/docs/LEGACY_ISSUES.md index c013bb1bf..cb0571f4c 100644 --- a/luci-app-substore/docs/LEGACY_ISSUES.md +++ b/luci-app-substore/docs/LEGACY_ISSUES.md @@ -11,7 +11,7 @@ |---|---|---| | P0 | 14 项高危(输出整份不可用 / 数据永久丢失 / 安全) | ✅ 已完成(4 次推送,见 CHANGELOG `[2.6.0-r2]`~`[2.6.0-r5]`) | | P1 | 13 项中危 + 审计中实测确认的 4 项新缺陷 | ✅ 已完成(`[2.6.1-r1]`) | -| P2 | 其余 M / L 项 | ✅ 已完成(批次一 `[2.6.3-r1]`、批次二 `[2.6.4-r1]`、批次三 `[2.6.5-r1]`、批次四 `[2.6.6-r1]`、批次五 `[2.6.7-r1]`、批次六 `[2.6.8-r1]`、批次七 `[2.6.9-r1]`「P2 最后一批」) | +| P2 | 其余 M / L 项 | ✅ 已完成(批次一 `[2.6.3-r1]`、批次二 `[2.6.4-r1]`、批次三 `[2.6.5-r1]`、批次四 `[2.6.6-r1]`、批次五 `[2.6.7-r1]`、批次六 `[2.6.8-r1]`、批次七 `[2.6.9-r1]`「P2 最后一批」)。范围定义里有 **M6 / L15 / L19** 三项无据可查,见文末「附」 | | P3 | 输出层代码级复审(10 项)+ shadowsocks SIP003 插件全链路(1 项) | ✅ 已完成(`[2.6.10-r1]`,见下文「四」) | | P4 | 遗留项决策后实施(1.1 / 1.3 / 1.4 / 1.5 / 2.5 五项,3.3 补文档) | ✅ 已完成(`[2.6.11-r1]`,见下文「五」) | | P5 | 决策项实施(wget 路径 SSRF、删除部分失败漏写 cron、混合格式静默丢弃、写入失败被忽略、M28 token、M29 ACL;wget 体积/重定向记文档) | ✅ 已完成(`[2.6.16-r1]`,见下文「六」) | @@ -1552,9 +1552,44 @@ Loon 官方文档(`nsloon.app/docs/Node/`)原文是「**参数值中含有 --- -# 附:P2 修复范围(不含本文件所列项) +# 附:P2 修复范围(**历史范围定义,已结清**) + +> **本节不是待办清单**,是 P2 **开工时**写下的范围定义(`2d29250`,即 P2 批次一 +> 那次提交),原文用的是「**例如** … 等」,本身即带示例性质。P2 已由批次一~批次七 +> 全部实施完毕(见文件开头的进度表)。保留本节是为了说明**当时**划定的边界; +> 若日后有人照着它去「补修 P2」,那是在修一份已经修完的清单。 P2 为审计表中**其余中危 / 低危**项中性质明确、无需另行决策的缺陷,例如 M6 / M9 / M13 / M14 / M16 / M17 / M18 / M19 / M23 / M24 / M25 / M26 / M27 / M30 与 L1 / L3~L6 / L8~L26 等。逐项修复并补回归测试,完成后在 CHANGELOG 中记录。 本文件所列各项**不在** P2 范围内。 + +## 逐条落点(38 项,35 项有据) + +| 批次 | 版本 | 覆盖的 ID | +|---|---|---| +| 批次一 | `[2.6.3-r1]` | M13 / M14 / L13 | +| 批次二 | `[2.6.4-r1]` | M9 / L16 / L17 / L18 / L20 | +| 批次三 | `[2.6.5-r1]` | M19 / M23 / M24 / M25 / M27 / L21 / L22 | +| 批次四 | `[2.6.6-r1]` | M16 / M17 / M18 / M30 | +| 批次五 | `[2.6.7-r1]` | L3 / L4 | +| 批次六 | `[2.6.8-r1]` | L10 / L11 / L12 / L14 | +| 批次七 | `[2.6.9-r1]` | L1 / L5 / L6 / L8 / L9 / L23 / L24 / L25 / L26 | +| P0 批次四 | `[2.6.0-r5]` | M26(P2 开工前即已修复,此处仅备查) | + +每一项的内容见对应版本的 CHANGELOG;本表只做 ID → 落点的索引,不重复描述。 + +## 三项查无实据:M6 / L15 / L19 + +这三项落在上面的范围区间内,但仓库里**没有任何记录** —— 既无 CHANGELOG 落点, +也无缺陷描述。原因见文件开头的「编写纪律」:**原始 70 项审计表(高危 14 / +中危 30 / 低危 26)从未落盘**。其中 M6 只在上面那一行范围定义里被提及过一次; +**L15 / L19 连提及都没有**,它们是被 `L8~L26` 这个区间顺带覆盖进去的。 + +**处置:不追补。** 编号本身不指向任何模块或文件,无从复核当时指的是什么。按 +「不猜」原则,本节不为它们补写描述,也不假装它们已被评估过 —— 只如实记下 +「无据可查」这一事实。若日后拿到原始审计表,再按当时的口径单独决策。 + +**两个区间外的编号**,一并备查:**L2** 是 `converter.lua` / `node_converter.lua` +死代码(见上文 1.4),已在 P4 删除(`[2.6.11-r1]`),本就不在 P2 区间内; +**L7** 同样查无记录,且不在本区间内。 diff --git a/luci-app-wizard/root/usr/share/luci/menu.d/luci-app-wizard.json b/luci-app-wizard/root/usr/share/luci/menu.d/luci-app-wizard.json index a8169512d..4f22bd611 100644 --- a/luci-app-wizard/root/usr/share/luci/menu.d/luci-app-wizard.json +++ b/luci-app-wizard/root/usr/share/luci/menu.d/luci-app-wizard.json @@ -1,7 +1,7 @@ { "admin/system/wizard": { "title": "Setup Wizard", - "order": 10, + "order": 1, "action": { "type": "view", "path": "wizard/initsetup" diff --git a/luci-theme-vantage/Makefile b/luci-theme-vantage/Makefile index 4119eab7b..7ad11a7fd 100644 --- a/luci-theme-vantage/Makefile +++ b/luci-theme-vantage/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-theme-vantage PKG_VERSION:=1.0.1 -PKG_RELEASE:=8 +PKG_RELEASE:=9 PKG_LICENSE:=GPL-3.0-or-later LUCI_TITLE:=Vantage theme diff --git a/luci-theme-vantage/htdocs/luci-static/vantage/pattern.svg b/luci-theme-vantage/htdocs/luci-static/vantage/pattern.svg new file mode 100644 index 000000000..72eb03cdc --- /dev/null +++ b/luci-theme-vantage/htdocs/luci-static/vantage/pattern.svg @@ -0,0 +1,550 @@ + + + + +Created by potrace 1.16, written by Peter Selinger 2001-2019 + + diff --git a/luci-theme-vantage/htdocs/luci-static/vantage/vantage.css b/luci-theme-vantage/htdocs/luci-static/vantage/vantage.css index 0c149cdd7..dbc6af59b 100644 --- a/luci-theme-vantage/htdocs/luci-static/vantage/vantage.css +++ b/luci-theme-vantage/htdocs/luci-static/vantage/vantage.css @@ -716,12 +716,6 @@ html:has(.vt-tabs:not([hidden])) { --stick-top: calc(var(--top-h) + 41px); } border-radius: 10px; box-shadow: var(--v-shadow); min-width: 0; - background-clip: padding-box; -} -.cbi-section > legend:first-child{ - margin-left: 10px !important; - padding: 10px !important; - border: none !important; } /* card header row */ .cbi-section > h3:first-child, .cbi-section > legend:first-child, .cbi-section > .cbi-title:first-child, @@ -1988,7 +1982,22 @@ html:not([data-darkmode="true"]) .vt-login-page { linear-gradient(90deg, rgba(20, 23, 26, .04) 1px, transparent 1px) 0 0 / 32px 32px, var(--bg); } -.vt-login { width: min(380px, 100%); } +.vt-login { + width: min(380px, 100%); + z-index: 1; +} +.vt-login-page{ + background:none !important; +} +.vt-login-page::before { + content: ""; + position: absolute; + inset: 0; + background-image: url('/luci-static/vantage/pattern.svg'); + background-size: 440px auto; + background-position: center; + opacity: 0.4; +} .vt-login-card { padding: var(--sp-6); background: var(--s1); diff --git a/wwand-ipa/Makefile b/wwand-ipa/Makefile index a6aa1f048..9e0291afe 100644 --- a/wwand-ipa/Makefile +++ b/wwand-ipa/Makefile @@ -13,8 +13,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wwand-ipa -PKG_VERSION:=0.1.0_p7 -PKG_RELEASE:=8 +PKG_VERSION:=0.2.0 +PKG_RELEASE:=9 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/ddimension/wwand-ipa.git diff --git a/wwand-ipad/Makefile b/wwand-ipad/Makefile index 657e7ea03..a2d3b3fb4 100644 --- a/wwand-ipad/Makefile +++ b/wwand-ipad/Makefile @@ -15,8 +15,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wwand-ipad -PKG_VERSION:=0.1.0_p40 -PKG_RELEASE:=8 +PKG_VERSION:=0.2.0 +PKG_RELEASE:=9 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/ddimension/ipad.git diff --git a/wwand-rsim/Makefile b/wwand-rsim/Makefile index 2ace65821..06e692f2a 100644 --- a/wwand-rsim/Makefile +++ b/wwand-rsim/Makefile @@ -21,8 +21,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wwand-rsim -PKG_VERSION:=0.0.1_p55 -PKG_RELEASE:=5 +PKG_VERSION:=0.1.0 +PKG_RELEASE:=6 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/ddimension/wwand-rsim.git