From e523474631c0bf130f89281bd11582b23ab317d1 Mon Sep 17 00:00:00 2001 From: Dushnilin Date: Wed, 9 Sep 2026 17:28:51 +0300 Subject: [PATCH] =?UTF-8?q?release:=201.3.24=20=E2=80=94=20=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=20=D1=83=D1=82=D0=B5=D1=87=D0=BA=D0=B8=20IP/DNS=20?= =?UTF-8?q?=D0=B8=D0=B7=20=D1=80=D0=BE=D1=83=D1=82=D0=B5=D1=80=D0=B0,=20?= =?UTF-8?q?=D0=BE=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B0=20=D1=81?= =?UTF-8?q?=D0=BF=D0=B8=D1=81=D0=BA=D0=BE=D0=B2=20=D1=85=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=BE=D0=B2=20=D0=B8=20=D0=BB=D0=BE=D0=BA=D0=B0=D0=BB=D0=B8?= =?UTF-8?q?=D0=B7=D0=B0=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - feat(diagnostics): router-level IP & DNS leak detection * одновременный опрос прямого WAN сокета (SO_MARK 0x08000000) и локального прокси (127.0.0.1:4534) * выявление утечки реального публичного IP адреса * тестирование восходящих DNS-резолверов по протоколу bash.ws и обнаружение DNS провайдера * CLI команды: tachyon leak_check [--pretty], check_ip_leak, check_dns_leak * LuCI модальное окно с детализированными таблицами изоляции IP и анализа резолверов - fix(hosts): устранение ложного предупреждения [warn] No hosts list URLs configured * запуск HOSTS_UC в lifecycle.uc только при наличии активных списков хостов * hosts.uc возвращает success:true и код 0 без лишних записей в syslog при отсутствии URL * добавлена проверка has-hosts-list-update-sources в state.uc - i18n: полная синхронизация русской локализации в каталогах gettext PO/POT - bump: версия пакета 1.3.24 --- fe-app-tachyon/locales/calls.json | 4232 +++++++++-------- fe-app-tachyon/locales/tachyon.pot | 4091 ++++++++-------- fe-app-tachyon/locales/tachyon.ru.po | 144 +- fe-app-tachyon/package.json | 2 +- .../src/tachyon/methods/shell/index.ts | 24 + .../tachyon/tabs/diagnostic/initController.ts | 11 + .../tachyon/tabs/diagnostic/partials/index.ts | 1 + .../partials/renderAvailableActions.ts | 12 + .../partials/renderLeakCheckModal.ts | 410 ++ .../diagnostic/tests/leakCheckModal.test.ts | 221 + fe-app-tachyon/src/tachyon/types.ts | 40 + .../resources/view/tachyon/main.js | 375 +- luci-app-tachyon/po/ru/tachyon.po | 144 +- luci-app-tachyon/po/templates/tachyon.pot | 4091 ++++++++-------- tachyon/files/usr/bin/tachyon | 6 + tachyon/files/usr/lib/components/hosts.uc | 10 +- .../files/usr/lib/diagnostics/leak_check.uc | 433 ++ tachyon/files/usr/lib/service/api.uc | 21 + tachyon/files/usr/lib/service/lifecycle.uc | 5 +- tachyon/files/usr/lib/service/state.uc | 25 + tests/hosts_list.sh | 5 + tests/leak_check.sh | 66 + tests/runtime_state_predicates.sh | 39 + 23 files changed, 8542 insertions(+), 5866 deletions(-) create mode 100644 fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts create mode 100644 fe-app-tachyon/src/tachyon/tabs/diagnostic/tests/leakCheckModal.test.ts create mode 100644 tachyon/files/usr/lib/diagnostics/leak_check.uc create mode 100644 tests/leak_check.sh diff --git a/fe-app-tachyon/locales/calls.json b/fe-app-tachyon/locales/calls.json index 3ebcc9bc..820fc133 100644 --- a/fe-app-tachyon/locales/calls.json +++ b/fe-app-tachyon/locales/calls.json @@ -3,57 +3,57 @@ "call": "-- Select --", "key": "-- Select --", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2123", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2500", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2879", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2894", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3110", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3349", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3501", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3511" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2367", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2744", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3123", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3138", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3339", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3354", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3593", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3745", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3755" ] }, { "call": ".lst Lists", "key": ".lst Lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11315" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11674" ] }, { "call": "(provider default)", "key": "(provider default)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2625" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2627" ] }, { "call": "+ Add JSON outbound", "key": "+ Add JSON outbound", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9719" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045" ] }, { "call": "+ Add level", "key": "+ Add level", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3509" ] }, { "call": "+ Add priority", "key": "+ Add priority", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10131" ] }, { "call": "+ Add Strategy", "key": "+ Add Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13357", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13396", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:904" ] }, @@ -61,14 +61,14 @@ "call": "+ Add URLTest", "key": "+ Add URLTest", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9746" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10072" ] }, { "call": "⏳ Stopping...", "key": "⏳ Stopping...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14115", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14154", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1779" ] }, @@ -76,7 +76,7 @@ "call": "⚠️ Benchmark completed. No working bypass found for this target.", "key": "⚠️ Benchmark completed. No working bypass found for this target.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1618" ] }, @@ -84,37 +84,53 @@ "call": "⚠️ Benchmark stopped", "key": "⚠️ Benchmark stopped", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1617" ] }, + { + "call": "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!", + "key": "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:122" + ] + }, + { + "call": "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!", + "key": "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14949", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:263" + ] + }, { "call": "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss.", "key": "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1489" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1491" ] }, { "call": "⚠️ If all Main DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss.", "key": "⚠️ If all Main DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1478" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1480" ] }, { "call": "⚡ DPI Strategy Fuzzer", "key": "⚡ DPI Strategy Fuzzer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11425", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:162" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11454", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:164" ] }, { "call": "⚡ Fast (>1MB/s)", "key": "⚡ Fast (>1MB/s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12946", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12985", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:440" ] }, @@ -122,7 +138,7 @@ "call": "⚡ QUIC / HTTP/3 (UDP 443)", "key": "⚡ QUIC / HTTP/3 (UDP 443)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12746", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12785", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:209" ] }, @@ -130,7 +146,7 @@ "call": "⚡ Quick Benchmark (Presets ~30+)", "key": "⚡ Quick Benchmark (Presets ~30+)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12783", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12822", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:254" ] }, @@ -138,7 +154,7 @@ "call": "⚡ Strategy Fuzzer & Auto-Tuner", "key": "⚡ Strategy Fuzzer & Auto-Tuner", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14307", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14346", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:2010" ] }, @@ -146,7 +162,7 @@ "call": "✅ Auto-applied best strategy", "key": "✅ Auto-applied best strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14039", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14078", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1690" ] }, @@ -154,7 +170,7 @@ "call": "✅ Benchmark completed! Optimal strategy identified.", "key": "✅ Benchmark completed! Optimal strategy identified.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13978", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14017", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1611" ] }, @@ -162,7 +178,7 @@ "call": "✅ Working only", "key": "✅ Working only", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12937", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12976", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:431" ] }, @@ -170,7 +186,7 @@ "call": "✈️ Telegram Suite (Web + Bot API)", "key": "✈️ Telegram Suite (Web + Bot API)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12743", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12782", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:206" ] }, @@ -178,7 +194,7 @@ "call": "✔ Online", "key": "✔ Online", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055", "src/tachyon/tabs/dashboard/initController.ts:1976" ] }, @@ -186,11 +202,11 @@ "call": "✔ Running", "key": "✔ Running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017", "src/tachyon/tabs/dashboard/initController.ts:1906", "src/tachyon/tabs/dashboard/initController.ts:1917", "src/tachyon/tabs/dashboard/initController.ts:1918", @@ -202,7 +218,7 @@ "call": "✘ Offline", "key": "✘ Offline", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055", "src/tachyon/tabs/dashboard/initController.ts:1976" ] }, @@ -210,8 +226,8 @@ "call": "✘ Stopped", "key": "✘ Stopped", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008", "src/tachyon/tabs/dashboard/initController.ts:1906", "src/tachyon/tabs/dashboard/initController.ts:1919" ] @@ -220,7 +236,7 @@ "call": "🌐 Custom Target URL...", "key": "🌐 Custom Target URL...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12747", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12786", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:210" ] }, @@ -228,7 +244,7 @@ "call": "🎬 YouTube Full Suite (Web + 4K Stream + CDN)", "key": "🎬 YouTube Full Suite (Web + 4K Stream + CDN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12717", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12756", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:180" ] }, @@ -236,7 +252,7 @@ "call": "🏆 Apply Best Match", "key": "🏆 Apply Best Match", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12903", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12942", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:394" ] }, @@ -244,7 +260,7 @@ "call": "🏴‍☠️ RuTracker Suite", "key": "🏴‍☠️ RuTracker Suite", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12745", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12784", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:208" ] }, @@ -252,7 +268,7 @@ "call": "🐦 X / Twitter Suite (API + Media CDN)", "key": "🐦 X / Twitter Suite (API + Media CDN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12732", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12771", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:195" ] }, @@ -260,7 +276,7 @@ "call": "💬 Discord Suite (Gateway + Voice + CDN)", "key": "💬 Discord Suite (Gateway + Voice + CDN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12722", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12761", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:185" ] }, @@ -268,7 +284,7 @@ "call": "💾 Save Custom Patterns", "key": "💾 Save Custom Patterns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13303", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13342", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:841" ] }, @@ -276,7 +292,7 @@ "call": "📸 Instagram / Meta (Web + CDN)", "key": "📸 Instagram / Meta (Web + CDN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12738", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12777", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:201" ] }, @@ -284,7 +300,7 @@ "call": "🔄 Refresh", "key": "🔄 Refresh", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13588", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13627", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1170" ] }, @@ -292,7 +308,7 @@ "call": "🔄 Reset to Factory Defaults", "key": "🔄 Reset to Factory Defaults", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13315", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13354", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:854" ] }, @@ -300,7 +316,7 @@ "call": "🔍 Combinatorial Deep Fuzzing (~150-300+)", "key": "🔍 Combinatorial Deep Fuzzing (~150-300+)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12788", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12827", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:259" ] }, @@ -308,7 +324,7 @@ "call": "🗑️ Clear History", "key": "🗑️ Clear History", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13632", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1175" ] }, @@ -316,7 +332,7 @@ "call": "🤖 ChatGPT / OpenAI Suite", "key": "🤖 ChatGPT / OpenAI Suite", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12734", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12773", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:197" ] }, @@ -324,8 +340,8 @@ "call": "🧠 Synthesize with AI", "key": "🧠 Synthesize with AI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13510", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14246", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13549", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1078", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1929" ] @@ -334,7 +350,7 @@ "call": "🧠 Synthesizing...", "key": "🧠 Synthesizing...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14201", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1875" ] }, @@ -342,7 +358,7 @@ "call": "🚀 Initializing benchmark in sandbox...", "key": "🚀 Initializing benchmark in sandbox...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14134", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14173", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1801" ] }, @@ -350,9 +366,9 @@ "call": "🚀 Start Benchmark", "key": "🚀 Start Benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13071", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14016", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14194", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13110", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14055", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14233", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:580", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1657", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1867" @@ -362,7 +378,7 @@ "call": "🛑 Benchmark stopped", "key": "🛑 Benchmark stopped", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609" ] }, @@ -370,9 +386,9 @@ "call": "🛑 Stop Benchmark", "key": "🛑 Stop Benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14124", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14227", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14050", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14163", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14266", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1652", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1789", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1908" @@ -382,23 +398,55 @@ "call": "🛠️ My Custom Strategies Only", "key": "🛠️ My Custom Strategies Only", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12790", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12829", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:261" ] }, + { + "call": "🛡️ IP & DNS Leak Test", + "key": "🛡️ IP & DNS Leak Test", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11474", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:184" + ] + }, + { + "call": "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers.", + "key": "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14951", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:267" + ] + }, + { + "call": "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound.", + "key": "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14836", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:125" + ] + }, { "call": "🟣 Twitch Suite (Live Stream + HLS CDN)", "key": "🟣 Twitch Suite (Live Stream + HLS CDN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12727", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12766", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:190" ] }, + { + "call": "127.0.0.1:4534 (sing-box mixed)", + "key": "127.0.0.1:4534 (sing-box mixed)", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14893", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:188" + ] + }, { "call": "Блокировка по IP (Таймаут TCP SYN)", "key": "Блокировка по IP (Таймаут TCP SYN)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14089", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14128", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1746" ] }, @@ -406,7 +454,7 @@ "call": "Обнаружена блокировка по IP! Ресурс блокируется на сетевом уровне (нет ответа на TCP SYN). Методы обхода DPI (Zapret / ByeDPI) бессильны для этого адреса — настройте маршрутизацию через прокси/VPN (Sing-box) для данного домена!", "key": "Обнаружена блокировка по IP! Ресурс блокируется на сетевом уровне (нет ответа на TCP SYN). Методы обхода DPI (Zapret / ByeDPI) бессильны для этого адреса — настройте маршрутизацию через прокси/VPN (Sing-box) для данного домена!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14096", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14135", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1757" ] }, @@ -414,7 +462,7 @@ "call": "Accept external proxy connections and route them with sing-box.", "key": "Accept external proxy connections and route them with sing-box.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:531" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:572" ] }, { @@ -428,22 +476,22 @@ "call": "Access schedule and screen time limits", "key": "Access schedule and screen time limits", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1014" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1016" ] }, { "call": "Action", "key": "Action", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7306", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7335" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7551", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7580" ] }, { "call": "Action failed", "key": "Action failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9999", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10027", "src/tachyon/helpers/notifyActionFailure.ts:40" ] }, @@ -476,8 +524,8 @@ "call": "Actions", "key": "Actions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13046", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13423", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13085", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13462", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:552", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:979" ] @@ -486,9 +534,9 @@ "call": "Active", "key": "Active", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8371", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17263", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17848", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8399", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17641", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18226", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:464", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470", "src/tachyon/tabs/dashboard/initController.ts:1137", @@ -516,7 +564,7 @@ "call": "Active Bootstrap DNS", "key": "Active Bootstrap DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:56" ] }, @@ -534,7 +582,7 @@ "call": "Active Connections", "key": "Active Connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8958", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8986", "src/tachyon/tabs/dashboard/initController.ts:1890" ] }, @@ -542,7 +590,7 @@ "call": "Active Main DNS", "key": "Active Main DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67" ] }, @@ -550,7 +598,7 @@ "call": "Active routes", "key": "Active routes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11831", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11870", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:245" ] }, @@ -558,35 +606,35 @@ "call": "Add a family profile", "key": "Add a family profile", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:559" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:600" ] }, { "call": "Add a schedule rule", "key": "Add a schedule rule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:618" ] }, { "call": "Add a section", "key": "Add a section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560" ] }, { "call": "Add a server inbound", "key": "Add a server inbound", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:537" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:578" ] }, { "call": "Add at least one DNS server", "key": "Add at least one DNS server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1904", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2148", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:124", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:183" ] @@ -595,7 +643,7 @@ "call": "Add Custom DPI Strategy", "key": "Add Custom DPI Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13391", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13430", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:944" ] }, @@ -603,42 +651,42 @@ "call": "Add prefix to nodes", "key": "Add prefix to nodes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2590" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2834" ] }, { "call": "Add URLs or local paths to .lst lists containing domains and subnets.", "key": "Add URLs or local paths to .lst lists containing domains and subnets.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10321" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10661" ] }, { "call": "Add URLs or local paths to .lst lists containing domains. IP entries are ignored.", "key": "Add URLs or local paths to .lst lists containing domains. IP entries are ignored.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10345" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10685" ] }, { "call": "Add URLs or local paths to .srs / .json lists. Only domain rules are supported.", "key": "Add URLs or local paths to .srs / .json lists. Only domain rules are supported.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10296" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10636" ] }, { "call": "Add URLs or local paths to .srs / .json lists. Subnets are ignored by default.", "key": "Add URLs or local paths to .srs / .json lists. Subnets are ignored by default.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10267" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10607" ] }, { "call": "Add URLTest / Priority group", "key": "Add URLTest / Priority group", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3523" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3767" ] }, { @@ -652,7 +700,7 @@ "call": "Additional marking rules found", "key": "Additional marking rules found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:106" ] }, @@ -660,37 +708,37 @@ "call": "Additionally exclude servers by protocol, transport, and security. Exclude only servers matching the specified parameters.", "key": "Additionally exclude servers by protocol, transport, and security. Exclude only servers matching the specified parameters.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2809", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3022" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3053", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3266" ] }, { "call": "Additionally filter servers by protocol, transport, and security. Add only servers matching the specified parameters.", "key": "Additionally filter servers by protocol, transport, and security. Add only servers matching the specified parameters.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2792", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3036", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3248" ] }, { "call": "Additionally hide servers by protocol, transport, and security. Hide servers matching the specified parameters.", "key": "Additionally hide servers by protocol, transport, and security. Hide servers matching the specified parameters.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3667" ] }, { "call": "Additionally show servers by protocol, transport, and security. Add only servers matching the specified parameters.", "key": "Additionally show servers by protocol, transport, and security. Add only servers matching the specified parameters.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3403" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3647" ] }, { "call": "Address", "key": "Address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14383", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14422", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1734", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:45" ] @@ -699,7 +747,7 @@ "call": "Administrator Chat IDs", "key": "Administrator Chat IDs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3159" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3161" ] }, { @@ -713,7 +761,7 @@ "call": "Advanced System", "key": "Advanced System", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1290" ] }, { @@ -734,35 +782,35 @@ "call": "AEAD Method", "key": "AEAD Method", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9442" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9768" ] }, { "call": "AI & Watchdog", "key": "AI & Watchdog", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1289" ] }, { "call": "AI Agent REST API Bearer Token", "key": "AI Agent REST API Bearer Token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2576" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2578" ] }, { "call": "AI API Key", "key": "AI API Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2643" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2645" ] }, { "call": "AI Chat & Tachyon Assistant", "key": "AI Chat & Tachyon Assistant", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12575", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12614", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:235" ] }, @@ -770,15 +818,15 @@ "call": "AI Chat Assistant", "key": "AI Chat Assistant", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11415", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:152" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:154" ] }, { "call": "AI Diagnostics & Strategy Rationale", "key": "AI Diagnostics & Strategy Rationale", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13528", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13567", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1099" ] }, @@ -786,34 +834,34 @@ "call": "AI Doctor Diagnosis", "key": "AI Doctor Diagnosis", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16403", - "src/tachyon/tabs/diagnostic/initController.ts:1563" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16772", + "src/tachyon/tabs/diagnostic/initController.ts:1564" ] }, { "call": "AI Doctor failed", "key": "AI Doctor failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16406", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16414", - "src/tachyon/tabs/diagnostic/initController.ts:857", - "src/tachyon/tabs/diagnostic/initController.ts:1569", - "src/tachyon/tabs/diagnostic/initController.ts:1577" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16775", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16783", + "src/tachyon/tabs/diagnostic/initController.ts:858", + "src/tachyon/tabs/diagnostic/initController.ts:1570", + "src/tachyon/tabs/diagnostic/initController.ts:1578" ] }, { "call": "AI Doctor Language", "key": "AI Doctor Language", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2631" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2633" ] }, { "call": "AI Doctor RAG", "key": "AI Doctor RAG", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12650", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:95" ] }, @@ -821,7 +869,7 @@ "call": "AI DPI Engineer & Strategy Synthesizer", "key": "AI DPI Engineer & Strategy Synthesizer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13550", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13589", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1124" ] }, @@ -829,21 +877,21 @@ "call": "AI Model", "key": "AI Model", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2618" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2620" ] }, { "call": "AI Provider", "key": "AI Provider", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2601" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2603" ] }, { "call": "AI service error", "key": "AI service error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12502", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12541", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:151" ] }, @@ -851,7 +899,7 @@ "call": "AI successfully synthesized custom strategies!", "key": "AI successfully synthesized custom strategies!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14217", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14256", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1894" ] }, @@ -859,7 +907,7 @@ "call": "AI Synthesis Error", "key": "AI Synthesis Error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1923" ] }, @@ -867,7 +915,7 @@ "call": "AI synthesis failed", "key": "AI synthesis failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14239", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14278", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1922" ] }, @@ -875,9 +923,9 @@ "call": "All", "key": "All", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12928", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17282", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17813", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12967", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17660", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18191", "src/tachyon/tabs/monitoring/initController.ts:681", "src/tachyon/tabs/monitoring/render.ts:40", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:422" @@ -887,14 +935,14 @@ "call": "All checks passed — Telegram bot should work correctly", "key": "All checks passed — Telegram bot should work correctly", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3377" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3379" ] }, { "call": "All components", "key": "All components", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2238" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240" ] }, { @@ -916,7 +964,7 @@ "call": "All Engines (Full Matrix)", "key": "All Engines (Full Matrix)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12692", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12731", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:151" ] }, @@ -924,7 +972,7 @@ "call": "All except selected", "key": "All except selected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2020" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2264" ] }, { @@ -946,29 +994,29 @@ "call": "All remaining except selected", "key": "All remaining except selected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2030" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2274" ] }, { "call": "All remaining servers", "key": "All remaining servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2028" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2272" ] }, { "call": "All remaining servers means every server not already assigned to a higher-priority level.", "key": "All remaining servers means every server not already assigned to a higher-priority level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2978" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3222" ] }, { "call": "All Routes", "key": "All Routes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17290", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17786", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17668", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18164", "src/tachyon/tabs/monitoring/initController.ts:644", "src/tachyon/tabs/monitoring/render.ts:49" ] @@ -977,15 +1025,15 @@ "call": "All servers", "key": "All servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2019" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2263" ] }, { "call": "All services", "key": "All services", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11840", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11943", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11879", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11982", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:257", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:376" ] @@ -994,7 +1042,7 @@ "call": "All traffic from these IP addresses will be routed through the section unconditionally, ignoring all other conditions.", "key": "All traffic from these IP addresses will be routed through the section unconditionally, ignoring all other conditions.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10377" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10717" ] }, { @@ -1016,7 +1064,7 @@ "call": "Allow Insecure TLS", "key": "Allow Insecure TLS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9288" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9614" ] }, { @@ -1051,7 +1099,7 @@ "call": "Allowed domain prefixes are full:, keyword:, and regex:", "key": "Allowed domain prefixes are full:, keyword:, and regex:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5387" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5631" ] }, { @@ -1072,21 +1120,21 @@ "call": "Allows access to YACD from the WAN. Make sure to open the appropriate port in your firewall.", "key": "Allows access to YACD from the WAN. Make sure to open the appropriate port in your firewall.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1817" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1819" ] }, { "call": "Allows limiting the list of servers for URLTest", "key": "Allows limiting the list of servers for URLTest", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3013" ] }, { "call": "Allows Tachyon to send diagnostic snapshots to ChatGPT or DeepSeek API for intelligent root-cause analysis and auto-repair recommendations.", "key": "Allows Tachyon to send diagnostic snapshots to ChatGPT or DeepSeek API for intelligent root-cause analysis and auto-repair recommendations.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2590" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2592" ] }, { @@ -1114,29 +1162,29 @@ "call": "Always visible", "key": "Always visible", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1155", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1197" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1199" ] }, { "call": "AmneziaWG (Cloudflare WARP) configuration generated and loaded successfully!", "key": "AmneziaWG (Cloudflare WARP) configuration generated and loaded successfully!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8628" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8890" ] }, { "call": "AmneziaWG 3.0 / 3.1 content padding range, e.g. 38-104", "key": "AmneziaWG 3.0 / 3.1 content padding range, e.g. 38-104", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9457" ] }, { "call": "AmneziaWG 3.0 / 3.1 header protection key", "key": "AmneziaWG 3.0 / 3.1 header protection key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9452" ] }, { @@ -1150,7 +1198,7 @@ "call": "AmneziaWG 3.1 disable cookie replies", "key": "AmneziaWG 3.1 disable cookie replies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9175" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9502" ] }, { @@ -1164,7 +1212,7 @@ "call": "AmneziaWG 3.1 keepalive timeout", "key": "AmneziaWG 3.1 keepalive timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9477", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3668" ] }, @@ -1172,7 +1220,7 @@ "call": "AmneziaWG 3.1 max handshake attempts", "key": "AmneziaWG 3.1 max handshake attempts", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9482", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3674" ] }, @@ -1180,14 +1228,14 @@ "call": "AmneziaWG 3.1 random packet trailers", "key": "AmneziaWG 3.1 random packet trailers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9166" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9490" ] }, { "call": "AmneziaWG 3.1 reject after time", "key": "AmneziaWG 3.1 reject after time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9472", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3662" ] }, @@ -1195,7 +1243,7 @@ "call": "AmneziaWG 3.1 rekey after time", "key": "AmneziaWG 3.1 rekey after time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9462", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3650" ] }, @@ -1203,7 +1251,7 @@ "call": "AmneziaWG 3.1 rekey timeout", "key": "AmneziaWG 3.1 rekey timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3656" ] }, @@ -1211,37 +1259,45 @@ "call": "AmneziaWG config loaded successfully!", "key": "AmneziaWG config loaded successfully!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8947" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9238" ] }, { "call": "AmneziaWG Generator", "key": "AmneziaWG Generator", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8438" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8700" ] }, { "call": "AmneziaWG Version", "key": "AmneziaWG Version", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9061", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9352", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3472" ] }, + { + "call": "An unexpected error occurred during test", + "key": "An unexpected error occurred during test", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14815", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:92" + ] + }, { "call": "Anonymized support report copied to clipboard", "key": "Anonymized support report copied to clipboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15939", - "src/tachyon/tabs/diagnostic/initController.ts:970" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16308", + "src/tachyon/tabs/diagnostic/initController.ts:971" ] }, { "call": "Another component action is already running", "key": "Another component action is already running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20496", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20874", "src/tachyon/tabs/updates/initController.ts:942" ] }, @@ -1263,14 +1319,14 @@ "call": "API Key for OpenAI (sk-...) or DeepSeek (optional for Ollama / LM Studio)", "key": "API Key for OpenAI (sk-...) or DeepSeek (optional for Ollama / LM Studio)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2644" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2646" ] }, { "call": "Applied", "key": "Applied", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941" ] }, @@ -1278,7 +1334,7 @@ "call": "Apply", "key": "Apply", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13940", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13979", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1566" ] }, @@ -1286,8 +1342,8 @@ "call": "Apply Recommended DNS", "key": "Apply Recommended DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14589", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14679", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14628", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14718", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:279", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:379" ] @@ -1296,21 +1352,21 @@ "call": "Apply rules of this section only to selected protocols.", "key": "Apply rules of this section only to selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10437" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10777" ] }, { "call": "Apply section rules only to the specified local IP addresses", "key": "Apply section rules only to the specified local IP addresses", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10368" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10708" ] }, { "call": "Apply Strategy To", "key": "Apply Strategy To", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12826", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12865", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:302" ] }, @@ -1325,17 +1381,17 @@ "call": "Applying fix", "key": "Applying fix", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16069", - "src/tachyon/tabs/diagnostic/initController.ts:1181" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16438", + "src/tachyon/tabs/diagnostic/initController.ts:1182" ] }, { "call": "Applying...", "key": "Applying...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14654", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16067", - "src/tachyon/tabs/diagnostic/initController.ts:1179", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14693", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16436", + "src/tachyon/tabs/diagnostic/initController.ts:1180", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:353" ] }, @@ -1343,7 +1399,7 @@ "call": "Arguments", "key": "Arguments", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13417", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13456", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:973" ] }, @@ -1351,7 +1407,7 @@ "call": "Ask Tachyon AI Assistant a question...", "key": "Ask Tachyon AI Assistant a question...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12426", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12465", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:60" ] }, @@ -1366,28 +1422,28 @@ "call": "At least one Admin Chat ID is required", "key": "At least one Admin Chat ID is required", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3170" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3172" ] }, { "call": "At least one valid domain must be specified.", "key": "At least one valid domain must be specified.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5418" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5662" ] }, { "call": "At least one valid IP or subnet must be specified.", "key": "At least one valid IP or subnet must be specified.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5500" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5744" ] }, { "call": "Auth Digest", "key": "Auth Digest", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9866" ] }, { @@ -1395,20 +1451,20 @@ "key": "Auto", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8205", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8551", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11658", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8233", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8579", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11697", "src/tachyon/tabs/dashboard/initController.ts:927", "src/tachyon/tabs/dashboard/initController.ts:1365", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:594", - "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:35" + "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:35", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:594" ] }, { "call": "Auto Modes (--auto)", "key": "Auto Modes (--auto)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13277", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13316", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:813" ] }, @@ -1416,7 +1472,7 @@ "call": "Auto refresh", "key": "Auto refresh", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11272", "src/partials/modal/renderModal.ts:286" ] }, @@ -1431,7 +1487,7 @@ "call": "Auto-apply best strategy", "key": "Auto-apply best strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12890", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:332" ] }, @@ -1439,8 +1495,8 @@ "call": "Auto-apply failed", "key": "Auto-apply failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14049", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14088", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1700" ] @@ -1449,134 +1505,134 @@ "call": "Auto-detected domains", "key": "Auto-detected domains", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2950" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2952" ] }, { "call": "Auto-detected Domains", "key": "Auto-detected Domains", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10191" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10517" ] }, { "call": "Auto-detects blocked domains from logs and adds them to the first section where they work via proxy.", "key": "Auto-detects blocked domains from logs and adds them to the first section where they work via proxy.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2908" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2910" ] }, { "call": "Auto-failover of proxy sections", "key": "Auto-failover of proxy sections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2336" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2338" ] }, { "call": "Auto-generate HWID", "key": "Auto-generate HWID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2516" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760" ] }, { "call": "Auto-Heal Network Stack", "key": "Auto-Heal Network Stack", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15997", - "src/tachyon/tabs/diagnostic/initController.ts:1094" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16366", + "src/tachyon/tabs/diagnostic/initController.ts:1095" ] }, { "call": "Auto-Tune & Benchmark DNS", "key": "Auto-Tune & Benchmark DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1346" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1348" ] }, { "call": "Auto-update Hosts Lists", "key": "Auto-update Hosts Lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8387" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8649" ] }, { "call": "Auto-update mode", "key": "Auto-update mode", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2195" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2197" ] }, { "call": "Automatic component update checks", "key": "Automatic component update checks", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2138" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2140" ] }, { "call": "Automatic component updates", "key": "Automatic component updates", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2184" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2186" ] }, { "call": "Automatic User-Agent selection", "key": "Automatic User-Agent selection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2485" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2729" ] }, { "call": "Automatically add text to the name of each server from this subscription for convenient filtering.", "key": "Automatically add text to the name of each server from this subscription for convenient filtering.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2591" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835" ] }, { "call": "Automatically benchmark latency, packet loss, and anti-censorship reliability of major DNS servers (UDP/DoH) from this router to find and apply the optimal configuration.", "key": "Automatically benchmark latency, packet loss, and anti-censorship reliability of major DNS servers (UDP/DoH) from this router to find and apply the optimal configuration.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1342" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1344" ] }, { "call": "Automatically check installed components for new versions", "key": "Automatically check installed components for new versions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2139" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2141" ] }, { "call": "Automatically download and install new versions of components", "key": "Automatically download and install new versions of components", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2185" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2187" ] }, { "call": "Automatically generate a Cloudflare WARP account and configure all AmneziaWG settings.", "key": "Automatically generate a Cloudflare WARP account and configure all AmneziaWG settings.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8439" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8701" ] }, { "call": "Automatically increase check intervals when healthy (to 5 min) and decrease on problems (to 120s).", "key": "Automatically increase check intervals when healthy (to 5 min) and decrease on problems (to 120s).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2867" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2869" ] }, { "call": "Automatically runs a diagnostic probe against the target service, queries the built-in DPI Knowledge Base, and synthesizes 3-5 custom bypass strategies tailored to your ISP.", "key": "Automatically runs a diagnostic probe against the target service, queries the built-in DPI Knowledge Base, and synthesizes 3-5 custom bypass strategies tailored to your ISP.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13561", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13600", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1135" ] }, @@ -1584,8 +1640,8 @@ "call": "Automatically select the fastest node in the current level", "key": "Automatically select the fastest node in the current level", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8631", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3215", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459", "src/tachyon/tabs/dashboard/initController.ts:1468" ] }, @@ -1593,15 +1649,15 @@ "call": "Automatically update remote hosts lists on schedule", "key": "Automatically update remote hosts lists on schedule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8388" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8650" ] }, { "call": "Available", "key": "Available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11728", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11918", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11767", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11957", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:125", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:346" ] @@ -1610,15 +1666,15 @@ "call": "Available actions", "key": "Available actions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11321", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:58" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11350", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:60" ] }, { "call": "Avg. latency", "key": "Avg. latency", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11920", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11959", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:348" ] }, @@ -1626,16 +1682,24 @@ "call": "Backend validation failed: %s", "key": "Backend validation failed: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5633", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6078", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6490" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5877", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6322", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6734" + ] + }, + { + "call": "Baseline", + "key": "Baseline", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14881", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:175" ] }, { "call": "Basic connectivity", "key": "Basic connectivity", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11675", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11714", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:58" ] }, @@ -1650,14 +1714,14 @@ "call": "Belarus (by)", "key": "Belarus (by)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10452" ] }, { "call": "Benchmark & Test", "key": "Benchmark & Test", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12647", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12686", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:92" ] }, @@ -1665,7 +1729,7 @@ "call": "Benchmark completed successfully", "key": "Benchmark completed successfully", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14617", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14656", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:311" ] }, @@ -1673,7 +1737,7 @@ "call": "Benchmark History", "key": "Benchmark History", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13584", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13623", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1166" ] }, @@ -1681,7 +1745,7 @@ "call": "Benchmark measures actual latency and resolution reliability of major DNS servers (UDP 53 and encrypted DoH) directly from your router to find the fastest, unblocked upstream for your ISP.", "key": "Benchmark measures actual latency and resolution reliability of major DNS servers (UDP 53 and encrypted DoH) directly from your router to find the fastest, unblocked upstream for your ISP.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14687", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14726", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:388" ] }, @@ -1689,7 +1753,7 @@ "call": "Benchmark stopped", "key": "Benchmark stopped", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14117", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14156", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1781" ] }, @@ -1697,7 +1761,7 @@ "call": "Benchmarking in progress...", "key": "Benchmarking in progress...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12875", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12914", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:363" ] }, @@ -1705,7 +1769,7 @@ "call": "Best Strategy", "key": "Best Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13653", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13692", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1240" ] }, @@ -1713,8 +1777,8 @@ "call": "BitTorrent / P2P", "key": "BitTorrent / P2P", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10420", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10439" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10760", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10779" ] }, { @@ -1750,7 +1814,7 @@ "call": "Block internet access or specific proxy sections for family profiles or individual devices based on time and days.", "key": "Block internet access or specific proxy sections for family profiles or individual devices based on time and days.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:569" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:610" ] }, { @@ -1785,7 +1849,7 @@ "call": "Blocked resources", "key": "Blocked resources", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11715", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:59" ] }, @@ -1821,8 +1885,8 @@ "call": "Bootstrap DNS", "key": "Bootstrap DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14556", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:57", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:240" ] @@ -1831,22 +1895,22 @@ "call": "Bootstrap DNS Servers", "key": "Bootstrap DNS Servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1411" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1413" ] }, { "call": "Bot Status", "key": "Bot Status", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3121" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3123" ] }, { "call": "Browser FakeIP check could not be completed", "key": "Browser FakeIP check could not be completed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10474", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10502", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:51", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:79" ] @@ -1855,7 +1919,7 @@ "call": "Browser is not using FakeIP", "key": "Browser is not using FakeIP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:82" ] }, @@ -1863,7 +1927,7 @@ "call": "Browser is using FakeIP correctly", "key": "Browser is using FakeIP correctly", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:81" ] }, @@ -1871,45 +1935,45 @@ "call": "Bug report downloaded", "key": "Bug report downloaded", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16573", - "src/tachyon/tabs/diagnostic/initController.ts:1766" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16945", + "src/tachyon/tabs/diagnostic/initController.ts:1771" ] }, { "call": "Built-in rule sets", "key": "Built-in rule sets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10212" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10538" ] }, { "call": "By flag emoji from name", "key": "By flag emoji from name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2037" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2281" ] }, { "call": "By schedule", "key": "By schedule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2202" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2204" ] }, { "call": "ByeDPI", "key": "ByeDPI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2246" ] }, { "call": "ByeDPI (ciadpi)", "key": "ByeDPI (ciadpi)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12691", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12730", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:150", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1981" @@ -1919,38 +1983,38 @@ "call": "ByeDPI listen address and port are assigned by Tachyon and must not be set in the strategy.", "key": "ByeDPI listen address and port are assigned by Tachyon and must not be set in the strategy.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6559" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6803" ] }, { "call": "ByeDPI option does not accept a compact value: %s", "key": "ByeDPI option does not accept a compact value: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6736" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6980" ] }, { "call": "ByeDPI option does not accept a value: %s", "key": "ByeDPI option does not accept a value: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6665" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6909" ] }, { "call": "ByeDPI option requires a value: %s", "key": "ByeDPI option requires a value: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6657", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6683", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6717", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6726" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6901", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6927", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6961", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6970" ] }, { "call": "ByeDPI package is installed", "key": "ByeDPI package is installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:71" ] }, @@ -1958,7 +2022,7 @@ "call": "ByeDPI package is not installed", "key": "ByeDPI package is not installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:72" ] }, @@ -1966,7 +2030,7 @@ "call": "ByeDPI provider binary is available", "key": "ByeDPI provider binary is available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:64" ] }, @@ -1974,7 +2038,7 @@ "call": "ByeDPI provider binary is not available", "key": "ByeDPI provider binary is not available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:65" ] }, @@ -1990,7 +2054,7 @@ "call": "ByeDPI sing-box outbound is configured", "key": "ByeDPI sing-box outbound is configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:107" ] }, @@ -1998,7 +2062,7 @@ "call": "ByeDPI sing-box outbound is not configured", "key": "ByeDPI sing-box outbound is not configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:108" ] }, @@ -2006,76 +2070,84 @@ "call": "ByeDPI Strategy", "key": "ByeDPI Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7511" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756" ] }, { "call": "ByeDPI strategy cannot be empty", "key": "ByeDPI strategy cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6762" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7006" + ] + }, + { + "call": "Bypasses proxy (SO_MARK 0x08000000)", + "key": "Bypasses proxy (SO_MARK 0x08000000)", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:155" ] }, { "call": "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy.", "key": "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1910" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1912" ] }, { "call": "CA Certificate", "key": "CA Certificate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877" ] }, { "call": "Cache all built-in lists and databases even if they are not currently selected in any section. Recommended if you have plenty of storage space or USB drive.", "key": "Cache all built-in lists and databases even if they are not currently selected in any section. Recommended if you have plenty of storage space or USB drive.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2126" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2128" ] }, { "call": "Cache File Path", "key": "Cache File Path", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2375" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2377" ] }, { "call": "Cache file path cannot be empty", "key": "Cache file path cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2389" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2391" ] }, { "call": "Cancel", "key": "Cancel", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16450", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7976", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16822", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8221", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:476", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:659", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:710", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:778", - "src/tachyon/tabs/diagnostic/initController.ts:1622" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:661", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:712", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:780", + "src/tachyon/tabs/diagnostic/initController.ts:1627" ] }, { "call": "Cannot receive checks result", "key": "Cannot receive checks result", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10138", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10382", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10544", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10628", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10716", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14796", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10102", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10166", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10347", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10410", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10572", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10656", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10744", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15165", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:26", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:27", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:172", @@ -2097,14 +2169,14 @@ "call": "Cannot save settings", "key": "Cannot save settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3898" ] }, { "call": "Cascade connection", "key": "Cascade connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9838" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10164" ] }, { @@ -2125,7 +2197,7 @@ "call": "Check again", "key": "Check again", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12353", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12392", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:865" ] }, @@ -2133,7 +2205,7 @@ "call": "Check all", "key": "Check all", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12303", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12342", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:793" ] }, @@ -2141,8 +2213,8 @@ "call": "Check completed!", "key": "Check completed!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20216", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20594", "src/tachyon/tabs/updates/initController.ts:570", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:326" ] @@ -2161,8 +2233,8 @@ "call": "Check domain", "key": "Check domain", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12178", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12291", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12217", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12330", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:652", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:778" ] @@ -2171,9 +2243,9 @@ "call": "Check interval", "key": "Check interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8618", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2697", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3166", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8646", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410", "src/tachyon/tabs/dashboard/initController.ts:1455" ] }, @@ -2181,7 +2253,7 @@ "call": "Check mode:", "key": "Check mode:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11896", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:276" ] }, @@ -2189,22 +2261,22 @@ "call": "Check Services", "key": "Check Services", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11435", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:172" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11464", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:174" ] }, { "call": "Check timeout after which the server is considered dead", "key": "Check timeout after which the server is considered dead", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3179" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423" ] }, { "call": "Check update", "key": "Check update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20554", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932", "src/tachyon/tabs/updates/initController.ts:1011" ] }, @@ -2212,9 +2284,9 @@ "call": "Check URL", "key": "Check URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8616", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2723", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3153", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8644", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2967", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3397", "src/tachyon/tabs/dashboard/initController.ts:1453" ] }, @@ -2222,7 +2294,7 @@ "call": "Check YouTube", "key": "Check YouTube", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12518", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12557", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:170" ] }, @@ -2230,7 +2302,7 @@ "call": "Checking Connection...", "key": "Checking Connection...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8747", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8775", "src/tachyon/tabs/dashboard/initController.ts:1634" ] }, @@ -2238,7 +2310,7 @@ "call": "Checking for updates...", "key": "Checking for updates...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19532", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19910", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:117" ] }, @@ -2246,17 +2318,17 @@ "call": "Checking, please wait", "key": "Checking, please wait", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10064", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10128", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10309", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10370", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10453", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10534", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10618", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10706", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14784", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16830", - "src/tachyon/tabs/diagnostic/initController.ts:2072", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10092", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10156", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10337", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10398", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10481", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10562", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10646", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10734", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15153", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17208", + "src/tachyon/tabs/diagnostic/initController.ts:2083", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:14", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:15", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:15", @@ -2287,14 +2359,14 @@ "key": "Checking…", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:301", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3013" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3015" ] }, { "call": "checks", "key": "checks", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5984", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6012", "src/tachyon/tabs/diagnostic/helpers/getCheckTitle.ts:2" ] }, @@ -2302,8 +2374,8 @@ "call": "Checks failed", "key": "Checks failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10034", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10512", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10062", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10540", "src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:10", "src/tachyon/tabs/diagnostic/helpers/getMeta.ts:26" ] @@ -2312,9 +2384,9 @@ "call": "Checks passed", "key": "Checks passed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10023", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10469", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10523", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10051", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10497", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10551", "src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:23", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:43", "src/tachyon/tabs/diagnostic/helpers/getMeta.ts:13" @@ -2324,7 +2396,7 @@ "call": "Checks passed with manual DHCP", "key": "Checks passed with manual DHCP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10046", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074", "src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:27" ] }, @@ -2339,7 +2411,7 @@ "call": "China (cn)", "key": "China (cn)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10123" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10449" ] }, { @@ -2353,14 +2425,14 @@ "call": "Choose Hosts File...", "key": "Choose Hosts File...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7642" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7887" ] }, { "call": "Choose whether to install updates immediately when detected or at a scheduled time (e.g. maintenance window)", "key": "Choose whether to install updates immediately when detected or at a scheduled time (e.g. maintenance window)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2196" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2198" ] }, { @@ -2374,7 +2446,7 @@ "call": "Choose whether to route traffic to all destinations except selected countries (Exclude) or only to selected countries (Include).", "key": "Choose whether to route traffic to all destinations except selected countries (Exclude) or only to selected countries (Include).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10082" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10408" ] }, { @@ -2396,43 +2468,43 @@ "call": "Cipher", "key": "Cipher", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9529" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9855" ] }, { "call": "Clean Comments", "key": "Clean Comments", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8105" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8350" ] }, { "call": "Clear", "key": "Clear", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11037" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11396" ] }, { "call": "Clear DNS cache", "key": "Clear DNS cache", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15990", - "src/tachyon/tabs/diagnostic/initController.ts:1087" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16359", + "src/tachyon/tabs/diagnostic/initController.ts:1088" ] }, { "call": "Click to hide", "key": "Click to hide", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1159" ] }, { "call": "Click to show", "key": "Click to show", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1158" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1160" ] }, { @@ -2446,7 +2518,7 @@ "call": "Client Certificate", "key": "Client Certificate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9563" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9889" ] }, { @@ -2467,7 +2539,7 @@ "call": "Client Key", "key": "Client Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9575" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9901" ] }, { @@ -2516,29 +2588,31 @@ "call": "Close", "key": "Close", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8489", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11223", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12358", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12568", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13083", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16394", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17987", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18030", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19784", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19819", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3721", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11344", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8517", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11251", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11815", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12397", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12607", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13122", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14634", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15049", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16763", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18365", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18408", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20162", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20197", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3965", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11703", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1826", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2035", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2037", "src/partials/modal/renderModal.ts:263", + "src/tachyon/tabs/diagnostic/initController.ts:1554", "src/tachyon/tabs/dashboard/initController.ts:1277", - "src/tachyon/tabs/diagnostic/initController.ts:1553", "src/tachyon/tabs/monitoring/initController.ts:893", "src/tachyon/tabs/monitoring/initController.ts:948", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:227", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:286", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:379", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:178", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:871", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:594", @@ -2550,8 +2624,8 @@ "call": "Close all connections", "key": "Close all connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17309", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17310", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17687", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17688", "src/tachyon/tabs/monitoring/render.ts:68", "src/tachyon/tabs/monitoring/render.ts:69" ] @@ -2560,8 +2634,8 @@ "call": "Close connection", "key": "Close connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17956", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17957", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18334", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18335", "src/tachyon/tabs/monitoring/initController.ts:860", "src/tachyon/tabs/monitoring/initController.ts:861" ] @@ -2570,8 +2644,8 @@ "call": "Closed", "key": "Closed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17272", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17854", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17650", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18232", "src/tachyon/tabs/monitoring/initController.ts:729", "src/tachyon/tabs/monitoring/render.ts:29" ] @@ -2580,42 +2654,42 @@ "call": "Cloudflare account / device ID", "key": "Cloudflare account / device ID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9468" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9794" ] }, { "call": "Cloudflare API access token", "key": "Cloudflare API access token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9480" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9806" ] }, { "call": "Cloudflare WARP account / device ID", "key": "Cloudflare WARP account / device ID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9202" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9528" ] }, { "call": "Cloudflare WARP API access token", "key": "Cloudflare WARP API access token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9214" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540" ] }, { "call": "Comma-separated list of Telegram user IDs authorized to control the bot.", "key": "Comma-separated list of Telegram user IDs authorized to control the bot.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3160" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3162" ] }, { "call": "Command-line arguments string...", "key": "Command-line arguments string...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13353", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13392", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:899" ] }, @@ -2623,22 +2697,22 @@ "call": "Community Lists", "key": "Community Lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11311" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11670" ] }, { "call": "Component action timed out", "key": "Component action timed out", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4161", - "src/tachyon/methods/shell/index.ts:928" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4169", + "src/tachyon/methods/shell/index.ts:930" ] }, { "call": "Component update available", "key": "Component update available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7040", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7068", "src/tachyon/services/core.service.ts:43" ] }, @@ -2646,30 +2720,30 @@ "call": "Component update check interval", "key": "Component update check interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2148" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2150" ] }, { "call": "Component versions and update manager", "key": "Component versions and update manager", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1042" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1044" ] }, { "call": "Components", "key": "Components", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1041", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:631" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1043", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:672" ] }, { "call": "compressed", "key": "compressed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6619", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6647", "src/tachyon/helpers/singBoxVariant.ts:56" ] }, @@ -2684,14 +2758,14 @@ "call": "Conditions", "key": "Conditions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7294" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7539" ] }, { "call": "confidence", "key": "confidence", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14104", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14143", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1767" ] }, @@ -2699,36 +2773,36 @@ "call": "Config File Path", "key": "Config File Path", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2361" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2363" ] }, { "call": "Config Snapshots", "key": "Config Snapshots", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2549" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2551" ] }, { "call": "Configuration applied", "key": "Configuration applied", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4718", - "src/tachyon/methods/shell/index.ts:1660" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4726", + "src/tachyon/methods/shell/index.ts:1662" ] }, { "call": "Configuration for Tachyon service", "key": "Configuration for Tachyon service", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:377" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:418" ] }, { "call": "Configure User-Agent in the item settings", "key": "Configure User-Agent in the item settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4813" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5057" ] }, { @@ -2736,18 +2810,18 @@ "key": "Conflict", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15233", "src/tachyon/methods/custom/getDashboardSections.ts:1695", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:314", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:146" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:146", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:314" ] }, { "call": "Connect through", "key": "Connect through", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9876" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202" ] }, { @@ -2764,22 +2838,30 @@ "call": "Connected Devices", "key": "Connected Devices", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16150", - "src/tachyon/tabs/diagnostic/initController.ts:1276" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16519", + "src/tachyon/tabs/diagnostic/initController.ts:1277" + ] + }, + { + "call": "Connection Path", + "key": "Connection Path", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:138" ] }, { "call": "Connection URL", "key": "Connection URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9599" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9925" ] }, { "call": "Connections are unavailable", "key": "Connections are unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18082", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18460", "src/tachyon/tabs/monitoring/initController.ts:1012" ] }, @@ -2787,7 +2869,7 @@ "call": "Connectivity probe failed", "key": "Connectivity probe failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14898", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15267", "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:184" ] }, @@ -2795,7 +2877,7 @@ "call": "Consulting DPI Knowledge Base & AI...", "key": "Consulting DPI Knowledge Base & AI...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14208", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14247", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1884" ] }, @@ -2810,7 +2892,7 @@ "call": "Content Padding Addition", "key": "Content Padding Addition", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3643" ] }, @@ -2834,7 +2916,7 @@ "call": "Copy", "key": "Copy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11216", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1776", "src/partials/modal/renderModal.ts:258" ] @@ -2843,7 +2925,7 @@ "call": "Copy address", "key": "Copy address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21579", "src/tachyon/tabs/updates/initController.ts:1807" ] }, @@ -2851,7 +2933,7 @@ "call": "Copy log", "key": "Copy log", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19574", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19952", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:165" ] }, @@ -2861,7 +2943,7 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2708", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2709", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8421", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8449", "src/tachyon/tabs/dashboard/initController.ts:1202", "src/tachyon/tabs/dashboard/partials/renderSections.ts:640", "src/tachyon/tabs/dashboard/partials/renderSections.ts:641" @@ -2871,52 +2953,68 @@ "call": "Copy Support Report", "key": "Copy Support Report", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356", - "src/tachyon/tabs/diagnostic/initController.ts:1511" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16725", + "src/tachyon/tabs/diagnostic/initController.ts:1512" ] }, { "call": "Core configuration and preferences", "key": "Core configuration and preferences", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1049" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1051" ] }, { "call": "Could not compare FakeIP and control public IPs", "key": "Could not compare FakeIP and control public IPs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:89" ] }, + { + "call": "Could not contact leak test endpoints. Please ensure router has internet access.", + "key": "Could not contact leak test endpoints. Please ensure router has internet access.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14805", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:82" + ] + }, + { + "call": "Country", + "key": "Country", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14990", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:313" + ] + }, { "call": "Country code (e.g. ru, us, de)", "key": "Country code (e.g. ru, us, de)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10129" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10455" ] }, { "call": "Current Diagnosis", "key": "Current Diagnosis", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16307", - "src/tachyon/tabs/diagnostic/initController.ts:1452" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16676", + "src/tachyon/tabs/diagnostic/initController.ts:1453" ] }, { "call": "Current section cannot be used as its own transit section", "key": "Current section cannot be used as its own transit section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9893" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10219" ] }, { "call": "Current section cannot download its own subscription", "key": "Current section cannot download its own subscription", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2477" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2721" ] }, { @@ -2931,7 +3029,7 @@ "call": "Custom", "key": "Custom", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11678", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11717", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:61" ] }, @@ -2939,28 +3037,28 @@ "call": "Custom API Endpoint URL", "key": "Custom API Endpoint URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2656" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2658" ] }, { "call": "Custom device headers", "key": "Custom device headers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2553" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2797" ] }, { "call": "Custom DNS Records (Hosts)", "key": "Custom DNS Records (Hosts)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7988" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8233" ] }, { "call": "Custom domains", "key": "Custom domains", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11677", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:60" ] }, @@ -2996,28 +3094,28 @@ "call": "Custom OpenAI-Compatible API", "key": "Custom OpenAI-Compatible API", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2613" ] }, { "call": "Custom OpenAI-compatible API endpoint URL (e.g. http://192.168.1.100:11434/v1/chat/completions)", "key": "Custom OpenAI-compatible API endpoint URL (e.g. http://192.168.1.100:11434/v1/chat/completions)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2657" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2659" ] }, { "call": "Custom outbound configurations in JSON format", "key": "Custom outbound configurations in JSON format", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10040" ] }, { "call": "Custom strategy added!", "key": "Custom strategy added!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13376", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:927" ] }, @@ -3025,7 +3123,7 @@ "call": "Customize the order and visibility of tabs in the main navigation menu. Use the arrows to reorder and checkboxes to show or hide tabs.", "key": "Customize the order and visibility of tabs in the main navigation menu. Use the arrows to reorder and checkboxes to show or hide tabs.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1317" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1319" ] }, { @@ -3068,9 +3166,9 @@ "call": "Dashboard", "key": "Dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:985", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:500" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:987", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:541" ] }, { @@ -3085,7 +3183,7 @@ "call": "Data transfer verified: streamed >= 32KB without throttling or disconnect", "key": "Data transfer verified: streamed >= 32KB without throttling or disconnect", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13806", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13845", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1416" ] }, @@ -3093,7 +3191,7 @@ "call": "Date", "key": "Date", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13633", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13672", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1220" ] }, @@ -3108,7 +3206,7 @@ "call": "Dedicated cgroup unavailable", "key": "Dedicated cgroup unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235", "src/tachyon/tabs/updates/initController.ts:1394" ] }, @@ -3116,53 +3214,53 @@ "call": "Default (auto)", "key": "Default (auto)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3288" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3290" ] }, { "call": "Default (Direct WAN / Default mixed proxy)", "key": "Default (Direct WAN / Default mixed proxy)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2460", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2472" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2462", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2474" ] }, { "call": "Default address for checking server availability and latency. URLTest uses its own address.", "key": "Default address for checking server availability and latency. URLTest uses its own address.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2266" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2268" ] }, { "call": "Default Tab on Startup", "key": "Default Tab on Startup", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1296" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1298" ] }, { "call": "Delay in milliseconds before reloading Tachyon after interface UP", "key": "Delay in milliseconds before reloading Tachyon after interface UP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1790" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1792" ] }, { "call": "Delay value cannot be empty", "key": "Delay value cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1797" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1799" ] }, { "call": "Delete", "key": "Delete", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13478", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13517", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1851", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:722", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:730", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:724", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:732", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1039" ] }, @@ -3170,30 +3268,30 @@ "call": "Delete Snapshot", "key": "Delete Snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:690" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:692" ] }, { "call": "Delete the snapshot", "key": "Delete the snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:695" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:697" ] }, { "call": "Detect server country", "key": "Detect server country", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2779", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2991", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3390" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3023", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3235", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3634" ] }, { "call": "Detects and drops STUN/TURN packets in nftables to prevent real IP leaks via WebRTC.", "key": "Detects and drops STUN/TURN packets in nftables to prevent real IP leaks via WebRTC.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2431" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2433" ] }, { @@ -3216,22 +3314,22 @@ "call": "Device filter", "key": "Device filter", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10367" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10707" ] }, { "call": "Device or IP", "key": "Device or IP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7025" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7269" ] }, { "call": "Device updated", "key": "Device updated", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16225", - "src/tachyon/tabs/diagnostic/initController.ts:1359" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16594", + "src/tachyon/tabs/diagnostic/initController.ts:1360" ] }, { @@ -3252,7 +3350,7 @@ "call": "DHCP has DNS server", "key": "DHCP has DNS server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076", "src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:37" ] }, @@ -3260,7 +3358,7 @@ "call": "DHCP is managed manually", "key": "DHCP is managed manually", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076", "src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:36" ] }, @@ -3268,17 +3366,17 @@ "call": "Diagnostics", "key": "Diagnostics", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1034", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1036", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:658" ] }, { "call": "Direct", "key": "Direct", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11649", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11655", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11688", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11694", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2743", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:25", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:32" @@ -3288,29 +3386,29 @@ "call": "Direct (Default)", "key": "Direct (Default)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9232" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9558" ] }, { "call": "Direct Bypass", "key": "Direct Bypass", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213", - "src/tachyon/tabs/diagnostic/initController.ts:1346" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582", + "src/tachyon/tabs/diagnostic/initController.ts:1347" ] }, { "call": "Direct connection", "key": "Direct connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3212" ] }, { "call": "Direct Proxy", "key": "Direct Proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20848", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21226", "src/tachyon/tabs/updates/initController.ts:1377" ] }, @@ -3318,16 +3416,24 @@ "call": "Direct WAN", "key": "Direct WAN", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207", - "src/tachyon/tabs/diagnostic/initController.ts:1337" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576", + "src/tachyon/tabs/diagnostic/initController.ts:1338" + ] + }, + { + "call": "Direct WAN (ISP)", + "key": "Direct WAN (ISP)", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:148" ] }, { "call": "Disable", "key": "Disable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20790", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20805", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21168", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21183", "src/tachyon/tabs/updates/initController.ts:1302", "src/tachyon/tabs/updates/initController.ts:1320" ] @@ -3336,37 +3442,37 @@ "call": "Disable autostart", "key": "Disable autostart", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11357", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:94" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11386", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:96" ] }, { "call": "Disable Cookies", "key": "Disable Cookies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9174" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9501" ] }, { "call": "Disable QUIC", "key": "Disable QUIC", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1841" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1843" ] }, { "call": "Disable the QUIC protocol to improve compatibility or fix issues with video streaming", "key": "Disable the QUIC protocol to improve compatibility or fix issues with video streaming", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1842" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1844" ] }, { "call": "Disabled", "key": "Disabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:457", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:944", @@ -3379,14 +3485,14 @@ "call": "Disabling interception is incompatible with action=zapret2 because Tachyon sends matched traffic through NFQUEUE.", "key": "Disabling interception is incompatible with action=zapret2 because Tachyon sends matched traffic through NFQUEUE.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6160" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6404" ] }, { "call": "Disorder Values (-d)", "key": "Disorder Values (-d)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13265", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13304", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:801" ] }, @@ -3394,51 +3500,51 @@ "call": "Display name", "key": "Display name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2679", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3142" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2923", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3386" ] }, { "call": "DNS", "key": "DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10423", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10763", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10782" ] }, { "call": "DNS Auto-Tuner & Benchmark", "key": "DNS Auto-Tuner & Benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1341" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1343" ] }, { "call": "DNS Check Interval", "key": "DNS Check Interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1515" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1517" ] }, { "call": "DNS Check Interval (s)", "key": "DNS Check Interval (s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2759" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2761" ] }, { "call": "DNS Failures Before Switching", "key": "DNS Failures Before Switching", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1547" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1549" ] }, { "call": "DNS on router", "key": "DNS on router", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10106", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10134", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:75" ] }, @@ -3446,39 +3552,39 @@ "call": "DNS over HTTPS (DoH)", "key": "DNS over HTTPS (DoH)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1875", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2119", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366" ] }, { "call": "DNS over QUIC (DoQ)", "key": "DNS over QUIC (DoQ)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1877", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2121", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1368" ] }, { "call": "DNS over TLS (DoT)", "key": "DNS over TLS (DoT)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1876", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1365" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2120", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367" ] }, { "call": "DNS protocol", "key": "DNS protocol", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2646", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7364" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2890", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7609" ] }, { "call": "DNS Protocol", "key": "DNS Protocol", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14530", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14569", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:213" ] }, @@ -3486,38 +3592,38 @@ "call": "DNS Protocol Type", "key": "DNS Protocol Type", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1361" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1363" ] }, { "call": "DNS protocol used by the resolver", "key": "DNS protocol used by the resolver", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2647", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7365" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2891", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7610" ] }, { "call": "DNS requests through section", "key": "DNS requests through section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7435", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1645" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7680", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1647" ] }, { "call": "DNS Rewrite TTL", "key": "DNS Rewrite TTL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1587" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1589" ] }, { "call": "DNS server", "key": "DNS server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2656", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7378" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2900", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7623" ] }, { @@ -3539,78 +3645,86 @@ "call": "DNS server used by the resolver", "key": "DNS server used by the resolver", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2657", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7379" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2901", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7624" ] }, { "call": "DNS server used to obtain IP addresses for upstream DNS and proxies. If multiple servers are selected, a timeout switches to a backup.", "key": "DNS server used to obtain IP addresses for upstream DNS and proxies. If multiple servers are selected, a timeout switches to a backup.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1412" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1414" ] }, { "call": "DNS Servers", "key": "DNS Servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1393" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1395" ] }, { "call": "DNS Settings", "key": "DNS Settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1283" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285" ] }, { "call": "DNS Strategy", "key": "DNS Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1623" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625" ] }, { "call": "DNS Successful Checks Before Recovery", "key": "DNS Successful Checks Before Recovery", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1567" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1569" ] }, { "call": "DNS through proxy", "key": "DNS through proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1636" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1638" ] }, { "call": "DNS through section", "key": "DNS through section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7423" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7668" ] }, { "call": "DNS Turbo Cache", "key": "DNS Turbo Cache", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1609" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1611" ] }, { "call": "DNS Unavailability Timeout", "key": "DNS Unavailability Timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1535" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1537" + ] + }, + { + "call": "DNS Upstream Resolver Analysis (bash.ws protocol)", + "key": "DNS Upstream Resolver Analysis (bash.ws protocol)", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15027", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:354" ] }, { "call": "Do not panic, everything can be fixed, just...", "key": "Do not panic, everything can be fixed, just...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14741", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15110", "src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:26" ] }, @@ -3618,73 +3732,73 @@ "call": "Do not test servers from these countries.", "key": "Do not test servers from these countries.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2852" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3096" ] }, { "call": "Do not test servers whose names match the expression.", "key": "Do not test servers whose names match the expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2868" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3112" ] }, { "call": "Do not test servers with one of the selected protocols.", "key": "Do not test servers with one of the selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2813" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3057" ] }, { "call": "Do not test servers with one of the selected security types.", "key": "Do not test servers with one of the selected security types.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2819" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3063" ] }, { "call": "Do not test servers with one of the selected transports.", "key": "Do not test servers with one of the selected transports.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2816" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060" ] }, { "call": "Do not test specified servers.", "key": "Do not test specified servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2860" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3104" ] }, { "call": "Doctor failed", "key": "Doctor failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15798", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15806", - "src/tachyon/tabs/diagnostic/initController.ts:731", - "src/tachyon/tabs/diagnostic/initController.ts:773", - "src/tachyon/tabs/diagnostic/initController.ts:781" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16167", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16175", + "src/tachyon/tabs/diagnostic/initController.ts:732", + "src/tachyon/tabs/diagnostic/initController.ts:774", + "src/tachyon/tabs/diagnostic/initController.ts:782" ] }, { "call": "Doctor repair", "key": "Doctor repair", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789", - "src/tachyon/tabs/diagnostic/initController.ts:747", - "src/tachyon/tabs/diagnostic/initController.ts:759", - "src/tachyon/tabs/diagnostic/initController.ts:760" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158", + "src/tachyon/tabs/diagnostic/initController.ts:748", + "src/tachyon/tabs/diagnostic/initController.ts:760", + "src/tachyon/tabs/diagnostic/initController.ts:761" ] }, { "call": "Does not resolve", "key": "Does not resolve", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10227", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:54" ] }, @@ -3692,43 +3806,43 @@ "call": "Domain and IP lists", "key": "Domain and IP lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10320" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10660" ] }, { "call": "Domain lists", "key": "Domain lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10344" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10684" ] }, { "call": "Domain Resolver", "key": "Domain Resolver", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2637" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2881" ] }, { "call": "Domain test sections", "key": "Domain test sections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2920" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2922" ] }, { "call": "Domains", "key": "Domains", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10162", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11312" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10488", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11671" ] }, { "call": "Domains automatically detected by Smart Detect or added via Telegram bot. You can manually edit or remove them here.", "key": "Domains automatically detected by Smart Detect or added via Telegram bot. You can manually edit or remove them here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10192" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10518" ] }, { @@ -3742,22 +3856,22 @@ "call": "Done", "key": "Done", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8946" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9237" ] }, { "call": "Dont Touch My DHCP!", "key": "Dont Touch My DHCP!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2326" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2328" ] }, { "call": "Downlink", "key": "Downlink", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8935", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8947", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8963", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8975", "src/tachyon/tabs/dashboard/initController.ts:1865", "src/tachyon/tabs/dashboard/initController.ts:1878" ] @@ -3766,7 +3880,7 @@ "call": "Download", "key": "Download", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11211", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11239", "src/partials/modal/renderModal.ts:253" ] }, @@ -3781,72 +3895,72 @@ "call": "Download component packages via the selected section", "key": "Download component packages via the selected section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2305" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2307" ] }, { "call": "Download components through", "key": "Download components through", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2313" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2315" ] }, { "call": "Download components through a section", "key": "Download components through a section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2304" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2306" ] }, { "call": "Download lists through", "key": "Download lists through", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2291" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2293" ] }, { "call": "Download lists through a section", "key": "Download lists through a section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2282" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2284" ] }, { "call": "Download remote lists and rule sets via the selected section", "key": "Download remote lists and rule sets via the selected section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2283" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2285" ] }, { "call": "Download subscription through a section", "key": "Download subscription through a section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2451" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2695" ] }, { "call": "Download subscriptions via the selected section", "key": "Download subscriptions via the selected section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2452" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2696" ] }, { "call": "Download through", "key": "Download through", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2460" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2704" ] }, { "call": "Downloaded", "key": "Downloaded", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17980", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18027", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18166", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18358", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18405", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18544", "src/tachyon/tabs/monitoring/initController.ts:886", "src/tachyon/tabs/monitoring/initController.ts:945", "src/tachyon/tabs/monitoring/initController.ts:1134" @@ -3856,14 +3970,14 @@ "call": "Downloading and applying rule sets and lists...", "key": "Downloading and applying rule sets and lists...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1999" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2001" ] }, { "call": "DPI Detected", "key": "DPI Detected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14103", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14142", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1766" ] }, @@ -3871,7 +3985,7 @@ "call": "DPI Engine", "key": "DPI Engine", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12705", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12744", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:166" ] }, @@ -3879,7 +3993,7 @@ "call": "DPI throttling: stream cut off after ~16KB payload transfer", "key": "DPI throttling: stream cut off after ~16KB payload transfer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13820", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13859", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1431" ] }, @@ -3887,7 +4001,7 @@ "call": "DPI Type", "key": "DPI Type", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13648", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13687", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1235" ] }, @@ -3895,15 +4009,15 @@ "call": "Drag rows to change priority. The rule at the top is checked first.", "key": "Drag rows to change priority. The rule at the top is checked first.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:515" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:556" ] }, { "call": "DSCP marks (QoS)", "key": "DSCP marks (QoS)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10404", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11321" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10744", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11680" ] }, { @@ -3918,21 +4032,21 @@ "call": "Duplicate value", "key": "Duplicate value", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4859" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5103" ] }, { "call": "e.g. AES-256-GCM — leave empty for default", "key": "e.g. AES-256-GCM — leave empty for default", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9530" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9856" ] }, { "call": "e.g. google.com, 1.1.1.1, 443", "key": "e.g. google.com, 1.1.1.1, 443", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11035" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11394" ] }, { @@ -3960,14 +4074,14 @@ "call": "e.g. SHA256 — leave empty for default", "key": "e.g. SHA256 — leave empty for default", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9541" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9867" ] }, { "call": "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889", "key": "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1878" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1880" ] }, { @@ -3982,18 +4096,18 @@ "call": "Eligible components for auto-update", "key": "Eligible components for auto-update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2234" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2236" ] }, { "call": "Enable", "key": "Enable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20796", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20811", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21174", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21189", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:282", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:691", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7296", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7541", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2657", "src/tachyon/tabs/updates/initController.ts:1309", "src/tachyon/tabs/updates/initController.ts:1327" @@ -4003,21 +4117,21 @@ "call": "Enable Adaptive Intervals", "key": "Enable Adaptive Intervals", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2866" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2868" ] }, { "call": "Enable AI Doctor (ChatGPT / LLM Analysis)", "key": "Enable AI Doctor (ChatGPT / LLM Analysis)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2589" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2591" ] }, { "call": "Enable Anomaly Detection", "key": "Enable Anomaly Detection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2880" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2882" ] }, { @@ -4031,58 +4145,58 @@ "call": "Enable automatic updates for remote lists and rule sets", "key": "Enable automatic updates for remote lists and rule sets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1943" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1945" ] }, { "call": "Enable autostart", "key": "Enable autostart", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11367", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:104" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11396", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:106" ] }, { "call": "Enable built-in DNS resolver for domains handled by this section", "key": "Enable built-in DNS resolver for domains handled by this section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2638" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2882" ] }, { "call": "Enable Config Validation", "key": "Enable Config Validation", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2824" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2826" ] }, { "call": "Enable Direct WAN Bypass", "key": "Enable Direct WAN Bypass", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15998", - "src/tachyon/tabs/diagnostic/initController.ts:1095" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16367", + "src/tachyon/tabs/diagnostic/initController.ts:1096" ] }, { "call": "Enable DNS Continuous Check", "key": "Enable DNS Continuous Check", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2746" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2748" ] }, { "call": "Enable Firewall Reload Dedup", "key": "Enable Firewall Reload Dedup", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2771" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2773" ] }, { "call": "Enable Graceful Degradation", "key": "Enable Graceful Degradation", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2838" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2840" ] }, { @@ -4096,113 +4210,113 @@ "call": "Enable Health Metrics", "key": "Enable Health Metrics", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2785" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2787" ] }, { "call": "Enable list updates", "key": "Enable list updates", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1942" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1944" ] }, { "call": "Enable Mixed Proxy", "key": "Enable Mixed Proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10240" ] }, { "call": "Enable Mixed Proxy Authentication", "key": "Enable Mixed Proxy Authentication", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9957" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10283" ] }, { "call": "Enable Output Network Interface", "key": "Enable Output Network Interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1692" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1694" ] }, { "call": "Enable Proxy Health Monitor", "key": "Enable Proxy Health Monitor", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2700" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2702" ] }, { "call": "Enable RAG (Knowledge Base Retrieval)", "key": "Enable RAG (Knowledge Base Retrieval)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2672" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2674" ] }, { "call": "Enable Smart Cooldowns", "key": "Enable Smart Cooldowns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2810" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2812" ] }, { "call": "Enable Smart Detect", "key": "Enable Smart Detect", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2907" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2909" ] }, { "call": "Enable Telegram Bot", "key": "Enable Telegram Bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3131" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3133" ] }, { "call": "Enable WAN DNS Fallback for Bootstrap DNS", "key": "Enable WAN DNS Fallback for Bootstrap DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1488" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1490" ] }, { "call": "Enable WAN DNS Fallback for Main DNS", "key": "Enable WAN DNS Fallback for Main DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1477" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1479" ] }, { "call": "Enable Watchdog", "key": "Enable Watchdog", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2563" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2565" ] }, { "call": "Enable YACD", "key": "Enable YACD", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1806" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1808" ] }, { "call": "Enable YACD WAN Access", "key": "Enable YACD WAN Access", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1816" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1818" ] }, { "call": "Enabled", "key": "Enabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235", "src/tachyon/tabs/updates/initController.ts:1379", "src/tachyon/tabs/updates/initController.ts:1396" ] @@ -4211,14 +4325,14 @@ "call": "Enables the background daemon that polls Telegram for commands and sends notifications.", "key": "Enables the background daemon that polls Telegram for commands and sends notifications.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3132" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3134" ] }, { "call": "Enables the background watchdog process to monitor services and auto-recover on failures.", "key": "Enables the background watchdog process to monitor services and auto-recover on failures.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2564" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2566" ] }, { @@ -4253,9 +4367,9 @@ "call": "Engine", "key": "Engine", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13001", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13416", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13638", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13040", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13455", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13677", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:507", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:972", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1225" @@ -4272,24 +4386,24 @@ "call": "Enter a complete sing-box outbound object", "key": "Enter a complete sing-box outbound object", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4069" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4313" ] }, { "call": "Enter a display name", "key": "Enter a display name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2691", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3147", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4024", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4040" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2935", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3391", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4268", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4284" ] }, { "call": "Enter a domain or IP to check (e.g. example.com)...", "key": "Enter a domain or IP to check (e.g. example.com)...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12171", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12210", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:644" ] }, @@ -4297,15 +4411,15 @@ "call": "Enter a level name", "key": "Enter a level name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2962" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3185", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3206" ] }, { "call": "Enter a number or range, e.g. 25 or 25-35", "key": "Enter a number or range, e.g. 25 or 25-35", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9051" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9342" ] }, { @@ -4319,7 +4433,7 @@ "call": "Enter a valid time in HH:MM format (00:00 to 23:59)", "key": "Enter a valid time in HH:MM format (00:00 to 23:59)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2227" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2229" ] }, { @@ -4335,67 +4449,67 @@ "call": "Enter HWID", "key": "Enter HWID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2534" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2778" ] }, { "call": "Enter the API token obtained from @BotFather.", "key": "Enter the API token obtained from @BotFather.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3143" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3145" ] }, { "call": "Enter the HWID sent with subscription requests", "key": "Enter the HWID sent with subscription requests", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2526" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2770" ] }, { "call": "Enter the subscription URL", "key": "Enter the subscription URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9625" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9951" ] }, { "call": "Error", "key": "Error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8547", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8550", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8561", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8564", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8638", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8641", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8648", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8651", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8765", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8779", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8782" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8809", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8812", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8823", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8826", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8902", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8905", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8912", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8915", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9031", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9045", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9048" ] }, { "call": "Error running generator:", "key": "Error running generator:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8652" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8916" ] }, { "call": "Error running trace:", "key": "Error running trace:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11202" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11561" ] }, { "call": "Error updating lists:", "key": "Error updating lists:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2090", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2115" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2092", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2117" ] }, { @@ -4409,7 +4523,7 @@ "call": "EXCELLENT", "key": "EXCELLENT", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14407", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14446", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:74" ] }, @@ -4417,85 +4531,85 @@ "call": "Exclude by proxy parameters", "key": "Exclude by proxy parameters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2808", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3021", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3666" ] }, { "call": "Exclude by regular expression", "key": "Exclude by regular expression", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2867", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3083", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3482" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3111", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3327", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3726" ] }, { "call": "Exclude countries", "key": "Exclude countries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2851", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3067", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3466" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3311", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3710" ] }, { "call": "Exclude selected countries", "key": "Exclude selected countries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10086" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10412" ] }, { "call": "Exclude servers", "key": "Exclude servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3075", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3474" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3103", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3319", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3718" ] }, { "call": "Exclude servers with one of the selected protocols from this level.", "key": "Exclude servers with one of the selected protocols from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3029" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3273" ] }, { "call": "Exclude servers with one of the selected security types from this level.", "key": "Exclude servers with one of the selected security types from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3279" ] }, { "call": "Exclude servers with one of the selected transports from this level.", "key": "Exclude servers with one of the selected transports from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3032" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3276" ] }, { "call": "Exclude traffic types", "key": "Exclude traffic types", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10415" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10755" ] }, { "call": "Exclude URLTest / Priority group", "key": "Exclude URLTest / Priority group", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3537" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3781" ] }, { "call": "Excluded devices", "key": "Excluded devices", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10387" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10727" ] }, { @@ -4517,14 +4631,14 @@ "call": "Expose this section as a local HTTP+SOCKS proxy", "key": "Expose this section as a local HTTP+SOCKS proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9915" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10241" ] }, { "call": "extended", "key": "extended", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6623", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6651", "src/tachyon/helpers/singBoxVariant.ts:60" ] }, @@ -4532,7 +4646,7 @@ "call": "External inbound proxy servers", "key": "External inbound proxy servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1000" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1002" ] }, { @@ -4547,21 +4661,21 @@ "call": "External nfqws config files bypass Tachyon queue management and explicit validation.", "key": "External nfqws config files bypass Tachyon queue management and explicit validation.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5694" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5938" ] }, { "call": "External nfqws2 config files bypass Tachyon queue management and explicit validation.", "key": "External nfqws2 config files bypass Tachyon queue management and explicit validation.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6139" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6383" ] }, { "call": "FAILED", "key": "FAILED", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14419", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14458", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:86" ] }, @@ -4569,15 +4683,15 @@ "call": "Failed to apply DNS configuration", "key": "Failed to apply DNS configuration", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4712", - "src/tachyon/methods/shell/index.ts:1654" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4720", + "src/tachyon/methods/shell/index.ts:1656" ] }, { "call": "Failed to apply DNS settings", "key": "Failed to apply DNS settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14713", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:374" ] }, @@ -4585,17 +4699,17 @@ "call": "Failed to apply fix", "key": "Failed to apply fix", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16085", - "src/tachyon/tabs/diagnostic/initController.ts:1202" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16454", + "src/tachyon/tabs/diagnostic/initController.ts:1203" ] }, { "call": "Failed to apply strategy", "key": "Failed to apply strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4427", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14261", - "src/tachyon/methods/shell/index.ts:1255", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4435", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14300", + "src/tachyon/methods/shell/index.ts:1257", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1945" ] }, @@ -4603,24 +4717,24 @@ "call": "Failed to auto-apply strategy", "key": "Failed to auto-apply strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4604", - "src/tachyon/methods/shell/index.ts:1507" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4612", + "src/tachyon/methods/shell/index.ts:1509" ] }, { "call": "Failed to clear fuzzer history", "key": "Failed to clear fuzzer history", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4642", - "src/tachyon/methods/shell/index.ts:1552" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4650", + "src/tachyon/methods/shell/index.ts:1554" ] }, { "call": "Failed to close connection", "key": "Failed to close connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18369", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18733", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18747", "src/tachyon/tabs/monitoring/initController.ts:1400", "src/tachyon/tabs/monitoring/initController.ts:1415" ] @@ -4629,8 +4743,8 @@ "call": "Failed to close connections", "key": "Failed to close connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18384", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18396", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18762", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18774", "src/tachyon/tabs/monitoring/initController.ts:1434", "src/tachyon/tabs/monitoring/initController.ts:1447" ] @@ -4639,7 +4753,7 @@ "call": "Failed to communicate with AI provider", "key": "Failed to communicate with AI provider", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14243", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1926" ] }, @@ -4647,8 +4761,8 @@ "call": "Failed to copy report to clipboard", "key": "Failed to copy report to clipboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15943", - "src/tachyon/tabs/diagnostic/initController.ts:974" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16312", + "src/tachyon/tabs/diagnostic/initController.ts:975" ] }, { @@ -4664,40 +4778,48 @@ "call": "Failed to delete snapshot", "key": "Failed to delete snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:581" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:583" ] }, { "call": "Failed to detect DPI type", "key": "Failed to detect DPI type", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4581", - "src/tachyon/methods/shell/index.ts:1479" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4589", + "src/tachyon/methods/shell/index.ts:1481" ] }, { "call": "Failed to execute", "key": "Failed to execute", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3614", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3617", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20363", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20537", - "src/tachyon/methods/shell/index.ts:199", - "src/tachyon/methods/shell/index.ts:206", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3622", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3625", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20741", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20915", "src/tachyon/tabs/updates/initController.ts:693", "src/tachyon/tabs/updates/initController.ts:694", "src/tachyon/tabs/updates/initController.ts:773", - "src/tachyon/tabs/updates/initController.ts:989" + "src/tachyon/tabs/updates/initController.ts:989", + "src/tachyon/methods/shell/index.ts:199", + "src/tachyon/methods/shell/index.ts:206" + ] + }, + { + "call": "Failed to execute IP and DNS leak check", + "key": "Failed to execute IP and DNS leak check", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4743", + "src/tachyon/methods/shell/index.ts:1683" ] }, { "call": "Failed to fetch releases", "key": "Failed to fetch releases", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4022", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4030", "src/tachyon/methods/shell/index.ts:730" ] }, @@ -4705,63 +4827,63 @@ "call": "Failed to generate bug report", "key": "Failed to generate bug report", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576", - "src/tachyon/tabs/diagnostic/initController.ts:1769" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16948", + "src/tachyon/tabs/diagnostic/initController.ts:1774" ] }, { "call": "Failed to generate WARP config:", "key": "Failed to generate WARP config:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8551", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8565" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8813", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8827" ] }, { "call": "Failed to get DNS benchmark status", "key": "Failed to get DNS benchmark status", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4680", - "src/tachyon/methods/shell/index.ts:1606" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4688", + "src/tachyon/methods/shell/index.ts:1608" ] }, { "call": "Failed to get fuzzer history", "key": "Failed to get fuzzer history", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4624", - "src/tachyon/methods/shell/index.ts:1529" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4632", + "src/tachyon/methods/shell/index.ts:1531" ] }, { "call": "Failed to get fuzzer patterns", "key": "Failed to get fuzzer patterns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4510", - "src/tachyon/methods/shell/index.ts:1383" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4518", + "src/tachyon/methods/shell/index.ts:1385" ] }, { "call": "Failed to get fuzzer status", "key": "Failed to get fuzzer status", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4385", - "src/tachyon/methods/shell/index.ts:1207" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4393", + "src/tachyon/methods/shell/index.ts:1209" ] }, { "call": "Failed to get fuzzer strategies", "key": "Failed to get fuzzer strategies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4454", - "src/tachyon/methods/shell/index.ts:1307" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4462", + "src/tachyon/methods/shell/index.ts:1309" ] }, { "call": "Failed to install version", "key": "Failed to install version", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4046", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4054", "src/tachyon/methods/shell/index.ts:759" ] }, @@ -4769,7 +4891,7 @@ "call": "Failed to load history", "key": "Failed to load history", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13742", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13781", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1338" ] }, @@ -4777,14 +4899,14 @@ "call": "Failed to load snapshots", "key": "Failed to load snapshots", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:743" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:745" ] }, { "call": "Failed to load versions", "key": "Failed to load versions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20946", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21324", "src/tachyon/tabs/updates/initController.ts:1511" ] }, @@ -4792,14 +4914,14 @@ "call": "Failed to parse file:", "key": "Failed to parse file:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8783" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9049" ] }, { "call": "Failed to parse target list.", "key": "Failed to parse target list.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11819", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11858", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:231" ] }, @@ -4807,14 +4929,14 @@ "call": "Failed to parse WARP config:", "key": "Failed to parse WARP config:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8642" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8906" ] }, { "call": "Failed to read operation log", "key": "Failed to read operation log", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003", "src/tachyon/methods/shell/index.ts:697" ] }, @@ -4822,7 +4944,7 @@ "call": "Failed to receive response from AI service.", "key": "Failed to receive response from AI service.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12471", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12510", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:115" ] }, @@ -4830,8 +4952,8 @@ "call": "Failed to reset fuzzer patterns", "key": "Failed to reset fuzzer patterns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4562", - "src/tachyon/methods/shell/index.ts:1458" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4570", + "src/tachyon/methods/shell/index.ts:1460" ] }, { @@ -4845,40 +4967,40 @@ "call": "Failed to restore native internet", "key": "Failed to restore native internet", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16384", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16475", - "src/tachyon/tabs/diagnostic/initController.ts:1543", - "src/tachyon/tabs/diagnostic/initController.ts:1651" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16753", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16847", + "src/tachyon/tabs/diagnostic/initController.ts:1544", + "src/tachyon/tabs/diagnostic/initController.ts:1656" ] }, { "call": "Failed to restore snapshot", "key": "Failed to restore snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:566" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:568" ] }, { "call": "Failed to run diagnostics — is the tachyon binary installed?", "key": "Failed to run diagnostics — is the tachyon binary installed?", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3362", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3388" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390" ] }, { "call": "Failed to save fuzzer patterns", "key": "Failed to save fuzzer patterns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4536", - "src/tachyon/methods/shell/index.ts:1416" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4544", + "src/tachyon/methods/shell/index.ts:1418" ] }, { "call": "Failed to save patterns", "key": "Failed to save patterns", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13349", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:849" ] }, @@ -4886,15 +5008,15 @@ "call": "Failed to save snapshot", "key": "Failed to save snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:796" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:798" ] }, { "call": "Failed to start benchmark", "key": "Failed to start benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14192", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14642", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14231", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14681", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:339", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1865" ] @@ -4903,31 +5025,31 @@ "call": "Failed to start bot", "key": "Failed to start bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3077" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3079" ] }, { "call": "Failed to start DNS benchmark", "key": "Failed to start DNS benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4660", - "src/tachyon/methods/shell/index.ts:1582" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4668", + "src/tachyon/methods/shell/index.ts:1584" ] }, { "call": "Failed to start fuzzer", "key": "Failed to start fuzzer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4362", - "src/tachyon/methods/shell/index.ts:1181" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4370", + "src/tachyon/methods/shell/index.ts:1183" ] }, { "call": "Failed to start service check.", "key": "Failed to start service check.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11802", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12374", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11841", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12413", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:213", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:890" ] @@ -4943,23 +5065,23 @@ "call": "Failed to stop bot", "key": "Failed to stop bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3091" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3093" ] }, { "call": "Failed to stop DNS benchmark", "key": "Failed to stop DNS benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4699", - "src/tachyon/methods/shell/index.ts:1626" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4707", + "src/tachyon/methods/shell/index.ts:1628" ] }, { "call": "Failed to stop fuzzer", "key": "Failed to stop fuzzer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4399", - "src/tachyon/methods/shell/index.ts:1222" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4407", + "src/tachyon/methods/shell/index.ts:1224" ] }, { @@ -4973,8 +5095,8 @@ "call": "Failed to switch proxy", "key": "Failed to switch proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8026", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8032", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8054", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8060", "src/tachyon/tabs/dashboard/initController.ts:704", "src/tachyon/tabs/dashboard/initController.ts:710" ] @@ -4983,29 +5105,29 @@ "call": "Failed to synthesize AI strategies", "key": "Failed to synthesize AI strategies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4487", - "src/tachyon/methods/shell/index.ts:1352" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4495", + "src/tachyon/methods/shell/index.ts:1354" ] }, { "call": "Failed to update device", "key": "Failed to update device", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16230", - "src/tachyon/tabs/diagnostic/initController.ts:1364" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16599", + "src/tachyon/tabs/diagnostic/initController.ts:1365" ] }, { "call": "Failed to update subscriptions", "key": "Failed to update subscriptions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7747", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7783", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8689", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8692", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7775", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7808", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7811", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8717", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8720", "src/tachyon/tabs/dashboard/initController.ts:313", "src/tachyon/tabs/dashboard/initController.ts:314", "src/tachyon/tabs/dashboard/initController.ts:334", @@ -5019,14 +5141,14 @@ "call": "Failover failure threshold", "key": "Failover failure threshold", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2348" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2350" ] }, { "call": "FAIR", "key": "FAIR", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14413", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14452", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:80" ] }, @@ -5034,7 +5156,7 @@ "call": "Fake packets reached remote server (HTTP 400 Bad Request)", "key": "Fake packets reached remote server (HTTP 400 Bad Request)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13834", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13873", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1446" ] }, @@ -5042,7 +5164,7 @@ "call": "FakeIP and control checks use different public IPs", "key": "FakeIP and control checks use different public IPs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:91" ] }, @@ -5050,7 +5172,7 @@ "call": "FakeIP and control checks use the same public IP", "key": "FakeIP and control checks use the same public IP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:92" ] }, @@ -5058,7 +5180,7 @@ "call": "FakeIP works; public IP comparison is inconclusive", "key": "FakeIP works; public IP comparison is inconclusive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10471", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:46" ] }, @@ -5073,7 +5195,7 @@ "call": "Fallback DNS", "key": "Fallback DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14564", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14603", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:248" ] }, @@ -5081,21 +5203,21 @@ "call": "Fallback DNS Servers", "key": "Fallback DNS Servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1426" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1428" ] }, { "call": "Fallback DNS servers must be plain UDP (IP or hostname). DoH/DoT URLs are not allowed here.", "key": "Fallback DNS servers must be plain UDP (IP or hostname). DoH/DoT URLs are not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1441" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443" ] }, { "call": "Fallback DNS servers must be plain UDP (IP or hostname). Path-style DoH (e.g. domain/path) is not allowed here.", "key": "Fallback DNS servers must be plain UDP (IP or hostname). Path-style DoH (e.g. domain/path) is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1445" ] }, { @@ -5116,38 +5238,38 @@ "call": "Family Profile", "key": "Family Profile", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:558" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:599" ] }, { "call": "Family Profiles", "key": "Family Profiles", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1006", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:550" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1008", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:591" ] }, { "call": "Family profiles and device grouping", "key": "Family profiles and device grouping", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1007" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1009" ] }, { "call": "Faster DNS health monitoring than the default cycle. Switches bootstrap DNS on failure.", "key": "Faster DNS health monitoring than the default cycle. Switches bootstrap DNS on failure.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2747" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2749" ] }, { "call": "Faster server search interval", "key": "Faster server search interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8636", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3226", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8664", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3470", "src/tachyon/tabs/dashboard/initController.ts:1474" ] }, @@ -5155,7 +5277,7 @@ "call": "Fastest", "key": "Fastest", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5113", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5141", "src/tachyon/methods/custom/getDashboardSections.ts:674" ] }, @@ -5163,7 +5285,7 @@ "call": "Filter by service:", "key": "Filter by service:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11985", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12024", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:425" ] }, @@ -5171,14 +5293,14 @@ "call": "Filter the servers that will be displayed on the dashboard.", "key": "Filter the servers that will be displayed on the dashboard.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3379" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3623" ] }, { "call": "Filter:", "key": "Filter:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12918", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12957", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:412" ] }, @@ -5186,21 +5308,21 @@ "call": "Finished with code", "key": "Finished with code", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8357" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8615" ] }, { "call": "Finland (fi)", "key": "Finland (fi)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10120" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446" ] }, { "call": "Firewall WAN port", "key": "Firewall WAN port", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:136" ] }, @@ -5208,23 +5330,23 @@ "call": "Fix applied", "key": "Fix applied", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16079", - "src/tachyon/tabs/diagnostic/initController.ts:1196" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16448", + "src/tachyon/tabs/diagnostic/initController.ts:1197" ] }, { "call": "Fix resolv.conf", "key": "Fix resolv.conf", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15984", - "src/tachyon/tabs/diagnostic/initController.ts:1081" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16353", + "src/tachyon/tabs/diagnostic/initController.ts:1082" ] }, { "call": "Fix the highlighted fields and save again.", "key": "Fix the highlighted fields and save again.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3655", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3899", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2359" ] }, @@ -5232,25 +5354,25 @@ "call": "Fixed", "key": "Fixed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16075", - "src/tachyon/tabs/diagnostic/initController.ts:753", - "src/tachyon/tabs/diagnostic/initController.ts:1192" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16444", + "src/tachyon/tabs/diagnostic/initController.ts:754", + "src/tachyon/tabs/diagnostic/initController.ts:1193" ] }, { "call": "Flush Conntrack Table", "key": "Flush Conntrack Table", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16001", - "src/tachyon/tabs/diagnostic/initController.ts:1098" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16370", + "src/tachyon/tabs/diagnostic/initController.ts:1099" ] }, { "call": "Fooling Methods (dpi-desync-fooling)", "key": "Fooling Methods (dpi-desync-fooling)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13234", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13273", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:768" ] }, @@ -5258,7 +5380,7 @@ "call": "Fooling Methods (fooling)", "key": "Fooling Methods (fooling)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13185", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13224", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:717" ] }, @@ -5266,14 +5388,14 @@ "call": "Force immediate download and refresh of all remote lists and rule sets", "key": "Force immediate download and refresh of all remote lists and rule sets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1990" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992" ] }, { "call": "Forced device routing", "key": "Forced device routing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10376" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10716" ] }, { @@ -5287,14 +5409,14 @@ "call": "Forces sing-box to tunnel DNS requests via DoQ with Encrypted Client Hello (ECH) for SNI hiding.", "key": "Forces sing-box to tunnel DNS requests via DoQ with Encrypted Client Hello (ECH) for SNI hiding.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2443" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2445" ] }, { "call": "Found", "key": "Found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609" ] }, @@ -5302,7 +5424,7 @@ "call": "France (fr)", "key": "France (fr)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10119" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445" ] }, { @@ -5344,7 +5466,7 @@ "call": "Full System Diagnostic", "key": "Full System Diagnostic", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12521", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12560", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:173" ] }, @@ -5352,21 +5474,21 @@ "call": "Fuzzing is not supported here because Tachyon needs deterministic runtime validation.", "key": "Fuzzing is not supported here because Tachyon needs deterministic runtime validation.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6157" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6401" ] }, { "call": "Game Console IPs", "key": "Game Console IPs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1921" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1923" ] }, { "call": "Game Console Optimizer (NAT Type 1)", "key": "Game Console Optimizer (NAT Type 1)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1909" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1911" ] }, { @@ -5387,46 +5509,46 @@ "call": "Generate a random 16-character hexadecimal HWID", "key": "Generate a random 16-character hexadecimal HWID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2541" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2785" ] }, { "call": "Generate bug report", "key": "Generate bug report", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11462", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:199" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11501", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:211" ] }, { "call": "Generate HWID", "key": "Generate HWID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2540", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2545" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2784", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2789" ] }, { "call": "Generate HWID from router hardware information for this subscription", "key": "Generate HWID from router hardware information for this subscription", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2517" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2761" ] }, { "call": "Generate WARP Config", "key": "Generate WARP Config", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8444", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8483", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8505" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8706", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8745", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8767" ] }, { "call": "Generated inbound", "key": "Generated inbound", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10283", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:89" ] }, @@ -5434,82 +5556,82 @@ "call": "Generated!", "key": "Generated!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8626" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8888" ] }, { "call": "Generating…", "key": "Generating…", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8542" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8804" ] }, { "call": "GeoIP Countries", "key": "GeoIP Countries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10109" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10435" ] }, { "call": "GeoIP Mode", "key": "GeoIP Mode", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10081" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10407" ] }, { "call": "GeoSite / GeoIP", "key": "GeoSite / GeoIP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11317" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11676" ] }, { "call": "Germany (de)", "key": "Germany (de)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10116" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442" ] }, { "call": "Get global check", "key": "Get global check", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:113" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:115" ] }, { "call": "Give the snapshot a name. It is saved with the current date and can be restored from this list later.", "key": "Give the snapshot a name. It is saved with the current date and can be restored from this list later.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:763" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:765" ] }, { "call": "Global check", "key": "Global check", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15753", - "src/tachyon/tabs/diagnostic/initController.ts:703" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16122", + "src/tachyon/tabs/diagnostic/initController.ts:704" ] }, { "call": "Global check failed", "key": "Global check failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15764", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15768", - "src/tachyon/tabs/diagnostic/initController.ts:714", - "src/tachyon/tabs/diagnostic/initController.ts:718" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16133", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16137", + "src/tachyon/tabs/diagnostic/initController.ts:715", + "src/tachyon/tabs/diagnostic/initController.ts:719" ] }, { "call": "Global Default", "key": "Global Default", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941" ] }, @@ -5517,7 +5639,7 @@ "call": "GOOD", "key": "GOOD", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14410", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14449", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:77" ] }, @@ -5525,7 +5647,7 @@ "call": "Group devices into family profiles to manage content filtering, SafeSearch, and screen time limits in one place.", "key": "Group devices into family profiles to manage content filtering, SafeSearch, and screen time limits in one place.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:551" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:592" ] }, { @@ -5546,22 +5668,22 @@ "call": "Guest Mode", "key": "Guest Mode", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1020", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:586" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1022", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:627" ] }, { "call": "Guest mode isolates guest devices from local LAN and router administration, while allowing internet access with daily quotas and schedules.", "key": "Guest mode isolates guest devices from local LAN and router administration, while allowing internet access with daily quotas and schedules.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:587" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:628" ] }, { "call": "Guest network isolation and device quotas", "key": "Guest network isolation and device quotas", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1021" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1023" ] }, { @@ -5575,7 +5697,7 @@ "call": "Header Protection Key", "key": "Header Protection Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9451", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3637" ] }, @@ -5583,7 +5705,7 @@ "call": "Hello! I am Tachyon AI Assistant. How can I help you today? Ask me about domain blocks, diagnostics, or router settings.", "key": "Hello! I am Tachyon AI Assistant. How can I help you today? Ask me about domain blocks, diagnostics, or router settings.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12386", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12425", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:14" ] }, @@ -5623,84 +5745,84 @@ "call": "Hide cascade connection nodes", "key": "Hide cascade connection nodes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2626" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2870" ] }, { "call": "Hide individual nodes that are already included in imported subscription URLTest groups", "key": "Hide individual nodes that are already included in imported subscription URLTest groups", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2615" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859" ] }, { "call": "Hide intermediate nodes used as detours by other subscription nodes", "key": "Hide intermediate nodes used as detours by other subscription nodes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2627" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2871" ] }, { "call": "Hide selected servers.", "key": "Hide selected servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3475" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3719" ] }, { "call": "Hide servers from selected groups without repeating their filtering criteria.", "key": "Hide servers from selected groups without repeating their filtering criteria.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3538" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3782" ] }, { "call": "Hide servers from the specified countries.", "key": "Hide servers from the specified countries.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3467" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3711" ] }, { "call": "Hide servers whose names match the expression.", "key": "Hide servers whose names match the expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3483" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3727" ] }, { "call": "Hide servers with one of the selected protocols.", "key": "Hide servers with one of the selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3430" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3674" ] }, { "call": "Hide servers with one of the selected security types.", "key": "Hide servers with one of the selected security types.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3678" ] }, { "call": "Hide servers with one of the selected transports.", "key": "Hide servers with one of the selected transports.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3431" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3675" ] }, { "call": "Hide URLTest group nodes", "key": "Hide URLTest group nodes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2614" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2858" ] }, { "call": "Hide values", "key": "Hide values", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11263", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11291", "src/partials/modal/renderModal.ts:310" ] }, @@ -5708,7 +5830,7 @@ "call": "Hide versions", "key": "Hide versions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616", "src/tachyon/tabs/updates/initController.ts:1847" ] }, @@ -5716,8 +5838,8 @@ "call": "Higher-level check interval", "key": "Higher-level check interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8623", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3190", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8651", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434", "src/tachyon/tabs/dashboard/initController.ts:1460" ] }, @@ -5725,16 +5847,16 @@ "call": "Higher-priority DNS Check", "key": "Higher-priority DNS Check", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1525" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1527" ] }, { "call": "History", "key": "History", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12651", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16331", - "src/tachyon/tabs/diagnostic/initController.ts:1480", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16700", + "src/tachyon/tabs/diagnostic/initController.ts:1481", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:96" ] }, @@ -5742,9 +5864,9 @@ "call": "History cleared", "key": "History cleared", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4647", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13597", - "src/tachyon/methods/shell/index.ts:1557", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4655", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13636", + "src/tachyon/methods/shell/index.ts:1559", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1179" ] }, @@ -5752,8 +5874,8 @@ "call": "Host", "key": "Host", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17970", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18023", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18348", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18401", "src/tachyon/tabs/monitoring/initController.ts:876", "src/tachyon/tabs/monitoring/initController.ts:941" ] @@ -5762,85 +5884,85 @@ "call": "Hosts", "key": "Hosts", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4329" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4573" ] }, { "call": "Hosts Lists Update Interval", "key": "Hosts Lists Update Interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8399" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8661" ] }, { "call": "How many hours of metrics to keep (default 24).", "key": "How many hours of metrics to keep (default 24).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2799" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2801" ] }, { "call": "How often higher priority levels are checked while a lower level is active", "key": "How often higher priority levels are checked while a lower level is active", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3191" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3435" ] }, { "call": "How often the currently selected server is checked", "key": "How often the currently selected server is checked", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3167" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3411" ] }, { "call": "How often to check DNS health in seconds (default 60).", "key": "How often to check DNS health in seconds (default 60).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2760" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2762" ] }, { "call": "How often to check proxy health in seconds (fast tier, default 30).", "key": "How often to check proxy health in seconds (fast tier, default 30).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2714" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2716" ] }, { "call": "How often to check Telegram for new messages (default: 5).", "key": "How often to check Telegram for new messages (default: 5).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3183" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3185" ] }, { "call": "How often to check the active DNS servers.", "key": "How often to check the active DNS servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1516" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1518" ] }, { "call": "How often to check whether a higher-priority DNS server has recovered.", "key": "How often to check whether a higher-priority DNS server has recovered.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1526" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1528" ] }, { "call": "HTTP", "key": "HTTP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10424", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10764", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10783" ] }, { "call": "HTTP error", "key": "HTTP error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5875", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5903", "src/tachyon/api.ts:27" ] }, @@ -5855,15 +5977,15 @@ "call": "HWID", "key": "HWID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2525" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769" ] }, { "call": "Idle timeout", "key": "Idle timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8507", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2736", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2980", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3266", "src/tachyon/tabs/dashboard/initController.ts:1305" ] @@ -5872,59 +5994,59 @@ "call": "If one health check fails with an error, continue running other checks instead of stopping.", "key": "If one health check fails with an error, continue running other checks instead of stopping.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2839" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2841" ] }, { "call": "Immediately upon release", "key": "Immediately upon release", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2201" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2203" ] }, { "call": "Import", "key": "Import", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7734", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7843" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7979", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8001", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8088" ] }, { "call": "Import (%d records)", "key": "Import (%d records)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7838" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8083" ] }, { "call": "Import AmneziaWG settings from .conf file", "key": "Import AmneziaWG settings from .conf file", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8664" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8928" ] }, { "call": "Import Hosts File", "key": "Import Hosts File", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7915", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8118" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8160", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8363" ] }, { "call": "Import subscription URLTest groups", "key": "Import subscription URLTest groups", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2605" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2849" ] }, { "call": "Import URLTest groups returned by this subscription provider", "key": "Import URLTest groups returned by this subscription provider", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2606" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2850" ] }, { @@ -5952,50 +6074,50 @@ "call": "Include by proxy parameters", "key": "Include by proxy parameters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2791", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3402" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3247", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3646" ] }, { "call": "Include by regular expression", "key": "Include by regular expression", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2843", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3059", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3458" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3087", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3303", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3702" ] }, { "call": "Include countries", "key": "Include countries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2827", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3442" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3071", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3287", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3686" ] }, { "call": "Include IP addresses and subnets", "key": "Include IP addresses and subnets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4144" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4388" ] }, { "call": "Include selected countries", "key": "Include selected countries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10087" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10413" ] }, { "call": "Include servers", "key": "Include servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3051", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3450" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3079", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3295", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3694" ] }, { @@ -6030,49 +6152,49 @@ "call": "Init Packet Magic Header (S1)", "key": "Init Packet Magic Header (S1)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9107" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9400" ] }, { "call": "Init Packet Magic Header (S3)", "key": "Init Packet Magic Header (S3)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9109" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9402" ] }, { "call": "Init Packet Payload (I1)", "key": "Init Packet Payload (I1)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9132" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9425" ] }, { "call": "Init Packet Payload (I2)", "key": "Init Packet Payload (I2)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9133" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9426" ] }, { "call": "Init Packet Payload (I3)", "key": "Init Packet Payload (I3)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9134" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9427" ] }, { "call": "Init Packet Payload (I4)", "key": "Init Packet Payload (I4)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9135" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9428" ] }, { "call": "Init Packet Payload (I5)", "key": "Init Packet Payload (I5)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9136" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9429" ] }, { @@ -6089,14 +6211,22 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3631" ] }, + { + "call": "Initializing router-level IP & DNS leak test...", + "key": "Initializing router-level IP & DNS leak test...", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14764", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:28" + ] + }, { "call": "Install", "key": "Install", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19774", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20961", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21008", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20152", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21339", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21386", "src/tachyon/tabs/updates/initController.ts:1025", "src/tachyon/tabs/updates/initController.ts:1531", "src/tachyon/tabs/updates/initController.ts:1584", @@ -6107,7 +6237,7 @@ "call": "Install another build:", "key": "Install another build:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21225", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21603", "src/tachyon/tabs/updates/initController.ts:1833" ] }, @@ -6115,9 +6245,9 @@ "call": "Installed", "key": "Installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980" @@ -6127,7 +6257,7 @@ "call": "Installed build → Available build", "key": "Installed build → Available build", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21093", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21471", "src/tachyon/tabs/updates/initController.ts:1679" ] }, @@ -6135,8 +6265,8 @@ "call": "Installed version is newer than release", "key": "Installed version is newer than release", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20070", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20448", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479", "src/tachyon/tabs/updates/initController.ts:376", "src/tachyon/tabs/updates/initController.ts:1687" ] @@ -6145,38 +6275,38 @@ "call": "Interface", "key": "Interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2500" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2502" ] }, { "call": "Interface Monitoring", "key": "Interface Monitoring", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1755" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1757" ] }, { "call": "Interface Monitoring Delay", "key": "Interface Monitoring Delay", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1789" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1791" ] }, { "call": "Interface monitoring for Bad WAN", "key": "Interface monitoring for Bad WAN", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1756" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1758" ] }, { "call": "Interrupt connections", "key": "Interrupt connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8509", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2750", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3242", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8537", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8669", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2994", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3486", "src/tachyon/tabs/dashboard/initController.ts:1307", "src/tachyon/tabs/dashboard/initController.ts:1480" ] @@ -6185,21 +6315,21 @@ "call": "Interrupt connections when priority failover switches server", "key": "Interrupt connections when priority failover switches server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3243" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3487" ] }, { "call": "Interrupt connections when URLTest switches the selected server", "key": "Interrupt connections when URLTest switches the selected server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2751" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2995" ] }, { "call": "Interval", "key": "Interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8533", "src/tachyon/tabs/dashboard/initController.ts:1303" ] }, @@ -6207,7 +6337,7 @@ "call": "Invalid ByeDPI strategy", "key": "Invalid ByeDPI strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7532" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7777" ] }, { @@ -6240,7 +6370,7 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:76", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:80", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5367", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5611", "src/validators/validateDomain.ts:67", "src/validators/validateDomain.ts:73" ] @@ -6490,7 +6620,7 @@ "call": "Invalid line: \"%s\". Use: domain ip or ip domain", "key": "Invalid line: \"%s\". Use: domain ip or ip domain", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8026" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8271" ] }, { @@ -6506,7 +6636,7 @@ "key": "Invalid port number. Must be between 1 and 65535", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:400", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10276", "src/validators/validateShadowsocksUrl.ts:91" ] }, @@ -6514,14 +6644,14 @@ "call": "Invalid port or range. Use 80 or 1000-2000", "key": "Invalid port or range. Use 80 or 1000-2000", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5516" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5760" ] }, { "call": "Invalid regular expression", "key": "Invalid regular expression", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4742" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4986" ] }, { @@ -6876,14 +7006,14 @@ "call": "IP Addresses (IP CIDR)", "key": "IP Addresses (IP CIDR)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11313" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11672" ] }, { "call": "IP Frag Bounds (--ip-frag)", "key": "IP Frag Bounds (--ip-frag)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13289", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13328", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:825" ] }, @@ -6891,21 +7021,21 @@ "call": "IPs", "key": "IPs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10528" ] }, { "call": "IPv4 only", "key": "IPv4 only", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1626" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628" ] }, { "call": "IPv6 only", "key": "IPv6 only", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1630" ] }, { @@ -6920,7 +7050,7 @@ "call": "Isolate BitTorrent traffic and force it direct to prevent VPN bans", "key": "Isolate BitTorrent traffic and force it direct to prevent VPN bans", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1854" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1856" ] }, { @@ -6930,20 +7060,36 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:1384" ] }, + { + "call": "ISP / Organization", + "key": "ISP / Organization", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14851", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:141" + ] + }, + { + "call": "ISP DNS LEAK", + "key": "ISP DNS LEAK", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14968", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:288" + ] + }, { "call": "Issues", "key": "Issues", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787", - "src/tachyon/tabs/diagnostic/initController.ts:749" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156", + "src/tachyon/tabs/diagnostic/initController.ts:750" ] }, { "call": "Issues detected", "key": "Issues detected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10029", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10518", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10057", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10546", "src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:17", "src/tachyon/tabs/diagnostic/helpers/getMeta.ts:20" ] @@ -6952,25 +7098,25 @@ "call": "Issues detected. Review the diagnosis above.", "key": "Issues detected. Review the diagnosis above.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16101", - "src/tachyon/tabs/diagnostic/initController.ts:1221" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16470", + "src/tachyon/tabs/diagnostic/initController.ts:1222" ] }, { "call": "Japan (jp)", "key": "Japan (jp)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10124" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10450" ] }, { "call": "JSON outbound", "key": "JSON outbound", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1124", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4068", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4331", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9713" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1308", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4312", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4575", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10039" ] }, { @@ -7009,21 +7155,21 @@ "call": "JSON outbound settings", "key": "JSON outbound settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4092" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4336" ] }, { "call": "Junk Max Size (Jmax)", "key": "Junk Max Size (Jmax)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9106" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399" ] }, { "call": "Junk Min Size (Jmin)", "key": "Junk Min Size (Jmin)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9105" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9398" ] }, { @@ -7037,7 +7183,7 @@ "call": "Junk Packet Count (Jc)", "key": "Junk Packet Count (Jc)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9104" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9397" ] }, { @@ -7107,35 +7253,35 @@ "call": "Kazakhstan (kz)", "key": "Kazakhstan (kz)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10127" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10453" ] }, { "call": "Keep Priority before latency-sorted servers", "key": "Keep Priority before latency-sorted servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3252" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3496" ] }, { "call": "Keep the previous working binary/package on the router flash for instant offline rollback if needed. Consumes extra storage.", "key": "Keep the previous working binary/package on the router flash for instant offline rollback if needed. Consumes extra storage.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2254" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2256" ] }, { "call": "Keep URLTest before latency-sorted servers", "key": "Keep URLTest before latency-sorted servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004" ] }, { "call": "Keepalive Timeout", "key": "Keepalive Timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9476", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3667" ] }, @@ -7143,14 +7289,14 @@ "call": "Keeps FakeIP cache persistent across reboots and pre-resolves popular blocked domains on startup so first-visit latency is 0 ms.", "key": "Keeps FakeIP cache persistent across reboots and pre-resolves popular blocked domains on startup so first-visit latency is 0 ms.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1610" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1612" ] }, { "call": "Key", "key": "Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9431" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9757" ] }, { @@ -7164,22 +7310,22 @@ "call": "Keyword must not contain spaces or commas", "key": "Keyword must not contain spaces or commas", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4752" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4996" ] }, { "call": "LAN Devices", "key": "LAN Devices", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16317", - "src/tachyon/tabs/diagnostic/initController.ts:1464" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16686", + "src/tachyon/tabs/diagnostic/initController.ts:1465" ] }, { "call": "Language for AI Doctor diagnosis responses", "key": "Language for AI Doctor diagnosis responses", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2632" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2634" ] }, { @@ -7193,7 +7339,7 @@ "call": "Latency", "key": "Latency", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14384", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14423", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:46" ] }, @@ -7201,8 +7347,8 @@ "call": "Latency test failed", "key": "Latency test failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3877", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3896", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3885", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3904", "src/tachyon/methods/shell/index.ts:547", "src/tachyon/methods/shell/index.ts:568" ] @@ -7211,15 +7357,15 @@ "call": "Latency test URL", "key": "Latency test URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2265" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2267" ] }, { "call": "Latest version is installed", "key": "Latest version is installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20072", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21099", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20450", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21477", "src/tachyon/tabs/updates/initController.ts:379", "src/tachyon/tabs/updates/initController.ts:1685" ] @@ -7228,15 +7374,39 @@ "call": "Latest version:", "key": "Latest version:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479", "src/tachyon/tabs/updates/initController.ts:1687" ] }, + { + "call": "Leak detection completed", + "key": "Leak detection completed", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14790", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:62" + ] + }, + { + "call": "Leak detection failed to complete", + "key": "Leak detection failed to complete", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14797", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:73" + ] + }, + { + "call": "LEAKED", + "key": "LEAKED", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14917", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:219" + ] + }, { "call": "Leave empty to omit this header", "key": "Leave empty to omit this header", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2571" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2815" ] }, { @@ -7251,7 +7421,7 @@ "call": "Level name", "key": "Level name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2957" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3201" ] }, { @@ -7265,21 +7435,21 @@ "call": "List must be an HTTP(S) URL or a local .lst path", "key": "List must be an HTTP(S) URL or a local .lst path", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7227" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7472" ] }, { "call": "List of domains automatically detected and the section they were added to. To edit or remove them, open the routing rules of the respective section.", "key": "List of domains automatically detected and the section they were added to. To edit or remove them, open the routing rules of the respective section.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2951" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2953" ] }, { "call": "List Update Frequency", "key": "List Update Frequency", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1952" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1954" ] }, { @@ -7300,7 +7470,7 @@ "call": "Listening port", "key": "Listening port", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10285", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10313", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:125" ] }, @@ -7308,64 +7478,64 @@ "call": "Lists and rule sets successfully updated!", "key": "Lists and rule sets successfully updated!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2082" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2084" ] }, { "call": "Lists update is continuing in the background.", "key": "Lists update is continuing in the background.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2030" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2032" ] }, { "call": "Lists update is still running in background. You can check system logs.", "key": "Lists update is still running in background. You can check system logs.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2069" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2071" ] }, { "call": "LM Studio (Local PC / Server)", "key": "LM Studio (Local PC / Server)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2610" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2612" ] }, { "call": "Load .conf", "key": "Load .conf", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8740", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8755" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9006", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9021" ] }, { "call": "Load .conf config", "key": "Load .conf config", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8663" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8927" ] }, { "call": "Load Current Records", "key": "Load Current Records", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7678" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7923" ] }, { "call": "Loaded %d current record(s)", "key": "Loaded %d current record(s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7672" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7917" ] }, { "call": "Loaded!", "key": "Loaded!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8943" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9234" ] }, { @@ -7379,16 +7549,16 @@ "call": "Loading connected LAN devices...", "key": "Loading connected LAN devices...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16120", - "src/tachyon/tabs/diagnostic/initController.ts:1243" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16489", + "src/tachyon/tabs/diagnostic/initController.ts:1244" ] }, { "call": "Loading connections", "key": "Loading connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17341", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18073", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17719", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18451", "src/tachyon/tabs/monitoring/initController.ts:1002", "src/tachyon/tabs/monitoring/render.ts:101" ] @@ -7397,8 +7567,8 @@ "call": "Loading service list...", "key": "Loading service list...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11751", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11790", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11829", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:150", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:194" ] @@ -7407,7 +7577,7 @@ "call": "Loading versions...", "key": "Loading versions...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20976", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21354", "src/tachyon/tabs/updates/initController.ts:1550" ] }, @@ -7415,12 +7585,12 @@ "call": "Loading...", "key": "Loading...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20823", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20837", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21215", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274", "src/tachyon/tabs/updates/initController.ts:1341", "src/tachyon/tabs/updates/initController.ts:1357", "src/tachyon/tabs/updates/initController.ts:1407", @@ -7433,21 +7603,29 @@ "call": "Local Address", "key": "Local Address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8969" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9260" + ] + }, + { + "call": "Location", + "key": "Location", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14850", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:140" ] }, { "call": "Log Level", "key": "Log Level", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2412" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2414" ] }, { "call": "Loss", "key": "Loss", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14385", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14424", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:47" ] }, @@ -7455,14 +7633,14 @@ "call": "LuCI Web UI", "key": "LuCI Web UI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242" ] }, { "call": "lx", "key": "lx", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6621", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6649", "src/tachyon/helpers/singBoxVariant.ts:58" ] }, @@ -7470,7 +7648,7 @@ "call": "Main DNS", "key": "Main DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129", "src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67" ] }, @@ -7478,14 +7656,14 @@ "call": "Main DNS server. If multiple servers are selected, a timeout switches to a backup.", "key": "Main DNS server. If multiple servers are selected, a timeout switches to a backup.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1394" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1396" ] }, { "call": "Main overview and status widgets", "key": "Main overview and status widgets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:986" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:988" ] }, { @@ -7493,8 +7671,8 @@ "key": "Manual", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8198", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8544", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8226", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8572", "src/tachyon/tabs/dashboard/initController.ts:918", "src/tachyon/tabs/dashboard/initController.ts:1356", "src/tachyon/tabs/dashboard/partials/renderSections.ts:592" @@ -7504,28 +7682,28 @@ "call": "Manual list update", "key": "Manual list update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1989" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1991" ] }, { "call": "MASQUE Access Token", "key": "MASQUE Access Token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9479" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805" ] }, { "call": "MASQUE Account ID", "key": "MASQUE Account ID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9793" ] }, { "call": "MASQUE Private Key", "key": "MASQUE Private Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9455" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9781" ] }, { @@ -7546,35 +7724,35 @@ "call": "Match destination IPs or subnets", "key": "Match destination IPs or subnets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10529" ] }, { "call": "Match destination ports. Use a single port or a range", "key": "Match destination ports. Use a single port or a range", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10397" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10737" ] }, { "call": "Match Found", "key": "Match Found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11105" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11464" ] }, { "call": "Match traffic by packet DSCP mark (assigned in Windows via Policy-Based QoS). Examples: 46 (EF), 0x2e, 34 (AF41)", "key": "Match traffic by packet DSCP mark (assigned in Windows via Policy-Based QoS). Examples: 46 (EF), 0x2e, 34 (AF41)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10405" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10745" ] }, { "call": "Max Handshake Attempts", "key": "Max Handshake Attempts", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9481", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3673" ] }, @@ -7582,7 +7760,7 @@ "call": "Max reconnects per hour before alert (default 10).", "key": "Max reconnects per hour before alert (default 10).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2894" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2896" ] }, { @@ -7610,14 +7788,14 @@ "call": "Maximum time to wait for example.com to resolve during a DNS health check.", "key": "Maximum time to wait for example.com to resolve during a DNS health check.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1536" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1538" ] }, { "call": "Memory Usage", "key": "Memory Usage", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8959", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8987", "src/tachyon/tabs/dashboard/initController.ts:1891" ] }, @@ -7625,7 +7803,7 @@ "call": "Menu & Navigation", "key": "Menu & Navigation", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1282" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284" ] }, { @@ -7646,7 +7824,7 @@ "call": "Metrics Retention (hours)", "key": "Metrics Retention (hours)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2798" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2800" ] }, { @@ -7663,7 +7841,7 @@ "call": "Minimum latency difference in milliseconds that triggers switching to a faster server.", "key": "Minimum latency difference in milliseconds that triggers switching to a faster server.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2710" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2954" ] }, { @@ -7677,21 +7855,21 @@ "call": "Mixed Proxy Password", "key": "Mixed Proxy Password", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10014" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10340" ] }, { "call": "Mixed Proxy Port", "key": "Mixed Proxy Port", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9930" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10256" ] }, { "call": "Mixed Proxy Username", "key": "Mixed Proxy Username", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9973" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10299" ] }, { @@ -7705,7 +7883,7 @@ "call": "Model name to use. Leave empty to use default (gpt-4o-mini / claude-3-5-haiku / deepseek-chat / llama3:latest).", "key": "Model name to use. Leave empty to use default (gpt-4o-mini / claude-3-5-haiku / deepseek-chat / llama3:latest).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2619" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2621" ] }, { @@ -7726,44 +7904,44 @@ "call": "Monitored Interfaces", "key": "Monitored Interfaces", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1765" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1767" ] }, { "call": "Monitoring", "key": "Monitoring", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1027", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:603" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1029", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:644" ] }, { "call": "Monitors sing-box reconnect frequency. Alerts if too many reconnects per hour.", "key": "Monitors sing-box reconnect frequency. Alerts if too many reconnects per hour.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2881" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2883" ] }, { "call": "Move Down", "key": "Move Down", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1241" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1243" ] }, { "call": "Move Up", "key": "Move Up", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1218" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1220" ] }, { "call": "MTU", "key": "MTU", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3415" ] }, @@ -7771,22 +7949,22 @@ "call": "Must be a comma-separated list of numeric IDs", "key": "Must be a comma-separated list of numeric IDs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3173" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3175" ] }, { "call": "Must be a number in the range of 0 - 10000", "key": "Must be a number in the range of 0 - 10000", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2135", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2150" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2379", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2394" ] }, { "call": "My Strategies", "key": "My Strategies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12649", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12688", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:94" ] }, @@ -7794,7 +7972,7 @@ "call": "Name", "key": "Name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13454", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:971" ] }, @@ -7802,25 +7980,25 @@ "call": "Name displayed on the dashboard", "key": "Name displayed on the dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2680", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3143" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2924", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3387" ] }, { "call": "Name shown in the priority level list", "key": "Name shown in the priority level list", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2958" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3202" ] }, { "call": "Native internet restored. Tachyon stopped.", "key": "Native internet restored. Tachyon stopped.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16374", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16467", - "src/tachyon/tabs/diagnostic/initController.ts:1533", - "src/tachyon/tabs/diagnostic/initController.ts:1643" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16743", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16839", + "src/tachyon/tabs/diagnostic/initController.ts:1534", + "src/tachyon/tabs/diagnostic/initController.ts:1648" ] }, { @@ -7850,37 +8028,37 @@ "call": "Netherlands (nl)", "key": "Netherlands (nl)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10117" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443" ] }, { "call": "Network & Interfaces", "key": "Network & Interfaces", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286" ] }, { "call": "Network Interface", "key": "Network Interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1950", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9672" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2194", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9998" ] }, { "call": "Network interface settings", "key": "Network interface settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3845" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4089" ] }, { "call": "new build", "key": "new build", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19504", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19506", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19882", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19884", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:73", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:75" ] @@ -7889,14 +8067,14 @@ "call": "New domains:", "key": "New domains:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7827" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8072" ] }, { "call": "New version %s is available for %s", "key": "New version %s is available for %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7038", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7066", "src/tachyon/services/core.service.ts:38" ] }, @@ -7904,8 +8082,8 @@ "call": "NFQUEUE range is available", "key": "NFQUEUE range is available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:100", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:97" ] @@ -7914,8 +8092,8 @@ "call": "NFQUEUE range overlaps with another rule", "key": "NFQUEUE range overlaps with another rule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:99", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:96" ] @@ -7924,38 +8102,38 @@ "call": "NFQWS Strategy", "key": "NFQWS Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7452" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7697" ] }, { "call": "NFQWS strategy cannot be empty", "key": "NFQWS strategy cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5824" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6068" ] }, { "call": "NFQWS2 Strategy", "key": "NFQWS2 Strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7485" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7730" ] }, { "call": "NFQWS2 strategy cannot be empty", "key": "NFQWS2 strategy cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6298" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6542" ] }, { "call": "No", "key": "No", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8129", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8189", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8157", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8217", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8563", "src/tachyon/tabs/dashboard/initController.ts:826", "src/tachyon/tabs/dashboard/initController.ts:830", "src/tachyon/tabs/dashboard/initController.ts:906", @@ -7974,7 +8152,7 @@ "call": "No active connections", "key": "No active connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470", "src/tachyon/tabs/monitoring/initController.ts:1026" ] }, @@ -7982,22 +8160,22 @@ "call": "No active DHCP clients found on local network.", "key": "No active DHCP clients found on local network.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16131", - "src/tachyon/tabs/diagnostic/initController.ts:1255" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16500", + "src/tachyon/tabs/diagnostic/initController.ts:1256" ] }, { "call": "No active routing sections found.", "key": "No active routing sections found.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:857" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:859" ] }, { "call": "No benchmark data yet. Click \"Start Benchmark\" to begin.", "key": "No benchmark data yet. Click \"Start Benchmark\" to begin.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14440", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14479", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:109" ] }, @@ -8005,7 +8183,7 @@ "call": "No benchmark history yet. Run a benchmark to see results here.", "key": "No benchmark history yet. Run a benchmark to see results here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13617", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13656", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1204" ] }, @@ -8013,7 +8191,7 @@ "call": "No benchmark results yet. Configure options and click \"Start Benchmark\".", "key": "No benchmark results yet. Configure options and click \"Start Benchmark\".", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13100", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:567" ] }, @@ -8021,7 +8199,7 @@ "call": "No check targets found in the configuration.", "key": "No check targets found in the configuration.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11826", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11865", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:239" ] }, @@ -8029,7 +8207,7 @@ "call": "No closed connections", "key": "No closed connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470", "src/tachyon/tabs/monitoring/initController.ts:1027" ] }, @@ -8037,7 +8215,7 @@ "call": "No conflict detected", "key": "No conflict detected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10211", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10239", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:32" ] }, @@ -8045,14 +8223,14 @@ "call": "No Custom Rules Matched", "key": "No Custom Rules Matched", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11186" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11545" ] }, { "call": "No custom strategies added yet.", "key": "No custom strategies added yet.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13440", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13479", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:998" ] }, @@ -8075,30 +8253,46 @@ "call": "No DHCP clients detected", "key": "No DHCP clients detected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15914", - "src/tachyon/tabs/diagnostic/initController.ts:943" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16283", + "src/tachyon/tabs/diagnostic/initController.ts:944" ] }, { "call": "No diagnostic history available yet.", "key": "No diagnostic history available yet.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16247", - "src/tachyon/tabs/diagnostic/initController.ts:1382" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16616", + "src/tachyon/tabs/diagnostic/initController.ts:1383" + ] + }, + { + "call": "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains.", + "key": "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14953", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:270" + ] + }, + { + "call": "No DNS resolvers recorded", + "key": "No DNS resolvers recorded", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15011", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:336" ] }, { "call": "No domains detected yet", "key": "No domains detected yet", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2968" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2970" ] }, { "call": "No enabled server inbounds configured", "key": "No enabled server inbounds configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10331", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10359", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:187" ] }, @@ -8106,30 +8300,30 @@ "call": "No file selected", "key": "No file selected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7687" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7932" ] }, { "call": "No issues detected. System is running normally.", "key": "No issues detected. System is running normally.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16108", - "src/tachyon/tabs/diagnostic/initController.ts:1230" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16477", + "src/tachyon/tabs/diagnostic/initController.ts:1231" ] }, { "call": "No issues found", "key": "No issues found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789", - "src/tachyon/tabs/diagnostic/initController.ts:760" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158", + "src/tachyon/tabs/diagnostic/initController.ts:761" ] }, { "call": "No other marking rules found", "key": "No other marking rules found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:105" ] }, @@ -8137,7 +8331,7 @@ "call": "No public firewall port required", "key": "No public firewall port required", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10264", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:99" ] }, @@ -8145,7 +8339,7 @@ "call": "No rules use ByeDPI", "key": "No rules use ByeDPI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:79" ] }, @@ -8153,7 +8347,7 @@ "call": "No rules use Zapret", "key": "No rules use Zapret", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:79" ] }, @@ -8161,7 +8355,7 @@ "call": "No rules use Zapret2", "key": "No rules use Zapret2", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:82" ] }, @@ -8177,14 +8371,14 @@ "call": "No snapshots yet", "key": "No snapshots yet", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:606" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:608" ] }, { "call": "No strategies match the active filter.", "key": "No strategies match the active filter.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1372" ] }, @@ -8192,8 +8386,8 @@ "call": "No versions found", "key": "No versions found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20935", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21310", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21313", "src/tachyon/tabs/updates/initController.ts:1497", "src/tachyon/tabs/updates/initController.ts:1500" ] @@ -8202,7 +8396,7 @@ "call": "No working strategy to apply", "key": "No working strategy to apply", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14267", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14306", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1954" ] }, @@ -8210,7 +8404,7 @@ "call": "Node list is empty", "key": "Node list is empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8437", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8465", "src/tachyon/tabs/dashboard/initController.ts:1221" ] }, @@ -8218,7 +8412,7 @@ "call": "Nodes", "key": "Nodes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8270", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8298", "src/tachyon/tabs/dashboard/initController.ts:1014" ] }, @@ -8226,7 +8420,7 @@ "call": "None", "key": "None", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15911", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16280", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:871", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:884", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:897", @@ -8235,7 +8429,7 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2803", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3095", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3104", - "src/tachyon/tabs/diagnostic/initController.ts:934" + "src/tachyon/tabs/diagnostic/initController.ts:935" ] }, { @@ -8243,13 +8437,13 @@ "key": "Not configured", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10220", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14875", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10248", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15244", "src/tachyon/methods/custom/getDashboardSections.ts:1698", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:317", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:46", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:157" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:157", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:317" ] }, { @@ -8266,8 +8460,8 @@ "call": "Not detected", "key": "Not detected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10341", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10369", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:199" ] @@ -8276,7 +8470,7 @@ "call": "Not implement yet", "key": "Not implement yet", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11626", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11665", "src/tachyon/tabs/diagnostic/partials/renderCheckSection.ts:193" ] }, @@ -8284,15 +8478,15 @@ "call": "Not installed", "key": "Not installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6611", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6639", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274", "src/tachyon/helpers/singBoxVariant.ts:34", "src/tachyon/helpers/singBoxVariant.ts:42", "src/tachyon/tabs/updates/initController.ts:1410", @@ -8308,7 +8502,7 @@ "call": "Not public", "key": "Not public", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10234", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10262", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:62" ] }, @@ -8316,7 +8510,7 @@ "call": "Not required for this listen address", "key": "Not required for this listen address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10320", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:139" ] }, @@ -8326,46 +8520,46 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2583", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2876", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14824", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14843", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14903", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:470", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:849", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15193", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15212", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15217", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15272", "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:91", "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:118", "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:124", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:190" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:190", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:470", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:849" ] }, { "call": "Not running", "key": "Not running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6167", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15311", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15481", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15527", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15589", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6195", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15680", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15850", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15896", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15958", "src/tachyon/tabs/diagnostic/diagnostic.store.ts:159", - "src/tachyon/tabs/diagnostic/initController.ts:127", - "src/tachyon/tabs/diagnostic/initController.ts:358", - "src/tachyon/tabs/diagnostic/initController.ts:416", - "src/tachyon/tabs/diagnostic/initController.ts:502" + "src/tachyon/tabs/diagnostic/initController.ts:128", + "src/tachyon/tabs/diagnostic/initController.ts:359", + "src/tachyon/tabs/diagnostic/initController.ts:417", + "src/tachyon/tabs/diagnostic/initController.ts:503" ] }, { "call": "Not set", "key": "Not set", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11258" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11617" ] }, { "call": "Notice: Cloudflare WARP edge servers only support AmneziaWG 2.0 (WireGuard). The profile has been automatically set to 2.0 so the connection works properly. Versions 3.0 and 3.1 require an AmneziaWG server via 'Import .conf'.", "key": "Notice: Cloudflare WARP edge servers only support AmneziaWG 2.0 (WireGuard). The profile has been automatically set to 2.0 so the connection works properly. Versions 3.0 and 3.1 require an AmneziaWG server via 'Import .conf'.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8630" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8896" ] }, { @@ -8379,70 +8573,70 @@ "call": "Notify on Certificate Warnings", "key": "Notify on Certificate Warnings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3255" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3257" ] }, { "call": "Notify on Core Crashes", "key": "Notify on Core Crashes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3203" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3205" ] }, { "call": "Notify on DNS Leaks", "key": "Notify on DNS Leaks", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3268" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3270" ] }, { "call": "Notify on Server Switches", "key": "Notify on Server Switches", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3229" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3231" ] }, { "call": "Notify on Service Restarts", "key": "Notify on Service Restarts", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3216" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3218" ] }, { "call": "Notify on Subscription Updates", "key": "Notify on Subscription Updates", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3242" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3244" ] }, { "call": "Number of consecutive failed checks required before switching DNS servers.", "key": "Number of consecutive failed checks required before switching DNS servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1548" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1550" ] }, { "call": "Number of consecutive failed probes before switching sections", "key": "Number of consecutive failed probes before switching sections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2349" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2351" ] }, { "call": "Number of consecutive failures before restarting (default 3).", "key": "Number of consecutive failures before restarting (default 3).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2725" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2727" ] }, { "call": "Number of consecutive successful checks required before returning to a higher-priority DNS server.", "key": "Number of consecutive successful checks required before returning to a higher-priority DNS server.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1568" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1570" ] }, { @@ -8466,83 +8660,99 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3126" ] }, + { + "call": "Observed Public IP", + "key": "Observed Public IP", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14849", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:139" + ] + }, + { + "call": "OFFLINE", + "key": "OFFLINE", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14910", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:209" + ] + }, { "call": "Ollama (Local PC / Server)", "key": "Ollama (Local PC / Server)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2609" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611" ] }, { "call": "One record per line: example.com 192.168.1.100 or 192.168.1.100 example.com. Lines starting with # are ignored.", "key": "One record per line: example.com 192.168.1.100 or 192.168.1.100 example.com. Lines starting with # are ignored.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7989" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8234" ] }, { "call": "Only from the specified countries.", "key": "Only from the specified countries.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3044" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3288" ] }, { "call": "Only selected", "key": "Only selected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2021", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2029" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2265", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2273" ] }, { "call": "Only selected except exclusions", "key": "Only selected except exclusions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2022", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2031" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2266", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2275" ] }, { "call": "Only servers whose names match the expression.", "key": "Only servers whose names match the expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3304" ] }, { "call": "Only servers with one of the selected protocols.", "key": "Only servers with one of the selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3011" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3255" ] }, { "call": "Only servers with one of the selected security types.", "key": "Only servers with one of the selected security types.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3015" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3259" ] }, { "call": "Only servers with one of the selected transports.", "key": "Only servers with one of the selected transports.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3256" ] }, { "call": "Only the specified servers.", "key": "Only the specified servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3296" ] }, { "call": "OOB Values (-o)", "key": "OOB Values (-o)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13271", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:807" ] }, @@ -8550,8 +8760,8 @@ "call": "Open", "key": "Open", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21076", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21113", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21454", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21491", "src/tachyon/tabs/updates/initController.ts:1661", "src/tachyon/tabs/updates/initController.ts:1700" ] @@ -8560,14 +8770,14 @@ "call": "Open priority settings and enter a display name", "key": "Open priority settings and enter a display name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4036" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4280" ] }, { "call": "Open Project Page", "key": "Open Project Page", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14746", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15115", "src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:31" ] }, @@ -8575,7 +8785,7 @@ "call": "Operation completed successfully!", "key": "Operation completed successfully!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:329" ] }, @@ -8583,7 +8793,7 @@ "call": "Operation failed", "key": "Operation failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19815", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20193", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:471" ] }, @@ -8591,8 +8801,8 @@ "call": "Operation in progress...", "key": "Operation in progress...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19530", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19585", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19908", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19963", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:115", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:177" ] @@ -8601,7 +8811,7 @@ "call": "Operation log", "key": "Operation log", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19571", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19949", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:162" ] }, @@ -8609,7 +8819,7 @@ "call": "Operation log is not available", "key": "Operation log is not available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003", "src/tachyon/methods/shell/index.ts:696" ] }, @@ -8617,7 +8827,7 @@ "call": "Operation started. Waiting for log output...", "key": "Operation started. Waiting for log output...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19567", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19945", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:157" ] }, @@ -8625,9 +8835,9 @@ "call": "Operation timed out", "key": "Operation timed out", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1148", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3857", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3925", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1196", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3865", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3933", "src/helpers/withTimeout.ts:7", "src/tachyon/methods/shell/index.ts:517", "src/tachyon/methods/shell/index.ts:605" @@ -8637,38 +8847,38 @@ "call": "Optimize AWG MTU", "key": "Optimize AWG MTU", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16003", - "src/tachyon/tabs/diagnostic/initController.ts:1100" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16372", + "src/tachyon/tabs/diagnostic/initController.ts:1101" ] }, { "call": "Optimize RAM memory", "key": "Optimize RAM memory", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15995", - "src/tachyon/tabs/diagnostic/initController.ts:1092" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364", + "src/tachyon/tabs/diagnostic/initController.ts:1093" ] }, { "call": "Option \"%s\" contains an invalid input value.", "key": "Option \"%s\" contains an invalid input value.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1441", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6900" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1625", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7144" ] }, { "call": "Optional — leave empty for default", "key": "Optional — leave empty for default", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9443" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9769" ] }, { "call": "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")...", "key": "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13504", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13543", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1071" ] }, @@ -8676,21 +8886,21 @@ "call": "Optional tls-auth or tls-crypt key", "key": "Optional tls-auth or tls-crypt key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9588" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914" ] }, { "call": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws.", "key": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5902" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6146" ] }, { "call": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws2.", "key": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws2.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6376" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6620" ] }, { @@ -8704,14 +8914,14 @@ "call": "Or paste hosts file content:", "key": "Or paste hosts file content:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7928" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8173" ] }, { "call": "Other peers", "key": "Other peers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9069", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9097", "src/tachyon/tabs/dashboard/initController.ts:2035" ] }, @@ -8727,35 +8937,35 @@ "call": "Output Network Interface", "key": "Output Network Interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1702" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1704" ] }, { "call": "Override the default OpenWrt device headers for this subscription", "key": "Override the default OpenWrt device headers for this subscription", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2554" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2798" ] }, { "call": "Overwrite existing records (if unchecked, merge with existing records)", "key": "Overwrite existing records (if unchecked, merge with existing records)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7957" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8202" ] }, { "call": "P2P Client Ports", "key": "P2P Client Ports", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1863" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1865" ] }, { "call": "P2P Leak Protection", "key": "P2P Leak Protection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1853" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1855" ] }, { @@ -8785,31 +8995,31 @@ "call": "Parallel (fast failover, ≤3 s)", "key": "Parallel (fast failover, ≤3 s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1383" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1385" ] }, { "call": "Parental Control", "key": "Parental Control", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1013", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:568" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1015", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:609" ] }, { "call": "Parsed records:", "key": "Parsed records:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7816" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8061" ] }, { "call": "Password", "key": "Password", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9265", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9591", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9725", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3066" ] }, @@ -8817,15 +9027,15 @@ "call": "Password cannot be empty", "key": "Password cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10371" ] }, { "call": "Paste content or upload a file to preview imported DNS records.", "key": "Paste content or upload a file to preview imported DNS records.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7722", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7750" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7967", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7995" ] }, { @@ -8840,28 +9050,28 @@ "call": "Path must be absolute (start with /)", "key": "Path must be absolute (start with /)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2393" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2395" ] }, { "call": "Path must contain at least one directory (like /tmp/cache.db)", "key": "Path must contain at least one directory (like /tmp/cache.db)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2402" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2404" ] }, { "call": "Path must end with cache.db", "key": "Path must end with cache.db", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2397" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2399" ] }, { "call": "Pattern Builder", "key": "Pattern Builder", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12648", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12687", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:93" ] }, @@ -8869,7 +9079,7 @@ "call": "Patterns reset to defaults!", "key": "Patterns reset to defaults!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13361", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:861" ] }, @@ -8877,23 +9087,23 @@ "call": "Patterns reset to factory defaults", "key": "Patterns reset to factory defaults", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4555", - "src/tachyon/methods/shell/index.ts:1448" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4563", + "src/tachyon/methods/shell/index.ts:1450" ] }, { "call": "Patterns saved successfully", "key": "Patterns saved successfully", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4531", - "src/tachyon/methods/shell/index.ts:1410" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4539", + "src/tachyon/methods/shell/index.ts:1412" ] }, { "call": "Patterns saved successfully!", "key": "Patterns saved successfully!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13308", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13347", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:847" ] }, @@ -8901,9 +9111,9 @@ "call": "Pause updates", "key": "Pause updates", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17321", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17322", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17699", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17700", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243", "src/tachyon/tabs/monitoring/initController.ts:746", "src/tachyon/tabs/monitoring/render.ts:80", "src/tachyon/tabs/monitoring/render.ts:81" @@ -8934,35 +9144,35 @@ "call": "Peer Public Key", "key": "Peer Public Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8992" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9283" ] }, { "call": "PEM-encoded CA certificate", "key": "PEM-encoded CA certificate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9552" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9878" ] }, { "call": "PEM-encoded client certificate", "key": "PEM-encoded client certificate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9564" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890" ] }, { "call": "PEM-encoded client private key", "key": "PEM-encoded client private key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9576" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902" ] }, { "call": "Pending", "key": "Pending", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6080", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6108", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:971", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:984", "src/tachyon/tabs/diagnostic/diagnostic.store.ts:63" @@ -8972,29 +9182,37 @@ "call": "Pending...", "key": "Pending...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11706", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11745", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:98" ] }, + { + "call": "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP.", + "key": "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15057", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:389" + ] + }, { "call": "Periodically check the current level and switch to a faster server even when the current one works.", "key": "Periodically check the current level and switch to a faster server even when the current one works.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3216" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3460" ] }, { "call": "Periodically checks if the proxy is responding. Restarts Tachyon after consecutive failures.", "key": "Periodically checks if the proxy is responding. Restarts Tachyon after consecutive failures.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2701" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2703" ] }, { "call": "Persistent Keepalive", "key": "Persistent Keepalive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9043", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9334", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3422" ] }, @@ -9002,7 +9220,7 @@ "call": "Persistent Smart Detect", "key": "Persistent Smart Detect", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2852" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2854" ] }, { @@ -9023,29 +9241,29 @@ "call": "Pin on dashboard", "key": "Pin on dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2759", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3251" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3495" ] }, { "call": "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct.", "key": "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1864" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1866" ] }, { "call": "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers.", "key": "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1427" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1429" ] }, { "call": "Please specify strategy name and arguments", "key": "Please specify strategy name and arguments", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13364", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13403", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:912" ] }, @@ -9060,28 +9278,28 @@ "call": "Polling Interval (seconds)", "key": "Polling Interval (seconds)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3182" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3184" ] }, { "call": "Polling interval must be at least 1 second", "key": "Polling interval must be at least 1 second", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3195" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3197" ] }, { "call": "Port cannot be empty", "key": "Port cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9942" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10268" ] }, { "call": "Port conflict", "key": "Port conflict", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10228", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:19" ] }, @@ -9089,14 +9307,14 @@ "call": "Port for the local mixed proxy of this section", "key": "Port for the local mixed proxy of this section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9931" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10257" ] }, { "call": "Port must be between 1 and 65535", "key": "Port must be between 1 and 65535", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5523", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5767", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1920" ] }, @@ -9104,50 +9322,50 @@ "call": "Port range start must be less than or equal to end", "key": "Port range start must be less than or equal to end", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5527" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5771" ] }, { "call": "Port range start must not exceed its end", "key": "Port range start must not exceed its end", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1898" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1900" ] }, { "call": "Ports", "key": "Ports", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10396", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11320" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10736", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11679" ] }, { "call": "Ports must be between 1 and 65535", "key": "Ports must be between 1 and 65535", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1894" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1896" ] }, { "call": "Pre-built index of Tachyon documentation chunks. When enabled, AI Doctor searches relevant docs before generating a diagnosis.", "key": "Pre-built index of Tachyon documentation chunks. When enabled, AI Doctor searches relevant docs before generating a diagnosis.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2673" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2675" ] }, { "call": "Pre-download all preset lists", "key": "Pre-download all preset lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2125" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2127" ] }, { "call": "pre-release", "key": "pre-release", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21002", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21380", "src/tachyon/tabs/updates/initController.ts:1578" ] }, @@ -9155,7 +9373,7 @@ "call": "Pre-shared key", "key": "Pre-shared key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9324" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9650" ] }, { @@ -9169,14 +9387,14 @@ "call": "Prefer IPv4", "key": "Prefer IPv4", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627" ] }, { "call": "Prefer IPv6", "key": "Prefer IPv6", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1629" ] }, { @@ -9190,14 +9408,14 @@ "call": "Prefix text", "key": "Prefix text", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2598" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2842" ] }, { "call": "Preparing strategies and isolated nftables queue...", "key": "Preparing strategies and isolated nftables queue...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14137", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14176", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1804" ] }, @@ -9205,7 +9423,7 @@ "call": "Preshared Key", "key": "Preshared Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9026" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9317" ] }, { @@ -9226,14 +9444,14 @@ "call": "Prevents multiple reload_firewall calls within 120 seconds to avoid connection drops.", "key": "Prevents multiple reload_firewall calls within 120 seconds to avoid connection drops.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2772" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2774" ] }, { "call": "Primary DNS", "key": "Primary DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14548", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14587", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:232" ] }, @@ -9241,8 +9459,8 @@ "call": "Priority", "key": "Priority", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9799", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11170" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11529" ] }, { @@ -9251,7 +9469,7 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2740", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2741", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8687", "src/tachyon/tabs/dashboard/initController.ts:1504", "src/tachyon/tabs/dashboard/partials/renderSections.ts:678", "src/tachyon/tabs/dashboard/partials/renderSections.ts:679" @@ -9261,7 +9479,7 @@ "call": "Priority details are unavailable", "key": "Priority details are unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8609", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8637", "src/tachyon/tabs/dashboard/initController.ts:1441" ] }, @@ -9269,31 +9487,31 @@ "call": "Priority level settings", "key": "Priority level settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3922", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3923" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4166", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4167" ] }, { "call": "Priority levels", "key": "Priority levels", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3260" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3504" ] }, { "call": "Priority settings", "key": "Priority settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3981", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3986", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3987" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4225", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4230", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4231" ] }, { "call": "Private Key", "key": "Private Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8981" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9272" ] }, { @@ -9342,9 +9560,9 @@ "call": "Protocol", "key": "Protocol", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14382", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2091", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14421", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2335", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9842", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2663", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2697", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:44" @@ -9354,7 +9572,7 @@ "call": "Protocol version: 2.0 (standard headers, WARP compatible), 3.0 (header protection key, padding ranges), or 3.1 (header protection key, padding ranges, advanced timers)", "key": "Protocol version: 2.0 (standard headers, WARP compatible), 3.0 (header protection key, padding ranges), or 3.1 (header protection key, padding ranges, advanced timers)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9062" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353" ] }, { @@ -9368,7 +9586,7 @@ "call": "Provider", "key": "Provider", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14381", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14420", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:43" ] }, @@ -9376,7 +9594,7 @@ "call": "Provider Global Default", "key": "Provider Global Default", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12812", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:287" ] }, @@ -9392,7 +9610,7 @@ "call": "Proxy", "key": "Proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11652", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11691", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:29" ] }, @@ -9400,69 +9618,93 @@ "call": "Proxy / DPI", "key": "Proxy / DPI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207", - "src/tachyon/tabs/diagnostic/initController.ts:1338" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576", + "src/tachyon/tabs/diagnostic/initController.ts:1339" ] }, { "call": "Proxy Fail Threshold", "key": "Proxy Fail Threshold", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2724" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2726" ] }, { "call": "Proxy Health Check Interval (s)", "key": "Proxy Health Check Interval (s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2713" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2715" ] }, { "call": "Proxy Health Check URL", "key": "Proxy Health Check URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2735" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2737" + ] + }, + { + "call": "Proxy is offline or unreachable on 127.0.0.1:4534.", + "key": "Proxy is offline or unreachable on 127.0.0.1:4534.", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:120" ] }, { "call": "Proxy link is unavailable", "key": "Proxy link is unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8122", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8150", "src/tachyon/tabs/dashboard/initController.ts:821" ] }, + { + "call": "Proxy Outbound", + "key": "Proxy Outbound", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14887", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:181" + ] + }, { "call": "Proxy Section for Bot", "key": "Proxy Section for Bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3279" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3281" ] }, { "call": "Proxy to use for WARP API registration (api.cloudflareclient.com)", "key": "Proxy to use for WARP API registration (api.cloudflareclient.com)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9225" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551" ] }, { "call": "PSK", "key": "PSK", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9649" ] }, { "call": "Public host", "key": "Public host", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10215", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10243", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2729", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:40" ] }, + { + "call": "Public IP Address Isolation", + "key": "Public IP Address Isolation", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14940", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:246" + ] + }, { "call": "QR code is too large", "key": "QR code is too large", @@ -9470,19 +9712,27 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1694" ] }, + { + "call": "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534...", + "key": "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534...", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14775", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:42" + ] + }, { "call": "QUIC (HTTP/3)", "key": "QUIC (HTTP/3)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10421", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10761", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10780" ] }, { "call": "RAG Knowledge Base + Live ISP Probe Context", "key": "RAG Knowledge Base + Live ISP Probe Context", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13554", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1128" ] }, @@ -9490,14 +9740,14 @@ "call": "Random Trailers", "key": "Random Trailers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9165" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9489" ] }, { "call": "Rating", "key": "Rating", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14386", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14425", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:48" ] }, @@ -9505,22 +9755,30 @@ "call": "RDP", "key": "RDP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10427", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10767", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10786" + ] + }, + { + "call": "Re-run Leak Test", + "key": "Re-run Leak Test", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15042", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:371" ] }, { "call": "Read error", "key": "Read error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8953" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9244" ] }, { "call": "Ready to benchmark DNS providers", "key": "Ready to benchmark DNS providers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14369", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14408", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:29" ] }, @@ -9577,15 +9835,15 @@ "call": "Rebuild firewall rules", "key": "Rebuild firewall rules", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15982", - "src/tachyon/tabs/diagnostic/initController.ts:1079" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16351", + "src/tachyon/tabs/diagnostic/initController.ts:1080" ] }, { "call": "Rebuilt release", "key": "Rebuilt release", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21095", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21473", "src/tachyon/tabs/updates/initController.ts:1681" ] }, @@ -9593,7 +9851,7 @@ "call": "Recommended", "key": "Recommended", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14106", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14145", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1769" ] }, @@ -9601,7 +9859,7 @@ "call": "Recommended DNS Configuration", "key": "Recommended DNS Configuration", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14520", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14559", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:202" ] }, @@ -9609,7 +9867,7 @@ "call": "Recommended DNS settings applied successfully and service restarted!", "key": "Recommended DNS settings applied successfully and service restarted!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14663", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14702", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:363" ] }, @@ -9617,37 +9875,37 @@ "call": "Recommended Quick Fixes:", "key": "Recommended Quick Fixes:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16052", - "src/tachyon/tabs/diagnostic/initController.ts:1163" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16421", + "src/tachyon/tabs/diagnostic/initController.ts:1164" ] }, { "call": "Reconnect Threshold", "key": "Reconnect Threshold", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2893" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2895" ] }, { "call": "Reconnect WAN", "key": "Reconnect WAN", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15988", - "src/tachyon/tabs/diagnostic/initController.ts:1085" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16357", + "src/tachyon/tabs/diagnostic/initController.ts:1086" ] }, { "call": "Records proxy/DNS latency and health status in hourly buckets for analysis.", "key": "Records proxy/DNS latency and health status in hourly buckets for analysis.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2786" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2788" ] }, { "call": "Records: %d", "key": "Records: %d", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8060" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8305" ] }, { @@ -9662,37 +9920,37 @@ "call": "Refresh", "key": "Refresh", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16154", - "src/tachyon/tabs/diagnostic/initController.ts:1280" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16523", + "src/tachyon/tabs/diagnostic/initController.ts:1281" ] }, { "call": "Refresh Device List", "key": "Refresh Device List", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16135", - "src/tachyon/tabs/diagnostic/initController.ts:1259" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16504", + "src/tachyon/tabs/diagnostic/initController.ts:1260" ] }, { "call": "Registration Detour", "key": "Registration Detour", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9224" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9550" ] }, { "call": "Regular expression must not contain spaces or commas", "key": "Regular expression must not contain spaces or commas", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5409" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5653" ] }, { "call": "Reinstall", "key": "Reinstall", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20684", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21062", "src/tachyon/tabs/updates/initController.ts:1188" ] }, @@ -9700,7 +9958,7 @@ "call": "Reject After Time", "key": "Reject After Time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9471", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3661" ] }, @@ -9708,7 +9966,7 @@ "call": "Rekey After Time", "key": "Rekey After Time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9461", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3649" ] }, @@ -9716,7 +9974,7 @@ "call": "Rekey Timeout", "key": "Rekey Timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9466", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3655" ] }, @@ -9724,7 +9982,7 @@ "call": "Reload now", "key": "Reload now", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19723", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20101", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:354" ] }, @@ -9732,7 +9990,7 @@ "call": "Reloading...", "key": "Reloading...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19750", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20128", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:390" ] }, @@ -9740,21 +9998,21 @@ "call": "Remote Hosts Lists", "key": "Remote Hosts Lists", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8138" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8383" ] }, { "call": "Remote management Telegram daemon", "key": "Remote management Telegram daemon", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1056" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1058" ] }, { "call": "Removal completed successfully!", "key": "Removal completed successfully!", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:328" ] }, @@ -9762,8 +10020,8 @@ "call": "Remove", "key": "Remove", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20643", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8260", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21021", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8506", "src/tachyon/tabs/updates/initController.ts:1133" ] }, @@ -9771,28 +10029,28 @@ "call": "Remove servers from the specified countries from this level.", "key": "Remove servers from the specified countries from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3068" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3312" ] }, { "call": "Remove servers whose names match the expression from this level.", "key": "Remove servers whose names match the expression from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3084" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3328" ] }, { "call": "Remove the specified servers from this level.", "key": "Remove the specified servers from this level.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3076" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3320" ] }, { "call": "Removing", "key": "Removing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19534", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19912", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:119" ] }, @@ -9800,7 +10058,7 @@ "call": "Require a username and password for the local mixed proxy", "key": "Require a username and password for the local mixed proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9958" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10284" ] }, { @@ -9814,8 +10072,8 @@ "call": "Reset Bootstrap DNS", "key": "Reset Bootstrap DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16002", - "src/tachyon/tabs/diagnostic/initController.ts:1099" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16371", + "src/tachyon/tabs/diagnostic/initController.ts:1100" ] }, { @@ -9824,7 +10082,7 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:416", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:457", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2535" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2537" ] }, { @@ -9838,50 +10096,58 @@ "call": "Resolve domain names before routing so sing-box can use real destination IPs.", "key": "Resolve domain names before routing so sing-box can use real destination IPs.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10056" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10382" ] }, { "call": "Resolve gateway", "key": "Resolve gateway", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15989", - "src/tachyon/tabs/diagnostic/initController.ts:1086" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16358", + "src/tachyon/tabs/diagnostic/initController.ts:1087" ] }, { "call": "Resolve real IP for routing", "key": "Resolve real IP for routing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10055" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10381" + ] + }, + { + "call": "Resolver IP", + "key": "Resolver IP", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14989", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:312" ] }, { "call": "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE.", "key": "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5697" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5941" ] }, { "call": "Resource selection by hostname inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE.", "key": "Resource selection by hostname inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6142" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6386" ] }, { "call": "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE.", "key": "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5700" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5944" ] }, { "call": "Resource selection by IP or CIDR inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE.", "key": "Resource selection by IP or CIDR inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6145" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6389" ] }, { @@ -9902,14 +10168,14 @@ "call": "Response Packet Magic Header (S2)", "key": "Response Packet Magic Header (S2)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9108" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9401" ] }, { "call": "Response Packet Magic Header (S4)", "key": "Response Packet Magic Header (S4)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9110" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9403" ] }, { @@ -9923,48 +10189,48 @@ "call": "Restart dnsmasq", "key": "Restart dnsmasq", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15983", - "src/tachyon/tabs/diagnostic/initController.ts:1080" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16352", + "src/tachyon/tabs/diagnostic/initController.ts:1081" ] }, { "call": "Restart firewall", "key": "Restart firewall", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15992", - "src/tachyon/tabs/diagnostic/initController.ts:1089" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361", + "src/tachyon/tabs/diagnostic/initController.ts:1090" ] }, { "call": "Restart network", "key": "Restart network", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15993", - "src/tachyon/tabs/diagnostic/initController.ts:1090" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16362", + "src/tachyon/tabs/diagnostic/initController.ts:1091" ] }, { "call": "Restart sing-box DNS", "key": "Restart sing-box DNS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15986", - "src/tachyon/tabs/diagnostic/initController.ts:1083" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16355", + "src/tachyon/tabs/diagnostic/initController.ts:1084" ] }, { "call": "Restart Tachyon", "key": "Restart Tachyon", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11327", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:64" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11356", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:66" ] }, { "call": "Restart Zapret/ByeDPI", "key": "Restart Zapret/ByeDPI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15994", - "src/tachyon/tabs/diagnostic/initController.ts:1091" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16363", + "src/tachyon/tabs/diagnostic/initController.ts:1092" ] }, { @@ -9979,62 +10245,62 @@ "call": "Restore", "key": "Restore", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:671", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:679" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:673", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:681" ] }, { "call": "Restore config backup", "key": "Restore config backup", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15987", - "src/tachyon/tabs/diagnostic/initController.ts:1084" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356", + "src/tachyon/tabs/diagnostic/initController.ts:1085" ] }, { "call": "Restore Native Internet", "key": "Restore Native Internet", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16432", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16455", - "src/tachyon/tabs/diagnostic/initController.ts:1603", - "src/tachyon/tabs/diagnostic/initController.ts:1627", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:142" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11434", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16804", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16827", + "src/tachyon/tabs/diagnostic/initController.ts:1608", + "src/tachyon/tabs/diagnostic/initController.ts:1632", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:144" ] }, { "call": "Restore Native Internet (Stop Tachyon)", "key": "Restore Native Internet (Stop Tachyon)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15999", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361", - "src/tachyon/tabs/diagnostic/initController.ts:1096", - "src/tachyon/tabs/diagnostic/initController.ts:1516" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16368", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16730", + "src/tachyon/tabs/diagnostic/initController.ts:1097", + "src/tachyon/tabs/diagnostic/initController.ts:1517" ] }, { "call": "Restore Snapshot", "key": "Restore Snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:637" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:639" ] }, { "call": "Restores the Tachyon factory defaults: all rules, subscriptions, custom DNS servers and other options will be lost.", "key": "Restores the Tachyon factory defaults: all rules, subscriptions, custom DNS servers and other options will be lost.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2536" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2538" ] }, { "call": "Restoring native direct internet (stopping Tachyon)...", "key": "Restoring native direct internet (stopping Tachyon)...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16459", - "src/tachyon/tabs/diagnostic/initController.ts:1519", - "src/tachyon/tabs/diagnostic/initController.ts:1631" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16733", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16831", + "src/tachyon/tabs/diagnostic/initController.ts:1520", + "src/tachyon/tabs/diagnostic/initController.ts:1636" ] }, { @@ -10055,7 +10321,7 @@ "call": "Resume updates", "key": "Resume updates", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243", "src/tachyon/tabs/monitoring/initController.ts:746" ] }, @@ -10070,8 +10336,8 @@ "call": "Rollback", "key": "Rollback", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000", "src/tachyon/tabs/updates/initController.ts:1103", "src/tachyon/tabs/updates/initController.ts:1103" ] @@ -10080,9 +10346,9 @@ "call": "Route", "key": "Route", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12002", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17974", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18025", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12041", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18352", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18403", "src/tachyon/tabs/monitoring/initController.ts:880", "src/tachyon/tabs/monitoring/initController.ts:943", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:444" @@ -10099,29 +10365,43 @@ "call": "Route bot API requests through this section. Leave empty to use the default mixed proxy.", "key": "Route bot API requests through this section. Leave empty to use the default mixed proxy.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3280" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3282" + ] + }, + { + "call": "Route community list subnets (IP/CIDR)", + "key": "Route community list subnets (IP/CIDR)", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10592" + ] + }, + { + "call": "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers).", + "key": "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers).", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10593" ] }, { "call": "Route main DNS requests through the selected section.", "key": "Route main DNS requests through the selected section.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1637" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1639" ] }, { "call": "Route requests to this DNS server through another section.", "key": "Route requests to this DNS server through another section.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7424" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7669" ] }, { "call": "Route via Proxy", "key": "Route via Proxy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213", - "src/tachyon/tabs/diagnostic/initController.ts:1345" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582", + "src/tachyon/tabs/diagnostic/initController.ts:1346" ] }, { @@ -10135,16 +10415,16 @@ "call": "Routing Rule Tracer", "key": "Routing Rule Tracer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11032" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11391" ] }, { "call": "Routing rules", "key": "Routing rules", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10268", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10277", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10296", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10305", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10324", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:103", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:114", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:144" @@ -10161,14 +10441,14 @@ "call": "Routing sections, rules and strategies", "key": "Routing sections, rules and strategies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:993" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:995" ] }, { "call": "Rule", "key": "Rule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11123" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11482" ] }, { @@ -10182,36 +10462,36 @@ "call": "Rule set must be an HTTP(S) URL or a local .srs / .json path", "key": "Rule set must be an HTTP(S) URL or a local .srs / .json path", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7218" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7463" ] }, { "call": "Rule set settings", "key": "Rule set settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4151" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4395" ] }, { "call": "Rule sets", "key": "Rule sets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10266", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10295" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10606", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10635" ] }, { "call": "Rule Sets (.srs / .json)", "key": "Rule Sets (.srs / .json)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11314" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11673" ] }, { "call": "Rule:", "key": "Rule:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12813", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12852", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:288" ] }, @@ -10220,15 +10500,15 @@ "key": "Rules", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2742", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:104", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:111" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:145", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:152" ] }, { "call": "Rules mangle counters", "key": "Rules mangle counters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10411", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10439", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:79" ] }, @@ -10236,7 +10516,7 @@ "call": "Rules mangle exist", "key": "Rules mangle exist", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10406", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10434", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:74" ] }, @@ -10244,7 +10524,7 @@ "call": "Rules mangle output counters", "key": "Rules mangle output counters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10421", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10449", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:89" ] }, @@ -10252,7 +10532,7 @@ "call": "Rules mangle output exist", "key": "Rules mangle output exist", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10416", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10444", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:84" ] }, @@ -10260,7 +10540,7 @@ "call": "Rules proxy counters", "key": "Rules proxy counters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10431", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10459", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:99" ] }, @@ -10268,7 +10548,7 @@ "call": "Rules proxy exist", "key": "Rules proxy exist", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10426", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10454", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:94" ] }, @@ -10276,15 +10556,15 @@ "call": "Run AI Doctor", "key": "Run AI Doctor", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11395", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:132" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11424", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:134" ] }, { "call": "Run Diagnostic", "key": "Run Diagnostic", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11637", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676", "src/tachyon/tabs/diagnostic/partials/renderRunAction.ts:17" ] }, @@ -10292,8 +10572,8 @@ "call": "Run doctor repair", "key": "Run doctor repair", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11385", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:122" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11414", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:124" ] }, { @@ -10301,21 +10581,21 @@ "key": "Running", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15227", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:327", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3041", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3042", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3043", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3044", "src/tachyon/methods/custom/getDashboardSections.ts:1693", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:312", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:140" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:140", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:312" ] }, { "call": "Running benchmarks...", "key": "Running benchmarks...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1371" ] }, @@ -10323,14 +10603,22 @@ "call": "Running diagnostics…", "key": "Running diagnostics…", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3348" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3350" ] }, { "call": "Russia (ru)", "key": "Russia (ru)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10114" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440" + ] + }, + { + "call": "SAFE", + "key": "SAFE", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14975", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:297" ] }, { @@ -10358,22 +10646,22 @@ "call": "Save", "key": "Save", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3730", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:802" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3974", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:804" ] }, { "call": "Save a snapshot of the working config and restore it later if something breaks.", "key": "Save a snapshot of the working config and restore it later if something breaks.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2550" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2552" ] }, { "call": "Save component backup before update", "key": "Save component backup before update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2253" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2255" ] }, { @@ -10381,7 +10669,7 @@ "key": "Save Snapshot", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:512", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:760" ] }, { @@ -10395,22 +10683,22 @@ "call": "Schedule Rule", "key": "Schedule Rule", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:576" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617" ] }, { "call": "Scheduled auto-update time", "key": "Scheduled auto-update time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2210" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2212" ] }, { "call": "Score", "key": "Score", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13038", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13661", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13077", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13700", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:544", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1248" ] @@ -10419,7 +10707,7 @@ "call": "Search", "key": "Search", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17298", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17676", "src/tachyon/tabs/monitoring/render.ts:57" ] }, @@ -10427,7 +10715,7 @@ "call": "Search domain or service...", "key": "Search domain or service...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11961", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12000", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:397" ] }, @@ -10435,7 +10723,7 @@ "call": "Search Mode", "key": "Search Mode", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12803", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12842", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:276" ] }, @@ -10450,66 +10738,74 @@ "call": "Secret key for authenticating remote access to YACD when WAN access is enabled.", "key": "Secret key for authenticating remote access to YACD when WAN access is enabled.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1830" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1832" ] }, { "call": "Secret token for authorizing WRITE operations (POST/PUT) on /cgi-bin/tachyon-agent/. Leave empty if auth is not required.", "key": "Secret token for authorizing WRITE operations (POST/PUT) on /cgi-bin/tachyon-agent/. Leave empty if auth is not required.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2577" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2579" ] }, { "call": "Section", "key": "Section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2479", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2481", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560" ] }, { "call": "Section action", "key": "Section action", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11300" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11659" ] }, { "call": "Section name", "key": "Section name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7322" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7567" ] }, { "call": "Section Rules Content", "key": "Section Rules Content", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11326" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11685" ] }, { "call": "Section used for Cloudflare WARP API registration. If your ISP blocks Cloudflare API on WAN, select a proxy section (with Mixed proxy enabled) or a tunnel interface section (WireGuard / AmneziaWG / VPN). Leave empty to use direct WAN / default mixed proxy.", "key": "Section used for Cloudflare WARP API registration. If your ISP blocks Cloudflare API on WAN, select a proxy section (with Mixed proxy enabled) or a tunnel interface section (WireGuard / AmneziaWG / VPN). Leave empty to use direct WAN / default mixed proxy.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2456" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2458" ] }, { "call": "Sections", "key": "Sections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:992", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1300", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:514" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:994", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:555" + ] + }, + { + "call": "SECURE", + "key": "SECURE", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14924", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:228" ] }, { "call": "Security", "key": "Security", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2103", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2347", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2800" ] }, @@ -10517,7 +10813,7 @@ "call": "Select", "key": "Select", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8417", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8445", "src/tachyon/tabs/dashboard/initController.ts:1195" ] }, @@ -10525,35 +10821,35 @@ "call": "Select a common client profile or enter a custom User-Agent", "key": "Select a common client profile or enter a custom User-Agent", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2497" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2741" ] }, { "call": "Select a file with .conf extension", "key": "Select a file with .conf extension", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8766" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032" ] }, { "call": "Select a network interface", "key": "Select a network interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9678" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004" ] }, { "call": "Select a predefined domain list", "key": "Select a predefined domain list", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10213" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10539" ] }, { "call": "Select a section", "key": "Select a section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7445", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7690", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:89" ] }, @@ -10561,14 +10857,14 @@ "call": "Select a section for downloading this subscription", "key": "Select a section for downloading this subscription", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2474" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2718" ] }, { "call": "Select a transit section", "key": "Select a transit section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203" ] }, { @@ -10582,35 +10878,35 @@ "call": "Select AI LLM provider for diagnostics", "key": "Select AI LLM provider for diagnostics", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2602" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2604" ] }, { "call": "Select an existing network interface", "key": "Select an existing network interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2001" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2245" ] }, { "call": "Select an existing URLTest or Priority group", "key": "Select an existing URLTest or Priority group", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3362" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3606" ] }, { "call": "Select an intermediate section", "key": "Select an intermediate section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10216" ] }, { "call": "Select and order the sections through which blocked domains are tested. Checked sections are tried top-to-bottom.", "key": "Select and order the sections through which blocked domains are tested. Checked sections are tried top-to-bottom.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2921" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2923" ] }, { @@ -10624,7 +10920,7 @@ "call": "Select DNS protocol to use", "key": "Select DNS protocol to use", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1362" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364" ] }, { @@ -10638,42 +10934,42 @@ "call": "Select network interface for VPN connection", "key": "Select network interface for VPN connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9673" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9999" ] }, { "call": "Select one or more country ISO codes (e.g. ru, us, de, nl, fr, fi, se, tr, cn, jp, sg, by, kz, ua).", "key": "Select one or more country ISO codes (e.g. ru, us, de, nl, fr, fi, se, tr, cn, jp, sg, by, kz, ua).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10110" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436" ] }, { "call": "Select or enter a User-Agent", "key": "Select or enter a User-Agent", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2510" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2754" ] }, { "call": "Select or enter path for sing-box cache file. Change this ONLY if you know what you are doing", "key": "Select or enter path for sing-box cache file. Change this ONLY if you know what you are doing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2376" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2378" ] }, { "call": "Select or enter the IP addresses of your game consoles.", "key": "Select or enter the IP addresses of your game consoles.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1922" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1924" ] }, { "call": "Select path for sing-box config file. Change this ONLY if you know what you are doing", "key": "Select path for sing-box config file. Change this ONLY if you know what you are doing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2362" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2364" ] }, { @@ -10687,8 +10983,8 @@ "call": "Select the fastest node", "key": "Select the fastest node", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8627", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3204", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8655", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3448", "src/tachyon/tabs/dashboard/initController.ts:1464" ] }, @@ -10696,28 +10992,28 @@ "call": "Select the log level for sing-box", "key": "Select the log level for sing-box", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2413" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2415" ] }, { "call": "Select the network interface from which the traffic will originate", "key": "Select the network interface from which the traffic will originate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1655" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1657" ] }, { "call": "Select the network interface to which the traffic will originate", "key": "Select the network interface to which the traffic will originate", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1703" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1705" ] }, { "call": "Select the WAN interfaces to be monitored", "key": "Select the WAN interfaces to be monitored", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1766" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1768" ] }, { @@ -10731,22 +11027,22 @@ "call": "Select which components are permitted to update automatically", "key": "Select which components are permitted to update automatically", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2235" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2237" ] }, { "call": "Select which tab opens automatically when entering Tachyon.", "key": "Select which tab opens automatically when entering Tachyon.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1297" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299" ] }, { "call": "Selected", "key": "Selected", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8501", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8613", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8529", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641", "src/tachyon/tabs/dashboard/initController.ts:1299", "src/tachyon/tabs/dashboard/initController.ts:1450" ] @@ -10784,7 +11080,7 @@ "call": "Send", "key": "Send", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12431", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12470", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:67" ] }, @@ -10792,28 +11088,28 @@ "call": "Send a Telegram notification if a potential DNS leak is detected.", "key": "Send a Telegram notification if a potential DNS leak is detected.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3269" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3271" ] }, { "call": "Send a Telegram notification if sing-box or nftables rules crash and get auto-restored.", "key": "Send a Telegram notification if sing-box or nftables rules crash and get auto-restored.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3204" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3206" ] }, { "call": "Send a Telegram notification if SSL/TLS certificates are close to expiration.", "key": "Send a Telegram notification if SSL/TLS certificates are close to expiration.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3256" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3258" ] }, { "call": "Send a Telegram notification if the Tachyon service is restarted by the watchdog.", "key": "Send a Telegram notification if the Tachyon service is restarted by the watchdog.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3217" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3219" ] }, { @@ -10827,14 +11123,14 @@ "call": "Send a Telegram notification when a URLTest group switches to a new server.", "key": "Send a Telegram notification when a URLTest group switches to a new server.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3230" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3232" ] }, { "call": "Send a Telegram notification when proxy subscriptions are successfully updated.", "key": "Send a Telegram notification when proxy subscriptions are successfully updated.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3243" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3245" ] }, { @@ -10855,7 +11151,7 @@ "call": "Sequence Overlaps (seqovl)", "key": "Sequence Overlaps (seqovl)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13197", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13236", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:729" ] }, @@ -10863,33 +11159,33 @@ "call": "Sequential (one active at a time)", "key": "Sequential (one active at a time)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1382" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1384" ] }, { "call": "Sequential: failover to the next server after N failures. Parallel: aggressive failover — switches in seconds (1 failure = switch), best if your ISP blocks DoH/DoT.", "key": "Sequential: failover to the next server after N failures. Parallel: aggressive failover — switches in seconds (1 failure = switch), best if your ISP blocks DoH/DoT.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1378" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1380" ] }, { "call": "Server", "key": "Server", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:536" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577" ] }, { "call": "Server Address", "key": "Server Address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9003", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9243", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9301", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9413", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9493", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9294", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9569", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9627", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9679", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9739", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9819", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3383" ] }, @@ -10897,22 +11193,22 @@ "call": "Server filtering", "key": "Server filtering", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2768", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2977" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3221" ] }, { "call": "Server group for automatic lowest-latency selection", "key": "Server group for automatic lowest-latency selection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9741" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10067" ] }, { "call": "Server group for priority failover", "key": "Server group for priority failover", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9800" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126" ] }, { @@ -10941,7 +11237,7 @@ "call": "Server Name Indication — leave empty to use server address", "key": "Server Name Indication — leave empty to use server address", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9278" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9604" ] }, { @@ -10964,12 +11260,12 @@ "call": "Server Port", "key": "Server Port", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9014", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9254", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9312", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9364", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9424", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9504" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9305", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9580", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9638", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9690", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9750", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9830" ] }, { @@ -10990,7 +11286,7 @@ "call": "Server unavailable", "key": "Server unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12499", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12538", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:148" ] }, @@ -11013,23 +11309,23 @@ "call": "Servers", "key": "Servers", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:999", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:530" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1001", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:571" ] }, { "call": "Servers on dashboard", "key": "Servers on dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3378" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3622" ] }, { "call": "Service / Target", "key": "Service / Target", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11997", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12036", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:439" ] }, @@ -11037,19 +11333,19 @@ "call": "Service action failed", "key": "Service action failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3816", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3835", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15673", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3824", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3843", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16042", + "src/tachyon/tabs/diagnostic/initController.ts:610", "src/tachyon/methods/shell/index.ts:468", - "src/tachyon/methods/shell/index.ts:489", - "src/tachyon/tabs/diagnostic/initController.ts:609" + "src/tachyon/methods/shell/index.ts:489" ] }, { "call": "Service availability check", "key": "Service availability check", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11783", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11822", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:186" ] }, @@ -11057,21 +11353,21 @@ "call": "Service list", "key": "Service list", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10217" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10543" ] }, { "call": "Services & Access", "key": "Services & Access", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287" ] }, { "call": "Services are online and ready! Reloading page...", "key": "Services are online and ready! Reloading page...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19747", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20125", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:387" ] }, @@ -11079,7 +11375,7 @@ "call": "Services info", "key": "Services info", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8968", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8996", "src/tachyon/tabs/dashboard/initController.ts:1901" ] }, @@ -11087,7 +11383,7 @@ "call": "Services restarted. Click to reload page.", "key": "Services restarted. Click to reload page.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19763", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20141", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:406" ] }, @@ -11095,11 +11391,11 @@ "call": "Settings", "key": "Settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1185", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7293", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1048", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:645" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1369", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7538", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1050", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1309", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:686" ] }, { @@ -11120,97 +11416,97 @@ "call": "Show metadata on dashboard", "key": "Show metadata on dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2581" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2825" ] }, { "call": "Show only selected servers.", "key": "Show only selected servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3451" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3695" ] }, { "call": "Show only servers with one of the selected protocols.", "key": "Show only servers with one of the selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654" ] }, { "call": "Show only servers with one of the selected security types.", "key": "Show only servers with one of the selected security types.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3416" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3660" ] }, { "call": "Show only servers with one of the selected transports.", "key": "Show only servers with one of the selected transports.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3413" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3657" ] }, { "call": "Show servers from selected groups without repeating their filtering criteria.", "key": "Show servers from selected groups without repeating their filtering criteria.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3524" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3768" ] }, { "call": "Show servers only from the specified countries.", "key": "Show servers only from the specified countries.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3443" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3687" ] }, { "call": "Show servers whose names match the expression.", "key": "Show servers whose names match the expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3703" ] }, { "call": "Show sing-box config", "key": "Show sing-box config", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11453", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16496", - "src/tachyon/tabs/diagnostic/initController.ts:1677", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:190" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11492", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16868", + "src/tachyon/tabs/diagnostic/initController.ts:1682", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:202" ] }, { "call": "Show sing-box config failed", "key": "Show sing-box config failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16507", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16514", - "src/tachyon/tabs/diagnostic/initController.ts:1688", - "src/tachyon/tabs/diagnostic/initController.ts:1695" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16879", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16886", + "src/tachyon/tabs/diagnostic/initController.ts:1693", + "src/tachyon/tabs/diagnostic/initController.ts:1700" ] }, { "call": "Show subscription metadata for this source on the dashboard", "key": "Show subscription metadata for this source on the dashboard", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2582" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2826" ] }, { "call": "sing-box", "key": "sing-box", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243" ] }, { "call": "Sing-box autostart disabled", "key": "Sing-box autostart disabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10172", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:77" ] }, @@ -11225,7 +11521,7 @@ "call": "Sing-box FakeIP DNS does not work", "key": "Sing-box FakeIP DNS does not work", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:69" ] }, @@ -11233,7 +11529,7 @@ "call": "Sing-box FakeIP DNS works", "key": "Sing-box FakeIP DNS works", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516", "src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:68" ] }, @@ -11241,7 +11537,7 @@ "call": "Sing-box installed", "key": "Sing-box installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10157", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10185", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:62" ] }, @@ -11249,7 +11545,7 @@ "call": "Sing-box listening ports", "key": "Sing-box listening ports", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10182", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10210", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:87" ] }, @@ -11257,7 +11553,7 @@ "call": "Sing-box process running", "key": "Sing-box process running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10177", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:82" ] }, @@ -11265,7 +11561,7 @@ "call": "Sing-box service exist", "key": "Sing-box service exist", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10167", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10195", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:72" ] }, @@ -11273,7 +11569,7 @@ "call": "Sing-box version is compatible (newer than 1.12.4)", "key": "Sing-box version is compatible (newer than 1.12.4)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10162", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10190", "src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:67" ] }, @@ -11281,7 +11577,7 @@ "call": "Singapore (sg)", "key": "Singapore (sg)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10451" ] }, { @@ -11295,35 +11591,35 @@ "call": "Skip loopback & local entries (127.0.0.1, ::1, 0.0.0.0, localhost)", "key": "Skip loopback & local entries (127.0.0.1, ::1, 0.0.0.0, localhost)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7943" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8188" ] }, { "call": "Skip TLS certificate verification (not recommended)", "key": "Skip TLS certificate verification (not recommended)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9289" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9615" ] }, { "call": "Skipped comments/invalid:", "key": "Skipped comments/invalid:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7824" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8069" ] }, { "call": "Skipped loopback:", "key": "Skipped loopback:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7820" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8065" ] }, { "call": "SLOW", "key": "SLOW", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14416", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14455", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:83" ] }, @@ -11331,14 +11627,14 @@ "call": "Snapshot name", "key": "Snapshot name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:756" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758" ] }, { "call": "Snapshot restored. The service restarts and the page will reload.", "key": "Snapshot restored. The service restarts and the page will reload.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:553" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:555" ] }, { @@ -11352,7 +11648,7 @@ "call": "Snell Version", "key": "Snell Version", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9336" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9662" ] }, { @@ -11366,30 +11662,30 @@ "call": "Sort Alphabetically", "key": "Sort Alphabetically", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8086" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8331" ] }, { "call": "Sort by latency", "key": "Sort by latency", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10228" ] }, { "call": "Sorts servers in this section by lowest latency in the dashboard.", "key": "Sorts servers in this section by lowest latency in the dashboard.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9903" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10229" ] }, { "call": "Source", "key": "Source", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17986", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18029", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11135", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18364", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18407", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11494", "src/tachyon/tabs/monitoring/initController.ts:892", "src/tachyon/tabs/monitoring/initController.ts:947" ] @@ -11398,14 +11694,14 @@ "call": "Source Devices", "key": "Source Devices", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11319" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11678" ] }, { "call": "Source Network Interface", "key": "Source Network Interface", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1654" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1656" ] }, { @@ -11434,7 +11730,7 @@ "call": "Speed", "key": "Speed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13030", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13069", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:536" ] }, @@ -11442,7 +11738,7 @@ "call": "Split Modes (dpi-desync)", "key": "Split Modes (dpi-desync)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13222", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13261", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:756" ] }, @@ -11450,7 +11746,7 @@ "call": "Split Positions (dpi-desync-split-pos)", "key": "Split Positions (dpi-desync-split-pos)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13228", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13267", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:762" ] }, @@ -11458,7 +11754,7 @@ "call": "Split Positions (pos)", "key": "Split Positions (pos)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13179", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13218", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:711" ] }, @@ -11466,7 +11762,7 @@ "call": "Split Values (-s)", "key": "Split Values (-s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13259", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13298", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:795" ] }, @@ -11474,15 +11770,15 @@ "call": "SSH", "key": "SSH", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10426", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10766", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10785" ] }, { "call": "Standalone ByeDPI autostart is enabled", "key": "Standalone ByeDPI autostart is enabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:122" ] }, @@ -11490,7 +11786,7 @@ "call": "Standalone ByeDPI is active together with Tachyon ByeDPI rules", "key": "Standalone ByeDPI is active together with Tachyon ByeDPI rules", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:119" ] }, @@ -11498,7 +11794,7 @@ "call": "Standalone ByeDPI service is active", "key": "Standalone ByeDPI service is active", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:120" ] }, @@ -11506,7 +11802,7 @@ "call": "Standalone ByeDPI service is inactive", "key": "Standalone ByeDPI service is inactive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:123" ] }, @@ -11522,7 +11818,7 @@ "call": "Standalone Zapret is active together with Tachyon Zapret rules", "key": "Standalone Zapret is active together with Tachyon Zapret rules", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:111" ] }, @@ -11530,7 +11826,7 @@ "call": "Standalone Zapret service is active", "key": "Standalone Zapret service is active", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:112" ] }, @@ -11538,7 +11834,7 @@ "call": "Standalone Zapret service is inactive", "key": "Standalone Zapret service is inactive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:113" ] }, @@ -11546,7 +11842,7 @@ "call": "Standalone Zapret2 autostart is enabled", "key": "Standalone Zapret2 autostart is enabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:123" ] }, @@ -11554,7 +11850,7 @@ "call": "Standalone Zapret2 is active together with Tachyon Zapret2 rules", "key": "Standalone Zapret2 is active together with Tachyon Zapret2 rules", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10682", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10710", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:118" ] }, @@ -11562,7 +11858,7 @@ "call": "Standalone Zapret2 service is active", "key": "Standalone Zapret2 service is active", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:121" ] }, @@ -11570,7 +11866,7 @@ "call": "Standalone Zapret2 service is inactive", "key": "Standalone Zapret2 service is inactive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:124" ] }, @@ -11593,7 +11889,7 @@ "call": "Start Benchmark", "key": "Start Benchmark", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14584", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14623", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:273" ] }, @@ -11601,7 +11897,7 @@ "call": "Start bot", "key": "Start bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3023" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3025" ] }, { @@ -11615,16 +11911,16 @@ "call": "Start sing-box", "key": "Start sing-box", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15981", - "src/tachyon/tabs/diagnostic/initController.ts:1078" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16350", + "src/tachyon/tabs/diagnostic/initController.ts:1079" ] }, { "call": "Start Tachyon", "key": "Start Tachyon", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11347", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:84" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:86" ] }, { @@ -11638,15 +11934,15 @@ "call": "Start watchdog", "key": "Start watchdog", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15985", - "src/tachyon/tabs/diagnostic/initController.ts:1082" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16354", + "src/tachyon/tabs/diagnostic/initController.ts:1083" ] }, { "call": "Starting DNS benchmark...", "key": "Starting DNS benchmark...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14635", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:331" ] }, @@ -11655,14 +11951,14 @@ "key": "Starting…", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:360", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3070" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3072" ] }, { "call": "State", "key": "State", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9051", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9079", "src/tachyon/tabs/dashboard/initController.ts:2014" ] }, @@ -11671,18 +11967,20 @@ "key": "Status", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2497", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12039", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12078", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14852", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:448", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:935", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:359", - "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:481" + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:142", + "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:481", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:359" ] }, { "call": "Status / Suite", "key": "Status / Suite", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13014", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13053", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:520" ] }, @@ -11697,22 +11995,22 @@ "call": "Stop bot", "key": "Stop bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3030" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3032" ] }, { "call": "Stop checking when URLTest group is not used. Use sing-box duration format like 1d, 12h or 30m.", "key": "Stop checking when URLTest group is not used. Use sing-box duration format like 1d, 12h or 30m.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2737" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2981" ] }, { "call": "Stop Tachyon", "key": "Stop Tachyon", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11337", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:74" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11366", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:76" ] }, { @@ -11720,13 +12018,13 @@ "key": "Stopped", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14870", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15239", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:333", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3047", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3049", "src/tachyon/methods/custom/getDashboardSections.ts:1697", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:316", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:152" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:152", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:316" ] }, { @@ -11734,21 +12032,21 @@ "key": "Stopping…", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:374", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3084" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3086" ] }, { "call": "Store auto-detected domains in /etc instead of /tmp to survive reboots.", "key": "Store auto-detected domains in /etc instead of /tmp to survive reboots.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2853" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2855" ] }, { "call": "Strategy & Parameters", "key": "Strategy & Parameters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13006", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13045", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:512" ] }, @@ -11756,7 +12054,7 @@ "call": "Strategy benchmark started", "key": "Strategy benchmark started", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14184", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14223", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1857" ] }, @@ -11764,7 +12062,7 @@ "call": "Strategy deleted", "key": "Strategy deleted", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13485", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13524", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1046" ] }, @@ -11772,7 +12070,7 @@ "call": "Strategy Name", "key": "Strategy Name", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13335", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13374", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:881" ] }, @@ -11787,29 +12085,29 @@ "call": "Strict ECH + DoQ DNS Enforcer", "key": "Strict ECH + DoQ DNS Enforcer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2442" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2444" ] }, { "call": "STUN (P2P Calls)", "key": "STUN (P2P Calls)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10422", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10762", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10781" ] }, { "call": "Subnets from the list will be extracted and added to nftables", "key": "Subnets from the list will be extracted and added to nftables", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4145" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4389" ] }, { "call": "Subscription auto update", "key": "Subscription auto update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2428" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2672" ] }, { @@ -11824,38 +12122,38 @@ "call": "Subscription update failed", "key": "Subscription update failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4239", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4257", - "src/tachyon/methods/shell/index.ts:1035", - "src/tachyon/methods/shell/index.ts:1055" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4247", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4265", + "src/tachyon/methods/shell/index.ts:1037", + "src/tachyon/methods/shell/index.ts:1057" ] }, { "call": "Subscription update interval", "key": "Subscription update interval", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2437" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2681" ] }, { "call": "Subscription URL", "key": "Subscription URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9624" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950" ] }, { "call": "Subscription URL settings", "key": "Subscription URL settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3834" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4078" ] }, { "call": "Subscriptions updated", "key": "Subscriptions updated", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7752", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780", "src/tachyon/tabs/dashboard/initController.ts:340" ] }, @@ -11863,21 +12161,21 @@ "call": "Success", "key": "Success", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8633" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8900" ] }, { "call": "Successfully imported %d DNS record(s)", "key": "Successfully imported %d DNS record(s)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7910" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8155" ] }, { "call": "Successfully updated %d hosts entries", "key": "Successfully updated %d hosts entries", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8352" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8604" ] }, { @@ -11898,22 +12196,22 @@ "call": "Sweden (se)", "key": "Sweden (se)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10121" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10447" ] }, { "call": "Switch DNS to DoH", "key": "Switch DNS to DoH", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15996", - "src/tachyon/tabs/diagnostic/initController.ts:1093" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16365", + "src/tachyon/tabs/diagnostic/initController.ts:1094" ] }, { "call": "Switch to auto-selection", "key": "Switch to auto-selection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8477", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505", "src/tachyon/tabs/dashboard/initController.ts:1264" ] }, @@ -11921,22 +12219,22 @@ "call": "Sync System Time (NTP)", "key": "Sync System Time (NTP)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16000", - "src/tachyon/tabs/diagnostic/initController.ts:1097" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16369", + "src/tachyon/tabs/diagnostic/initController.ts:1098" ] }, { "call": "System diagnostics, AI Doctor and logs", "key": "System diagnostics, AI Doctor and logs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1035" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1037" ] }, { "call": "System info", "key": "System info", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8956", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8984", "src/tachyon/tabs/dashboard/initController.ts:1888" ] }, @@ -11944,7 +12242,7 @@ "call": "System information", "key": "System information", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14319", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14358", "src/tachyon/tabs/diagnostic/partials/renderSystemInfo.ts:24" ] }, @@ -11952,14 +12250,14 @@ "call": "Tab Order & Visibility", "key": "Tab Order & Visibility", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1316" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1318" ] }, { "call": "Table exist", "key": "Table exist", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10401", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10429", "src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:69" ] }, @@ -11967,8 +12265,8 @@ "call": "Tachyon", "key": "Tachyon", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14659", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14673", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14698", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14712", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:359", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:373" ] @@ -11977,14 +12275,14 @@ "call": "Tachyon Core", "key": "Tachyon Core", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2239" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241" ] }, { "call": "Tachyon DNS Benchmark & Auto-Tuning", "key": "Tachyon DNS Benchmark & Auto-Tuning", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14703", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14742", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:406" ] }, @@ -11992,43 +12290,51 @@ "call": "Tachyon Error", "key": "Tachyon Error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7048", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7076", "src/tachyon/services/core.service.ts:52" ] }, + { + "call": "Tachyon IP & DNS Leak Detection", + "key": "Tachyon IP & DNS Leak Detection", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15072", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:406" + ] + }, { "call": "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here.", "key": "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6568" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6812" ] }, { "call": "Tachyon manages the ciadpi process lifecycle itself, so daemon mode is not allowed here.", "key": "Tachyon manages the ciadpi process lifecycle itself, so daemon mode is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6565" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6809" ] }, { "call": "Tachyon manages the nfqws process lifecycle itself, so daemon mode is not allowed here.", "key": "Tachyon manages the nfqws process lifecycle itself, so daemon mode is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5712" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5956" ] }, { "call": "Tachyon manages the nfqws2 process lifecycle itself, so daemon mode is not allowed here.", "key": "Tachyon manages the nfqws2 process lifecycle itself, so daemon mode is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6163" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6407" ] }, { "call": "Tachyon service is stopped. Start the service to display connections.", "key": "Tachyon service is stopped. Start the service to display connections.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18063", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18441", "src/tachyon/tabs/monitoring/initController.ts:991" ] }, @@ -12044,29 +12350,29 @@ "call": "Tachyon Settings", "key": "Tachyon Settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:376" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:417" ] }, { "call": "Tachyon update did not complete within the timeout", "key": "Tachyon update did not complete within the timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4150", - "src/tachyon/methods/shell/index.ts:913" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4158", + "src/tachyon/methods/shell/index.ts:915" ] }, { "call": "Tachyon will not modify your DHCP configuration", "key": "Tachyon will not modify your DHCP configuration", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2327" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2329" ] }, { "call": "Tachyon-managed ciadpi runtime has restarted", "key": "Tachyon-managed ciadpi runtime has restarted", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:91" ] }, @@ -12074,7 +12380,7 @@ "call": "Tachyon-managed ciadpi runtime is not ready", "key": "Tachyon-managed ciadpi runtime is not ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:94" ] }, @@ -12082,7 +12388,7 @@ "call": "Tachyon-managed ciadpi runtime is not running", "key": "Tachyon-managed ciadpi runtime is not running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:97" ] }, @@ -12090,7 +12396,7 @@ "call": "Tachyon-managed ciadpi runtime is ready", "key": "Tachyon-managed ciadpi runtime is ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:93" ] }, @@ -12098,7 +12404,7 @@ "call": "Tachyon-managed nfqws runtime is not ready", "key": "Tachyon-managed nfqws runtime is not ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:87" ] }, @@ -12106,7 +12412,7 @@ "call": "Tachyon-managed nfqws runtime is not running", "key": "Tachyon-managed nfqws runtime is not running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:90" ] }, @@ -12114,7 +12420,7 @@ "call": "Tachyon-managed nfqws runtime is ready", "key": "Tachyon-managed nfqws runtime is ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:86" ] }, @@ -12122,7 +12428,7 @@ "call": "Tachyon-managed nfqws2 runtime is not ready", "key": "Tachyon-managed nfqws2 runtime is not ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:90" ] }, @@ -12130,7 +12436,7 @@ "call": "Tachyon-managed nfqws2 runtime is not running", "key": "Tachyon-managed nfqws2 runtime is not running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:93" ] }, @@ -12138,7 +12444,7 @@ "call": "Tachyon-managed nfqws2 runtime is ready", "key": "Tachyon-managed nfqws2 runtime is ready", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:89" ] }, @@ -12146,8 +12452,8 @@ "call": "Tailscale", "key": "Tailscale", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9046", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9074", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2247", "src/tachyon/tabs/dashboard/initController.ts:2004" ] }, @@ -12169,7 +12475,7 @@ "call": "Tailscale endpoint", "key": "Tailscale endpoint", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10263", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:98" ] }, @@ -12199,7 +12505,7 @@ "call": "Target", "key": "Target", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13643", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13682", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:766", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1230" ] @@ -12222,7 +12528,7 @@ "call": "Target Service / Suite", "key": "Target Service / Suite", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12770", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12809", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:239" ] }, @@ -12230,7 +12536,7 @@ "call": "TCP Window Sizes (wsize)", "key": "TCP Window Sizes (wsize)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13203", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13242", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:735" ] }, @@ -12260,23 +12566,23 @@ "call": "Telegram Bot", "key": "Telegram Bot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1055", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:659" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1057", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1310", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:700" ] }, { "call": "Telegram Bot Token", "key": "Telegram Bot Token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3142" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3144" ] }, { "call": "Telegram Channel", "key": "Telegram Channel", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15125", "src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:42" ] }, @@ -12284,10 +12590,10 @@ "call": "Test Connection", "key": "Test Connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3333", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3383", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3335", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3366", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3385", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3392" ] }, { @@ -12306,56 +12612,56 @@ "call": "Test only selected servers.", "key": "Test only selected servers.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2836" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3080" ] }, { "call": "Test only servers with one of the selected protocols.", "key": "Test only servers with one of the selected protocols.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2796" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3040" ] }, { "call": "Test only servers with one of the selected security types.", "key": "Test only servers with one of the selected security types.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2802" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3046" ] }, { "call": "Test only servers with one of the selected transports.", "key": "Test only servers with one of the selected transports.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2799" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043" ] }, { "call": "Test servers only from the specified countries.", "key": "Test servers only from the specified countries.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2828" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3072" ] }, { "call": "Test servers whose names match the expression.", "key": "Test servers whose names match the expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2844" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3088" ] }, { "call": "Test Telegram Connection", "key": "Test Telegram Connection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3320" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3322" ] }, { "call": "Testing", "key": "Testing", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14611", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14650", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:305" ] }, @@ -12363,15 +12669,23 @@ "call": "Testing bypass strategies in isolated sandbox...", "key": "Testing bypass strategies in isolated sandbox...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14168", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14207", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1839" ] }, + { + "call": "Testing DNS leak upstream resolvers with bash.ws protocol...", + "key": "Testing DNS leak upstream resolvers with bash.ws protocol...", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14781", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:51" + ] + }, { "call": "Testing strategy", "key": "Testing strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13972", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1605" ] }, @@ -12379,7 +12693,7 @@ "call": "Testing URL", "key": "Testing URL", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8504", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8532", "src/tachyon/tabs/dashboard/initController.ts:1302" ] }, @@ -12387,8 +12701,8 @@ "call": "Testing...", "key": "Testing...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12307", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11755", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12346", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:108", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:797" ] @@ -12397,37 +12711,37 @@ "call": "Testing…", "key": "Testing…", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3345" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3347" ] }, { "call": "The desync fwmark is managed by Tachyon for loop prevention and must not be overridden here.", "key": "The desync fwmark is managed by Tachyon for loop prevention and must not be overridden here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5709", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6154" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5953", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6398" ] }, { "call": "The NFQUEUE number is assigned by Tachyon for each rule and must not be overridden here.", "key": "The NFQUEUE number is assigned by Tachyon for each rule and must not be overridden here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5706", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6151" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5950", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6395" ] }, { "call": "The rule applies to the domain and all its subdomains. Use full:, keyword:, or regex: prefixes for exact match, keyword match, or regular expression.", "key": "The rule applies to the domain and all its subdomains. Use full:, keyword:, or regex: prefixes for exact match, keyword match, or regular expression.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10163" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10489" ] }, { "call": "There are rules using ByeDPI", "key": "There are rules using ByeDPI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:78" ] }, @@ -12435,7 +12749,7 @@ "call": "There are rules using Zapret", "key": "There are rules using Zapret", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:78" ] }, @@ -12443,7 +12757,7 @@ "call": "There are rules using Zapret2", "key": "There are rules using Zapret2", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:81" ] }, @@ -12451,7 +12765,7 @@ "call": "Thinking...", "key": "Thinking...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12455", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12494", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:97" ] }, @@ -12459,15 +12773,15 @@ "call": "This action will stop Tachyon, restore standard dnsmasq/DNS, remove all proxy/anti-censorship firewall rules and restore direct Internet connection through your ISP.", "key": "This action will stop Tachyon, restore standard dnsmasq/DNS, remove all proxy/anti-censorship firewall rules and restore direct Internet connection through your ISP.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16437", - "src/tachyon/tabs/diagnostic/initController.ts:1608" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16809", + "src/tachyon/tabs/diagnostic/initController.ts:1613" ] }, { "call": "This field is required", "key": "This field is required", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11390", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11909", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1927", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1946", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1951", @@ -12480,65 +12794,65 @@ "call": "This field must start a working ciadpi strategy; help/version options exit immediately and are not allowed here.", "key": "This field must start a working ciadpi strategy; help/version options exit immediately and are not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6571" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6815" ] }, { "call": "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here.", "key": "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5715" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5959" ] }, { "call": "This field must start a working nfqws strategy; --version exits immediately and is not allowed here.", "key": "This field must start a working nfqws strategy; --version exits immediately and is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5718" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5962" ] }, { "call": "This field must start a working nfqws2 strategy; --dry-run exits immediately and is not allowed here.", "key": "This field must start a working nfqws2 strategy; --dry-run exits immediately and is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6166" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6410" ] }, { "call": "This field must start a working nfqws2 strategy; --version exits immediately and is not allowed here.", "key": "This field must start a working nfqws2 strategy; --version exits immediately and is not allowed here.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6169" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6413" ] }, { "call": "This flag does not accept a value.", "key": "This flag does not accept a value.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5887", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6361" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6131", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6605" ] }, { "call": "This may take 1-2 minutes. The process runs in the background on the router.", "key": "This may take 1-2 minutes. The process runs in the background on the router.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2004" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2006" ] }, { "call": "This option requires a value.", "key": "This option requires a value.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5918", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6162", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6636" ] }, { "call": "This router", "key": "This router", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9059", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9087", "src/tachyon/tabs/dashboard/initController.ts:2025" ] }, @@ -12553,7 +12867,7 @@ "call": "This will replace the current Tachyon settings with the snapshot", "key": "This will replace the current Tachyon settings with the snapshot", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:642" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:644" ] }, { @@ -12574,9 +12888,9 @@ "call": "Time", "key": "Time", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17977", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18026", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18160", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18404", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18538", "src/tachyon/tabs/monitoring/initController.ts:883", "src/tachyon/tabs/monitoring/initController.ts:944", "src/tachyon/tabs/monitoring/initController.ts:1127" @@ -12586,7 +12900,7 @@ "call": "Time in seconds for DNS record caching (default: 60)", "key": "Time in seconds for DNS record caching (default: 60)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1588" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1590" ] }, { @@ -12600,7 +12914,7 @@ "call": "Time of day to run scheduled component updates in HH:MM (24h) format, e.g. 04:00", "key": "Time of day to run scheduled component updates in HH:MM (24h) format, e.g. 04:00", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2211" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2213" ] }, { @@ -12614,7 +12928,7 @@ "call": "Timeout", "key": "Timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14447", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14486", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:117" ] }, @@ -12622,7 +12936,7 @@ "call": "tiny", "key": "tiny", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6625", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6653", "src/tachyon/helpers/singBoxVariant.ts:62" ] }, @@ -12630,29 +12944,29 @@ "call": "TLS / HTTPS", "key": "TLS / HTTPS", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10425", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10765", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10784" ] }, { "call": "TLS Auth/Crypt Key", "key": "TLS Auth/Crypt Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9587" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9913" ] }, { "call": "TLS SNI", "key": "TLS SNI", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9277" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9603" ] }, { "call": "TLS-Rec Bounds (--tlsrec)", "key": "TLS-Rec Bounds (--tlsrec)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13283", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:819" ] }, @@ -12667,15 +12981,15 @@ "call": "Token is required when the bot is enabled", "key": "Token is required when the bot is enabled", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3151" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3153" ] }, { "call": "Tolerance", "key": "Tolerance", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8506", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2709", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8534", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2953", "src/tachyon/tabs/dashboard/initController.ts:1304" ] }, @@ -12683,14 +12997,14 @@ "call": "Top level has the highest priority; lower levels are used as fallback", "key": "Top level has the highest priority; lower levels are used as fallback", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3261" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3505" ] }, { "call": "TorrServer Direct", "key": "TorrServer Direct", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20856", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21234", "src/tachyon/tabs/updates/initController.ts:1390" ] }, @@ -12698,7 +13012,7 @@ "call": "TorrServer not found", "key": "TorrServer not found", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235", "src/tachyon/tabs/updates/initController.ts:1392" ] }, @@ -12713,14 +13027,14 @@ "call": "Total lines:", "key": "Total lines:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7812" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8057" ] }, { "call": "Total targets", "key": "Total targets", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11917", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11956", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:345" ] }, @@ -12728,14 +13042,14 @@ "call": "Trace", "key": "Trace", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11036" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11395" ] }, { "call": "Tracing routing rules...", "key": "Tracing routing rules...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11080" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11439" ] }, { @@ -12743,7 +13057,7 @@ "key": "Traffic", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2338", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8932", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8960", "src/tachyon/tabs/dashboard/initController.ts:1862", "src/tachyon/tabs/dashboard/partials/renderSections.ts:138" ] @@ -12752,35 +13066,35 @@ "call": "Traffic for this level goes directly.", "key": "Traffic for this level goes directly.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2969" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3213" ] }, { "call": "Traffic from these IP addresses will never be routed through this section, even if other conditions match.", "key": "Traffic from these IP addresses will never be routed through this section, even if other conditions match.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10388" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10728" ] }, { "call": "Traffic of specified protocols (e.g. BitTorrent, QUIC, STUN) will bypass this section.", "key": "Traffic of specified protocols (e.g. BitTorrent, QUIC, STUN) will bypass this section.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10416" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10756" ] }, { "call": "Traffic statistics and active connections", "key": "Traffic statistics and active connections", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1028" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1030" ] }, { "call": "Traffic Total", "key": "Traffic Total", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8944", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8972", "src/tachyon/tabs/dashboard/initController.ts:1875" ] }, @@ -12788,21 +13102,21 @@ "call": "Traffic type filter", "key": "Traffic type filter", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10776" ] }, { "call": "Traffic will go through the default route (Direct/Default).", "key": "Traffic will go through the default route (Direct/Default).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11187" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11546" ] }, { "call": "Transient connection error", "key": "Transient connection error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20511", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20889", "src/tachyon/tabs/updates/initController.ts:958" ] }, @@ -12810,15 +13124,15 @@ "call": "Transparent proxy mode is incompatible with action=byedpi because Tachyon connects to ciadpi through SOCKS.", "key": "Transparent proxy mode is incompatible with action=byedpi because Tachyon connects to ciadpi through SOCKS.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6562" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6806" ] }, { "call": "Transport", "key": "Transport", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2097", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9375", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2341", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9701", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2967" ] }, @@ -12861,7 +13175,7 @@ "call": "Troubleshooting", "key": "Troubleshooting", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14740", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15109", "src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:25" ] }, @@ -12876,14 +13190,14 @@ "call": "Try compatible User-Agent profiles automatically when downloading this subscription", "key": "Try compatible User-Agent profiles automatically when downloading this subscription", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2486" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2730" ] }, { "call": "TTFB", "key": "TTFB", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13022", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:528" ] }, @@ -12891,21 +13205,21 @@ "call": "TTL must be a positive number", "key": "TTL must be a positive number", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1599" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1601" ] }, { "call": "TTL value cannot be empty", "key": "TTL value cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1594" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1596" ] }, { "call": "TTL Values (dpi-desync-ttl)", "key": "TTL Values (dpi-desync-ttl)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13240", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13279", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:774" ] }, @@ -12913,7 +13227,7 @@ "call": "TTL Values (ttl)", "key": "TTL Values (ttl)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13191", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13230", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:723" ] }, @@ -12935,15 +13249,15 @@ "call": "Turkey (tr)", "key": "Turkey (tr)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10122" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10448" ] }, { "call": "Type", "key": "Type", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17971", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18024", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18349", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18402", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1719", "src/tachyon/tabs/monitoring/initController.ts:877", "src/tachyon/tabs/monitoring/initController.ts:942" @@ -12953,14 +13267,14 @@ "call": "UDP (Unprotected DNS)", "key": "UDP (Unprotected DNS)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1369" ] }, { "call": "UDP / QUIC protocols", "key": "UDP / QUIC protocols", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11682", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11721", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:65" ] }, @@ -12968,38 +13282,38 @@ "call": "Ukraine (ua)", "key": "Ukraine (ua)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10128" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10454" ] }, { "call": "Unable to validate the ByeDPI strategy through the backend parser.", "key": "Unable to validate the ByeDPI strategy through the backend parser.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6486" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6730" ] }, { "call": "Unable to validate the NFQWS strategy through the backend parser.", "key": "Unable to validate the NFQWS strategy through the backend parser.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5629", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6964" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5873", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7208" ] }, { "call": "Unable to validate the NFQWS2 strategy through the backend parser.", "key": "Unable to validate the NFQWS2 strategy through the backend parser.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6074", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6973" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6318", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7217" ] }, { "call": "Unavailability timeout", "key": "Unavailability timeout", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8621", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3178", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8649", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422", "src/tachyon/tabs/dashboard/initController.ts:1458" ] }, @@ -13007,8 +13321,8 @@ "call": "Unavailable", "key": "Unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11737", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11919", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11958", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:135", "src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:347" ] @@ -13024,28 +13338,28 @@ "call": "Underload Packet Magic Header (H1)", "key": "Underload Packet Magic Header (H1)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9111" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9404" ] }, { "call": "Underload Packet Magic Header (H2)", "key": "Underload Packet Magic Header (H2)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9112" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9405" ] }, { "call": "Underload Packet Magic Header (H3)", "key": "Underload Packet Magic Header (H3)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9113" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9406" ] }, { "call": "Underload Packet Magic Header (H4)", "key": "Underload Packet Magic Header (H4)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9114" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9407" ] }, { @@ -13060,23 +13374,23 @@ "call": "Unexpected ByeDPI strategy argument: %s", "key": "Unexpected ByeDPI strategy argument: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6703", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6752" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6947", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6996" ] }, { "call": "Unexpected standalone token. Use explicit flags such as --name or --name=value.", "key": "Unexpected standalone token. Use explicit flags such as --name or --name=value.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5867", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6341" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6111", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6585" ] }, { "call": "Unexpected Tachyon-managed ciadpi runtime is running", "key": "Unexpected Tachyon-managed ciadpi runtime is running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784", "src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:96" ] }, @@ -13084,7 +13398,7 @@ "call": "Unexpected Tachyon-managed nfqws runtime is running", "key": "Unexpected Tachyon-managed nfqws runtime is running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:89" ] }, @@ -13092,7 +13406,7 @@ "call": "Unexpected Tachyon-managed nfqws2 runtime is running", "key": "Unexpected Tachyon-managed nfqws2 runtime is running", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:92" ] }, @@ -13107,33 +13421,33 @@ "call": "United Kingdom (gb)", "key": "United Kingdom (gb)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10118" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444" ] }, { "call": "United States (us)", "key": "United States (us)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10115" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441" ] }, { "call": "unknown", "key": "unknown", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10786", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10788", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10790", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10797", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10799", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10801", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10803", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10806", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10807", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20120", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10814", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10816", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10817", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10818", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10825", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10827", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10829", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10831", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10834", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10835", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20498", "src/tachyon/helpers/singBoxVariant.ts:33", "src/tachyon/services/systemInfo.service.ts:10", "src/tachyon/services/systemInfo.service.ts:12", @@ -13154,47 +13468,47 @@ "key": "Unknown", "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14880", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15249", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:354", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3064", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3066", "src/tachyon/methods/custom/getDashboardSections.ts:1699", - "src/tachyon/tabs/dashboard/partials/renderSections.ts:318", - "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:162" + "src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:162", + "src/tachyon/tabs/dashboard/partials/renderSections.ts:318" ] }, { "call": "Unknown ByeDPI option: %s", "key": "Unknown ByeDPI option: %s", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6672", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6694", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6745" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6916", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6938", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6989" ] }, { "call": "Unknown country", "key": "Unknown country", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:658" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:793" ] }, { "call": "Unknown error", "key": "Unknown error", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5886", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14191", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15797", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16405", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5914", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14230", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16166", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16774", "src/tachyon/api.ts:40", - "src/tachyon/tabs/diagnostic/initController.ts:731", - "src/tachyon/tabs/diagnostic/initController.ts:772", - "src/tachyon/tabs/diagnostic/initController.ts:857", - "src/tachyon/tabs/diagnostic/initController.ts:1568", + "src/tachyon/tabs/diagnostic/initController.ts:732", + "src/tachyon/tabs/diagnostic/initController.ts:773", + "src/tachyon/tabs/diagnostic/initController.ts:858", + "src/tachyon/tabs/diagnostic/initController.ts:1569", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1864" ] @@ -13203,14 +13517,14 @@ "call": "Unknown NFQWS flag.", "key": "Unknown NFQWS flag.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5878" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6122" ] }, { "call": "Unknown NFQWS2 flag.", "key": "Unknown NFQWS2 flag.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6352" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6596" ] }, { @@ -13248,14 +13562,14 @@ "call": "Up to 10 snapshots are kept; the oldest ones are removed automatically.", "key": "Up to 10 snapshots are kept; the oldest ones are removed automatically.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:822" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:824" ] }, { "call": "Update", "key": "Update", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941", "src/tachyon/tabs/updates/initController.ts:1025" ] }, @@ -13263,21 +13577,21 @@ "call": "Update failed", "key": "Update failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2091" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2093" ] }, { "call": "Update failed:", "key": "Update failed:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8354" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8609" ] }, { "call": "Update is available", "key": "Update is available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20067", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20445", "src/tachyon/tabs/updates/initController.ts:372" ] }, @@ -13285,7 +13599,7 @@ "call": "Update is available for current release", "key": "Update is available for current release", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21083", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21461", "src/tachyon/tabs/updates/initController.ts:1668" ] }, @@ -13293,7 +13607,7 @@ "call": "Update is available:", "key": "Update is available:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21064", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21442", "src/tachyon/tabs/updates/initController.ts:1647" ] }, @@ -13301,16 +13615,16 @@ "call": "Update lists now", "key": "Update lists now", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1994" ] }, { "call": "Update Lists Now", "key": "Update Lists Now", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8345", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8367", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8372" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8597", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8625", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8634" ] }, { @@ -13320,8 +13634,8 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2409", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15991", - "src/tachyon/tabs/diagnostic/initController.ts:1088", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16360", + "src/tachyon/tabs/diagnostic/initController.ts:1089", "src/tachyon/tabs/dashboard/partials/renderSections.ts:229", "src/tachyon/tabs/dashboard/partials/renderSections.ts:242", "src/tachyon/tabs/dashboard/partials/renderSections.ts:243" @@ -13331,28 +13645,28 @@ "call": "Update this subscription automatically", "key": "Update this subscription automatically", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2429" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2673" ] }, { "call": "Updated/duplicates:", "key": "Updated/duplicates:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7829" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8074" ] }, { "call": "Updates & Downloads", "key": "Updates & Downloads", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288" ] }, { "call": "Updating", "key": "Updating", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19536", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19914", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:121" ] }, @@ -13360,30 +13674,30 @@ "call": "Updating device routing mode...", "key": "Updating device routing mode...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16216", - "src/tachyon/tabs/diagnostic/initController.ts:1349" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16585", + "src/tachyon/tabs/diagnostic/initController.ts:1350" ] }, { "call": "Updating lists...", "key": "Updating lists...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2038" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2040" ] }, { "call": "Updating…", "key": "Updating…", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8341" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8593" ] }, { "call": "Uplink", "key": "Uplink", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8934", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8946", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8962", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8974", "src/tachyon/tabs/dashboard/initController.ts:1864", "src/tachyon/tabs/dashboard/initController.ts:1877" ] @@ -13392,9 +13706,9 @@ "call": "Uploaded", "key": "Uploaded", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17983", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18028", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18172", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18361", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18406", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18550", "src/tachyon/tabs/monitoring/initController.ts:889", "src/tachyon/tabs/monitoring/initController.ts:946", "src/tachyon/tabs/monitoring/initController.ts:1141" @@ -13404,11 +13718,19 @@ "call": "Upstream Mode", "key": "Upstream Mode", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14540", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1377", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14579", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1379", "src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:224" ] }, + { + "call": "Upstream Provider / ASN", + "key": "Upstream Provider / ASN", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14991", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:314" + ] + }, { "call": "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://", "key": "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://", @@ -13429,35 +13751,35 @@ "call": "URL to test through the proxy (default: Cloudflare 204).", "key": "URL to test through the proxy (default: Cloudflare 204).", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2736" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2738" ] }, { "call": "URL used to check whether a server is alive", "key": "URL used to check whether a server is alive", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3154" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3398" ] }, { "call": "URL used to test server latency", "key": "URL used to test server latency", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2724" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968" ] }, { "call": "URLs of remote hosts files to download and apply. Supports standard hosts format: IP domain.", "key": "URLs of remote hosts files to download and apply. Supports standard hosts format: IP domain.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8139" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8384" ] }, { "call": "URLTest", "key": "URLTest", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9740" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10066" ] }, { @@ -13466,7 +13788,7 @@ "places": [ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2724", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2725", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8527", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8555", "src/tachyon/tabs/dashboard/initController.ts:1331", "src/tachyon/tabs/dashboard/partials/renderSections.ts:659", "src/tachyon/tabs/dashboard/partials/renderSections.ts:660" @@ -13476,7 +13798,7 @@ "call": "URLTest details are unavailable", "key": "URLTest details are unavailable", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8497", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8525", "src/tachyon/tabs/dashboard/initController.ts:1290" ] }, @@ -13484,15 +13806,15 @@ "call": "URLTest settings", "key": "URLTest settings", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3873", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3874" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4117", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4118" ] }, { "call": "Use 3-tier check intervals: fast (15s), normal (120s), slow (300s) instead of a single interval.", "key": "Use 3-tier check intervals: fast (15s), normal (120s), slow (300s) instead of a single interval.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2811" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2813" ] }, { @@ -13559,7 +13881,7 @@ "call": "Use another section as an intermediate hop to connect to servers in this section. Does not apply to network interfaces or JSON outbounds.", "key": "Use another section as an intermediate hop to connect to servers in this section. Does not apply to network interfaces or JSON outbounds.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9839" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10165" ] }, { @@ -13594,25 +13916,25 @@ "call": "Use sing-box duration format like 1d, 12h or 30m", "key": "Use sing-box duration format like 1d, 12h or 30m", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2438", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2698", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3227", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4786", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4793", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4800", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1953", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1975", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1982", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2149", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2177" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2682", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2942", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3471", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5030", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5037", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5044", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1955", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1977", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1984", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2151", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2179" ] }, { "call": "Use sing-box duration format like 1d, 12h or 6h", "key": "Use sing-box duration format like 1d, 12h or 6h", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8400", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8412" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8662", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8674" ] }, { @@ -13626,7 +13948,7 @@ "call": "Used by", "key": "Used by", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:25" ] }, @@ -13634,7 +13956,7 @@ "call": "User custom strategy", "key": "User custom strategy", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13373", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13412", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:923" ] }, @@ -13649,14 +13971,14 @@ "call": "User-Agent", "key": "User-Agent", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2496" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2740" ] }, { "call": "Username", "key": "Username", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9388", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3050" ] }, @@ -13664,7 +13986,7 @@ "call": "Username cannot be empty", "key": "Username cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10330" ] }, { @@ -13688,8 +14010,8 @@ "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:807", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:927", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1009", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5402", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5415", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5646", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5659", "src/validators/validateDns.ts:25", "src/validators/validateDns.ts:29", "src/validators/validateDomain.ts:57", @@ -13713,21 +14035,21 @@ "call": "Validates sing-box config before restart to prevent boot loops on broken configs.", "key": "Validates sing-box config before restart to prevent boot loops on broken configs.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2825" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2827" ] }, { "call": "Validation errors:", "key": "Validation errors:", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4855" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5099" ] }, { "call": "Value cannot be empty", "key": "Value cannot be empty", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5392" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5636" ] }, { @@ -13741,15 +14063,23 @@ "call": "Value must not contain control characters", "key": "Value must not contain control characters", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11393", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11912", "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1955" ] }, + { + "call": "Verdict", + "key": "Verdict", + "places": [ + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14995", + "src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:318" + ] + }, { "call": "Verifying router and service readiness...", "key": "Verifying router and service readiness...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19743", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20121", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:382" ] }, @@ -13757,7 +14087,7 @@ "call": "Versions", "key": "Versions", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616", "src/tachyon/tabs/updates/initController.ts:1847" ] }, @@ -13765,7 +14095,7 @@ "call": "Via country.is", "key": "Via country.is", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2038" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2282" ] }, { @@ -13779,27 +14109,27 @@ "call": "View logs", "key": "View logs", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15841", - "src/tachyon/tabs/diagnostic/initController.ts:831", - "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:181" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11483", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16210", + "src/tachyon/tabs/diagnostic/initController.ts:832", + "src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:193" ] }, { "call": "View logs failed", "key": "View logs failed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15851", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15854", - "src/tachyon/tabs/diagnostic/initController.ts:841", - "src/tachyon/tabs/diagnostic/initController.ts:844" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16220", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16223", + "src/tachyon/tabs/diagnostic/initController.ts:842", + "src/tachyon/tabs/diagnostic/initController.ts:845" ] }, { "call": "Visible name of this section", "key": "Visible name of this section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7323" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7568" ] }, { @@ -13813,14 +14143,14 @@ "call": "vless://, vmess://, ss://, trojan://, socks4/5://, http/s://, hy2/hysteria2:// links", "key": "vless://, vmess://, ss://, trojan://, socks4/5://, http/s://, hy2/hysteria2:// links", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9600" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9926" ] }, { "call": "Waiting for router services to restart...", "key": "Waiting for router services to restart...", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19719", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20097", "src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:349" ] }, @@ -13828,7 +14158,7 @@ "call": "Waiting for TorrServer", "key": "Waiting for TorrServer", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235", "src/tachyon/tabs/updates/initController.ts:1398" ] }, @@ -13836,7 +14166,7 @@ "call": "WAN", "key": "WAN", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70" ] }, @@ -13844,7 +14174,7 @@ "call": "WAN public IP", "key": "WAN public IP", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10340", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10368", "src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:198" ] }, @@ -13852,49 +14182,49 @@ "call": "WARP Access Token", "key": "WARP Access Token", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9213" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9539" ] }, { "call": "WARP Account ID", "key": "WARP Account ID", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9201" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9527" ] }, { "call": "WARP Generator Proxy Section", "key": "WARP Generator Proxy Section", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2455" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2457" ] }, { "call": "WARP Private Key", "key": "WARP Private Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9189" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9515" ] }, { "call": "Watchdog probes every Connection section; when the active one fails several checks in a row, traffic switches to a healthy backup and Telegram is notified. Requires a config reload to take effect.", "key": "Watchdog probes every Connection section; when the active one fails several checks in a row, traffic switches to a healthy backup and Telegram is notified. Requires a config reload to take effect.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2337" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2339" ] }, { "call": "Watchdog Status", "key": "Watchdog Status", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2685" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2687" ] }, { "call": "WebRTC Leak Protection", "key": "WebRTC Leak Protection", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2430" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2432" ] }, { @@ -13929,21 +14259,21 @@ "call": "What Tachyon should do when this section matches", "key": "What Tachyon should do when this section matches", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7336" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7581" ] }, { "call": "When switching to another level, test every server and select the fastest instead of the first working one.", "key": "When switching to another level, test every server and select the fastest instead of the first working one.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3205" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3449" ] }, { "call": "Why Discord fails?", "key": "Why Discord fails?", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12519", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12558", "src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:171" ] }, @@ -13951,21 +14281,21 @@ "call": "WireGuard private key from your Cloudflare account", "key": "WireGuard private key from your Cloudflare account", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9782" ] }, { "call": "WireGuard private key from your Cloudflare WARP account", "key": "WireGuard private key from your Cloudflare WARP account", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9190" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516" ] }, { "call": "Working", "key": "Working", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13669", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13708", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1256" ] }, @@ -13973,7 +14303,7 @@ "call": "working strategies", "key": "working strategies", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609" ] }, @@ -13988,14 +14318,14 @@ "call": "YACD Secret Key", "key": "YACD Secret Key", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1829" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1831" ] }, { "call": "Yes", "key": "Yes", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154", "src/tachyon/tabs/dashboard/initController.ts:826" ] }, @@ -14003,28 +14333,28 @@ "call": "You can select Output Network Interface, by default autodetect", "key": "You can select Output Network Interface, by default autodetect", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1693" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1695" ] }, { "call": "Zapret", "key": "Zapret", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244" ] }, { "call": "Zapret hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS strategies.", "key": "Zapret hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS strategies.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5703" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5947" ] }, { "call": "Zapret package is installed", "key": "Zapret package is installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:71" ] }, @@ -14032,7 +14362,7 @@ "call": "Zapret package is not installed", "key": "Zapret package is not installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:72" ] }, @@ -14040,7 +14370,7 @@ "call": "Zapret provider binary is available", "key": "Zapret provider binary is available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:60" ] }, @@ -14048,7 +14378,7 @@ "call": "Zapret provider binary is not available", "key": "Zapret provider binary is not available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:61" ] }, @@ -14056,7 +14386,7 @@ "call": "Zapret sing-box outbound is configured", "key": "Zapret sing-box outbound is configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:103" ] }, @@ -14064,7 +14394,7 @@ "call": "Zapret sing-box outbound is not configured", "key": "Zapret sing-box outbound is not configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619", "src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:104" ] }, @@ -14072,9 +14402,9 @@ "call": "Zapret v1 (nfqws)", "key": "Zapret v1 (nfqws)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12729", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:149", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1976" @@ -14084,9 +14414,9 @@ "call": "Zapret v2 (nfqws2)", "key": "Zapret v2 (nfqws2)", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279", - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12728", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:148", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970", "src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1971" @@ -14096,21 +14426,21 @@ "call": "Zapret2", "key": "Zapret2", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245" ] }, { "call": "Zapret2 hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS2 strategies.", "key": "Zapret2 hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS2 strategies.", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6148" + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392" ] }, { "call": "Zapret2 package is installed", "key": "Zapret2 package is installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:74" ] }, @@ -14118,7 +14448,7 @@ "call": "Zapret2 package is not installed", "key": "Zapret2 package is not installed", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:75" ] }, @@ -14126,7 +14456,7 @@ "call": "Zapret2 provider binary is available", "key": "Zapret2 provider binary is available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:63" ] }, @@ -14134,7 +14464,7 @@ "call": "Zapret2 provider binary is not available", "key": "Zapret2 provider binary is not available", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:64" ] }, @@ -14142,7 +14472,7 @@ "call": "Zapret2 sing-box outbound is configured", "key": "Zapret2 sing-box outbound is configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:106" ] }, @@ -14150,7 +14480,7 @@ "call": "Zapret2 sing-box outbound is not configured", "key": "Zapret2 sing-box outbound is not configured", "places": [ - "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677", + "../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705", "src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:107" ] } diff --git a/fe-app-tachyon/locales/tachyon.pot b/fe-app-tachyon/locales/tachyon.pot index 963854ba..b79c883f 100644 --- a/fe-app-tachyon/locales/tachyon.pot +++ b/fe-app-tachyon/locales/tachyon.pot @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: TACHYON\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-08 06:57+0300\n" -"PO-Revision-Date: 2026-09-08 06:57+0300\n" +"POT-Creation-Date: 2026-09-09 14:09+0300\n" +"PO-Revision-Date: 2026-09-09 14:09+0300\n" "Last-Translator: Dushnilin \n" "Language-Team: LANGUAGE \n" "Language: \n" @@ -16,125 +16,135 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2123 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2500 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2879 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2894 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3110 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3349 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3501 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3339 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3354 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3593 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3755 msgid "-- Select --" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11315 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11674 msgid ".lst Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2627 msgid "(provider default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045 msgid "+ Add JSON outbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3509 msgid "+ Add level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10131 msgid "+ Add priority" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13357 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13396 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:904 msgid "+ Add Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10072 msgid "+ Add URLTest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14154 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1779 msgid "⏳ Stopping..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1618 msgid "⚠️ Benchmark completed. No working bypass found for this target." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1617 msgid "⚠️ Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1489 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:122 +msgid "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14949 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:263 +msgid "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1491 msgid "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1478 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1480 msgid "⚠️ If all Main DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11425 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11454 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:164 msgid "⚡ DPI Strategy Fuzzer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12985 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:440 msgid "⚡ Fast (>1MB/s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12785 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:209 msgid "⚡ QUIC / HTTP/3 (UDP 443)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12822 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:254 msgid "⚡ Quick Benchmark (Presets ~30+)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14346 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:2010 msgid "⚡ Strategy Fuzzer & Auto-Tuner" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14039 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14078 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1690 msgid "✅ Auto-applied best strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13978 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14017 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1611 msgid "✅ Benchmark completed! Optimal strategy identified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12937 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12976 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:431 msgid "✅ Working only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12782 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:206 msgid "✈️ Telegram Suite (Web + Bot API)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055 #: src/tachyon/tabs/dashboard/initController.ts:1976 msgid "✔ Online" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017 #: src/tachyon/tabs/dashboard/initController.ts:1906 #: src/tachyon/tabs/dashboard/initController.ts:1917 #: src/tachyon/tabs/dashboard/initController.ts:1918 @@ -143,144 +153,164 @@ msgstr "" msgid "✔ Running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055 #: src/tachyon/tabs/dashboard/initController.ts:1976 msgid "✘ Offline" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 #: src/tachyon/tabs/dashboard/initController.ts:1906 #: src/tachyon/tabs/dashboard/initController.ts:1919 msgid "✘ Stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12786 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:210 msgid "🌐 Custom Target URL..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12717 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12756 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:180 msgid "🎬 YouTube Full Suite (Web + 4K Stream + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12903 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12942 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:394 msgid "🏆 Apply Best Match" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12784 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:208 msgid "🏴‍☠️ RuTracker Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12732 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12771 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:195 msgid "🐦 X / Twitter Suite (API + Media CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12722 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12761 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:185 msgid "💬 Discord Suite (Gateway + Voice + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13342 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:841 msgid "💾 Save Custom Patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12738 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12777 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:201 msgid "📸 Instagram / Meta (Web + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13627 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1170 msgid "🔄 Refresh" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13315 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13354 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:854 msgid "🔄 Reset to Factory Defaults" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12788 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12827 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:259 msgid "🔍 Combinatorial Deep Fuzzing (~150-300+)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13632 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1175 msgid "🗑️ Clear History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12734 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12773 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:197 msgid "🤖 ChatGPT / OpenAI Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13510 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14246 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13549 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1078 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1929 msgid "🧠 Synthesize with AI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1875 msgid "🧠 Synthesizing..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14134 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14173 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1801 msgid "🚀 Initializing benchmark in sandbox..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13071 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14016 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14194 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14233 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:580 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1657 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1867 msgid "🚀 Start Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "🛑 Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14124 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14050 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14266 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1652 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1789 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1908 msgid "🛑 Stop Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12829 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:261 msgid "🛠️ My Custom Strategies Only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12727 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11474 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:184 +msgid "🛡️ IP & DNS Leak Test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14951 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:267 +msgid "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14836 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:125 +msgid "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12766 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:190 msgid "🟣 Twitch Suite (Live Stream + HLS CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14089 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14893 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:188 +msgid "127.0.0.1:4534 (sing-box mixed)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14128 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1746 msgid "Блокировка по IP (Таймаут TCP SYN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14096 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14135 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1757 msgid "Обнаружена блокировка по IP! Ресурс блокируется на сетевом уровне (нет ответа на TCP SYN). Методы обхода DPI (Zapret / ByeDPI) бессильны для этого адреса — настройте маршрутизацию через прокси/VPN (Sing-box) для данного домена!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:531 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:572 msgid "Accept external proxy connections and route them with sing-box." msgstr "" @@ -288,16 +318,16 @@ msgstr "" msgid "Accept routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1016 msgid "Access schedule and screen time limits" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7306 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7580 msgid "Action" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9999 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10027 #: src/tachyon/helpers/notifyActionFailure.ts:40 msgid "Action failed" msgstr "" @@ -318,16 +348,16 @@ msgstr "" msgid "Action Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13046 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13085 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13462 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:552 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:979 msgid "Actions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8371 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17263 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17848 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17641 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18226 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:464 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470 #: src/tachyon/tabs/dashboard/initController.ts:1137 @@ -346,7 +376,7 @@ msgstr "" msgid "Active (Blocking)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:56 msgid "Active Bootstrap DNS" msgstr "" @@ -358,69 +388,69 @@ msgstr "" msgid "Active Clients" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8986 #: src/tachyon/tabs/dashboard/initController.ts:1890 msgid "Active Connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67 msgid "Active Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11831 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11870 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:245 msgid "Active routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:559 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:600 msgid "Add a family profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:618 msgid "Add a schedule rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560 msgid "Add a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:578 msgid "Add a server inbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1904 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2148 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:124 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:183 msgid "Add at least one DNS server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13391 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13430 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:944 msgid "Add Custom DPI Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2590 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2834 msgid "Add prefix to nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10661 msgid "Add URLs or local paths to .lst lists containing domains and subnets." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10685 msgid "Add URLs or local paths to .lst lists containing domains. IP entries are ignored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10636 msgid "Add URLs or local paths to .srs / .json lists. Only domain rules are supported." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10267 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10607 msgid "Add URLs or local paths to .srs / .json lists. Subnets are ignored by default." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3767 msgid "Add URLTest / Priority group" msgstr "" @@ -428,36 +458,36 @@ msgstr "" msgid "Additional Individual Devices (IP / MAC)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:106 msgid "Additional marking rules found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2809 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3053 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3266 msgid "Additionally exclude servers by protocol, transport, and security. Exclude only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2792 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3248 msgid "Additionally filter servers by protocol, transport, and security. Add only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3667 msgid "Additionally hide servers by protocol, transport, and security. Hide servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3403 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3647 msgid "Additionally show servers by protocol, transport, and security. Add only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14422 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1734 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:45 msgid "Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3161 msgid "Administrator Chat IDs" msgstr "" @@ -465,7 +495,7 @@ msgstr "" msgid "Adult content" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1290 msgid "Advanced System" msgstr "" @@ -477,107 +507,107 @@ msgstr "" msgid "Advertise routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9768 msgid "AEAD Method" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1289 msgid "AI & Watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2578 msgid "AI Agent REST API Bearer Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2645 msgid "AI API Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12614 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:235 msgid "AI Chat & Tachyon Assistant" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11415 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:152 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:154 msgid "AI Chat Assistant" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13528 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13567 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1099 msgid "AI Diagnostics & Strategy Rationale" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16403 -#: src/tachyon/tabs/diagnostic/initController.ts:1563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16772 +#: src/tachyon/tabs/diagnostic/initController.ts:1564 msgid "AI Doctor Diagnosis" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16406 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16414 -#: src/tachyon/tabs/diagnostic/initController.ts:857 -#: src/tachyon/tabs/diagnostic/initController.ts:1569 -#: src/tachyon/tabs/diagnostic/initController.ts:1577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16775 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16783 +#: src/tachyon/tabs/diagnostic/initController.ts:858 +#: src/tachyon/tabs/diagnostic/initController.ts:1570 +#: src/tachyon/tabs/diagnostic/initController.ts:1578 msgid "AI Doctor failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2633 msgid "AI Doctor Language" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12650 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:95 msgid "AI Doctor RAG" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13589 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1124 msgid "AI DPI Engineer & Strategy Synthesizer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2618 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2620 msgid "AI Model" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2601 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2603 msgid "AI Provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12502 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12541 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:151 msgid "AI service error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14256 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1894 msgid "AI successfully synthesized custom strategies!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1923 msgid "AI Synthesis Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14239 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14278 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1922 msgid "AI synthesis failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12928 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17660 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18191 #: src/tachyon/tabs/monitoring/initController.ts:681 #: src/tachyon/tabs/monitoring/render.ts:40 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:422 msgid "All" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3379 msgid "All checks passed — Telegram bot should work correctly" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240 msgid "All components" msgstr "" @@ -590,12 +620,12 @@ msgstr "" msgid "All Devices are Guests EXCEPT Trusted (Zero-Trust)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12731 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:151 msgid "All Engines (Full Matrix)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2020 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2264 msgid "All except selected" msgstr "" @@ -608,37 +638,37 @@ msgstr "" msgid "All Internet (Complete internet cutoff)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2274 msgid "All remaining except selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2028 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2272 msgid "All remaining servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2978 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3222 msgid "All remaining servers means every server not already assigned to a higher-priority level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17290 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17786 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17668 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18164 #: src/tachyon/tabs/monitoring/initController.ts:644 #: src/tachyon/tabs/monitoring/render.ts:49 msgid "All Routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2019 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2263 msgid "All servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11840 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11879 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11982 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:257 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:376 msgid "All services" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10717 msgid "All traffic from these IP addresses will be routed through the section unconditionally, ignoring all other conditions." msgstr "" @@ -651,7 +681,7 @@ msgstr "" msgid "Allow in interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9614 msgid "Allow Insecure TLS" msgstr "" @@ -671,7 +701,7 @@ msgstr "" msgid "Allowed Days of Week" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5631 msgid "Allowed domain prefixes are full:, keyword:, and regex:" msgstr "" @@ -683,15 +713,15 @@ msgstr "" msgid "Allowed Start Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1817 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1819 msgid "Allows access to YACD from the WAN. Make sure to open the appropriate port in your firewall." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3013 msgid "Allows limiting the list of servers for URLTest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2590 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2592 msgid "Allows Tachyon to send diagnostic snapshots to ChatGPT or DeepSeek API for intelligent root-cause analysis and auto-repair recommendations." msgstr "" @@ -707,20 +737,20 @@ msgstr "" msgid "Always block these domains for all devices in this profile. Enter one domain per line or use category preset buttons." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1155 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1199 msgid "Always visible" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8890 msgid "AmneziaWG (Cloudflare WARP) configuration generated and loaded successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9457 msgid "AmneziaWG 3.0 / 3.1 content padding range, e.g. 38-104" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9452 msgid "AmneziaWG 3.0 / 3.1 header protection key" msgstr "" @@ -728,7 +758,7 @@ msgstr "" msgid "AmneziaWG 3.1 content padding range, e.g. 38-104" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9175 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9502 msgid "AmneziaWG 3.1 disable cookie replies" msgstr "" @@ -736,54 +766,59 @@ msgstr "" msgid "AmneziaWG 3.1 header protection key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9477 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3668 msgid "AmneziaWG 3.1 keepalive timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9482 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3674 msgid "AmneziaWG 3.1 max handshake attempts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9490 msgid "AmneziaWG 3.1 random packet trailers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9472 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3662 msgid "AmneziaWG 3.1 reject after time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9462 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3650 msgid "AmneziaWG 3.1 rekey after time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3656 msgid "AmneziaWG 3.1 rekey timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9238 msgid "AmneziaWG config loaded successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8438 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8700 msgid "AmneziaWG Generator" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9061 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9352 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3472 msgid "AmneziaWG Version" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15939 -#: src/tachyon/tabs/diagnostic/initController.ts:970 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14815 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:92 +msgid "An unexpected error occurred during test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16308 +#: src/tachyon/tabs/diagnostic/initController.ts:971 msgid "Anonymized support report copied to clipboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20496 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20874 #: src/tachyon/tabs/updates/initController.ts:942 msgid "Another component action is already running" msgstr "" @@ -796,36 +831,36 @@ msgstr "" msgid "Anti-Bypass: Block Private DNS / DoH / DoT" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2644 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2646 msgid "API Key for OpenAI (sk-...) or DeepSeek (optional for Ollama / LM Studio)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941 msgid "Applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13940 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13979 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1566 msgid "Apply" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14589 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14718 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:279 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:379 msgid "Apply Recommended DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10777 msgid "Apply rules of this section only to selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10368 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10708 msgid "Apply section rules only to the specified local IP addresses" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12865 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:302 msgid "Apply Strategy To" msgstr "" @@ -834,24 +869,24 @@ msgstr "" msgid "Apply this schedule rule to all devices in the selected family profile(s)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16069 -#: src/tachyon/tabs/diagnostic/initController.ts:1181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16438 +#: src/tachyon/tabs/diagnostic/initController.ts:1182 msgid "Applying fix" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14654 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16067 -#: src/tachyon/tabs/diagnostic/initController.ts:1179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14693 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16436 +#: src/tachyon/tabs/diagnostic/initController.ts:1180 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:353 msgid "Applying..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13417 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13456 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:973 msgid "Arguments" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12465 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:60 msgid "Ask Tachyon AI Assistant a question..." msgstr "" @@ -860,39 +895,39 @@ msgstr "" msgid "Assigned Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3170 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3172 msgid "At least one Admin Chat ID is required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5418 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5662 msgid "At least one valid domain must be specified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5744 msgid "At least one valid IP or subnet must be specified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9866 msgid "Auth Digest" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8205 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8551 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11658 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8579 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11697 #: src/tachyon/tabs/dashboard/initController.ts:927 #: src/tachyon/tabs/dashboard/initController.ts:1365 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:594 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:35 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:594 msgid "Auto" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13277 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13316 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:813 msgid "Auto Modes (--auto)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11272 #: src/partials/modal/renderModal.ts:286 msgid "Auto refresh" msgstr "" @@ -901,130 +936,135 @@ msgstr "" msgid "Auto update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12890 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:332 msgid "Auto-apply best strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14088 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1700 msgid "Auto-apply failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2952 msgid "Auto-detected domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10517 msgid "Auto-detected Domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2908 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2910 msgid "Auto-detects blocked domains from logs and adds them to the first section where they work via proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2338 msgid "Auto-failover of proxy sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760 msgid "Auto-generate HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15997 -#: src/tachyon/tabs/diagnostic/initController.ts:1094 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16366 +#: src/tachyon/tabs/diagnostic/initController.ts:1095 msgid "Auto-Heal Network Stack" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1346 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1348 msgid "Auto-Tune & Benchmark DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8649 msgid "Auto-update Hosts Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2197 msgid "Auto-update mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2140 msgid "Automatic component update checks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2184 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2186 msgid "Automatic component updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2729 msgid "Automatic User-Agent selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835 msgid "Automatically add text to the name of each server from this subscription for convenient filtering." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1342 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1344 msgid "Automatically benchmark latency, packet loss, and anti-censorship reliability of major DNS servers (UDP/DoH) from this router to find and apply the optimal configuration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2141 msgid "Automatically check installed components for new versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2187 msgid "Automatically download and install new versions of components" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8439 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8701 msgid "Automatically generate a Cloudflare WARP account and configure all AmneziaWG settings." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2867 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2869 msgid "Automatically increase check intervals when healthy (to 5 min) and decrease on problems (to 120s)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13561 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13600 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1135 msgid "Automatically runs a diagnostic probe against the target service, queries the built-in DPI Knowledge Base, and synthesizes 3-5 custom bypass strategies tailored to your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8631 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459 #: src/tachyon/tabs/dashboard/initController.ts:1468 msgid "Automatically select the fastest node in the current level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8650 msgid "Automatically update remote hosts lists on schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11728 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11918 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11767 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11957 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:125 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:346 msgid "Available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11321 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:58 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11350 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:60 msgid "Available actions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11920 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11959 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:348 msgid "Avg. latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5633 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6078 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6490 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5877 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6734 msgid "Backend validation failed: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11675 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14881 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:175 +msgid "Baseline" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11714 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:58 msgid "Basic connectivity" msgstr "" @@ -1033,47 +1073,47 @@ msgstr "" msgid "Beginning of the schedule interval (e.g. 22:00)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10452 msgid "Belarus (by)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12647 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12686 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:92 msgid "Benchmark & Test" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14656 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:311 msgid "Benchmark completed successfully" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13584 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13623 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1166 msgid "Benchmark History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14726 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:388 msgid "Benchmark measures actual latency and resolution reliability of major DNS servers (UDP 53 and encrypted DoH) directly from your router to find the fastest, unblocked upstream for your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14156 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1781 msgid "Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12914 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:363 msgid "Benchmarking in progress..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13653 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13692 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1240 msgid "Best Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10420 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10439 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10779 msgid "BitTorrent / P2P" msgstr "" @@ -1094,7 +1134,7 @@ msgstr "" msgid "Block in interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:569 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:610 msgid "Block internet access or specific proxy sections for family profiles or individual devices based on time and days." msgstr "" @@ -1114,7 +1154,7 @@ msgstr "" msgid "Block: deny the listed sites. Allow only (whitelist): deny everything except the listed sites. Whitelist mode requires DNS-level blocking and applies to the schedule window." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11715 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:59 msgid "Blocked resources" msgstr "" @@ -1135,103 +1175,103 @@ msgstr "" msgid "Blocks port 853 (DNS-over-TLS) and prevents bypass via encrypted DNS or Private Relay on smartphones for devices in this profile." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14556 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:57 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:240 msgid "Bootstrap DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1411 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1413 msgid "Bootstrap DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3123 msgid "Bot Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10474 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10502 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:51 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:79 msgid "Browser FakeIP check could not be completed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:82 msgid "Browser is not using FakeIP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:81 msgid "Browser is using FakeIP correctly" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16573 -#: src/tachyon/tabs/diagnostic/initController.ts:1766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16945 +#: src/tachyon/tabs/diagnostic/initController.ts:1771 msgid "Bug report downloaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10212 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10538 msgid "Built-in rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2281 msgid "By flag emoji from name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2204 msgid "By schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2246 msgid "ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12730 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:150 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1981 msgid "ByeDPI (ciadpi)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6559 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6803 msgid "ByeDPI listen address and port are assigned by Tachyon and must not be set in the strategy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6980 msgid "ByeDPI option does not accept a compact value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6665 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6909 msgid "ByeDPI option does not accept a value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6657 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6683 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6717 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6726 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6901 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6927 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6961 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6970 msgid "ByeDPI option requires a value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:71 msgid "ByeDPI package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:72 msgid "ByeDPI package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:64 msgid "ByeDPI provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:65 msgid "ByeDPI provider binary is not available" msgstr "" @@ -1241,62 +1281,67 @@ msgstr "" msgid "ByeDPI restarted after exiting; strategy or traffic load may be unstable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:107 msgid "ByeDPI sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:108 msgid "ByeDPI sing-box outbound is not configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756 msgid "ByeDPI Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7006 msgid "ByeDPI strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1910 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:155 +msgid "Bypasses proxy (SO_MARK 0x08000000)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1912 msgid "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877 msgid "CA Certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2128 msgid "Cache all built-in lists and databases even if they are not currently selected in any section. Recommended if you have plenty of storage space or USB drive." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2375 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2377 msgid "Cache File Path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2389 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2391 msgid "Cache file path cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16450 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16822 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8221 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:476 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:659 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:710 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:778 -#: src/tachyon/tabs/diagnostic/initController.ts:1622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:661 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:712 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:780 +#: src/tachyon/tabs/diagnostic/initController.ts:1627 msgid "Cancel" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10138 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10382 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10544 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10628 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10716 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10102 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10347 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10572 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10656 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15165 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:26 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:27 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:172 @@ -1312,11 +1357,11 @@ msgstr "" msgid "Cannot save server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3898 msgid "Cannot save settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10164 msgid "Cascade connection" msgstr "" @@ -1328,18 +1373,18 @@ msgstr "" msgid "Certificate pin is unavailable. Apply or restart the server to generate the default certificate, then open this dialog again." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12353 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12392 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:865 msgid "Check again" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12342 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:793 msgid "Check all" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20594 #: src/tachyon/tabs/updates/initController.ts:570 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:326 msgid "Check completed!" @@ -1352,72 +1397,72 @@ msgstr "" msgid "Check Connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12178 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12330 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:652 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:778 msgid "Check domain" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8618 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2697 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410 #: src/tachyon/tabs/dashboard/initController.ts:1455 msgid "Check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11896 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:276 msgid "Check mode:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11435 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11464 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:174 msgid "Check Services" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423 msgid "Check timeout after which the server is considered dead" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932 #: src/tachyon/tabs/updates/initController.ts:1011 msgid "Check update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8616 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2723 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3153 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8644 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3397 #: src/tachyon/tabs/dashboard/initController.ts:1453 msgid "Check URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12518 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12557 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:170 msgid "Check YouTube" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8775 #: src/tachyon/tabs/dashboard/initController.ts:1634 msgid "Checking Connection..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19532 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19910 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:117 msgid "Checking for updates..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10064 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10128 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10309 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10370 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10453 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10534 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10618 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10706 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14784 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16830 -#: src/tachyon/tabs/diagnostic/initController.ts:2072 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10398 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10481 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10562 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10734 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15153 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17208 +#: src/tachyon/tabs/diagnostic/initController.ts:2083 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:14 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:15 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:15 @@ -1442,32 +1487,32 @@ msgid "Checking..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3013 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3015 msgid "Checking…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5984 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6012 #: src/tachyon/tabs/diagnostic/helpers/getCheckTitle.ts:2 msgid "checks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10034 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10512 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10062 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10540 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:10 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:26 msgid "Checks failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10023 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10469 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10551 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:23 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:43 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:13 msgid "Checks passed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10046 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:27 msgid "Checks passed with manual DHCP" msgstr "" @@ -1476,7 +1521,7 @@ msgstr "" msgid "Child (🧒)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10449 msgid "China (cn)" msgstr "" @@ -1484,11 +1529,11 @@ msgstr "" msgid "Choose a visual icon for this profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7887 msgid "Choose Hosts File..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2198 msgid "Choose whether to install updates immediately when detected or at a scheduled time (e.g. maintenance window)" msgstr "" @@ -1496,7 +1541,7 @@ msgstr "" msgid "Choose whether to restrict the entire internet or only specific Tachyon routing sections." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10408 msgid "Choose whether to route traffic to all destinations except selected countries (Exclude) or only to selected countries (Include)." msgstr "" @@ -1509,28 +1554,28 @@ msgstr "" msgid "CIDR must be between 0 and 32 for IPv4 or 0 and 128 for IPv6" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9855 msgid "Cipher" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8350 msgid "Clean Comments" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11396 msgid "Clear" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15990 -#: src/tachyon/tabs/diagnostic/initController.ts:1087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16359 +#: src/tachyon/tabs/diagnostic/initController.ts:1088 msgid "Clear DNS cache" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1159 msgid "Click to hide" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1160 msgid "Click to show" msgstr "" @@ -1538,7 +1583,7 @@ msgstr "" msgid "Client Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9889 msgid "Client Certificate" msgstr "" @@ -1550,7 +1595,7 @@ msgstr "" msgid "Client fingerprint" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9901 msgid "Client Key" msgstr "" @@ -1578,29 +1623,31 @@ msgstr "" msgid "Client VPN IP address (e.g. 10.0.0.2/32)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8489 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11223 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12358 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12568 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13083 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16394 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17987 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18030 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19784 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19819 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3721 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11344 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8517 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11251 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11815 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12607 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18408 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3965 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11703 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1826 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2037 #: src/partials/modal/renderModal.ts:263 +#: src/tachyon/tabs/diagnostic/initController.ts:1554 #: src/tachyon/tabs/dashboard/initController.ts:1277 -#: src/tachyon/tabs/diagnostic/initController.ts:1553 #: src/tachyon/tabs/monitoring/initController.ts:893 #: src/tachyon/tabs/monitoring/initController.ts:948 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:227 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:286 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:379 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:178 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:871 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:594 @@ -1609,81 +1656,81 @@ msgstr "" msgid "Close" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17309 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17688 #: src/tachyon/tabs/monitoring/render.ts:68 #: src/tachyon/tabs/monitoring/render.ts:69 msgid "Close all connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17956 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18334 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18335 #: src/tachyon/tabs/monitoring/initController.ts:860 #: src/tachyon/tabs/monitoring/initController.ts:861 msgid "Close connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17272 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17854 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17650 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18232 #: src/tachyon/tabs/monitoring/initController.ts:729 #: src/tachyon/tabs/monitoring/render.ts:29 msgid "Closed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9468 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9794 msgid "Cloudflare account / device ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9480 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9806 msgid "Cloudflare API access token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9528 msgid "Cloudflare WARP account / device ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9214 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540 msgid "Cloudflare WARP API access token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3162 msgid "Comma-separated list of Telegram user IDs authorized to control the bot." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13353 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13392 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:899 msgid "Command-line arguments string..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11311 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11670 msgid "Community Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4161 -#: src/tachyon/methods/shell/index.ts:928 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4169 +#: src/tachyon/methods/shell/index.ts:930 msgid "Component action timed out" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7068 #: src/tachyon/services/core.service.ts:43 msgid "Component update available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2148 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2150 msgid "Component update check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1042 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1044 msgid "Component versions and update manager" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1041 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:672 msgid "Components" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6619 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6647 #: src/tachyon/helpers/singBoxVariant.ts:56 msgid "compressed" msgstr "" @@ -1692,46 +1739,46 @@ msgstr "" msgid "Concurrency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7294 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7539 msgid "Conditions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14143 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1767 msgid "confidence" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2363 msgid "Config File Path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2549 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2551 msgid "Config Snapshots" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4718 -#: src/tachyon/methods/shell/index.ts:1660 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4726 +#: src/tachyon/methods/shell/index.ts:1662 msgid "Configuration applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:418 msgid "Configuration for Tachyon service" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5057 msgid "Configure User-Agent in the item settings" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15233 #: src/tachyon/methods/custom/getDashboardSections.ts:1695 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:314 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:146 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:314 msgid "Conflict" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9876 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202 msgid "Connect through" msgstr "" @@ -1742,26 +1789,31 @@ msgstr "" msgid "Connected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16150 -#: src/tachyon/tabs/diagnostic/initController.ts:1276 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16519 +#: src/tachyon/tabs/diagnostic/initController.ts:1277 msgid "Connected Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9599 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:138 +msgid "Connection Path" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9925 msgid "Connection URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18460 #: src/tachyon/tabs/monitoring/initController.ts:1012 msgid "Connections are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14898 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15267 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:184 msgid "Connectivity probe failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14208 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14247 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1884 msgid "Consulting DPI Knowledge Base & AI..." msgstr "" @@ -1770,7 +1822,7 @@ msgstr "" msgid "Content Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3643 msgid "Content Padding Addition" msgstr "" @@ -1785,59 +1837,69 @@ msgstr "" msgid "Copied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1776 #: src/partials/modal/renderModal.ts:258 msgid "Copy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21579 #: src/tachyon/tabs/updates/initController.ts:1807 msgid "Copy address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19574 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19952 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:165 msgid "Copy log" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2708 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2709 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8449 #: src/tachyon/tabs/dashboard/initController.ts:1202 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:640 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:641 msgid "Copy proxy link" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356 -#: src/tachyon/tabs/diagnostic/initController.ts:1511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16725 +#: src/tachyon/tabs/diagnostic/initController.ts:1512 msgid "Copy Support Report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1051 msgid "Core configuration and preferences" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:89 msgid "Could not compare FakeIP and control public IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10129 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14805 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:82 +msgid "Could not contact leak test endpoints. Please ensure router has internet access." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14990 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:313 +msgid "Country" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10455 msgid "Country code (e.g. ru, us, de)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16307 -#: src/tachyon/tabs/diagnostic/initController.ts:1452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16676 +#: src/tachyon/tabs/diagnostic/initController.ts:1453 msgid "Current Diagnosis" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9893 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10219 msgid "Current section cannot be used as its own transit section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2721 msgid "Current section cannot download its own subscription" msgstr "" @@ -1846,24 +1908,24 @@ msgstr "" msgid "Currently unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11717 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:61 msgid "Custom" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2656 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2658 msgid "Custom API Endpoint URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2553 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2797 msgid "Custom device headers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7988 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8233 msgid "Custom DNS Records (Hosts)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:60 msgid "Custom domains" msgstr "" @@ -1884,24 +1946,24 @@ msgstr "" msgid "Custom header for handshake response" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2613 msgid "Custom OpenAI-Compatible API" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2659 msgid "Custom OpenAI-compatible API endpoint URL (e.g. http://192.168.1.100:11434/v1/chat/completions)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10040 msgid "Custom outbound configurations in JSON format" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:927 msgid "Custom strategy added!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1317 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1319 msgid "Customize the order and visibility of tabs in the main navigation menu. Use the arrows to reorder and checkboxes to show or hide tabs." msgstr "" @@ -1926,9 +1988,9 @@ msgstr "" msgid "Daily Traffic Limit (MB)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:985 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:987 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:541 msgid "Dashboard" msgstr "" @@ -1937,12 +1999,12 @@ msgstr "" msgid "Dashboard currently unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13806 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13845 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1416 msgid "Data transfer verified: streamed >= 32KB without throttling or disconnect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13633 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13672 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1220 msgid "Date" msgstr "" @@ -1951,59 +2013,59 @@ msgstr "" msgid "Days of Week" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1394 msgid "Dedicated cgroup unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3290 msgid "Default (auto)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2460 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2472 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2462 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2474 msgid "Default (Direct WAN / Default mixed proxy)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2266 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2268 msgid "Default address for checking server availability and latency. URLTest uses its own address." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1298 msgid "Default Tab on Startup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1792 msgid "Delay in milliseconds before reloading Tachyon after interface UP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1797 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1799 msgid "Delay value cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13478 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13517 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:722 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:730 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:732 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1039 msgid "Delete" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:692 msgid "Delete Snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:695 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:697 msgid "Delete the snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2779 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2991 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3235 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3634 msgid "Detect server country" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2433 msgid "Detects and drops STUN/TURN packets in nftables to prevent real IP leaks via WebRTC." msgstr "" @@ -2017,16 +2079,16 @@ msgstr "" msgid "dev." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10707 msgid "Device filter" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7025 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7269 msgid "Device or IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16225 -#: src/tachyon/tabs/diagnostic/initController.ts:1359 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16594 +#: src/tachyon/tabs/diagnostic/initController.ts:1360 msgid "Device updated" msgstr "" @@ -2038,79 +2100,84 @@ msgstr "" msgid "Devices that are isolated as guests. Enter IP or MAC addresses, or pick from active LAN devices." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:37 msgid "DHCP has DNS server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:36 msgid "DHCP is managed manually" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1034 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:658 msgid "Diagnostics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11649 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11688 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11694 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2743 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:25 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:32 msgid "Direct" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9232 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9558 msgid "Direct (Default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213 -#: src/tachyon/tabs/diagnostic/initController.ts:1346 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582 +#: src/tachyon/tabs/diagnostic/initController.ts:1347 msgid "Direct Bypass" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3212 msgid "Direct connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20848 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21226 #: src/tachyon/tabs/updates/initController.ts:1377 msgid "Direct Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207 -#: src/tachyon/tabs/diagnostic/initController.ts:1337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 +#: src/tachyon/tabs/diagnostic/initController.ts:1338 msgid "Direct WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20790 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20805 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:148 +msgid "Direct WAN (ISP)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21168 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21183 #: src/tachyon/tabs/updates/initController.ts:1302 #: src/tachyon/tabs/updates/initController.ts:1320 msgid "Disable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11357 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:94 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11386 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:96 msgid "Disable autostart" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9174 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9501 msgid "Disable Cookies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1841 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1843 msgid "Disable QUIC" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1842 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1844 msgid "Disable the QUIC protocol to improve compatibility or fix issues with video streaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:457 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:944 @@ -2120,91 +2187,91 @@ msgstr "" msgid "Disabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6404 msgid "Disabling interception is incompatible with action=zapret2 because Tachyon sends matched traffic through NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13304 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:801 msgid "Disorder Values (-d)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2679 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2923 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3386 msgid "Display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10423 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10782 msgid "DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1343 msgid "DNS Auto-Tuner & Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1515 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1517 msgid "DNS Check Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2759 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2761 msgid "DNS Check Interval (s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1547 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1549 msgid "DNS Failures Before Switching" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10134 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:75 msgid "DNS on router" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2119 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366 msgid "DNS over HTTPS (DoH)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1877 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1368 msgid "DNS over QUIC (DoQ)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1876 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367 msgid "DNS over TLS (DoT)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2646 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2890 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7609 msgid "DNS protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14569 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:213 msgid "DNS Protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1363 msgid "DNS Protocol Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2647 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2891 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7610 msgid "DNS protocol used by the resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7435 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1645 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7680 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1647 msgid "DNS requests through section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1589 msgid "DNS Rewrite TTL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2656 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2900 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7623 msgid "DNS server" msgstr "" @@ -2217,121 +2284,126 @@ msgstr "" msgid "DNS server pushed to the client configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2657 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2901 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7624 msgid "DNS server used by the resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1414 msgid "DNS server used to obtain IP addresses for upstream DNS and proxies. If multiple servers are selected, a timeout switches to a backup." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1395 msgid "DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285 msgid "DNS Settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1623 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625 msgid "DNS Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1567 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1569 msgid "DNS Successful Checks Before Recovery" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1636 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1638 msgid "DNS through proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7668 msgid "DNS through section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1611 msgid "DNS Turbo Cache" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1537 msgid "DNS Unavailability Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15027 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:354 +msgid "DNS Upstream Resolver Analysis (bash.ws protocol)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15110 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:26 msgid "Do not panic, everything can be fixed, just..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2852 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3096 msgid "Do not test servers from these countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2868 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3112 msgid "Do not test servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3057 msgid "Do not test servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2819 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3063 msgid "Do not test servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060 msgid "Do not test servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2860 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3104 msgid "Do not test specified servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15798 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15806 -#: src/tachyon/tabs/diagnostic/initController.ts:731 -#: src/tachyon/tabs/diagnostic/initController.ts:773 -#: src/tachyon/tabs/diagnostic/initController.ts:781 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16175 +#: src/tachyon/tabs/diagnostic/initController.ts:732 +#: src/tachyon/tabs/diagnostic/initController.ts:774 +#: src/tachyon/tabs/diagnostic/initController.ts:782 msgid "Doctor failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: src/tachyon/tabs/diagnostic/initController.ts:747 -#: src/tachyon/tabs/diagnostic/initController.ts:759 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: src/tachyon/tabs/diagnostic/initController.ts:748 #: src/tachyon/tabs/diagnostic/initController.ts:760 +#: src/tachyon/tabs/diagnostic/initController.ts:761 msgid "Doctor repair" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:54 msgid "Does not resolve" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10660 msgid "Domain and IP lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10344 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10684 msgid "Domain lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2881 msgid "Domain Resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2920 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2922 msgid "Domain test sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10162 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11312 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11671 msgid "Domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10192 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10518 msgid "Domains automatically detected by Smart Detect or added via Telegram bot. You can manually edit or remove them here." msgstr "" @@ -2339,22 +2411,22 @@ msgstr "" msgid "Domains to block for the selected devices. Leave empty to block all internet. Enter one domain per line, e.g. youtube.com. Use the preset buttons to quickly add common categories." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9237 msgid "Done" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2326 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2328 msgid "Dont Touch My DHCP!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8935 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8963 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8975 #: src/tachyon/tabs/dashboard/initController.ts:1865 #: src/tachyon/tabs/dashboard/initController.ts:1878 msgid "Downlink" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11239 #: src/partials/modal/renderModal.ts:253 msgid "Download" msgstr "" @@ -2363,81 +2435,81 @@ msgstr "" msgid "Download .conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2307 msgid "Download component packages via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2313 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2315 msgid "Download components through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2304 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2306 msgid "Download components through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2293 msgid "Download lists through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2284 msgid "Download lists through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2285 msgid "Download remote lists and rule sets via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2451 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2695 msgid "Download subscription through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2696 msgid "Download subscriptions via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2460 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2704 msgid "Download through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18027 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18358 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18544 #: src/tachyon/tabs/monitoring/initController.ts:886 #: src/tachyon/tabs/monitoring/initController.ts:945 #: src/tachyon/tabs/monitoring/initController.ts:1134 msgid "Downloaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1999 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2001 msgid "Downloading and applying rule sets and lists..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14142 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1766 msgid "DPI Detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12705 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12744 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:166 msgid "DPI Engine" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13820 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13859 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1431 msgid "DPI throttling: stream cut off after ~16KB payload transfer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13648 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13687 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1235 msgid "DPI Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:515 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:556 msgid "Drag rows to change priority. The rule at the top is checked first." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10404 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11680 msgid "DSCP marks (QoS)" msgstr "" @@ -2446,15 +2518,15 @@ msgstr "" msgid "Duplicate JSON outbound tag" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4859 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5103 msgid "Duplicate value" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9856 msgid "e.g. AES-256-GCM — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11394 msgid "e.g. google.com, 1.1.1.1, 443" msgstr "" @@ -2470,11 +2542,11 @@ msgstr "" msgid "e.g. Kids Phone (Night YouTube)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9541 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9867 msgid "e.g. SHA256 — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1878 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1880 msgid "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889" msgstr "" @@ -2483,30 +2555,30 @@ msgstr "" msgid "Edit" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2236 msgid "Eligible components for auto-update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20796 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21174 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21189 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:282 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7541 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2657 #: src/tachyon/tabs/updates/initController.ts:1309 #: src/tachyon/tabs/updates/initController.ts:1327 msgid "Enable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2866 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2868 msgid "Enable Adaptive Intervals" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2589 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2591 msgid "Enable AI Doctor (ChatGPT / LLM Analysis)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2880 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2882 msgid "Enable Anomaly Detection" msgstr "" @@ -2514,37 +2586,37 @@ msgstr "" msgid "Enable authentication" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1945 msgid "Enable automatic updates for remote lists and rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11367 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11396 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:106 msgid "Enable autostart" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2882 msgid "Enable built-in DNS resolver for domains handled by this section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2826 msgid "Enable Config Validation" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15998 -#: src/tachyon/tabs/diagnostic/initController.ts:1095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16367 +#: src/tachyon/tabs/diagnostic/initController.ts:1096 msgid "Enable Direct WAN Bypass" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2748 msgid "Enable DNS Continuous Check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2771 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2773 msgid "Enable Firewall Reload Dedup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2840 msgid "Enable Graceful Degradation" msgstr "" @@ -2552,78 +2624,78 @@ msgstr "" msgid "Enable Guest Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2785 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2787 msgid "Enable Health Metrics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1944 msgid "Enable list updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10240 msgid "Enable Mixed Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10283 msgid "Enable Mixed Proxy Authentication" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1694 msgid "Enable Output Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2702 msgid "Enable Proxy Health Monitor" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2674 msgid "Enable RAG (Knowledge Base Retrieval)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2810 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2812 msgid "Enable Smart Cooldowns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2907 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2909 msgid "Enable Smart Detect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3131 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3133 msgid "Enable Telegram Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1490 msgid "Enable WAN DNS Fallback for Bootstrap DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1479 msgid "Enable WAN DNS Fallback for Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2565 msgid "Enable Watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1806 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1808 msgid "Enable YACD" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1818 msgid "Enable YACD WAN Access" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1379 #: src/tachyon/tabs/updates/initController.ts:1396 msgid "Enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3134 msgid "Enables the background daemon that polls Telegram for commands and sends notifications." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2566 msgid "Enables the background watchdog process to monitor services and auto-recover on failures." msgstr "" @@ -2643,9 +2715,9 @@ msgstr "" msgid "Enforce SafeSearch & YouTube Restricted Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13001 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13416 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13677 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:507 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:972 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1225 @@ -2656,28 +2728,28 @@ msgstr "" msgid "Enter a complete sing-box inbound object" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4313 msgid "Enter a complete sing-box outbound object" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3147 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4024 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2935 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3391 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4268 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4284 msgid "Enter a display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12171 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12210 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:644 msgid "Enter a domain or IP to check (e.g. example.com)..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2962 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3206 msgid "Enter a level name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9342 msgid "Enter a number or range, e.g. 25 or 25-35" msgstr "" @@ -2685,7 +2757,7 @@ msgstr "" msgid "Enter a positive whole number in megabytes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2229 msgid "Enter a valid time in HH:MM format (00:00 to 23:59)" msgstr "" @@ -2695,46 +2767,46 @@ msgstr "" msgid "Enter a whole number of minutes between 0 and 1440" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2778 msgid "Enter HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3143 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3145 msgid "Enter the API token obtained from @BotFather." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2526 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2770 msgid "Enter the HWID sent with subscription requests" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9951 msgid "Enter the subscription URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8547 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8550 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8561 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8564 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8638 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8641 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8648 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8651 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8765 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8779 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8782 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8809 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8823 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8905 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8912 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8915 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9031 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9045 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9048 msgid "Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8916 msgid "Error running generator:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11561 msgid "Error running trace:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2090 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2117 msgid "Error updating lists:" msgstr "" @@ -2742,60 +2814,60 @@ msgstr "" msgid "Every day" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14407 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14446 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:74 msgid "EXCELLENT" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2808 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3021 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3666 msgid "Exclude by proxy parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2867 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3083 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3482 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3327 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3726 msgid "Exclude by regular expression" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3067 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3466 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3311 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3710 msgid "Exclude countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10412 msgid "Exclude selected countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3075 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3474 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3718 msgid "Exclude servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3273 msgid "Exclude servers with one of the selected protocols from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3279 msgid "Exclude servers with one of the selected security types from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3276 msgid "Exclude servers with one of the selected transports from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10755 msgid "Exclude traffic types" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3781 msgid "Exclude URLTest / Priority group" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10727 msgid "Excluded devices" msgstr "" @@ -2808,16 +2880,16 @@ msgstr "" msgid "Expires" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9915 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10241 msgid "Expose this section as a local HTTP+SOCKS proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6623 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6651 #: src/tachyon/helpers/singBoxVariant.ts:60 msgid "extended" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1000 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1002 msgid "External inbound proxy servers" msgstr "" @@ -2826,72 +2898,72 @@ msgstr "" msgid "External NFQUEUE rules overlap with Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5694 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5938 msgid "External nfqws config files bypass Tachyon queue management and explicit validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6383 msgid "External nfqws2 config files bypass Tachyon queue management and explicit validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14419 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14458 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:86 msgid "FAILED" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4712 -#: src/tachyon/methods/shell/index.ts:1654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4720 +#: src/tachyon/methods/shell/index.ts:1656 msgid "Failed to apply DNS configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14713 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:374 msgid "Failed to apply DNS settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16085 -#: src/tachyon/tabs/diagnostic/initController.ts:1202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16454 +#: src/tachyon/tabs/diagnostic/initController.ts:1203 msgid "Failed to apply fix" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4427 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14261 -#: src/tachyon/methods/shell/index.ts:1255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4435 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14300 +#: src/tachyon/methods/shell/index.ts:1257 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1945 msgid "Failed to apply strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4604 -#: src/tachyon/methods/shell/index.ts:1507 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4612 +#: src/tachyon/methods/shell/index.ts:1509 msgid "Failed to auto-apply strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4642 -#: src/tachyon/methods/shell/index.ts:1552 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4650 +#: src/tachyon/methods/shell/index.ts:1554 msgid "Failed to clear fuzzer history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18733 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18747 #: src/tachyon/tabs/monitoring/initController.ts:1400 #: src/tachyon/tabs/monitoring/initController.ts:1415 msgid "Failed to close connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18384 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18396 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18774 #: src/tachyon/tabs/monitoring/initController.ts:1434 #: src/tachyon/tabs/monitoring/initController.ts:1447 msgid "Failed to close connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1926 msgid "Failed to communicate with AI provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15943 -#: src/tachyon/tabs/diagnostic/initController.ts:974 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16312 +#: src/tachyon/tabs/diagnostic/initController.ts:975 msgid "Failed to copy report to clipboard" msgstr "" @@ -2901,114 +2973,119 @@ msgstr "" msgid "Failed to copy!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:583 msgid "Failed to delete snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4581 -#: src/tachyon/methods/shell/index.ts:1479 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4589 +#: src/tachyon/methods/shell/index.ts:1481 msgid "Failed to detect DPI type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3614 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3617 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20363 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20537 -#: src/tachyon/methods/shell/index.ts:199 -#: src/tachyon/methods/shell/index.ts:206 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20915 #: src/tachyon/tabs/updates/initController.ts:693 #: src/tachyon/tabs/updates/initController.ts:694 #: src/tachyon/tabs/updates/initController.ts:773 #: src/tachyon/tabs/updates/initController.ts:989 +#: src/tachyon/methods/shell/index.ts:199 +#: src/tachyon/methods/shell/index.ts:206 msgid "Failed to execute" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4743 +#: src/tachyon/methods/shell/index.ts:1683 +msgid "Failed to execute IP and DNS leak check" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4030 #: src/tachyon/methods/shell/index.ts:730 msgid "Failed to fetch releases" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 -#: src/tachyon/tabs/diagnostic/initController.ts:1769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16948 +#: src/tachyon/tabs/diagnostic/initController.ts:1774 msgid "Failed to generate bug report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8551 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8565 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8827 msgid "Failed to generate WARP config:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4680 -#: src/tachyon/methods/shell/index.ts:1606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4688 +#: src/tachyon/methods/shell/index.ts:1608 msgid "Failed to get DNS benchmark status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4624 -#: src/tachyon/methods/shell/index.ts:1529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4632 +#: src/tachyon/methods/shell/index.ts:1531 msgid "Failed to get fuzzer history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4510 -#: src/tachyon/methods/shell/index.ts:1383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4518 +#: src/tachyon/methods/shell/index.ts:1385 msgid "Failed to get fuzzer patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4385 -#: src/tachyon/methods/shell/index.ts:1207 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4393 +#: src/tachyon/methods/shell/index.ts:1209 msgid "Failed to get fuzzer status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4454 -#: src/tachyon/methods/shell/index.ts:1307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4462 +#: src/tachyon/methods/shell/index.ts:1309 msgid "Failed to get fuzzer strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4046 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4054 #: src/tachyon/methods/shell/index.ts:759 msgid "Failed to install version" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13742 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13781 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1338 msgid "Failed to load history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:745 msgid "Failed to load snapshots" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21324 #: src/tachyon/tabs/updates/initController.ts:1511 msgid "Failed to load versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9049 msgid "Failed to parse file:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11819 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11858 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:231 msgid "Failed to parse target list." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8906 msgid "Failed to parse WARP config:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003 #: src/tachyon/methods/shell/index.ts:697 msgid "Failed to read operation log" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12510 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:115 msgid "Failed to receive response from AI service." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4562 -#: src/tachyon/methods/shell/index.ts:1458 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4570 +#: src/tachyon/methods/shell/index.ts:1460 msgid "Failed to reset fuzzer patterns" msgstr "" @@ -3016,59 +3093,59 @@ msgstr "" msgid "Failed to reset settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16384 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16475 -#: src/tachyon/tabs/diagnostic/initController.ts:1543 -#: src/tachyon/tabs/diagnostic/initController.ts:1651 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16753 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16847 +#: src/tachyon/tabs/diagnostic/initController.ts:1544 +#: src/tachyon/tabs/diagnostic/initController.ts:1656 msgid "Failed to restore native internet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:568 msgid "Failed to restore snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3362 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390 msgid "Failed to run diagnostics — is the tachyon binary installed?" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4536 -#: src/tachyon/methods/shell/index.ts:1416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4544 +#: src/tachyon/methods/shell/index.ts:1418 msgid "Failed to save fuzzer patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13349 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:849 msgid "Failed to save patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:798 msgid "Failed to save snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14192 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14231 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14681 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:339 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1865 msgid "Failed to start benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3077 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3079 msgid "Failed to start bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4660 -#: src/tachyon/methods/shell/index.ts:1582 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4668 +#: src/tachyon/methods/shell/index.ts:1584 msgid "Failed to start DNS benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4362 -#: src/tachyon/methods/shell/index.ts:1181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4370 +#: src/tachyon/methods/shell/index.ts:1183 msgid "Failed to start fuzzer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11802 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12374 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11841 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12413 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:213 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:890 msgid "Failed to start service check." @@ -3078,17 +3155,17 @@ msgstr "" msgid "Failed to start watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3093 msgid "Failed to stop bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4699 -#: src/tachyon/methods/shell/index.ts:1626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4707 +#: src/tachyon/methods/shell/index.ts:1628 msgid "Failed to stop DNS benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4399 -#: src/tachyon/methods/shell/index.ts:1222 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4407 +#: src/tachyon/methods/shell/index.ts:1224 msgid "Failed to stop fuzzer" msgstr "" @@ -3096,30 +3173,30 @@ msgstr "" msgid "Failed to stop watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8026 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8054 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8060 #: src/tachyon/tabs/dashboard/initController.ts:704 #: src/tachyon/tabs/dashboard/initController.ts:710 msgid "Failed to switch proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4487 -#: src/tachyon/methods/shell/index.ts:1352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4495 +#: src/tachyon/methods/shell/index.ts:1354 msgid "Failed to synthesize AI strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16230 -#: src/tachyon/tabs/diagnostic/initController.ts:1364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16599 +#: src/tachyon/tabs/diagnostic/initController.ts:1365 msgid "Failed to update device" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7747 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7783 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8689 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7775 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7808 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8717 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8720 #: src/tachyon/tabs/dashboard/initController.ts:313 #: src/tachyon/tabs/dashboard/initController.ts:314 #: src/tachyon/tabs/dashboard/initController.ts:334 @@ -3130,31 +3207,31 @@ msgstr "" msgid "Failed to update subscriptions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2350 msgid "Failover failure threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14452 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:80 msgid "FAIR" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13873 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1446 msgid "Fake packets reached remote server (HTTP 400 Bad Request)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:91 msgid "FakeIP and control checks use different public IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:92 msgid "FakeIP and control checks use the same public IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:46 msgid "FakeIP works; public IP comparison is inconclusive" msgstr "" @@ -3163,20 +3240,20 @@ msgstr "" msgid "FakeTLS host" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14603 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:248 msgid "Fallback DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1428 msgid "Fallback DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1441 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443 msgid "Fallback DNS servers must be plain UDP (IP or hostname). DoH/DoT URLs are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1445 msgid "Fallback DNS servers must be plain UDP (IP or hostname). Path-style DoH (e.g. domain/path) is not allowed here." msgstr "" @@ -3188,104 +3265,104 @@ msgstr "" msgid "Family (🏠)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:558 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:599 msgid "Family Profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1006 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:591 msgid "Family Profiles" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1007 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1009 msgid "Family profiles and device grouping" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2749 msgid "Faster DNS health monitoring than the default cycle. Switches bootstrap DNS on failure." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8636 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3226 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8664 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3470 #: src/tachyon/tabs/dashboard/initController.ts:1474 msgid "Faster server search interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5141 #: src/tachyon/methods/custom/getDashboardSections.ts:674 msgid "Fastest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11985 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12024 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:425 msgid "Filter by service:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3623 msgid "Filter the servers that will be displayed on the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12918 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12957 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:412 msgid "Filter:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8357 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8615 msgid "Finished with code" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446 msgid "Finland (fi)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:136 msgid "Firewall WAN port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16079 -#: src/tachyon/tabs/diagnostic/initController.ts:1196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16448 +#: src/tachyon/tabs/diagnostic/initController.ts:1197 msgid "Fix applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15984 -#: src/tachyon/tabs/diagnostic/initController.ts:1081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16353 +#: src/tachyon/tabs/diagnostic/initController.ts:1082 msgid "Fix resolv.conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3899 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2359 msgid "Fix the highlighted fields and save again." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16075 -#: src/tachyon/tabs/diagnostic/initController.ts:753 -#: src/tachyon/tabs/diagnostic/initController.ts:1192 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16444 +#: src/tachyon/tabs/diagnostic/initController.ts:754 +#: src/tachyon/tabs/diagnostic/initController.ts:1193 msgid "Fixed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16001 -#: src/tachyon/tabs/diagnostic/initController.ts:1098 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16370 +#: src/tachyon/tabs/diagnostic/initController.ts:1099 msgid "Flush Conntrack Table" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13273 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:768 msgid "Fooling Methods (dpi-desync-fooling)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13224 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:717 msgid "Fooling Methods (fooling)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1990 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992 msgid "Force immediate download and refresh of all remote lists and rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10716 msgid "Forced device routing" msgstr "" @@ -3293,16 +3370,16 @@ msgstr "" msgid "Forces SafeSearch on Google, Yandex, Bing, DuckDuckGo and Strict Restricted Mode on YouTube via DNS rewrite for all devices in this profile." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2445 msgid "Forces sing-box to tunnel DNS requests via DoQ with Encrypted Client Hello (ECH) for SNI hiding." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "Found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10119 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445 msgid "France (fr)" msgstr "" @@ -3326,20 +3403,20 @@ msgstr "" msgid "Fronting proxy protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12521 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12560 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:173 msgid "Full System Diagnostic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6401 msgid "Fuzzing is not supported here because Tachyon needs deterministic runtime validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1921 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1923 msgid "Game Console IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1909 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1911 msgid "Game Console Optimizer (NAT Type 1)" msgstr "" @@ -3351,91 +3428,91 @@ msgstr "" msgid "Gaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2541 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2785 msgid "Generate a random 16-character hexadecimal HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11462 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:199 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11501 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:211 msgid "Generate bug report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2540 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2545 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2784 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2789 msgid "Generate HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2517 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2761 msgid "Generate HWID from router hardware information for this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8444 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8483 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8505 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8706 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8767 msgid "Generate WARP Config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10283 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:89 msgid "Generated inbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8888 msgid "Generated!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8542 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8804 msgid "Generating…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10109 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10435 msgid "GeoIP Countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10407 msgid "GeoIP Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11317 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11676 msgid "GeoSite / GeoIP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10116 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442 msgid "Germany (de)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:115 msgid "Get global check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:765 msgid "Give the snapshot a name. It is saved with the current date and can be restored from this list later." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15753 -#: src/tachyon/tabs/diagnostic/initController.ts:703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16122 +#: src/tachyon/tabs/diagnostic/initController.ts:704 msgid "Global check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15764 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15768 -#: src/tachyon/tabs/diagnostic/initController.ts:714 -#: src/tachyon/tabs/diagnostic/initController.ts:718 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16133 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16137 +#: src/tachyon/tabs/diagnostic/initController.ts:715 +#: src/tachyon/tabs/diagnostic/initController.ts:719 msgid "Global check failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941 msgid "Global Default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14449 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:77 msgid "GOOD" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:592 msgid "Group devices into family profiles to manage content filtering, SafeSearch, and screen time limits in one place." msgstr "" @@ -3447,16 +3524,16 @@ msgstr "" msgid "Guest Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1020 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:586 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:627 msgid "Guest Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:628 msgid "Guest mode isolates guest devices from local LAN and router administration, while allowing internet access with daily quotas and schedules." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1021 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1023 msgid "Guest network isolation and device quotas" msgstr "" @@ -3464,12 +3541,12 @@ msgstr "" msgid "Handshake timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9451 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3637 msgid "Header Protection Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12386 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12425 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:14 msgid "Hello! I am Tachyon AI Assistant. How can I help you today? Ask me about domain blocks, diagnostics, or router settings." msgstr "" @@ -3494,137 +3571,137 @@ msgstr "" msgid "Hex or binary payload for response" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2870 msgid "Hide cascade connection nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2615 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859 msgid "Hide individual nodes that are already included in imported subscription URLTest groups" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2871 msgid "Hide intermediate nodes used as detours by other subscription nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3475 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3719 msgid "Hide selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3538 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3782 msgid "Hide servers from selected groups without repeating their filtering criteria." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3467 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3711 msgid "Hide servers from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3483 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3727 msgid "Hide servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3430 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3674 msgid "Hide servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3678 msgid "Hide servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3675 msgid "Hide servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2858 msgid "Hide URLTest group nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11263 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11291 #: src/partials/modal/renderModal.ts:310 msgid "Hide values" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616 #: src/tachyon/tabs/updates/initController.ts:1847 msgid "Hide versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8623 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8651 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434 #: src/tachyon/tabs/dashboard/initController.ts:1460 msgid "Higher-level check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1525 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1527 msgid "Higher-priority DNS Check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12651 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16331 -#: src/tachyon/tabs/diagnostic/initController.ts:1480 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16700 +#: src/tachyon/tabs/diagnostic/initController.ts:1481 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:96 msgid "History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4647 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13597 -#: src/tachyon/methods/shell/index.ts:1557 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13636 +#: src/tachyon/methods/shell/index.ts:1559 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1179 msgid "History cleared" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17970 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18401 #: src/tachyon/tabs/monitoring/initController.ts:876 #: src/tachyon/tabs/monitoring/initController.ts:941 msgid "Host" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4329 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4573 msgid "Hosts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8661 msgid "Hosts Lists Update Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2799 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2801 msgid "How many hours of metrics to keep (default 24)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3435 msgid "How often higher priority levels are checked while a lower level is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3411 msgid "How often the currently selected server is checked" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2762 msgid "How often to check DNS health in seconds (default 60)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2714 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2716 msgid "How often to check proxy health in seconds (fast tier, default 30)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3183 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3185 msgid "How often to check Telegram for new messages (default: 5)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1518 msgid "How often to check the active DNS servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1526 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1528 msgid "How often to check whether a higher-priority DNS server has recovered." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10424 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10764 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10783 msgid "HTTP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5903 #: src/tachyon/api.ts:27 msgid "HTTP error" msgstr "" @@ -3633,49 +3710,49 @@ msgstr "" msgid "HTTP hosts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2525 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769 msgid "HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8507 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2980 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3266 #: src/tachyon/tabs/dashboard/initController.ts:1305 msgid "Idle timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2839 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2841 msgid "If one health check fails with an error, continue running other checks instead of stopping." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2203 msgid "Immediately upon release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7734 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7843 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7979 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8088 msgid "Import" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8083 msgid "Import (%d records)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8664 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8928 msgid "Import AmneziaWG settings from .conf file" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7915 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8118 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8363 msgid "Import Hosts File" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2605 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2849 msgid "Import subscription URLTest groups" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2850 msgid "Import URLTest groups returned by this subscription provider" msgstr "" @@ -3691,35 +3768,35 @@ msgstr "" msgid "Inbound JSON must be an object with a type field" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2791 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3402 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3247 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3646 msgid "Include by proxy parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2843 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3059 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3458 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3702 msgid "Include by regular expression" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2827 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3071 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3287 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3686 msgid "Include countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4144 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4388 msgid "Include IP addresses and subnets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10413 msgid "Include selected countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3051 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3450 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3079 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3295 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3694 msgid "Include servers" msgstr "" @@ -3739,31 +3816,31 @@ msgstr "" msgid "Init packet junk size (S1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9107 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9400 msgid "Init Packet Magic Header (S1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9109 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9402 msgid "Init Packet Magic Header (S3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9425 msgid "Init Packet Payload (I1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9133 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9426 msgid "Init Packet Payload (I2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9134 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9427 msgid "Init Packet Payload (I3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9135 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9428 msgid "Init Packet Payload (I4)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9136 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9429 msgid "Init Packet Payload (I5)" msgstr "" @@ -3775,10 +3852,15 @@ msgstr "" msgid "Init timeout (Itime)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19774 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20961 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14764 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:28 +msgid "Initializing router-level IP & DNS leak test..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20152 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21339 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21386 #: src/tachyon/tabs/updates/initController.ts:1025 #: src/tachyon/tabs/updates/initController.ts:1531 #: src/tachyon/tabs/updates/initController.ts:1584 @@ -3786,71 +3868,71 @@ msgstr "" msgid "Install" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21603 #: src/tachyon/tabs/updates/initController.ts:1833 msgid "Install another build:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980 msgid "Installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21093 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21471 #: src/tachyon/tabs/updates/initController.ts:1679 msgid "Installed build → Available build" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20070 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20448 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479 #: src/tachyon/tabs/updates/initController.ts:376 #: src/tachyon/tabs/updates/initController.ts:1687 msgid "Installed version is newer than release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2502 msgid "Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1757 msgid "Interface Monitoring" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1789 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1791 msgid "Interface Monitoring Delay" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1758 msgid "Interface monitoring for Bad WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8509 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2750 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8669 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2994 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3486 #: src/tachyon/tabs/dashboard/initController.ts:1307 #: src/tachyon/tabs/dashboard/initController.ts:1480 msgid "Interrupt connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3487 msgid "Interrupt connections when priority failover switches server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2995 msgid "Interrupt connections when URLTest switches the selected server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8533 #: src/tachyon/tabs/dashboard/initController.ts:1303 msgid "Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7532 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7777 msgid "Invalid ByeDPI strategy" msgstr "" @@ -3871,7 +3953,7 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:76 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:80 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5611 #: src/validators/validateDomain.ts:67 #: src/validators/validateDomain.ts:73 msgid "Invalid domain address" @@ -4028,7 +4110,7 @@ msgstr "" msgid "Invalid JSON format" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8026 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8271 msgid "Invalid line: \"%s\". Use: domain ip or ip domain" msgstr "" @@ -4038,16 +4120,16 @@ msgid "Invalid path format. Path must start with \"/\" and contain valid charact msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:400 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10276 #: src/validators/validateShadowsocksUrl.ts:91 msgid "Invalid port number. Must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5760 msgid "Invalid port or range. Use 80 or 1000-2000" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4742 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4986 msgid "Invalid regular expression" msgstr "" @@ -4270,24 +4352,24 @@ msgstr "" msgid "Invalid VMess URL: parsing failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11313 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11672 msgid "IP Addresses (IP CIDR)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13289 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13328 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:825 msgid "IP Frag Bounds (--ip-frag)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10528 msgid "IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628 msgid "IPv4 only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1630 msgid "IPv6 only" msgstr "" @@ -4296,7 +4378,7 @@ msgstr "" msgid "is unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1854 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1856 msgid "Isolate BitTorrent traffic and force it direct to prevent VPN bans" msgstr "" @@ -4304,31 +4386,41 @@ msgstr "" msgid "Isolate Local LAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: src/tachyon/tabs/diagnostic/initController.ts:749 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14851 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:141 +msgid "ISP / Organization" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14968 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:288 +msgid "ISP DNS LEAK" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: src/tachyon/tabs/diagnostic/initController.ts:750 msgid "Issues" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10029 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10518 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10057 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10546 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:17 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:20 msgid "Issues detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16101 -#: src/tachyon/tabs/diagnostic/initController.ts:1221 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16470 +#: src/tachyon/tabs/diagnostic/initController.ts:1222 msgid "Issues detected. Review the diagnosis above." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10124 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10450 msgid "Japan (jp)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1124 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4068 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4331 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9713 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4312 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10039 msgid "JSON outbound" msgstr "" @@ -4352,15 +4444,15 @@ msgstr "" msgid "JSON outbound must contain a non-empty type field" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4336 msgid "JSON outbound settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399 msgid "Junk Max Size (Jmax)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9398 msgid "Junk Min Size (Jmin)" msgstr "" @@ -4368,7 +4460,7 @@ msgstr "" msgid "Junk packet count (Jc)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9397 msgid "Junk Packet Count (Jc)" msgstr "" @@ -4408,32 +4500,32 @@ msgstr "" msgid "Junk size for transport packet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10127 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10453 msgid "Kazakhstan (kz)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3252 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3496 msgid "Keep Priority before latency-sorted servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2254 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2256 msgid "Keep the previous working binary/package on the router flash for instant offline rollback if needed. Consumes extra storage." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004 msgid "Keep URLTest before latency-sorted servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9476 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3667 msgid "Keepalive Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1610 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1612 msgid "Keeps FakeIP cache persistent across reboots and pre-resolves popular blocked domains on startup so first-visit latency is 0 ms." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9757 msgid "Key" msgstr "" @@ -4441,16 +4533,16 @@ msgstr "" msgid "Key path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4996 msgid "Keyword must not contain spaces or commas" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16317 -#: src/tachyon/tabs/diagnostic/initController.ts:1464 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16686 +#: src/tachyon/tabs/diagnostic/initController.ts:1465 msgid "LAN Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2632 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2634 msgid "Language for AI Doctor diagnosis responses" msgstr "" @@ -4458,35 +4550,50 @@ msgstr "" msgid "Laptop / PC (💻)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14384 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14423 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:46 msgid "Latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3877 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3885 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3904 #: src/tachyon/methods/shell/index.ts:547 #: src/tachyon/methods/shell/index.ts:568 msgid "Latency test failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2267 msgid "Latency test URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20072 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21099 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20450 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21477 #: src/tachyon/tabs/updates/initController.ts:379 #: src/tachyon/tabs/updates/initController.ts:1685 msgid "Latest version is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479 #: src/tachyon/tabs/updates/initController.ts:1687 msgid "Latest version:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14790 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:62 +msgid "Leak detection completed" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14797 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:73 +msgid "Leak detection failed to complete" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14917 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:219 +msgid "LEAKED" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2815 msgid "Leave empty to omit this header" msgstr "" @@ -4495,7 +4602,7 @@ msgstr "" msgid "Legacy zapret runtime paths are still present and should be migrated" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3201 msgid "Level name" msgstr "" @@ -4503,15 +4610,15 @@ msgstr "" msgid "Limit device network usage per day. When the quota is exhausted, the device is blocked until midnight. 0 disables the limit." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7472 msgid "List must be an HTTP(S) URL or a local .lst path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2951 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2953 msgid "List of domains automatically detected and the section they were added to. To edit or remove them, open the routing rules of the respective section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1952 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1954 msgid "List Update Frequency" msgstr "" @@ -4523,45 +4630,45 @@ msgstr "" msgid "Listen port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10313 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:125 msgid "Listening port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2084 msgid "Lists and rule sets successfully updated!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2032 msgid "Lists update is continuing in the background." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2071 msgid "Lists update is still running in background. You can check system logs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2610 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2612 msgid "LM Studio (Local PC / Server)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8740 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9006 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9021 msgid "Load .conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8663 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8927 msgid "Load .conf config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7923 msgid "Load Current Records" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7917 msgid "Loaded %d current record(s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9234 msgid "Loaded!" msgstr "" @@ -4569,36 +4676,36 @@ msgstr "" msgid "Loading client link..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16120 -#: src/tachyon/tabs/diagnostic/initController.ts:1243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16489 +#: src/tachyon/tabs/diagnostic/initController.ts:1244 msgid "Loading connected LAN devices..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17341 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18073 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18451 #: src/tachyon/tabs/monitoring/initController.ts:1002 #: src/tachyon/tabs/monitoring/render.ts:101 msgid "Loading connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11751 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11829 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:150 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:194 msgid "Loading service list..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21354 #: src/tachyon/tabs/updates/initController.ts:1550 msgid "Loading versions..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20823 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20837 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274 #: src/tachyon/tabs/updates/initController.ts:1341 #: src/tachyon/tabs/updates/initController.ts:1357 #: src/tachyon/tabs/updates/initController.ts:1407 @@ -4608,63 +4715,68 @@ msgstr "" msgid "Loading..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8969 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9260 msgid "Local Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14850 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:140 +msgid "Location" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2414 msgid "Log Level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14385 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14424 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:47 msgid "Loss" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242 msgid "LuCI Web UI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6621 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6649 #: src/tachyon/helpers/singBoxVariant.ts:58 msgid "lx" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67 msgid "Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1394 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1396 msgid "Main DNS server. If multiple servers are selected, a timeout switches to a backup." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:986 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:988 msgid "Main overview and status widgets" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8198 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8544 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8226 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8572 #: src/tachyon/tabs/dashboard/initController.ts:918 #: src/tachyon/tabs/dashboard/initController.ts:1356 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:592 msgid "Manual" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1991 msgid "Manual list update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9479 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805 msgid "MASQUE Access Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9793 msgid "MASQUE Account ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9781 msgid "MASQUE Private Key" msgstr "" @@ -4676,28 +4788,28 @@ msgstr "" msgid "Master and family devices with full LAN and router access. Any device NOT in this list will be treated as a guest." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10529 msgid "Match destination IPs or subnets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10737 msgid "Match destination ports. Use a single port or a range" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11464 msgid "Match Found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10745 msgid "Match traffic by packet DSCP mark (assigned in Windows via Policy-Based QoS). Examples: 46 (EF), 0x2e, 34 (AF41)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9481 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3673 msgid "Max Handshake Attempts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2894 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2896 msgid "Max reconnects per hour before alert (default 10)." msgstr "" @@ -4713,16 +4825,16 @@ msgstr "" msgid "Maximum size of junk packets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1538 msgid "Maximum time to wait for example.com to resolve during a DNS health check." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8959 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8987 #: src/tachyon/tabs/dashboard/initController.ts:1891 msgid "Memory Usage" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284 msgid "Menu & Navigation" msgstr "" @@ -4734,7 +4846,7 @@ msgstr "" msgid "Method" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2798 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2800 msgid "Metrics Retention (hours)" msgstr "" @@ -4745,7 +4857,7 @@ msgstr "" msgid "min/day" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2710 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2954 msgid "Minimum latency difference in milliseconds that triggers switching to a faster server." msgstr "" @@ -4753,15 +4865,15 @@ msgstr "" msgid "Minimum size of junk packets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10340 msgid "Mixed Proxy Password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9930 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10256 msgid "Mixed Proxy Port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9973 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10299 msgid "Mixed Proxy Username" msgstr "" @@ -4769,7 +4881,7 @@ msgstr "" msgid "Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2619 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2621 msgid "Model name to use. Leave empty to use default (gpt-4o-mini / claude-3-5-haiku / deepseek-chat / llama3:latest)." msgstr "" @@ -4781,65 +4893,65 @@ msgstr "" msgid "Monday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1765 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1767 msgid "Monitored Interfaces" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1027 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:603 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:644 msgid "Monitoring" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2881 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2883 msgid "Monitors sing-box reconnect frequency. Alerts if too many reconnects per hour." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1243 msgid "Move Down" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1218 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1220 msgid "Move Up" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3415 msgid "MTU" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3173 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3175 msgid "Must be a comma-separated list of numeric IDs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2135 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2150 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2394 msgid "Must be a number in the range of 0 - 10000" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12649 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12688 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:94 msgid "My Strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13454 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:971 msgid "Name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2680 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3143 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2924 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3387 msgid "Name displayed on the dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3202 msgid "Name shown in the priority level list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16374 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16467 -#: src/tachyon/tabs/diagnostic/initController.ts:1533 -#: src/tachyon/tabs/diagnostic/initController.ts:1643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16839 +#: src/tachyon/tabs/diagnostic/initController.ts:1534 +#: src/tachyon/tabs/diagnostic/initController.ts:1648 msgid "Native internet restored. Tachyon stopped." msgstr "" @@ -4857,73 +4969,73 @@ msgstr "" msgid "Native tailscaled (tailnet reachable from LAN without client)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443 msgid "Netherlands (nl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286 msgid "Network & Interfaces" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1950 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2194 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9998 msgid "Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3845 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4089 msgid "Network interface settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19504 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19506 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19882 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19884 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:73 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:75 msgid "new build" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7827 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8072 msgid "New domains:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7066 #: src/tachyon/services/core.service.ts:38 msgid "New version %s is available for %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:100 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:97 msgid "NFQUEUE range is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:99 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:96 msgid "NFQUEUE range overlaps with another rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7697 msgid "NFQWS Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6068 msgid "NFQWS strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7730 msgid "NFQWS2 Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6298 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6542 msgid "NFQWS2 strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8129 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8189 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8563 #: src/tachyon/tabs/dashboard/initController.ts:826 #: src/tachyon/tabs/dashboard/initController.ts:830 #: src/tachyon/tabs/dashboard/initController.ts:906 @@ -4936,55 +5048,55 @@ msgstr "" msgid "No active clients" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470 #: src/tachyon/tabs/monitoring/initController.ts:1026 msgid "No active connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16131 -#: src/tachyon/tabs/diagnostic/initController.ts:1255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16500 +#: src/tachyon/tabs/diagnostic/initController.ts:1256 msgid "No active DHCP clients found on local network." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:859 msgid "No active routing sections found." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14479 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:109 msgid "No benchmark data yet. Click \"Start Benchmark\" to begin." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13656 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1204 msgid "No benchmark history yet. Run a benchmark to see results here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13100 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:567 msgid "No benchmark results yet. Configure options and click \"Start Benchmark\"." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11865 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:239 msgid "No check targets found in the configuration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470 #: src/tachyon/tabs/monitoring/initController.ts:1027 msgid "No closed connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10239 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:32 msgid "No conflict detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11186 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11545 msgid "No Custom Rules Matched" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13479 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:998 msgid "No custom strategies added yet." msgstr "" @@ -4998,60 +5110,70 @@ msgstr "" msgid "No devices assigned" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15914 -#: src/tachyon/tabs/diagnostic/initController.ts:943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16283 +#: src/tachyon/tabs/diagnostic/initController.ts:944 msgid "No DHCP clients detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16247 -#: src/tachyon/tabs/diagnostic/initController.ts:1382 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16616 +#: src/tachyon/tabs/diagnostic/initController.ts:1383 msgid "No diagnostic history available yet." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14953 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:270 +msgid "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15011 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:336 +msgid "No DNS resolvers recorded" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2970 msgid "No domains detected yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10331 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10359 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:187 msgid "No enabled server inbounds configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7932 msgid "No file selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16108 -#: src/tachyon/tabs/diagnostic/initController.ts:1230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16477 +#: src/tachyon/tabs/diagnostic/initController.ts:1231 msgid "No issues detected. System is running normally." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: src/tachyon/tabs/diagnostic/initController.ts:760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: src/tachyon/tabs/diagnostic/initController.ts:761 msgid "No issues found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:105 msgid "No other marking rules found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:99 msgid "No public firewall port required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:79 msgid "No rules use ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:79 msgid "No rules use Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:82 msgid "No rules use Zapret2" msgstr "" @@ -5061,38 +5183,38 @@ msgstr "" msgid "No sections selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:608 msgid "No snapshots yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1372 msgid "No strategies match the active filter." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20935 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21313 #: src/tachyon/tabs/updates/initController.ts:1497 #: src/tachyon/tabs/updates/initController.ts:1500 msgid "No versions found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14267 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14306 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1954 msgid "No working strategy to apply" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8465 #: src/tachyon/tabs/dashboard/initController.ts:1221 msgid "Node list is empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8270 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8298 #: src/tachyon/tabs/dashboard/initController.ts:1014 msgid "Nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15911 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16280 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:871 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:884 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:897 @@ -5101,18 +5223,18 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2803 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3095 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3104 -#: src/tachyon/tabs/diagnostic/initController.ts:934 +#: src/tachyon/tabs/diagnostic/initController.ts:935 msgid "None" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10220 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10248 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15244 #: src/tachyon/methods/custom/getDashboardSections.ts:1698 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:317 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:46 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:157 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:317 msgid "Not configured" msgstr "" @@ -5123,27 +5245,27 @@ msgstr "" msgid "Not connected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10369 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:199 msgid "Not detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11665 #: src/tachyon/tabs/diagnostic/partials/renderCheckSection.ts:193 msgid "Not implement yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6611 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6639 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274 #: src/tachyon/helpers/singBoxVariant.ts:34 #: src/tachyon/helpers/singBoxVariant.ts:42 #: src/tachyon/tabs/updates/initController.ts:1410 @@ -5156,49 +5278,49 @@ msgstr "" msgid "Not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10262 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:62 msgid "Not public" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10320 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:139 msgid "Not required for this listen address" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2583 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2876 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14824 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14843 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14903 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:470 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:849 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15193 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15212 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15272 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:91 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:118 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:124 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:190 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:470 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:849 msgid "Not responding" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6167 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15311 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15481 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15527 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15589 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15680 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15850 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15958 #: src/tachyon/tabs/diagnostic/diagnostic.store.ts:159 -#: src/tachyon/tabs/diagnostic/initController.ts:127 -#: src/tachyon/tabs/diagnostic/initController.ts:358 -#: src/tachyon/tabs/diagnostic/initController.ts:416 -#: src/tachyon/tabs/diagnostic/initController.ts:502 +#: src/tachyon/tabs/diagnostic/initController.ts:128 +#: src/tachyon/tabs/diagnostic/initController.ts:359 +#: src/tachyon/tabs/diagnostic/initController.ts:417 +#: src/tachyon/tabs/diagnostic/initController.ts:503 msgid "Not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11258 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11617 msgid "Not set" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8630 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8896 msgid "Notice: Cloudflare WARP edge servers only support AmneziaWG 2.0 (WireGuard). The profile has been automatically set to 2.0 so the connection works properly. Versions 3.0 and 3.1 require an AmneziaWG server via 'Import .conf'." msgstr "" @@ -5206,43 +5328,43 @@ msgstr "" msgid "Notify in Telegram" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3257 msgid "Notify on Certificate Warnings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3205 msgid "Notify on Core Crashes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3268 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3270 msgid "Notify on DNS Leaks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3229 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3231 msgid "Notify on Server Switches" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3218 msgid "Notify on Service Restarts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3244 msgid "Notify on Subscription Updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1548 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1550 msgid "Number of consecutive failed checks required before switching DNS servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2351 msgid "Number of consecutive failed probes before switching sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2725 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2727 msgid "Number of consecutive failures before restarting (default 3)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1570 msgid "Number of consecutive successful checks required before returning to a higher-priority DNS server." msgstr "" @@ -5258,143 +5380,153 @@ msgstr "" msgid "Obfuscation password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14849 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:139 +msgid "Observed Public IP" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14910 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:209 +msgid "OFFLINE" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611 msgid "Ollama (Local PC / Server)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8234 msgid "One record per line: example.com 192.168.1.100 or 192.168.1.100 example.com. Lines starting with # are ignored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3044 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3288 msgid "Only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2021 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2273 msgid "Only selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2022 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2031 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2266 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2275 msgid "Only selected except exclusions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3304 msgid "Only servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3011 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3255 msgid "Only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3015 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3259 msgid "Only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3256 msgid "Only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3296 msgid "Only the specified servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13271 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:807 msgid "OOB Values (-o)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21076 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21454 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21491 #: src/tachyon/tabs/updates/initController.ts:1661 #: src/tachyon/tabs/updates/initController.ts:1700 msgid "Open" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4280 msgid "Open priority settings and enter a display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15115 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:31 msgid "Open Project Page" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:329 msgid "Operation completed successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19815 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20193 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:471 msgid "Operation failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19530 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19585 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19908 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19963 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:115 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:177 msgid "Operation in progress..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19949 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:162 msgid "Operation log" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003 #: src/tachyon/methods/shell/index.ts:696 msgid "Operation log is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19567 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19945 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:157 msgid "Operation started. Waiting for log output..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1148 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3857 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3925 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3933 #: src/helpers/withTimeout.ts:7 #: src/tachyon/methods/shell/index.ts:517 #: src/tachyon/methods/shell/index.ts:605 msgid "Operation timed out" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16003 -#: src/tachyon/tabs/diagnostic/initController.ts:1100 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16372 +#: src/tachyon/tabs/diagnostic/initController.ts:1101 msgid "Optimize AWG MTU" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15995 -#: src/tachyon/tabs/diagnostic/initController.ts:1092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364 +#: src/tachyon/tabs/diagnostic/initController.ts:1093 msgid "Optimize RAM memory" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1441 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6900 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7144 msgid "Option \"%s\" contains an invalid input value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9769 msgid "Optional — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13543 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1071 msgid "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914 msgid "Optional tls-auth or tls-crypt key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6146 msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6620 msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws2." msgstr "" @@ -5402,11 +5534,11 @@ msgstr "" msgid "Optionally specify individual devices not in a profile. MAC addresses (e.g. AA:BB:CC:DD:EE:FF) work even if the IP changes." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7928 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8173 msgid "Or paste hosts file content:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9097 #: src/tachyon/tabs/dashboard/initController.ts:2035 msgid "Other peers" msgstr "" @@ -5416,23 +5548,23 @@ msgstr "" msgid "outbounds must be a non-empty array of strings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1702 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1704 msgid "Output Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2798 msgid "Override the default OpenWrt device headers for this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8202 msgid "Overwrite existing records (if unchecked, merge with existing records)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1863 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1865 msgid "P2P Client Ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1853 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1855 msgid "P2P Leak Protection" msgstr "" @@ -5450,32 +5582,32 @@ msgstr "" msgid "Padding" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1385 msgid "Parallel (fast failover, ≤3 s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1013 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1015 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:609 msgid "Parental Control" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8061 msgid "Parsed records:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9265 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9725 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3066 msgid "Password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10371 msgid "Password cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7722 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7995 msgid "Paste content or upload a file to preview imported DNS records." msgstr "" @@ -5484,46 +5616,46 @@ msgstr "" msgid "Path cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2395 msgid "Path must be absolute (start with /)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2402 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2404 msgid "Path must contain at least one directory (like /tmp/cache.db)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2399 msgid "Path must end with cache.db" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12648 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12687 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:93 msgid "Pattern Builder" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13361 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:861 msgid "Patterns reset to defaults!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4555 -#: src/tachyon/methods/shell/index.ts:1448 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4563 +#: src/tachyon/methods/shell/index.ts:1450 msgid "Patterns reset to factory defaults" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4531 -#: src/tachyon/methods/shell/index.ts:1410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4539 +#: src/tachyon/methods/shell/index.ts:1412 msgid "Patterns saved successfully" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13347 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:847 msgid "Patterns saved successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17321 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17322 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17699 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243 #: src/tachyon/tabs/monitoring/initController.ts:746 #: src/tachyon/tabs/monitoring/render.ts:80 #: src/tachyon/tabs/monitoring/render.ts:81 @@ -5542,48 +5674,53 @@ msgstr "" msgid "Payload (I5)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8992 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9283 msgid "Peer Public Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9552 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9878 msgid "PEM-encoded CA certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890 msgid "PEM-encoded client certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902 msgid "PEM-encoded client private key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6108 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:971 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:984 #: src/tachyon/tabs/diagnostic/diagnostic.store.ts:63 msgid "Pending" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11706 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11745 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:98 msgid "Pending..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15057 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:389 +msgid "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3460 msgid "Periodically check the current level and switch to a faster server even when the current one works." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2701 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2703 msgid "Periodically checks if the proxy is responding. Restarts Tachyon after consecutive failures." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9334 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3422 msgid "Persistent Keepalive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2852 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2854 msgid "Persistent Smart Detect" msgstr "" @@ -5595,20 +5732,20 @@ msgstr "" msgid "Phone (📱)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2759 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3251 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3495 msgid "Pin on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1864 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1866 msgid "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1427 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1429 msgid "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13403 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:912 msgid "Please specify strategy name and arguments" msgstr "" @@ -5617,63 +5754,63 @@ msgstr "" msgid "Policy Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3182 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3184 msgid "Polling Interval (seconds)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3197 msgid "Polling interval must be at least 1 second" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10268 msgid "Port cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10228 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:19 msgid "Port conflict" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9931 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10257 msgid "Port for the local mixed proxy of this section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5767 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1920 msgid "Port must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5527 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5771 msgid "Port range start must be less than or equal to end" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1898 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1900 msgid "Port range start must not exceed its end" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10396 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11679 msgid "Ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1894 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1896 msgid "Ports must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2675 msgid "Pre-built index of Tachyon documentation chunks. When enabled, AI Doctor searches relevant docs before generating a diagnosis." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2127 msgid "Pre-download all preset lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21002 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21380 #: src/tachyon/tabs/updates/initController.ts:1578 msgid "pre-release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9650 msgid "Pre-shared key" msgstr "" @@ -5681,11 +5818,11 @@ msgstr "" msgid "Pre-shared Key (PSK)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627 msgid "Prefer IPv4" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1629 msgid "Prefer IPv6" msgstr "" @@ -5693,16 +5830,16 @@ msgstr "" msgid "Preferred IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2598 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2842 msgid "Prefix text" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14137 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14176 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1804 msgid "Preparing strategies and isolated nftables queue..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9026 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9317 msgid "Preshared Key" msgstr "" @@ -5714,50 +5851,50 @@ msgstr "" msgid "Prevent guest devices from accessing router management services (LuCI Web UI, SSH, Clash API). DHCP and DNS remain accessible." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2772 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2774 msgid "Prevents multiple reload_firewall calls within 120 seconds to avoid connection drops." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14548 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14587 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:232 msgid "Primary DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9799 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11170 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11529 msgid "Priority" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2740 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2741 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8687 #: src/tachyon/tabs/dashboard/initController.ts:1504 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:678 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:679 msgid "Priority details" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8637 #: src/tachyon/tabs/dashboard/initController.ts:1441 msgid "Priority details are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3922 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3923 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4167 msgid "Priority level settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3260 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3504 msgid "Priority levels" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3981 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3986 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3987 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4231 msgid "Priority settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8981 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9272 msgid "Private Key" msgstr "" @@ -5785,16 +5922,16 @@ msgstr "" msgid "Protection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14382 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2091 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9842 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2663 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2697 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:44 msgid "Protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9062 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353 msgid "Protocol version: 2.0 (standard headers, WARP compatible), 3.0 (header protection key, padding ranges), or 3.1 (header protection key, padding ranges, advanced timers)" msgstr "" @@ -5802,12 +5939,12 @@ msgstr "" msgid "Protocol version: 2.0 (standard integer headers) or 3.1 (header protection key, padding ranges, advanced timers)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14381 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14420 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:43 msgid "Provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:287 msgid "Provider Global Default" msgstr "" @@ -5817,84 +5954,109 @@ msgstr "" msgid "Provider status is normal" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11691 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:29 msgid "Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207 -#: src/tachyon/tabs/diagnostic/initController.ts:1338 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 +#: src/tachyon/tabs/diagnostic/initController.ts:1339 msgid "Proxy / DPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2726 msgid "Proxy Fail Threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2713 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2715 msgid "Proxy Health Check Interval (s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2735 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2737 msgid "Proxy Health Check URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:120 +msgid "Proxy is offline or unreachable on 127.0.0.1:4534." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8150 #: src/tachyon/tabs/dashboard/initController.ts:821 msgid "Proxy link is unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3279 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14887 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:181 +msgid "Proxy Outbound" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3281 msgid "Proxy Section for Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551 msgid "Proxy to use for WARP API registration (api.cloudflareclient.com)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9649 msgid "PSK" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10243 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2729 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:40 msgid "Public host" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14940 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:246 +msgid "Public IP Address Isolation" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1694 msgid "QR code is too large" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10421 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14775 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:42 +msgid "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10780 msgid "QUIC (HTTP/3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1128 msgid "RAG Knowledge Base + Live ISP Probe Context" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9165 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9489 msgid "Random Trailers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14386 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14425 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:48 msgid "Rating" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10427 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10767 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10786 msgid "RDP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8953 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15042 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:371 +msgid "Re-run Leak Test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9244 msgid "Read error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14408 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:29 msgid "Ready to benchmark DNS providers" msgstr "" @@ -5927,50 +6089,50 @@ msgstr "" msgid "Reality short ID must contain 1-8 hex digits" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15982 -#: src/tachyon/tabs/diagnostic/initController.ts:1079 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16351 +#: src/tachyon/tabs/diagnostic/initController.ts:1080 msgid "Rebuild firewall rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21473 #: src/tachyon/tabs/updates/initController.ts:1681 msgid "Rebuilt release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14145 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1769 msgid "Recommended" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14520 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14559 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:202 msgid "Recommended DNS Configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14663 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14702 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:363 msgid "Recommended DNS settings applied successfully and service restarted!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16052 -#: src/tachyon/tabs/diagnostic/initController.ts:1163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16421 +#: src/tachyon/tabs/diagnostic/initController.ts:1164 msgid "Recommended Quick Fixes:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2893 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2895 msgid "Reconnect Threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15988 -#: src/tachyon/tabs/diagnostic/initController.ts:1085 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16357 +#: src/tachyon/tabs/diagnostic/initController.ts:1086 msgid "Reconnect WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2786 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2788 msgid "Records proxy/DNS latency and health status in hourly buckets for analysis." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8060 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8305 msgid "Records: %d" msgstr "" @@ -5979,91 +6141,91 @@ msgstr "" msgid "Refill" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16154 -#: src/tachyon/tabs/diagnostic/initController.ts:1280 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16523 +#: src/tachyon/tabs/diagnostic/initController.ts:1281 msgid "Refresh" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16135 -#: src/tachyon/tabs/diagnostic/initController.ts:1259 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16504 +#: src/tachyon/tabs/diagnostic/initController.ts:1260 msgid "Refresh Device List" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9224 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9550 msgid "Registration Detour" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5409 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5653 msgid "Regular expression must not contain spaces or commas" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21062 #: src/tachyon/tabs/updates/initController.ts:1188 msgid "Reinstall" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9471 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3661 msgid "Reject After Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9461 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3649 msgid "Rekey After Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9466 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3655 msgid "Rekey Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19723 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20101 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:354 msgid "Reload now" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20128 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:390 msgid "Reloading..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8383 msgid "Remote Hosts Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1056 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1058 msgid "Remote management Telegram daemon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:328 msgid "Removal completed successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20643 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8260 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21021 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8506 #: src/tachyon/tabs/updates/initController.ts:1133 msgid "Remove" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3068 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3312 msgid "Remove servers from the specified countries from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3328 msgid "Remove servers whose names match the expression from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3076 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3320 msgid "Remove the specified servers from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19912 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:119 msgid "Removing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10284 msgid "Require a username and password for the local mixed proxy" msgstr "" @@ -6071,14 +6233,14 @@ msgstr "" msgid "Reset" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16002 -#: src/tachyon/tabs/diagnostic/initController.ts:1099 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16371 +#: src/tachyon/tabs/diagnostic/initController.ts:1100 msgid "Reset Bootstrap DNS" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:416 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:457 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2537 msgid "Reset Settings" msgstr "" @@ -6086,32 +6248,37 @@ msgstr "" msgid "Resetting…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10056 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10382 msgid "Resolve domain names before routing so sing-box can use real destination IPs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15989 -#: src/tachyon/tabs/diagnostic/initController.ts:1086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16358 +#: src/tachyon/tabs/diagnostic/initController.ts:1087 msgid "Resolve gateway" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10381 msgid "Resolve real IP for routing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5697 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14989 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:312 +msgid "Resolver IP" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5941 msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6386 msgid "Resource selection by hostname inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5944 msgid "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6389 msgid "Resource selection by IP or CIDR inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE." msgstr "" @@ -6123,11 +6290,11 @@ msgstr "" msgid "Response packet junk size (S2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9108 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9401 msgid "Response Packet Magic Header (S2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9403 msgid "Response Packet Magic Header (S4)" msgstr "" @@ -6135,33 +6302,33 @@ msgstr "" msgid "Response payload (I2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15983 -#: src/tachyon/tabs/diagnostic/initController.ts:1080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16352 +#: src/tachyon/tabs/diagnostic/initController.ts:1081 msgid "Restart dnsmasq" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15992 -#: src/tachyon/tabs/diagnostic/initController.ts:1089 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361 +#: src/tachyon/tabs/diagnostic/initController.ts:1090 msgid "Restart firewall" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15993 -#: src/tachyon/tabs/diagnostic/initController.ts:1090 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16362 +#: src/tachyon/tabs/diagnostic/initController.ts:1091 msgid "Restart network" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15986 -#: src/tachyon/tabs/diagnostic/initController.ts:1083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16355 +#: src/tachyon/tabs/diagnostic/initController.ts:1084 msgid "Restart sing-box DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11327 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:64 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11356 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:66 msgid "Restart Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15994 -#: src/tachyon/tabs/diagnostic/initController.ts:1091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16363 +#: src/tachyon/tabs/diagnostic/initController.ts:1092 msgid "Restart Zapret/ByeDPI" msgstr "" @@ -6170,44 +6337,44 @@ msgstr "" msgid "Restarts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:681 msgid "Restore" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15987 -#: src/tachyon/tabs/diagnostic/initController.ts:1084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356 +#: src/tachyon/tabs/diagnostic/initController.ts:1085 msgid "Restore config backup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16432 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16455 -#: src/tachyon/tabs/diagnostic/initController.ts:1603 -#: src/tachyon/tabs/diagnostic/initController.ts:1627 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11434 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16804 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16827 +#: src/tachyon/tabs/diagnostic/initController.ts:1608 +#: src/tachyon/tabs/diagnostic/initController.ts:1632 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:144 msgid "Restore Native Internet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15999 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361 -#: src/tachyon/tabs/diagnostic/initController.ts:1096 -#: src/tachyon/tabs/diagnostic/initController.ts:1516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16368 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16730 +#: src/tachyon/tabs/diagnostic/initController.ts:1097 +#: src/tachyon/tabs/diagnostic/initController.ts:1517 msgid "Restore Native Internet (Stop Tachyon)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:639 msgid "Restore Snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2538 msgid "Restores the Tachyon factory defaults: all rules, subscriptions, custom DNS servers and other options will be lost." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16459 -#: src/tachyon/tabs/diagnostic/initController.ts:1519 -#: src/tachyon/tabs/diagnostic/initController.ts:1631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16733 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16831 +#: src/tachyon/tabs/diagnostic/initController.ts:1520 +#: src/tachyon/tabs/diagnostic/initController.ts:1636 msgid "Restoring native direct internet (stopping Tachyon)..." msgstr "" @@ -6219,7 +6386,7 @@ msgstr "" msgid "Restricted users (auth_user)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243 #: src/tachyon/tabs/monitoring/initController.ts:746 msgid "Resume updates" msgstr "" @@ -6228,16 +6395,16 @@ msgstr "" msgid "Return NXDOMAIN for blocked domains (recommended). When enabled, blocked domains are not resolved at all. When disabled, only direct connections are rejected." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000 #: src/tachyon/tabs/updates/initController.ts:1103 #: src/tachyon/tabs/updates/initController.ts:1103 msgid "Rollback" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12002 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17974 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18025 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12041 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18403 #: src/tachyon/tabs/monitoring/initController.ts:880 #: src/tachyon/tabs/monitoring/initController.ts:943 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:444 @@ -6248,20 +6415,28 @@ msgstr "" msgid "Route all non-local LAN traffic through the tailnet exit node instead of the proxy engines." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3280 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3282 msgid "Route bot API requests through this section. Leave empty to use the default mixed proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10592 +msgid "Route community list subnets (IP/CIDR)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10593 +msgid "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers)." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1639 msgid "Route main DNS requests through the selected section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7424 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7669 msgid "Route requests to this DNS server through another section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213 -#: src/tachyon/tabs/diagnostic/initController.ts:1345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582 +#: src/tachyon/tabs/diagnostic/initController.ts:1346 msgid "Route via Proxy" msgstr "" @@ -6269,13 +6444,13 @@ msgstr "" msgid "Routing mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11391 msgid "Routing Rule Tracer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10268 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10277 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10324 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:103 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:114 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:144 @@ -6286,11 +6461,11 @@ msgstr "" msgid "Routing section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:993 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:995 msgid "Routing sections, rules and strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11482 msgid "Rule" msgstr "" @@ -6298,104 +6473,109 @@ msgstr "" msgid "Rule Name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7218 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7463 msgid "Rule set must be an HTTP(S) URL or a local .srs / .json path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4395 msgid "Rule set settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10266 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10295 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10635 msgid "Rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11314 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11673 msgid "Rule Sets (.srs / .json)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12852 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:288 msgid "Rule:" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2742 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:104 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:152 msgid "Rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10411 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10439 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:79 msgid "Rules mangle counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10406 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10434 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:74 msgid "Rules mangle exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10449 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:89 msgid "Rules mangle output counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10444 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:84 msgid "Rules mangle output exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10459 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:99 msgid "Rules proxy counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10454 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:94 msgid "Rules proxy exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11395 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11424 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:134 msgid "Run AI Doctor" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676 #: src/tachyon/tabs/diagnostic/partials/renderRunAction.ts:17 msgid "Run Diagnostic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11385 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11414 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:124 msgid "Run doctor repair" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15227 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:327 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3041 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3042 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3044 #: src/tachyon/methods/custom/getDashboardSections.ts:1693 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:312 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:140 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:312 msgid "Running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1371 msgid "Running benchmarks..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3350 msgid "Running diagnostics…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10114 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440 msgid "Russia (ru)" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14975 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:297 +msgid "SAFE" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:398 msgid "SafeSearch" msgstr "" @@ -6408,21 +6588,21 @@ msgstr "" msgid "Saturday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3730 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:802 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3974 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:804 msgid "Save" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2552 msgid "Save a snapshot of the working config and restore it later if something breaks." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2255 msgid "Save component backup before update" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:512 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:760 msgid "Save Snapshot" msgstr "" @@ -6430,32 +6610,32 @@ msgstr "" msgid "Schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617 msgid "Schedule Rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2210 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2212 msgid "Scheduled auto-update time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13038 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13661 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13077 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13700 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:544 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1248 msgid "Score" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17298 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17676 #: src/tachyon/tabs/monitoring/render.ts:57 msgid "Search" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11961 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12000 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:397 msgid "Search domain or service..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12803 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12842 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:276 msgid "Search Mode" msgstr "" @@ -6464,77 +6644,82 @@ msgstr "" msgid "Secret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1830 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1832 msgid "Secret key for authenticating remote access to YACD when WAN access is enabled." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2579 msgid "Secret token for authorizing WRITE operations (POST/PUT) on /cgi-bin/tachyon-agent/. Leave empty if auth is not required." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2479 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2481 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560 msgid "Section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11300 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11659 msgid "Section action" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7567 msgid "Section name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11326 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11685 msgid "Section Rules Content" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2456 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2458 msgid "Section used for Cloudflare WARP API registration. If your ISP blocks Cloudflare API on WAN, select a proxy section (with Mixed proxy enabled) or a tunnel interface section (WireGuard / AmneziaWG / VPN). Leave empty to use direct WAN / default mixed proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:992 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1300 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:514 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:994 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:555 msgid "Sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14924 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:228 +msgid "SECURE" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2347 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2800 msgid "Security" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8417 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8445 #: src/tachyon/tabs/dashboard/initController.ts:1195 msgid "Select" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2741 msgid "Select a common client profile or enter a custom User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032 msgid "Select a file with .conf extension" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004 msgid "Select a network interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10213 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10539 msgid "Select a predefined domain list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7445 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7690 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:89 msgid "Select a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2474 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2718 msgid "Select a section for downloading this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203 msgid "Select a transit section" msgstr "" @@ -6542,23 +6727,23 @@ msgstr "" msgid "Select active days. If none selected, the rule applies every day." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2602 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2604 msgid "Select AI LLM provider for diagnostics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2245 msgid "Select an existing network interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3606 msgid "Select an existing URLTest or Priority group" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10216 msgid "Select an intermediate section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2921 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2923 msgid "Select and order the sections through which blocked domains are tested. Checked sections are tried top-to-bottom." msgstr "" @@ -6566,7 +6751,7 @@ msgstr "" msgid "Select days when guest access is permitted. Leave empty for all days." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364 msgid "Select DNS protocol to use" msgstr "" @@ -6574,27 +6759,27 @@ msgstr "" msgid "Select LAN devices to assign to this profile, or enter IP or MAC addresses manually. MAC addresses (e.g. AA:BB:CC:DD:EE:FF) work even if the device's IP changes via DHCP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9999 msgid "Select network interface for VPN connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436 msgid "Select one or more country ISO codes (e.g. ru, us, de, nl, fr, fi, se, tr, cn, jp, sg, by, kz, ua)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2510 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2754 msgid "Select or enter a User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2378 msgid "Select or enter path for sing-box cache file. Change this ONLY if you know what you are doing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1922 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1924 msgid "Select or enter the IP addresses of your game consoles." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2364 msgid "Select path for sing-box config file. Change this ONLY if you know what you are doing" msgstr "" @@ -6602,25 +6787,25 @@ msgstr "" msgid "Select Sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8627 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3204 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3448 #: src/tachyon/tabs/dashboard/initController.ts:1464 msgid "Select the fastest node" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2415 msgid "Select the log level for sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1657 msgid "Select the network interface from which the traffic will originate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1705 msgid "Select the network interface to which the traffic will originate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1768 msgid "Select the WAN interfaces to be monitored" msgstr "" @@ -6628,16 +6813,16 @@ msgstr "" msgid "Select whether to disable the target during the schedule or enable it ONLY during the schedule." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2235 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2237 msgid "Select which components are permitted to update automatically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1297 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299 msgid "Select which tab opens automatically when entering Tachyon." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8501 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8613 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641 #: src/tachyon/tabs/dashboard/initController.ts:1299 #: src/tachyon/tabs/dashboard/initController.ts:1450 msgid "Selected" @@ -6660,24 +6845,24 @@ msgstr "" msgid "Selector and URLTest outbounds must contain a non-empty outbounds array" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12470 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:67 msgid "Send" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3269 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3271 msgid "Send a Telegram notification if a potential DNS leak is detected." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3204 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3206 msgid "Send a Telegram notification if sing-box or nftables rules crash and get auto-restored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3256 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3258 msgid "Send a Telegram notification if SSL/TLS certificates are close to expiration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3219 msgid "Send a Telegram notification if the Tachyon service is restarted by the watchdog." msgstr "" @@ -6685,11 +6870,11 @@ msgstr "" msgid "Send a Telegram notification to admins when a blocked site is accessed. Requires the Telegram bot to be enabled." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3232 msgid "Send a Telegram notification when a URLTest group switches to a new server." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3245 msgid "Send a Telegram notification when proxy subscriptions are successfully updated." msgstr "" @@ -6701,43 +6886,43 @@ msgstr "" msgid "Send Telegram notification when a guest device hits its daily time or traffic quota." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13236 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:729 msgid "Sequence Overlaps (seqovl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1382 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1384 msgid "Sequential (one active at a time)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1380 msgid "Sequential: failover to the next server after N failures. Parallel: aggressive failover — switches in seconds (1 failure = switch), best if your ISP blocks DoH/DoT." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577 msgid "Server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9003 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9243 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9413 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9294 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9569 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9739 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9819 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3383 msgid "Server Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2768 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2977 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3221 msgid "Server filtering" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10067 msgid "Server group for automatic lowest-latency selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9800 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126 msgid "Server group for priority failover" msgstr "" @@ -6754,7 +6939,7 @@ msgstr "" msgid "Server name / SNI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9278 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9604 msgid "Server Name Indication — leave empty to use server address" msgstr "" @@ -6768,12 +6953,12 @@ msgstr "" msgid "Server outbound must contain a numeric server_port from 1 to 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9014 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9254 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9312 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9424 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9580 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9830 msgid "Server Port" msgstr "" @@ -6785,7 +6970,7 @@ msgstr "" msgid "Server Public Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12538 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:148 msgid "Server unavailable" msgstr "" @@ -6799,63 +6984,63 @@ msgstr "" msgid "server_port must be a number from 1 to 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:999 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:571 msgid "Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3622 msgid "Servers on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11997 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12036 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:439 msgid "Service / Target" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3816 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3835 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3843 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16042 +#: src/tachyon/tabs/diagnostic/initController.ts:610 #: src/tachyon/methods/shell/index.ts:468 #: src/tachyon/methods/shell/index.ts:489 -#: src/tachyon/tabs/diagnostic/initController.ts:609 msgid "Service action failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11822 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:186 msgid "Service availability check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10543 msgid "Service list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287 msgid "Services & Access" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20125 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:387 msgid "Services are online and ready! Reloading page..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8996 #: src/tachyon/tabs/dashboard/initController.ts:1901 msgid "Services info" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20141 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:406 msgid "Services restarted. Click to reload page." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1185 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7293 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1048 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:645 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7538 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1050 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1309 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:686 msgid "Settings" msgstr "" @@ -6867,61 +7052,61 @@ msgstr "" msgid "Shopping" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2825 msgid "Show metadata on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3451 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3695 msgid "Show only selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654 msgid "Show only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3660 msgid "Show only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3657 msgid "Show only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3524 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3768 msgid "Show servers from selected groups without repeating their filtering criteria." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3687 msgid "Show servers only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3703 msgid "Show servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11453 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16496 -#: src/tachyon/tabs/diagnostic/initController.ts:1677 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11492 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16868 +#: src/tachyon/tabs/diagnostic/initController.ts:1682 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:202 msgid "Show sing-box config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16507 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16514 -#: src/tachyon/tabs/diagnostic/initController.ts:1688 -#: src/tachyon/tabs/diagnostic/initController.ts:1695 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16879 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16886 +#: src/tachyon/tabs/diagnostic/initController.ts:1693 +#: src/tachyon/tabs/diagnostic/initController.ts:1700 msgid "Show sing-box config failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2582 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2826 msgid "Show subscription metadata for this source on the dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243 msgid "sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:77 msgid "Sing-box autostart disabled" msgstr "" @@ -6930,42 +7115,42 @@ msgstr "" msgid "sing-box endpoint (userspace, default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:69 msgid "Sing-box FakeIP DNS does not work" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:68 msgid "Sing-box FakeIP DNS works" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10185 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:62 msgid "Sing-box installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10182 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10210 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:87 msgid "Sing-box listening ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10177 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:82 msgid "Sing-box process running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10195 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:72 msgid "Sing-box service exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10190 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:67 msgid "Sing-box version is compatible (newer than 1.12.4)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10451 msgid "Singapore (sg)" msgstr "" @@ -6973,32 +7158,32 @@ msgstr "" msgid "sites" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8188 msgid "Skip loopback & local entries (127.0.0.1, ::1, 0.0.0.0, localhost)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9289 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9615 msgid "Skip TLS certificate verification (not recommended)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8069 msgid "Skipped comments/invalid:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7820 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8065 msgid "Skipped loopback:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14455 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:83 msgid "SLOW" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758 msgid "Snapshot name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:553 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:555 msgid "Snapshot restored. The service restarts and the page will reload." msgstr "" @@ -7006,7 +7191,7 @@ msgstr "" msgid "SNAT LAN sources when leaving through tailscale0 so peers can answer. Required unless every peer accepts routes." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9662 msgid "Snell Version" msgstr "" @@ -7014,31 +7199,31 @@ msgstr "" msgid "Social media" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8331 msgid "Sort Alphabetically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10228 msgid "Sort by latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9903 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10229 msgid "Sorts servers in this section by lowest latency in the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17986 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18029 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11135 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18407 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11494 #: src/tachyon/tabs/monitoring/initController.ts:892 #: src/tachyon/tabs/monitoring/initController.ts:947 msgid "Source" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11678 msgid "Source Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1656 msgid "Source Network Interface" msgstr "" @@ -7055,52 +7240,52 @@ msgstr "" msgid "Specify different files" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13069 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:536 msgid "Speed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13222 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13261 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:756 msgid "Split Modes (dpi-desync)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13228 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13267 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:762 msgid "Split Positions (dpi-desync-split-pos)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13218 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:711 msgid "Split Positions (pos)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13259 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13298 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:795 msgid "Split Values (-s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10426 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10785 msgid "SSH" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:122 msgid "Standalone ByeDPI autostart is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:119 msgid "Standalone ByeDPI is active together with Tachyon ByeDPI rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:120 msgid "Standalone ByeDPI service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:123 msgid "Standalone ByeDPI service is inactive" msgstr "" @@ -7110,37 +7295,37 @@ msgstr "" msgid "Standalone service is active alongside Tachyon; policy or port conflicts are possible" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:111 msgid "Standalone Zapret is active together with Tachyon Zapret rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:112 msgid "Standalone Zapret service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:113 msgid "Standalone Zapret service is inactive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:123 msgid "Standalone Zapret2 autostart is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10710 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:118 msgid "Standalone Zapret2 is active together with Tachyon Zapret2 rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:121 msgid "Standalone Zapret2 service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:124 msgid "Standalone Zapret2 service is inactive" msgstr "" @@ -7154,12 +7339,12 @@ msgstr "" msgid "Start" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14584 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14623 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:273 msgid "Start Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3025 msgid "Start bot" msgstr "" @@ -7167,13 +7352,13 @@ msgstr "" msgid "Start of allowed daily access window in HH:MM format (24-hour clock)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15981 -#: src/tachyon/tabs/diagnostic/initController.ts:1078 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16350 +#: src/tachyon/tabs/diagnostic/initController.ts:1079 msgid "Start sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11347 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:84 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:86 msgid "Start Tachyon" msgstr "" @@ -7181,36 +7366,38 @@ msgstr "" msgid "Start Time (HH:MM)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15985 -#: src/tachyon/tabs/diagnostic/initController.ts:1082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16354 +#: src/tachyon/tabs/diagnostic/initController.ts:1083 msgid "Start watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14635 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:331 msgid "Starting DNS benchmark..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:360 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3070 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3072 msgid "Starting…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9079 #: src/tachyon/tabs/dashboard/initController.ts:2014 msgid "State" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2497 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12039 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12078 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14852 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:448 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:935 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:359 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:142 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:481 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:359 msgid "Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13053 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:520 msgid "Status / Suite" msgstr "" @@ -7219,55 +7406,55 @@ msgstr "" msgid "Stop" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3032 msgid "Stop bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2737 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2981 msgid "Stop checking when URLTest group is not used. Use sing-box duration format like 1d, 12h or 30m." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11337 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:74 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11366 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:76 msgid "Stop Tachyon" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14870 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15239 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:333 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3047 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3049 #: src/tachyon/methods/custom/getDashboardSections.ts:1697 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:316 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:152 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:316 msgid "Stopped" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:374 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3086 msgid "Stopping…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2853 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2855 msgid "Store auto-detected domains in /etc instead of /tmp to survive reboots." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13006 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13045 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:512 msgid "Strategy & Parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14184 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14223 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1857 msgid "Strategy benchmark started" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13524 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1046 msgid "Strategy deleted" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13374 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:881 msgid "Strategy Name" msgstr "" @@ -7276,20 +7463,20 @@ msgstr "" msgid "Strict (🔒)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2444 msgid "Strict ECH + DoQ DNS Enforcer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10422 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10781 msgid "STUN (P2P Calls)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4389 msgid "Subnets from the list will be extracted and added to nftables" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2428 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2672 msgid "Subscription auto update" msgstr "" @@ -7298,39 +7485,39 @@ msgstr "" msgid "Subscription info:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4239 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4257 -#: src/tachyon/methods/shell/index.ts:1035 -#: src/tachyon/methods/shell/index.ts:1055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4247 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4265 +#: src/tachyon/methods/shell/index.ts:1037 +#: src/tachyon/methods/shell/index.ts:1057 msgid "Subscription update failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2681 msgid "Subscription update interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9624 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950 msgid "Subscription URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4078 msgid "Subscription URL settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780 #: src/tachyon/tabs/dashboard/initController.ts:340 msgid "Subscriptions updated" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8633 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8900 msgid "Success" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7910 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8155 msgid "Successfully imported %d DNS record(s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8604 msgid "Successfully updated %d hosts entries" msgstr "" @@ -7342,86 +7529,91 @@ msgstr "" msgid "Sunday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10447 msgid "Sweden (se)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15996 -#: src/tachyon/tabs/diagnostic/initController.ts:1093 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16365 +#: src/tachyon/tabs/diagnostic/initController.ts:1094 msgid "Switch DNS to DoH" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505 #: src/tachyon/tabs/dashboard/initController.ts:1264 msgid "Switch to auto-selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16000 -#: src/tachyon/tabs/diagnostic/initController.ts:1097 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16369 +#: src/tachyon/tabs/diagnostic/initController.ts:1098 msgid "Sync System Time (NTP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1037 msgid "System diagnostics, AI Doctor and logs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8956 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8984 #: src/tachyon/tabs/dashboard/initController.ts:1888 msgid "System info" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14358 #: src/tachyon/tabs/diagnostic/partials/renderSystemInfo.ts:24 msgid "System information" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1316 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1318 msgid "Tab Order & Visibility" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10401 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10429 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:69 msgid "Table exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14659 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14698 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14712 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:359 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:373 msgid "Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2239 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241 msgid "Tachyon Core" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14742 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:406 msgid "Tachyon DNS Benchmark & Auto-Tuning" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7076 #: src/tachyon/services/core.service.ts:52 msgid "Tachyon Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15072 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:406 +msgid "Tachyon IP & DNS Leak Detection" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6812 msgid "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6565 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6809 msgid "Tachyon manages the ciadpi process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5712 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5956 msgid "Tachyon manages the nfqws process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6407 msgid "Tachyon manages the nfqws2 process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18063 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18441 #: src/tachyon/tabs/monitoring/initController.ts:991 msgid "Tachyon service is stopped. Start the service to display connections." msgstr "" @@ -7431,71 +7623,71 @@ msgstr "" msgid "Tachyon service is stopped. Start the service to display the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:417 msgid "Tachyon Settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4150 -#: src/tachyon/methods/shell/index.ts:913 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4158 +#: src/tachyon/methods/shell/index.ts:915 msgid "Tachyon update did not complete within the timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2327 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2329 msgid "Tachyon will not modify your DHCP configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:91 msgid "Tachyon-managed ciadpi runtime has restarted" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:94 msgid "Tachyon-managed ciadpi runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:97 msgid "Tachyon-managed ciadpi runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:93 msgid "Tachyon-managed ciadpi runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:87 msgid "Tachyon-managed nfqws runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:90 msgid "Tachyon-managed nfqws runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:86 msgid "Tachyon-managed nfqws runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:90 msgid "Tachyon-managed nfqws2 runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:93 msgid "Tachyon-managed nfqws2 runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:89 msgid "Tachyon-managed nfqws2 runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9046 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9074 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2247 #: src/tachyon/tabs/dashboard/initController.ts:2004 msgid "Tailscale" msgstr "" @@ -7508,7 +7700,7 @@ msgstr "" msgid "Tailscale control URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10263 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:98 msgid "Tailscale endpoint" msgstr "" @@ -7526,7 +7718,7 @@ msgstr "" msgid "Tailscale package is installed, but no server section uses native mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13682 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:766 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1230 msgid "Target" @@ -7540,12 +7732,12 @@ msgstr "" msgid "Target Scope" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12770 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12809 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:239 msgid "Target Service / Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13242 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:735 msgid "TCP Window Sizes (wsize)" msgstr "" @@ -7563,25 +7755,25 @@ msgstr "" msgid "Telegram Alerts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1055 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1057 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:700 msgid "Telegram Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3144 msgid "Telegram Bot Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15125 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:42 msgid "Telegram Channel" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3333 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3383 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3366 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3385 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3392 msgid "Test Connection" msgstr "" @@ -7594,105 +7786,110 @@ msgstr "" msgid "Test latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2836 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3080 msgid "Test only selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3040 msgid "Test only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2802 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3046 msgid "Test only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2799 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043 msgid "Test only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2828 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3072 msgid "Test servers only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2844 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3088 msgid "Test servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3322 msgid "Test Telegram Connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14611 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14650 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:305 msgid "Testing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14168 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14207 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1839 msgid "Testing bypass strategies in isolated sandbox..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13972 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14781 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:51 +msgid "Testing DNS leak upstream resolvers with bash.ws protocol..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1605 msgid "Testing strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8532 #: src/tachyon/tabs/dashboard/initController.ts:1302 msgid "Testing URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12346 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:108 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:797 msgid "Testing..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3347 msgid "Testing…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5709 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5953 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6398 msgid "The desync fwmark is managed by Tachyon for loop prevention and must not be overridden here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5706 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6395 msgid "The NFQUEUE number is assigned by Tachyon for each rule and must not be overridden here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10489 msgid "The rule applies to the domain and all its subdomains. Use full:, keyword:, or regex: prefixes for exact match, keyword match, or regular expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:78 msgid "There are rules using ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:78 msgid "There are rules using Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:81 msgid "There are rules using Zapret2" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12494 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:97 msgid "Thinking..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16437 -#: src/tachyon/tabs/diagnostic/initController.ts:1608 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16809 +#: src/tachyon/tabs/diagnostic/initController.ts:1613 msgid "This action will stop Tachyon, restore standard dnsmasq/DNS, remove all proxy/anti-censorship firewall rules and restore direct Internet connection through your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11909 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1927 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1946 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1951 @@ -7702,41 +7899,41 @@ msgstr "" msgid "This field is required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6815 msgid "This field must start a working ciadpi strategy; help/version options exit immediately and are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5715 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5959 msgid "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5718 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5962 msgid "This field must start a working nfqws strategy; --version exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6410 msgid "This field must start a working nfqws2 strategy; --dry-run exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6169 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6413 msgid "This field must start a working nfqws2 strategy; --version exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5887 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6131 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6605 msgid "This flag does not accept a value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2006 msgid "This may take 1-2 minutes. The process runs in the background on the router." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5918 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6636 msgid "This option requires a value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9059 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9087 #: src/tachyon/tabs/dashboard/initController.ts:2025 msgid "This router" msgstr "" @@ -7745,7 +7942,7 @@ msgstr "" msgid "This will erase all Tachyon settings and restore the factory defaults. The service will restart. This action cannot be undone." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:644 msgid "This will replace the current Tachyon settings with the snapshot" msgstr "" @@ -7757,16 +7954,16 @@ msgstr "" msgid "Thursday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17977 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18026 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18404 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18538 #: src/tachyon/tabs/monitoring/initController.ts:883 #: src/tachyon/tabs/monitoring/initController.ts:944 #: src/tachyon/tabs/monitoring/initController.ts:1127 msgid "Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1590 msgid "Time in seconds for DNS record caching (default: 60)" msgstr "" @@ -7774,7 +7971,7 @@ msgstr "" msgid "Time is required (e.g. 22:00)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2213 msgid "Time of day to run scheduled component updates in HH:MM (24h) format, e.g. 04:00" msgstr "" @@ -7782,30 +7979,30 @@ msgstr "" msgid "Time skew tolerance" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14447 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14486 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:117 msgid "Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6653 #: src/tachyon/helpers/singBoxVariant.ts:62 msgid "tiny" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10425 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10765 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10784 msgid "TLS / HTTPS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9913 msgid "TLS Auth/Crypt Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9277 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9603 msgid "TLS SNI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:819 msgid "TLS-Rec Bounds (--tlsrec)" msgstr "" @@ -7814,26 +8011,26 @@ msgstr "" msgid "Toddler (👶)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3153 msgid "Token is required when the bot is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8506 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2709 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2953 #: src/tachyon/tabs/dashboard/initController.ts:1304 msgid "Tolerance" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3261 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3505 msgid "Top level has the highest priority; lower levels are used as fallback" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20856 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21234 #: src/tachyon/tabs/updates/initController.ts:1390 msgid "TorrServer Direct" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1392 msgid "TorrServer not found" msgstr "" @@ -7842,70 +8039,70 @@ msgstr "" msgid "Total allowed network usage per day for devices in this profile. When the quota is reached, access is blocked until midnight. Enter 0 for unlimited." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8057 msgid "Total lines:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11917 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11956 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:345 msgid "Total targets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11395 msgid "Trace" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11439 msgid "Tracing routing rules..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2338 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8932 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8960 #: src/tachyon/tabs/dashboard/initController.ts:1862 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:138 msgid "Traffic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2969 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3213 msgid "Traffic for this level goes directly." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10728 msgid "Traffic from these IP addresses will never be routed through this section, even if other conditions match." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10756 msgid "Traffic of specified protocols (e.g. BitTorrent, QUIC, STUN) will bypass this section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1028 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1030 msgid "Traffic statistics and active connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8944 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8972 #: src/tachyon/tabs/dashboard/initController.ts:1875 msgid "Traffic Total" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10776 msgid "Traffic type filter" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11187 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11546 msgid "Traffic will go through the default route (Direct/Default)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20889 #: src/tachyon/tabs/updates/initController.ts:958 msgid "Transient connection error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6562 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6806 msgid "Transparent proxy mode is incompatible with action=byedpi because Tachyon connects to ciadpi through SOCKS." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2097 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9375 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9701 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2967 msgid "Transport" msgstr "" @@ -7930,7 +8127,7 @@ msgstr "" msgid "Transport path must start with /" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14740 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15109 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:25 msgid "Troubleshooting" msgstr "" @@ -7939,29 +8136,29 @@ msgstr "" msgid "Trusted Master Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2486 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2730 msgid "Try compatible User-Agent profiles automatically when downloading this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:528 msgid "TTFB" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1599 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1601 msgid "TTL must be a positive number" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1594 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1596 msgid "TTL value cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13279 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:774 msgid "TTL Values (dpi-desync-ttl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13230 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:723 msgid "TTL Values (ttl)" msgstr "" @@ -7974,53 +8171,53 @@ msgstr "" msgid "Tuesday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10448 msgid "Turkey (tr)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17971 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18024 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18402 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1719 #: src/tachyon/tabs/monitoring/initController.ts:877 #: src/tachyon/tabs/monitoring/initController.ts:942 msgid "Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1369 msgid "UDP (Unprotected DNS)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11721 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:65 msgid "UDP / QUIC protocols" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10128 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10454 msgid "Ukraine (ua)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6486 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6730 msgid "Unable to validate the ByeDPI strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5629 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6964 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5873 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7208 msgid "Unable to validate the NFQWS strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6074 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6973 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7217 msgid "Unable to validate the NFQWS2 strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8621 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3178 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8649 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422 #: src/tachyon/tabs/dashboard/initController.ts:1458 msgid "Unavailability timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11737 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11919 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11958 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:135 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:347 msgid "Unavailable" @@ -8030,19 +8227,19 @@ msgstr "" msgid "Underload packet header (H3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9404 msgid "Underload Packet Magic Header (H1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9112 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9405 msgid "Underload Packet Magic Header (H2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9406 msgid "Underload Packet Magic Header (H3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9114 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9407 msgid "Underload Packet Magic Header (H4)" msgstr "" @@ -8051,27 +8248,27 @@ msgstr "" msgid "Unexpected background processes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6703 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6996 msgid "Unexpected ByeDPI strategy argument: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5867 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6585 msgid "Unexpected standalone token. Use explicit flags such as --name or --name=value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:96 msgid "Unexpected Tachyon-managed ciadpi runtime is running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:89 msgid "Unexpected Tachyon-managed nfqws runtime is running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:92 msgid "Unexpected Tachyon-managed nfqws2 runtime is running" msgstr "" @@ -8080,27 +8277,27 @@ msgstr "" msgid "unique UCI identifier" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10118 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444 msgid "United Kingdom (gb)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441 msgid "United States (us)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10786 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10788 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10790 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10797 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10799 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10801 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10803 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10806 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10807 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10814 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10817 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10818 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10825 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10827 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10831 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10835 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20498 #: src/tachyon/helpers/singBoxVariant.ts:33 #: src/tachyon/services/systemInfo.service.ts:10 #: src/tachyon/services/systemInfo.service.ts:12 @@ -8118,48 +8315,48 @@ msgid "unknown" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14880 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15249 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:354 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3064 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3066 #: src/tachyon/methods/custom/getDashboardSections.ts:1699 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:318 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:162 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:318 msgid "Unknown" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6672 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6694 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6916 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6938 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6989 msgid "Unknown ByeDPI option: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:658 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:793 msgid "Unknown country" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14191 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15797 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5914 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16774 #: src/tachyon/api.ts:40 -#: src/tachyon/tabs/diagnostic/initController.ts:731 -#: src/tachyon/tabs/diagnostic/initController.ts:772 -#: src/tachyon/tabs/diagnostic/initController.ts:857 -#: src/tachyon/tabs/diagnostic/initController.ts:1568 +#: src/tachyon/tabs/diagnostic/initController.ts:732 +#: src/tachyon/tabs/diagnostic/initController.ts:773 +#: src/tachyon/tabs/diagnostic/initController.ts:858 +#: src/tachyon/tabs/diagnostic/initController.ts:1569 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1864 msgid "Unknown error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5878 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6122 msgid "Unknown NFQWS flag." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6596 msgid "Unknown NFQWS2 flag." msgstr "" @@ -8182,111 +8379,116 @@ msgstr "" msgid "Unsupported security mode for this protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:822 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:824 msgid "Up to 10 snapshots are kept; the oldest ones are removed automatically." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941 #: src/tachyon/tabs/updates/initController.ts:1025 msgid "Update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2093 msgid "Update failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8354 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8609 msgid "Update failed:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20067 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20445 #: src/tachyon/tabs/updates/initController.ts:372 msgid "Update is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21461 #: src/tachyon/tabs/updates/initController.ts:1668 msgid "Update is available for current release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21064 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21442 #: src/tachyon/tabs/updates/initController.ts:1647 msgid "Update is available:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1994 msgid "Update lists now" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8345 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8367 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8372 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8597 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8634 msgid "Update Lists Now" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2409 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15991 -#: src/tachyon/tabs/diagnostic/initController.ts:1088 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16360 +#: src/tachyon/tabs/diagnostic/initController.ts:1089 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:229 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:242 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:243 msgid "Update subscriptions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2429 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2673 msgid "Update this subscription automatically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8074 msgid "Updated/duplicates:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288 msgid "Updates & Downloads" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19914 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:121 msgid "Updating" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16216 -#: src/tachyon/tabs/diagnostic/initController.ts:1349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16585 +#: src/tachyon/tabs/diagnostic/initController.ts:1350 msgid "Updating device routing mode..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2040 msgid "Updating lists..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8593 msgid "Updating…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8934 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8962 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8974 #: src/tachyon/tabs/dashboard/initController.ts:1864 #: src/tachyon/tabs/dashboard/initController.ts:1877 msgid "Uplink" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17983 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18028 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18406 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18550 #: src/tachyon/tabs/monitoring/initController.ts:889 #: src/tachyon/tabs/monitoring/initController.ts:946 #: src/tachyon/tabs/monitoring/initController.ts:1141 msgid "Uploaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14540 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14579 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1379 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:224 msgid "Upstream Mode" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14991 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:314 +msgid "Upstream Provider / ASN" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1041 #: src/validators/validateProxyUrl.ts:52 msgid "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://" @@ -8297,46 +8499,46 @@ msgstr "" msgid "URL must use one of the following protocols:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2738 msgid "URL to test through the proxy (default: Cloudflare 204)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3398 msgid "URL used to check whether a server is alive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968 msgid "URL used to test server latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8384 msgid "URLs of remote hosts files to download and apply. Supports standard hosts format: IP domain." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9740 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10066 msgid "URLTest" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2724 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2725 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8527 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8555 #: src/tachyon/tabs/dashboard/initController.ts:1331 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:659 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:660 msgid "URLTest details" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8525 #: src/tachyon/tabs/dashboard/initController.ts:1290 msgid "URLTest details are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3873 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3874 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4118 msgid "URLTest settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2813 msgid "Use 3-tier check intervals: fast (15s), normal (120s), slow (300s) instead of a single interval." msgstr "" @@ -8376,7 +8578,7 @@ msgstr "" msgid "Use an IP listen address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9839 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10165 msgid "Use another section as an intermediate hop to connect to servers in this section. Does not apply to network interfaces or JSON outbounds." msgstr "" @@ -8396,22 +8598,22 @@ msgstr "" msgid "Use sing-box duration format like 10s, 1m or 2m30s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2438 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2698 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3227 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4786 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4793 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4800 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1953 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1975 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1982 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2149 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2177 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5044 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1955 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1977 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1984 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2179 msgid "Use sing-box duration format like 1d, 12h or 30m" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8400 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8674 msgid "Use sing-box duration format like 1d, 12h or 6h" msgstr "" @@ -8419,12 +8621,12 @@ msgstr "" msgid "Use tailnet exit node for LAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:25 msgid "Used by" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13373 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13412 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:923 msgid "User custom strategy" msgstr "" @@ -8433,16 +8635,16 @@ msgstr "" msgid "User names (e.g. from VLESS/Trojan/SS/JSON inbound users) that are forbidden from reaching LAN subnets. Leave empty to restrict all users on this inbound." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2496 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2740 msgid "User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3050 msgid "Username" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10330 msgid "Username cannot be empty" msgstr "" @@ -8463,8 +8665,8 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:807 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:927 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1009 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5402 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5659 #: src/validators/validateDns.ts:25 #: src/validators/validateDns.ts:29 #: src/validators/validateDomain.ts:57 @@ -8485,15 +8687,15 @@ msgstr "" msgid "Valid" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2825 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2827 msgid "Validates sing-box config before restart to prevent boot loops on broken configs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4855 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5099 msgid "Validation errors:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5392 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5636 msgid "Value cannot be empty" msgstr "" @@ -8501,22 +8703,27 @@ msgstr "" msgid "Value must be a positive integer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11912 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1955 msgid "Value must not contain control characters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14995 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:318 +msgid "Verdict" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20121 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:382 msgid "Verifying router and service readiness..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616 #: src/tachyon/tabs/updates/initController.ts:1847 msgid "Versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2282 msgid "Via country.is" msgstr "" @@ -8524,21 +8731,21 @@ msgstr "" msgid "Video streaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15841 -#: src/tachyon/tabs/diagnostic/initController.ts:831 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11483 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16210 +#: src/tachyon/tabs/diagnostic/initController.ts:832 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:193 msgid "View logs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15854 -#: src/tachyon/tabs/diagnostic/initController.ts:841 -#: src/tachyon/tabs/diagnostic/initController.ts:844 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16220 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16223 +#: src/tachyon/tabs/diagnostic/initController.ts:842 +#: src/tachyon/tabs/diagnostic/initController.ts:845 msgid "View logs failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7323 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7568 msgid "Visible name of this section" msgstr "" @@ -8546,55 +8753,55 @@ msgstr "" msgid "VLESS flow" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9600 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9926 msgid "vless://, vmess://, ss://, trojan://, socks4/5://, http/s://, hy2/hysteria2:// links" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20097 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:349 msgid "Waiting for router services to restart..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1398 msgid "Waiting for TorrServer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70 msgid "WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10340 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10368 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:198 msgid "WAN public IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9213 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9539 msgid "WARP Access Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9527 msgid "WARP Account ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2457 msgid "WARP Generator Proxy Section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9189 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9515 msgid "WARP Private Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2339 msgid "Watchdog probes every Connection section; when the active one fails several checks in a row, traffic switches to a healthy backup and Telegram is notified. Requires a config reload to take effect." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2685 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2687 msgid "Watchdog Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2430 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2432 msgid "WebRTC Leak Protection" msgstr "" @@ -8614,33 +8821,33 @@ msgstr "" msgid "Weekends (Sat-Sun)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7581 msgid "What Tachyon should do when this section matches" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3205 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3449 msgid "When switching to another level, test every server and select the fastest instead of the first working one." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12558 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:171 msgid "Why Discord fails?" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9782 msgid "WireGuard private key from your Cloudflare account" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516 msgid "WireGuard private key from your Cloudflare WARP account" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13669 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13708 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1256 msgid "Working" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "working strategies" msgstr "" @@ -8649,109 +8856,109 @@ msgstr "" msgid "XHTTP mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1831 msgid "YACD Secret Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154 #: src/tachyon/tabs/dashboard/initController.ts:826 msgid "Yes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1693 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1695 msgid "You can select Output Network Interface, by default autodetect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244 msgid "Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5947 msgid "Zapret hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS strategies." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:71 msgid "Zapret package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:72 msgid "Zapret package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:60 msgid "Zapret provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:61 msgid "Zapret provider binary is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:103 msgid "Zapret sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:104 msgid "Zapret sing-box outbound is not configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12729 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:149 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1976 msgid "Zapret v1 (nfqws)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12728 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:148 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1971 msgid "Zapret v2 (nfqws2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245 msgid "Zapret2" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6148 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392 msgid "Zapret2 hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS2 strategies." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:74 msgid "Zapret2 package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:75 msgid "Zapret2 package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:63 msgid "Zapret2 provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:64 msgid "Zapret2 provider binary is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:106 msgid "Zapret2 sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:107 msgid "Zapret2 sing-box outbound is not configured" msgstr "" diff --git a/fe-app-tachyon/locales/tachyon.ru.po b/fe-app-tachyon/locales/tachyon.ru.po index 9598a666..81cc53ec 100644 --- a/fe-app-tachyon/locales/tachyon.ru.po +++ b/fe-app-tachyon/locales/tachyon.ru.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: TACHYON\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-08 09:57+0300\n" -"PO-Revision-Date: 2026-09-08 09:57+0300\n" +"POT-Creation-Date: 2026-09-09 17:09+0300\n" +"PO-Revision-Date: 2026-09-09 17:09+0300\n" "Last-Translator: Dushnilin\n" "Language-Team: none\n" "Language: ru\n" @@ -50,6 +50,12 @@ msgstr "⚠️ Бенчмарк завершен. Не найдено рабоч msgid "⚠️ Benchmark stopped" msgstr "⚠️ Бенчмарк остановлен" +msgid "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!" +msgstr "⚠️ КРИТИЧЕСКАЯ УТЕЧКА IP: Ваш реальный публичный IP раскрыт через исходящий прокси!" + +msgid "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!" +msgstr "⚠️ ОБНАРУЖЕНА УТЕЧКА DNS: DNS-запросы утекают к вашему местному интернет-провайдеру!" + msgid "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "⚠️ Если все Bootstrap DNS завершатся с ошибкой 3 раза, запросы будут отправлены в DNS вашего провайдера в открытом виде. Используйте только в крайнем случае для предотвращения полной потери интернета." @@ -155,9 +161,21 @@ msgstr "🛑 Остановить бенчмарк" msgid "🛠️ My Custom Strategies Only" msgstr "🛠️ Только мои стратегии" +msgid "🛡️ IP & DNS Leak Test" +msgstr "🛡️ Проверка утечек IP и DNS" + +msgid "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers." +msgstr "🛡️ ЗАЩИЩЕНО: Утечек DNS не обнаружено. Все запросы обрабатываются независимыми резолверами." + +msgid "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound." +msgstr "🛡️ ЗАЩИЩЕНО: Утечек IP не обнаружено. Реальный WAN IP скрыт за исходящим прокси." + msgid "🟣 Twitch Suite (Live Stream + HLS CDN)" msgstr "🟣 Twitch Набор (Прямой эфир + HLS CDN)" +msgid "127.0.0.1:4534 (sing-box mixed)" +msgstr "127.0.0.1:4534 (смешанный sing-box)" + msgid "Блокировка по IP (Таймаут TCP SYN)" msgstr "Блокировка по IP (Таймаут TCP SYN)" @@ -485,6 +503,9 @@ msgstr "Генератор AmneziaWG" msgid "AmneziaWG Version" msgstr "Версия AmneziaWG" +msgid "An unexpected error occurred during test" +msgstr "Произошла непредвиденная ошибка во время проверки" + msgid "Anonymized support report copied to clipboard" msgstr "Анонимизированный отчет скопирован в буфер обмена" @@ -641,6 +662,9 @@ msgstr "Ср. задержка" msgid "Backend validation failed: %s" msgstr "Ошибка проверки бэкенда: %s" +msgid "Baseline" +msgstr "Базовый уровень" + msgid "Basic connectivity" msgstr "Базовая связность" @@ -791,6 +815,9 @@ msgstr "Стратегия ByeDPI" msgid "ByeDPI strategy cannot be empty" msgstr "Стратегия ByeDPI не может быть пустой" +msgid "Bypasses proxy (SO_MARK 0x08000000)" +msgstr "В обход прокси (SO_MARK 0x08000000)" + msgid "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy." msgstr "Обходит UDP-трафик для выбранных игровых консолей (PS5/Xbox) для достижения NAT Type 1 / 2 (Full Cone NAT) для P2P-матчмейкинга, сохраняя TCP (PSN/Auth) через прокси." @@ -1055,6 +1082,9 @@ msgstr "Подключено" msgid "Connected Devices" msgstr "Подключенные устройства" +msgid "Connection Path" +msgstr "Маршрут соединения" + msgid "Connection URL" msgstr "URL подключения" @@ -1100,6 +1130,12 @@ msgstr "Основные настройки и параметры" msgid "Could not compare FakeIP and control public IPs" msgstr "Не удалось сравнить публичные IP FakeIP и контрольной проверки" +msgid "Could not contact leak test endpoints. Please ensure router has internet access." +msgstr "Не удалось связаться с серверами проверки утечек. Убедитесь, что у роутера есть доступ в интернет." + +msgid "Country" +msgstr "Страна" + msgid "Country code (e.g. ru, us, de)" msgstr "Код страны (напр. ru, us, de)" @@ -1271,6 +1307,9 @@ msgstr "Прямой прокси" msgid "Direct WAN" msgstr "Прямой WAN" +msgid "Direct WAN (ISP)" +msgstr "Напрямую в WAN (провайдер)" + msgid "Disable" msgstr "Отключить" @@ -1382,6 +1421,9 @@ msgstr "Быстрый DNS-кэш" msgid "DNS Unavailability Timeout" msgstr "Таймаут недоступности DNS" +msgid "DNS Upstream Resolver Analysis (bash.ws protocol)" +msgstr "Анализ восходящих DNS-резолверов (протокол bash.ws)" + msgid "Do not panic, everything can be fixed, just..." msgstr "Не паникуйте, всё можно исправить, просто..." @@ -1524,7 +1566,7 @@ msgid "e.g. SHA256 — leave empty for default" msgstr "напр. SHA256 — оставьте пустым для значения по умолчанию" msgid "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889" -msgstr "Каждая запись — \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp), напр. tcp:6881,udp:6881-6889" +msgstr "Каждая запись должна быть \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp), например: tcp:6881,udp:6881-6889" msgid "Edit" msgstr "Изменить" @@ -1802,6 +1844,9 @@ msgstr "Не удалось определить тип DPI" msgid "Failed to execute" msgstr "Не удалось выполнить" +msgid "Failed to execute IP and DNS leak check" +msgstr "Не удалось выполнить проверку утечек IP и DNS" + msgid "Failed to fetch releases" msgstr "Не удалось получить список релизов" @@ -2348,6 +2393,9 @@ msgstr "Полезный груз init (I1)" msgid "Init timeout (Itime)" msgstr "Таймаут init (Itime)" +msgid "Initializing router-level IP & DNS leak test..." +msgstr "Инициализация проверки утечек IP и DNS с роутера..." + msgid "Install" msgstr "Установить" @@ -2517,7 +2565,7 @@ msgid "Invalid Shadowsocks URL: missing credentials" msgstr "Неверный URL Shadowsocks: отсутствуют учетные данные" msgid "Invalid Shadowsocks URL: missing method and password separator \":\"" -msgstr "Неверный Shadowsocks URL: отсутствует разделитель метода и пароля \":\"" +msgstr "Неверный URL Shadowsocks: отсутствует разделитель метода и пароля \":\"" msgid "Invalid Shadowsocks URL: missing port" msgstr "Неверный URL Shadowsocks: отсутствует порт" @@ -2660,6 +2708,12 @@ msgstr "Изолировать трафик BitTorrent и направить е msgid "Isolate Local LAN" msgstr "Изолировать локальную сеть" +msgid "ISP / Organization" +msgstr "Провайдер / Организация" + +msgid "ISP DNS LEAK" +msgstr "УТЕЧКА DNS К ПРОВАЙДЕРУ" + msgid "Issues" msgstr "Проблемы" @@ -2780,6 +2834,15 @@ msgstr "Установлена последняя версия" msgid "Latest version:" msgstr "Последняя версия:" +msgid "Leak detection completed" +msgstr "Проверка утечек завершена" + +msgid "Leak detection failed to complete" +msgstr "Не удалось завершить проверку утечек" + +msgid "LEAKED" +msgstr "УТЕЧКА" + msgid "Leave empty to omit this header" msgstr "Оставьте пустым, чтобы пропустить этот заголовок" @@ -2858,6 +2921,9 @@ msgstr "Загрузка..." msgid "Local Address" msgstr "Локальный адрес" +msgid "Location" +msgstr "Местоположение" + msgid "Log Level" msgstr "Уровень логирования" @@ -3078,13 +3144,13 @@ msgid "No active routing sections found." msgstr "Активные секции маршрутизации не найдены." msgid "No benchmark data yet. Click \"Start Benchmark\" to begin." -msgstr "Нет данных бенчмарка. Нажмите «Начать тест», чтобы запустить проверку." +msgstr "Данные тестирования отсутствуют. Нажмите \"Запустить тест\" для начала." msgid "No benchmark history yet. Run a benchmark to see results here." msgstr "История бенчмарков пуста. Запустите бенчмарк, чтобы увидеть результаты здесь." msgid "No benchmark results yet. Configure options and click \"Start Benchmark\"." -msgstr "Результатов бенчмарка пока нет. Настройте параметры и нажмите «Запустить бенчмарк»." +msgstr "Результаты тестирования пока отсутствуют. Настройте параметры и нажмите \"Запустить тест\"." msgid "No check targets found in the configuration." msgstr "Цели для проверки не найдены в конфигурации." @@ -3113,6 +3179,12 @@ msgstr "DHCP-клиенты не обнаружены" msgid "No diagnostic history available yet." msgstr "История проверок пока пуста." +msgid "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains." +msgstr "В тесте через прокси резолверы не зафиксированы. Возможно, прокси не работает или блокирует тестовые поддомены." + +msgid "No DNS resolvers recorded" +msgstr "DNS-резолверы не зафиксированы" + msgid "No domains detected yet" msgstr "Домены пока не обнаружены" @@ -3242,6 +3314,12 @@ msgstr "Обфускация" msgid "Obfuscation password" msgstr "Пароль обфускации" +msgid "Observed Public IP" +msgstr "Внешний публичный IP" + +msgid "OFFLINE" +msgstr "ОФЛАЙН" + msgid "Ollama (Local PC / Server)" msgstr "Ollama (локальный ПК / сервер)" @@ -3312,13 +3390,13 @@ msgid "Optimize RAM memory" msgstr "Оптимизировать память (RAM)" msgid "Option \"%s\" contains an invalid input value." -msgstr "Параметр \"%s\" содержит недопустимое значение." +msgstr "Опция \"%s\" содержит недопустимое значение." msgid "Optional — leave empty for default" msgstr "Опционально — оставьте пустым для значения по умолчанию" msgid "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")..." -msgstr "Дополнительный контекст (напр. «Ростелеком, YouTube 4K долго буферизуется»)..." +msgstr "Дополнительный контекст (напр. \"Ростелеком, долго грузится YouTube 4K\")..." msgid "Optional tls-auth or tls-crypt key" msgstr "Опциональный ключ tls-auth или tls-crypt" @@ -3440,6 +3518,9 @@ msgstr "Ожидает запуска" msgid "Pending..." msgstr "Ожидание..." +msgid "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP." +msgstr "Выполняет одновременные исходящие запросы напрямую в WAN (в обход правил Sing-box) и через прокси (127.0.0.1:4534), проверяя, что ваш реальный IP и DNS-запросы не утекают провайдеру." + msgid "Periodically check the current level and switch to a faster server even when the current one works." msgstr "Периодически проверять текущий уровень и переключаться на более быстрый сервер, даже если текущий работает." @@ -3462,7 +3543,7 @@ msgid "Pin on dashboard" msgstr "Закрепить на дашборде" msgid "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct." -msgstr "Закрепить изоляцию P2P за портами торрент-клиента, через запятую. Каждая запись — \"протокол\", \"протокол:порт\" или \"протокол:порт-порт\" (tcp/udp). Без порта весь протокол уходит напрямую." +msgstr "Привязка изоляции P2P к портам торрент-клиента через запятую. Каждая запись: \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp). Без указания порта весь протокол направляется напрямую." msgid "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers." msgstr "Обычные UDP DNS-серверы, используемые как резерв при недоступности всех основных DNS. Всегда работают без шифрования (без DoH/DoT). Пример: 1.1.1.1, 8.8.8.8. В отличие от аварийного DNS провайдера, это выбранные вами серверы." @@ -3620,9 +3701,15 @@ msgstr "Интервал проверки здоровья прокси (с)" msgid "Proxy Health Check URL" msgstr "URL проверки здоровья прокси" +msgid "Proxy is offline or unreachable on 127.0.0.1:4534." +msgstr "Прокси выключен или недоступен на 127.0.0.1:4534." + msgid "Proxy link is unavailable" msgstr "Ссылка прокси недоступна" +msgid "Proxy Outbound" +msgstr "Исходящий прокси (туннель)" + msgid "Proxy Section for Bot" msgstr "Секция прокси для бота" @@ -3635,9 +3722,15 @@ msgstr "PSK" msgid "Public host" msgstr "Публичный хост" +msgid "Public IP Address Isolation" +msgstr "Изоляция публичного IP-адреса" + msgid "QR code is too large" msgstr "QR-код слишком большой" +msgid "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534..." +msgstr "Опрос прямого WAN-сокета и исходящего прокси на 127.0.0.1:4534..." + msgid "QUIC (HTTP/3)" msgstr "QUIC (HTTP/3)" @@ -3653,6 +3746,9 @@ msgstr "Оценка" msgid "RDP" msgstr "RDP" +msgid "Re-run Leak Test" +msgstr "Повторить проверку утечек" + msgid "Read error" msgstr "Ошибка чтения" @@ -3791,6 +3887,9 @@ msgstr "Определить шлюз" msgid "Resolve real IP for routing" msgstr "Разрешать реальный IP для маршрутизации" +msgid "Resolver IP" +msgstr "IP резолвера" + msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "Выбор ресурсов по имени хоста внутри nfqws не поддерживается здесь; sing-box выбирает ресурсы до NFQUEUE." @@ -3884,6 +3983,12 @@ msgstr "Направлять весь не-локальный LAN-трафик msgid "Route bot API requests through this section. Leave empty to use the default mixed proxy." msgstr "Маршрутизировать запросы API бота через эту секцию. Оставьте пустым для использования смешанного прокси по умолчанию." +msgid "Route community list subnets (IP/CIDR)" +msgstr "Маршрутизировать подсети списков сообщества (IP/CIDR)" + +msgid "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers)." +msgstr "Маршрутизировать IP-подсети из списков сообщества (например, голос/медиа Discord). Отключите, если подсети сообщества пересекаются с CDN/Anycast сетями (Cloudflare/Google Cloud) и мешают другим сервисам." + msgid "Route main DNS requests through the selected section." msgstr "Маршрутизировать основные DNS-запросы через выбранную секцию." @@ -3971,6 +4076,9 @@ msgstr "Выполняется диагностика…" msgid "Russia (ru)" msgstr "Россия (ru)" +msgid "SAFE" +msgstr "БЕЗОПАСНО" + msgid "SafeSearch" msgstr "SafeSearch" @@ -4040,6 +4148,9 @@ msgstr "Секция для регистрации Cloudflare WARP API. Если msgid "Sections" msgstr "Секции" +msgid "SECURE" +msgstr "ЗАЩИЩЕНО" + msgid "Security" msgstr "Безопасность" @@ -4625,6 +4736,9 @@ msgstr "Tachyon: Бенчмарк и автоподбор DNS" msgid "Tachyon Error" msgstr "Ошибка Tachyon" +msgid "Tachyon IP & DNS Leak Detection" +msgstr "Проверка утечек IP и DNS Tachyon" + msgid "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here." msgstr "Tachyon управляет файлами pid ciadpi самостоятельно, поэтому параметры pidfile здесь не допускаются." @@ -4769,6 +4883,9 @@ msgstr "Тестирование" msgid "Testing bypass strategies in isolated sandbox..." msgstr "Тестирование стратегий обхода в изолированной песочнице..." +msgid "Testing DNS leak upstream resolvers with bash.ws protocol..." +msgstr "Тестирование восходящих DNS-резолверов по протоколу bash.ws..." + msgid "Testing strategy" msgstr "Тестирование стратегии" @@ -5156,6 +5273,9 @@ msgstr "Отдано" msgid "Upstream Mode" msgstr "Режим DNS Upstream" +msgid "Upstream Provider / ASN" +msgstr "Восходящий провайдер / ASN" + msgid "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://" msgstr "URL должен начинаться с vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2:// или tuic://" @@ -5273,6 +5393,9 @@ msgstr "Значение должно быть положительным цел msgid "Value must not contain control characters" msgstr "Значение не должно содержать символы управления" +msgid "Verdict" +msgstr "Статус" + msgid "Verifying router and service readiness..." msgstr "Проверка готовности роутера и служб..." @@ -5837,9 +5960,6 @@ msgstr "Маршрут" msgid "Resolved IP / DNS" msgstr "IP / DNS" -msgid "Verdict" -msgstr "Статус" - msgid "Check domain or IP (e.g. example.com)..." msgstr "Проверить домен или IP (напр. example.com)..." diff --git a/fe-app-tachyon/package.json b/fe-app-tachyon/package.json index 877f98c3..8f4641af 100644 --- a/fe-app-tachyon/package.json +++ b/fe-app-tachyon/package.json @@ -1,6 +1,6 @@ { "name": "fe-app-tachyon", - "version": "1.3.23", + "version": "1.3.24", "license": "MIT", "type": "module", "scripts": { diff --git a/fe-app-tachyon/src/tachyon/methods/shell/index.ts b/fe-app-tachyon/src/tachyon/methods/shell/index.ts index 40ac3c87..72f2084f 100644 --- a/fe-app-tachyon/src/tachyon/methods/shell/index.ts +++ b/fe-app-tachyon/src/tachyon/methods/shell/index.ts @@ -1664,4 +1664,28 @@ export const TachyonShellMethods = { }, }; }, + + leakCheck: async (): Promise< + Tachyon.MethodResponse + > => { + const response = await executeShellCommand({ + command: '/usr/bin/tachyon', + args: [Tachyon.AvailableMethods.LEAK_CHECK], + timeout: 25000, + }); + const parsed = parseJsonObjectOutput( + response.stdout, + ); + + if ((response.code ?? 0) !== 0 || !parsed) { + return { + success: false, + error: response.stderr || _('Failed to execute IP and DNS leak check'), + }; + } + return { + success: true, + data: parsed, + }; + }, }; diff --git a/fe-app-tachyon/src/tachyon/tabs/diagnostic/initController.ts b/fe-app-tachyon/src/tachyon/tabs/diagnostic/initController.ts index 8b3c8024..a18f2412 100644 --- a/fe-app-tachyon/src/tachyon/tabs/diagnostic/initController.ts +++ b/fe-app-tachyon/src/tachyon/tabs/diagnostic/initController.ts @@ -41,6 +41,7 @@ import { renderServiceCheckModal, renderAiChatModal, renderStrategyFuzzerModal, + renderLeakCheckModal, } from './partials'; import { TachyonShellMethods } from '../../methods'; import { getConfigSections } from '../../methods/custom/getConfigSections'; @@ -1584,6 +1585,10 @@ function handleOpenAiChat() { renderAiChatModal(); } +function handleOpenLeakCheck() { + renderLeakCheckModal(); +} + function handleOpenStrategyFuzzer() { getConfigSections() .then((sections) => { @@ -1919,6 +1924,12 @@ function renderDiagnosticAvailableActionsWidget() { disabled: utilityActionsDisabled, onClick: handleCheckServicesAction, }, + testLeaks: { + visible: true, + loading: false, + disabled: false, + onClick: handleOpenLeakCheck, + }, viewLogs: { loading: diagnosticsActions.viewLogs.loading, visible: true, diff --git a/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/index.ts b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/index.ts index f985c203..7ec4cdf0 100644 --- a/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/index.ts +++ b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/index.ts @@ -6,3 +6,4 @@ export * from './renderAiChatModal'; export * from './renderStrategyFuzzerModal'; export * from './renderSystemInfo'; export * from './renderDnsBenchmarkModal'; +export * from './renderLeakCheckModal'; diff --git a/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts index 3aae7cc0..0d35945d 100644 --- a/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts +++ b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts @@ -35,6 +35,7 @@ interface IRenderAvailableActionsProps { showSingBoxConfig: ActionProps; generateBugReport: ActionProps; checkServices: ActionProps; + testLeaks?: ActionProps; } export function renderAvailableActions({ @@ -53,6 +54,7 @@ export function renderAvailableActions({ showSingBoxConfig, generateBugReport, checkServices, + testLeaks, }: IRenderAvailableActionsProps) { return E('div', { class: 'tachyon_diagnostic-page__right-bar__actions' }, [ E('b', {}, _('Available actions')), @@ -174,6 +176,16 @@ export function renderAvailableActions({ disabled: checkServices.disabled, }), ]), + ...insertIf(!!testLeaks?.visible, [ + renderButton({ + classNames: ['cbi-button-action'], + onClick: testLeaks!.onClick, + icon: renderCircleCheckBigIcon24, + text: _('🛡️ IP & DNS Leak Test'), + loading: testLeaks!.loading, + disabled: testLeaks!.disabled, + }), + ]), ...insertIf(viewLogs.visible, [ renderButton({ onClick: viewLogs.onClick, diff --git a/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts new file mode 100644 index 00000000..c71a74fc --- /dev/null +++ b/fe-app-tachyon/src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts @@ -0,0 +1,410 @@ +import { TachyonShellMethods } from '../../../methods/shell'; +import { renderButton } from '../../../../partials'; +import { Tachyon } from '../../../types'; + +export function renderLeakCheckModal() { + let isRunning = false; + + const progressBar = E('div', { + style: + 'width: 0%; height: 6px; background: linear-gradient(90deg, #007bff, #28a745); border-radius: 3px; transition: width 0.4s ease;', + }); + + const progressContainer = E( + 'div', + { + style: + 'width: 100%; height: 6px; background: rgba(128,128,128,0.2); border-radius: 3px; overflow: hidden; margin-bottom: 14px;', + }, + [progressBar], + ); + + const statusLabel = E( + 'div', + { + style: + 'font-size: 13px; font-weight: 500; margin-bottom: 12px; color: var(--text-color-medium, #6c757d);', + }, + _('Initializing router-level IP & DNS leak test...'), + ); + + const resultsContainer = E('div', { + style: 'display: none; margin-bottom: 16px;', + }); + + const startTest = async () => { + if (isRunning) return; + isRunning = true; + + resultsContainer.style.display = 'none'; + progressContainer.style.display = 'block'; + progressBar.style.width = '30%'; + statusLabel.textContent = _( + 'Querying WAN direct socket and proxy outbound on 127.0.0.1:4534...', + ); + + if (retryBtn) (retryBtn as HTMLButtonElement).disabled = true; + + // Advance progress smoothly + const timer = setTimeout(() => { + progressBar.style.width = '70%'; + statusLabel.textContent = _( + 'Testing DNS leak upstream resolvers with bash.ws protocol...', + ); + }, 1500); + + try { + const response = await TachyonShellMethods.leakCheck(); + clearTimeout(timer); + progressBar.style.width = '100%'; + + if (response.success && response.data) { + statusLabel.textContent = _('Leak detection completed'); + setTimeout(() => { + progressContainer.style.display = 'none'; + progressBar.style.width = '0%'; + }, 400); + + renderResults(response.data); + } else { + const err = + !response.success && response.error + ? response.error + : _('Leak detection failed to complete'); + progressContainer.style.display = 'none'; + statusLabel.textContent = err; + resultsContainer.innerHTML = ''; + resultsContainer.appendChild( + E( + 'div', + { class: 'alert-message warning' }, + err || + _( + 'Could not contact leak test endpoints. Please ensure router has internet access.', + ), + ), + ); + resultsContainer.style.display = 'block'; + } + } catch (e) { + clearTimeout(timer); + progressContainer.style.display = 'none'; + statusLabel.textContent = _('An unexpected error occurred during test'); + resultsContainer.innerHTML = ''; + resultsContainer.appendChild( + E( + 'div', + { class: 'alert-message warning' }, + e instanceof Error ? e.message : String(e), + ), + ); + resultsContainer.style.display = 'block'; + } finally { + isRunning = false; + if (retryBtn) (retryBtn as HTMLButtonElement).disabled = false; + } + }; + + const renderResults = (data: Tachyon.LeakCheckResult) => { + resultsContainer.innerHTML = ''; + const { ip_leak, dns_leak } = data; + + // --- 1. IP Leak Section --- + const ipAlertClass = !ip_leak.proxy_online + ? 'alert-message warning' + : ip_leak.leaked + ? 'alert-message danger' + : 'alert-message success'; + + const ipAlertText = !ip_leak.proxy_online + ? _('Proxy is offline or unreachable on 127.0.0.1:4534.') + : ip_leak.leaked + ? _( + '⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!', + ) + : _( + '🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound.', + ); + + const ipTable = E( + 'table', + { + class: 'table cbi-section-table', + style: 'width: 100%; margin-bottom: 12px; font-size: 12px;', + }, + [ + E('thead', {}, [ + E('tr', { class: 'tr cbi-section-table-titles' }, [ + E('th', { class: 'th' }, _('Connection Path')), + E('th', { class: 'th' }, _('Observed Public IP')), + E('th', { class: 'th' }, _('Location')), + E('th', { class: 'th' }, _('ISP / Organization')), + E('th', { class: 'th', style: 'text-align: center;' }, _('Status')), + ]), + ]), + E('tbody', {}, [ + E('tr', { class: 'tr cbi-section-table-row' }, [ + E('td', { class: 'td' }, [ + E('b', {}, _('Direct WAN (ISP)')), + E( + 'div', + { + style: + 'font-size: 11px; color: var(--text-color-medium, #6c757d);', + }, + _('Bypasses proxy (SO_MARK 0x08000000)'), + ), + ]), + E('td', { class: 'td' }, [E('code', {}, ip_leak.direct_ip || '—')]), + E( + 'td', + { class: 'td' }, + [ip_leak.direct_country, ip_leak.direct_city] + .filter(Boolean) + .join(', ') || '—', + ), + E('td', { class: 'td' }, ip_leak.direct_isp || '—'), + E('td', { class: 'td', style: 'text-align: center;' }, [ + E( + 'span', + { + class: 'badge', + style: + 'background: var(--text-color-medium, #6c757d); color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('Baseline'), + ), + ]), + ]), + E('tr', { class: 'tr cbi-section-table-row' }, [ + E('td', { class: 'td' }, [ + E('b', {}, _('Proxy Outbound')), + E( + 'div', + { + style: + 'font-size: 11px; color: var(--text-color-medium, #6c757d);', + }, + _('127.0.0.1:4534 (sing-box mixed)'), + ), + ]), + E('td', { class: 'td' }, [E('code', {}, ip_leak.proxy_ip || '—')]), + E( + 'td', + { class: 'td' }, + [ip_leak.proxy_country, ip_leak.proxy_city] + .filter(Boolean) + .join(', ') || '—', + ), + E('td', { class: 'td' }, ip_leak.proxy_org || '—'), + E('td', { class: 'td', style: 'text-align: center;' }, [ + !ip_leak.proxy_online + ? E( + 'span', + { + class: 'badge', + style: + 'background: #fd7e14; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('OFFLINE'), + ) + : ip_leak.leaked + ? E( + 'span', + { + class: 'badge', + style: + 'background: #dc3545; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('LEAKED'), + ) + : E( + 'span', + { + class: 'badge', + style: + 'background: #28a745; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('SECURE'), + ), + ]), + ]), + ]), + ], + ); + + const ipSection = E( + 'div', + { + class: 'cbi-section', + style: + 'margin-bottom: 20px; border: 1px solid var(--border-color, rgba(128,128,128,0.2)); border-radius: 6px; padding: 12px;', + }, + [ + E('h4', { style: 'margin-top: 0; margin-bottom: 8px;' }, [ + '🌐 ', + _('Public IP Address Isolation'), + ]), + E('div', { class: ipAlertClass, style: 'margin-bottom: 12px;' }, [ + ipAlertText, + ]), + ipTable, + ], + ); + + // --- 2. DNS Leak Section --- + const dnsAlertClass = dns_leak.dns_leaked + ? 'alert-message danger' + : dns_leak.dns_servers.length > 0 + ? 'alert-message success' + : 'alert-message info'; + + const dnsAlertText = dns_leak.dns_leaked + ? _( + '⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!', + ) + : dns_leak.dns_servers.length > 0 + ? _( + '🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers.', + ) + : _( + 'No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains.', + ); + + const dnsTableRows = (dns_leak.dns_servers || []).map((s) => + E('tr', { class: 'tr cbi-section-table-row' }, [ + E('td', { class: 'td' }, [E('code', {}, s.ip)]), + E('td', { class: 'td' }, s.country || '—'), + E('td', { class: 'td' }, s.isp || '—'), + E('td', { class: 'td', style: 'text-align: center;' }, [ + s.is_isp + ? E( + 'span', + { + class: 'badge', + style: + 'background: #dc3545; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('ISP DNS LEAK'), + ) + : E( + 'span', + { + class: 'badge', + style: + 'background: #28a745; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;', + }, + _('SAFE'), + ), + ]), + ]), + ); + + const dnsTable = E( + 'table', + { + class: 'table cbi-section-table', + style: 'width: 100%; font-size: 12px; margin-bottom: 12px;', + }, + [ + E('thead', {}, [ + E('tr', { class: 'tr cbi-section-table-titles' }, [ + E('th', { class: 'th' }, _('Resolver IP')), + E('th', { class: 'th' }, _('Country')), + E('th', { class: 'th' }, _('Upstream Provider / ASN')), + E( + 'th', + { class: 'th', style: 'text-align: center;' }, + _('Verdict'), + ), + ]), + ]), + E( + 'tbody', + {}, + dnsTableRows.length > 0 + ? dnsTableRows + : [ + E('tr', { class: 'tr' }, [ + E( + 'td', + { + class: 'td', + colSpan: 4, + style: 'text-align: center; opacity: 0.7;', + }, + _('No DNS resolvers recorded'), + ), + ]), + ], + ), + ], + ); + + const dnsSection = E( + 'div', + { + class: 'cbi-section', + style: + 'border: 1px solid var(--border-color, rgba(128,128,128,0.2)); border-radius: 6px; padding: 12px;', + }, + [ + E('h4', { style: 'margin-top: 0; margin-bottom: 8px;' }, [ + '🔍 ', + _('DNS Upstream Resolver Analysis (bash.ws protocol)'), + ]), + E('div', { class: dnsAlertClass, style: 'margin-bottom: 12px;' }, [ + dnsAlertText, + ]), + dnsTable, + ], + ); + + resultsContainer.appendChild(ipSection); + resultsContainer.appendChild(dnsSection); + resultsContainer.style.display = 'block'; + }; + + const retryBtn = renderButton({ + classNames: ['cbi-button-action'], + onClick: startTest, + text: `🔄 ${_('Re-run Leak Test')}`, + }); + + const closeBtn = renderButton({ + classNames: ['cbi-button'], + onClick: () => { + if (ui.hideModal) ui.hideModal(); + }, + text: _('Close'), + }); + + const modalContent = E('div', { style: 'padding: 8px;' }, [ + E( + 'p', + { + style: + 'font-size: 13px; color: var(--text-color-medium, #6c757d); margin-bottom: 14px;', + }, + _( + 'Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP.', + ), + ), + statusLabel, + progressContainer, + resultsContainer, + E( + 'div', + { + style: + 'display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; border-top: 1px solid var(--border-color, rgba(128,128,128,0.2)); padding-top: 12px;', + }, + [retryBtn, closeBtn], + ), + ]); + + ui.showModal(`🛡️ ${_('Tachyon IP & DNS Leak Detection')}`, modalContent); + + // Auto-run test on open + startTest(); +} diff --git a/fe-app-tachyon/src/tachyon/tabs/diagnostic/tests/leakCheckModal.test.ts b/fe-app-tachyon/src/tachyon/tabs/diagnostic/tests/leakCheckModal.test.ts new file mode 100644 index 00000000..ee188d57 --- /dev/null +++ b/fe-app-tachyon/src/tachyon/tabs/diagnostic/tests/leakCheckModal.test.ts @@ -0,0 +1,221 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { beforeEach, describe, expect, it, vi } from 'vitest'; + +const mocks = vi.hoisted(() => { + class MockMutationObserver { + observe() {} + disconnect() {} + takeRecords() { + return []; + } + } + (globalThis as any).MutationObserver = MockMutationObserver; + + function createDummyElement(tag: string) { + return { + tagName: tag.toUpperCase(), + children: [] as any[], + style: {} as Record, + textContent: '', + innerHTML: '', + setAttribute() {}, + getAttribute() { + return null; + }, + addEventListener() {}, + querySelectorAll: () => [], + querySelector: () => null, + replaceChildren: function (...nodes: any[]) { + (this as any).children = nodes; + }, + appendChild: function (node: any) { + (this as any).children.push(node); + }, + append: function (...nodes: any[]) { + nodes.forEach((node) => (this as any).children.push(node)); + }, + classList: { + add() {}, + remove() {}, + }, + }; + } + + (globalThis as any).document = { + body: {} as any, + createElement: (tag: string) => createDummyElement(tag) as any, + createElementNS: (_ns: string, tag: string) => + createDummyElement(tag) as any, + getElementById: () => null, + querySelector: () => null, + querySelectorAll: () => [], + }; + + (globalThis as any).E = (tag: string, attrs?: any, children?: any) => { + const el = (globalThis as any).document.createElement(tag); + if (attrs) { + const { style, ...rest } = attrs; + Object.assign(el, rest); + if (style && typeof style === 'string') { + style.split(';').forEach((rule: string) => { + const [k, v] = rule.split(':').map((s: string) => s.trim()); + if (k && v) { + el.style[k] = v; + } + }); + } else if (style && typeof style === 'object') { + Object.assign(el.style, style); + } + } + if (children) { + if (Array.isArray(children)) { + children.forEach((c) => { + if (c) el.appendChild(c); + }); + } else { + el.appendChild(children); + } + } + return el; + }; + + (globalThis as any)._ = (str: string) => str; + + (globalThis as any).rpc = { declare: vi.fn() }; + (globalThis as any).uci = { sections: vi.fn().mockResolvedValue([]) }; + (globalThis as any).localStorage = { getItem: vi.fn(), setItem: vi.fn() }; + + const showModal = vi.fn(); + const hideModal = vi.fn(); + (globalThis as any).ui = { + showModal, + hideModal, + addNotification: vi.fn(), + }; + + return { + showModal, + hideModal, + }; +}); + +import { renderLeakCheckModal } from '../partials/renderLeakCheckModal'; +import { TachyonShellMethods } from '../../../methods/shell'; + +describe('renderLeakCheckModal', () => { + beforeEach(() => { + vi.clearAllMocks(); + mocks.showModal.mockReset(); + vi.spyOn(TachyonShellMethods, 'leakCheck').mockResolvedValue({ + success: true, + data: { + ip_leak: { + leaked: false, + direct_ip: '95.173.136.25', + direct_country: 'Russia', + direct_isp: 'Rostelecom', + proxy_ip: '185.220.101.5', + proxy_country: 'Netherlands', + proxy_org: 'Mullvad', + proxy_online: true, + }, + dns_leak: { + dns_leaked: false, + direct_ip: '95.173.136.25', + proxy_ip: '185.220.101.5', + dns_servers: [ + { + ip: '1.1.1.1', + country: 'United States', + isp: 'Cloudflare', + is_isp: false, + }, + ], + direct_dns_servers: [ + { + ip: '212.188.4.10', + country: 'Russia', + isp: 'Rostelecom', + is_isp: true, + }, + ], + proxy_online: true, + }, + }, + }); + }); + + it('renders and displays the IP & DNS Leak Detection modal', () => { + renderLeakCheckModal(); + + expect(mocks.showModal).toHaveBeenCalledTimes(1); + expect(mocks.showModal).toHaveBeenCalledWith( + expect.stringContaining('Tachyon IP & DNS Leak Detection'), + expect.anything(), + ); + }); + + it('calls TachyonShellMethods.leakCheck on start', async () => { + const leakCheckSpy = vi.spyOn(TachyonShellMethods, 'leakCheck'); + renderLeakCheckModal(); + + expect(leakCheckSpy).toHaveBeenCalledTimes(1); + }); + + it('handles leak detection when IP is leaked', async () => { + vi.spyOn(TachyonShellMethods, 'leakCheck').mockResolvedValue({ + success: true, + data: { + ip_leak: { + leaked: true, + direct_ip: '95.173.136.25', + proxy_ip: '95.173.136.25', + proxy_online: true, + }, + dns_leak: { + dns_leaked: true, + direct_ip: '95.173.136.25', + proxy_ip: '95.173.136.25', + dns_servers: [ + { + ip: '212.188.4.10', + country: 'Russia', + isp: 'Rostelecom', + is_isp: true, + }, + ], + direct_dns_servers: [], + proxy_online: true, + }, + }, + }); + + renderLeakCheckModal(); + expect(mocks.showModal).toHaveBeenCalledTimes(1); + }); + + it('handles offline proxy gracefully', async () => { + vi.spyOn(TachyonShellMethods, 'leakCheck').mockResolvedValue({ + success: true, + data: { + ip_leak: { + leaked: false, + direct_ip: '95.173.136.25', + proxy_ip: '—', + proxy_online: false, + }, + dns_leak: { + dns_leaked: false, + direct_ip: '95.173.136.25', + proxy_ip: '—', + dns_servers: [], + direct_dns_servers: [], + proxy_online: false, + }, + }, + }); + + renderLeakCheckModal(); + expect(mocks.showModal).toHaveBeenCalledTimes(1); + }); +}); diff --git a/fe-app-tachyon/src/tachyon/types.ts b/fe-app-tachyon/src/tachyon/types.ts index f95ab57c..d6d46690 100644 --- a/fe-app-tachyon/src/tachyon/types.ts +++ b/fe-app-tachyon/src/tachyon/types.ts @@ -117,6 +117,9 @@ export namespace Tachyon { DNS_BENCHMARK_STATUS = 'dns_benchmark_status', DNS_BENCHMARK_STOP = 'dns_benchmark_stop', DNS_BENCHMARK_APPLY = 'dns_benchmark_apply', + LEAK_CHECK = 'leak_check', + CHECK_IP_LEAK = 'check_ip_leak', + CHECK_DNS_LEAK = 'check_dns_leak', } export enum AvailableClashAPIMethods { @@ -1166,4 +1169,41 @@ export namespace Tachyon { started_at: number; finished_at: number | null; } + + export interface IPLeakResult { + leaked: boolean; + direct_ip: string; + direct_country?: string; + direct_country_code?: string; + direct_city?: string; + direct_isp?: string; + proxy_ip: string; + proxy_country?: string; + proxy_country_code?: string; + proxy_city?: string; + proxy_org?: string; + proxy_online: boolean; + } + + export interface DNSResolverInfo { + ip: string; + country: string; + isp: string; + is_isp: boolean; + } + + export interface DNSLeakResult { + dns_leaked: boolean; + direct_ip: string; + proxy_ip: string; + dns_servers: DNSResolverInfo[]; + direct_dns_servers: DNSResolverInfo[]; + proxy_online: boolean; + } + + export interface LeakCheckResult { + ip_leak: IPLeakResult; + dns_leak: DNSLeakResult; + timestamp?: number; + } } diff --git a/luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js b/luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js index b1cb2c1b..12ec230b 100644 --- a/luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js +++ b/luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js @@ -3433,6 +3433,9 @@ var Tachyon; AvailableMethods2["DNS_BENCHMARK_STATUS"] = "dns_benchmark_status"; AvailableMethods2["DNS_BENCHMARK_STOP"] = "dns_benchmark_stop"; AvailableMethods2["DNS_BENCHMARK_APPLY"] = "dns_benchmark_apply"; + AvailableMethods2["LEAK_CHECK"] = "leak_check"; + AvailableMethods2["CHECK_IP_LEAK"] = "check_ip_leak"; + AvailableMethods2["CHECK_DNS_LEAK"] = "check_dns_leak"; })(AvailableMethods = Tachyon2.AvailableMethods || (Tachyon2.AvailableMethods = {})); let AvailableClashAPIMethods; ((AvailableClashAPIMethods2) => { @@ -4724,6 +4727,26 @@ var TachyonShellMethods = { recommendation: parsed.recommendation } }; + }, + leakCheck: async () => { + const response = await executeShellCommand({ + command: "/usr/bin/tachyon", + args: [Tachyon.AvailableMethods.LEAK_CHECK], + timeout: 25e3 + }); + const parsed = parseJsonObjectOutput( + response.stdout + ); + if ((response.code ?? 0) !== 0 || !parsed) { + return { + success: false, + error: response.stderr || _("Failed to execute IP and DNS leak check") + }; + } + return { + success: true, + data: parsed + }; } }; @@ -11320,7 +11343,8 @@ function renderAvailableActions({ viewLogs, showSingBoxConfig, generateBugReport, - checkServices + checkServices, + testLeaks }) { return E("div", { class: "tachyon_diagnostic-page__right-bar__actions" }, [ E("b", {}, _("Available actions")), @@ -11442,6 +11466,16 @@ function renderAvailableActions({ disabled: checkServices.disabled }) ]), + ...insertIf(!!testLeaks?.visible, [ + renderButton({ + classNames: ["cbi-button-action"], + onClick: testLeaks.onClick, + icon: renderCircleCheckBigIcon24, + text: _("\u{1F6E1}\uFE0F IP & DNS Leak Test"), + loading: testLeaks.loading, + disabled: testLeaks.disabled + }) + ]), ...insertIf(viewLogs.visible, [ renderButton({ onClick: viewLogs.onClick, @@ -14709,6 +14743,336 @@ function renderDnsBenchmarkModal() { startBenchmark(); } +// src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts +function renderLeakCheckModal() { + let isRunning = false; + const progressBar = E("div", { + style: "width: 0%; height: 6px; background: linear-gradient(90deg, #007bff, #28a745); border-radius: 3px; transition: width 0.4s ease;" + }); + const progressContainer = E( + "div", + { + style: "width: 100%; height: 6px; background: rgba(128,128,128,0.2); border-radius: 3px; overflow: hidden; margin-bottom: 14px;" + }, + [progressBar] + ); + const statusLabel = E( + "div", + { + style: "font-size: 13px; font-weight: 500; margin-bottom: 12px; color: var(--text-color-medium, #6c757d);" + }, + _("Initializing router-level IP & DNS leak test...") + ); + const resultsContainer = E("div", { + style: "display: none; margin-bottom: 16px;" + }); + const startTest = async () => { + if (isRunning) return; + isRunning = true; + resultsContainer.style.display = "none"; + progressContainer.style.display = "block"; + progressBar.style.width = "30%"; + statusLabel.textContent = _( + "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534..." + ); + if (retryBtn) retryBtn.disabled = true; + const timer = setTimeout(() => { + progressBar.style.width = "70%"; + statusLabel.textContent = _( + "Testing DNS leak upstream resolvers with bash.ws protocol..." + ); + }, 1500); + try { + const response = await TachyonShellMethods.leakCheck(); + clearTimeout(timer); + progressBar.style.width = "100%"; + if (response.success && response.data) { + statusLabel.textContent = _("Leak detection completed"); + setTimeout(() => { + progressContainer.style.display = "none"; + progressBar.style.width = "0%"; + }, 400); + renderResults(response.data); + } else { + const err = !response.success && response.error ? response.error : _("Leak detection failed to complete"); + progressContainer.style.display = "none"; + statusLabel.textContent = err; + resultsContainer.innerHTML = ""; + resultsContainer.appendChild( + E( + "div", + { class: "alert-message warning" }, + err || _( + "Could not contact leak test endpoints. Please ensure router has internet access." + ) + ) + ); + resultsContainer.style.display = "block"; + } + } catch (e) { + clearTimeout(timer); + progressContainer.style.display = "none"; + statusLabel.textContent = _("An unexpected error occurred during test"); + resultsContainer.innerHTML = ""; + resultsContainer.appendChild( + E( + "div", + { class: "alert-message warning" }, + e instanceof Error ? e.message : String(e) + ) + ); + resultsContainer.style.display = "block"; + } finally { + isRunning = false; + if (retryBtn) retryBtn.disabled = false; + } + }; + const renderResults = (data) => { + resultsContainer.innerHTML = ""; + const { ip_leak, dns_leak } = data; + const ipAlertClass = !ip_leak.proxy_online ? "alert-message warning" : ip_leak.leaked ? "alert-message danger" : "alert-message success"; + const ipAlertText = !ip_leak.proxy_online ? _("Proxy is offline or unreachable on 127.0.0.1:4534.") : ip_leak.leaked ? _( + "\u26A0\uFE0F CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!" + ) : _( + "\u{1F6E1}\uFE0F SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound." + ); + const ipTable = E( + "table", + { + class: "table cbi-section-table", + style: "width: 100%; margin-bottom: 12px; font-size: 12px;" + }, + [ + E("thead", {}, [ + E("tr", { class: "tr cbi-section-table-titles" }, [ + E("th", { class: "th" }, _("Connection Path")), + E("th", { class: "th" }, _("Observed Public IP")), + E("th", { class: "th" }, _("Location")), + E("th", { class: "th" }, _("ISP / Organization")), + E("th", { class: "th", style: "text-align: center;" }, _("Status")) + ]) + ]), + E("tbody", {}, [ + E("tr", { class: "tr cbi-section-table-row" }, [ + E("td", { class: "td" }, [ + E("b", {}, _("Direct WAN (ISP)")), + E( + "div", + { + style: "font-size: 11px; color: var(--text-color-medium, #6c757d);" + }, + _("Bypasses proxy (SO_MARK 0x08000000)") + ) + ]), + E("td", { class: "td" }, [E("code", {}, ip_leak.direct_ip || "\u2014")]), + E( + "td", + { class: "td" }, + [ip_leak.direct_country, ip_leak.direct_city].filter(Boolean).join(", ") || "\u2014" + ), + E("td", { class: "td" }, ip_leak.direct_isp || "\u2014"), + E("td", { class: "td", style: "text-align: center;" }, [ + E( + "span", + { + class: "badge", + style: "background: var(--text-color-medium, #6c757d); color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("Baseline") + ) + ]) + ]), + E("tr", { class: "tr cbi-section-table-row" }, [ + E("td", { class: "td" }, [ + E("b", {}, _("Proxy Outbound")), + E( + "div", + { + style: "font-size: 11px; color: var(--text-color-medium, #6c757d);" + }, + _("127.0.0.1:4534 (sing-box mixed)") + ) + ]), + E("td", { class: "td" }, [E("code", {}, ip_leak.proxy_ip || "\u2014")]), + E( + "td", + { class: "td" }, + [ip_leak.proxy_country, ip_leak.proxy_city].filter(Boolean).join(", ") || "\u2014" + ), + E("td", { class: "td" }, ip_leak.proxy_org || "\u2014"), + E("td", { class: "td", style: "text-align: center;" }, [ + !ip_leak.proxy_online ? E( + "span", + { + class: "badge", + style: "background: #fd7e14; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("OFFLINE") + ) : ip_leak.leaked ? E( + "span", + { + class: "badge", + style: "background: #dc3545; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("LEAKED") + ) : E( + "span", + { + class: "badge", + style: "background: #28a745; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("SECURE") + ) + ]) + ]) + ]) + ] + ); + const ipSection = E( + "div", + { + class: "cbi-section", + style: "margin-bottom: 20px; border: 1px solid var(--border-color, rgba(128,128,128,0.2)); border-radius: 6px; padding: 12px;" + }, + [ + E("h4", { style: "margin-top: 0; margin-bottom: 8px;" }, [ + "\u{1F310} ", + _("Public IP Address Isolation") + ]), + E("div", { class: ipAlertClass, style: "margin-bottom: 12px;" }, [ + ipAlertText + ]), + ipTable + ] + ); + const dnsAlertClass = dns_leak.dns_leaked ? "alert-message danger" : dns_leak.dns_servers.length > 0 ? "alert-message success" : "alert-message info"; + const dnsAlertText = dns_leak.dns_leaked ? _( + "\u26A0\uFE0F DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!" + ) : dns_leak.dns_servers.length > 0 ? _( + "\u{1F6E1}\uFE0F SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers." + ) : _( + "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains." + ); + const dnsTableRows = (dns_leak.dns_servers || []).map( + (s) => E("tr", { class: "tr cbi-section-table-row" }, [ + E("td", { class: "td" }, [E("code", {}, s.ip)]), + E("td", { class: "td" }, s.country || "\u2014"), + E("td", { class: "td" }, s.isp || "\u2014"), + E("td", { class: "td", style: "text-align: center;" }, [ + s.is_isp ? E( + "span", + { + class: "badge", + style: "background: #dc3545; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("ISP DNS LEAK") + ) : E( + "span", + { + class: "badge", + style: "background: #28a745; color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 11px;" + }, + _("SAFE") + ) + ]) + ]) + ); + const dnsTable = E( + "table", + { + class: "table cbi-section-table", + style: "width: 100%; font-size: 12px; margin-bottom: 12px;" + }, + [ + E("thead", {}, [ + E("tr", { class: "tr cbi-section-table-titles" }, [ + E("th", { class: "th" }, _("Resolver IP")), + E("th", { class: "th" }, _("Country")), + E("th", { class: "th" }, _("Upstream Provider / ASN")), + E( + "th", + { class: "th", style: "text-align: center;" }, + _("Verdict") + ) + ]) + ]), + E( + "tbody", + {}, + dnsTableRows.length > 0 ? dnsTableRows : [ + E("tr", { class: "tr" }, [ + E( + "td", + { + class: "td", + colSpan: 4, + style: "text-align: center; opacity: 0.7;" + }, + _("No DNS resolvers recorded") + ) + ]) + ] + ) + ] + ); + const dnsSection = E( + "div", + { + class: "cbi-section", + style: "border: 1px solid var(--border-color, rgba(128,128,128,0.2)); border-radius: 6px; padding: 12px;" + }, + [ + E("h4", { style: "margin-top: 0; margin-bottom: 8px;" }, [ + "\u{1F50D} ", + _("DNS Upstream Resolver Analysis (bash.ws protocol)") + ]), + E("div", { class: dnsAlertClass, style: "margin-bottom: 12px;" }, [ + dnsAlertText + ]), + dnsTable + ] + ); + resultsContainer.appendChild(ipSection); + resultsContainer.appendChild(dnsSection); + resultsContainer.style.display = "block"; + }; + const retryBtn = renderButton({ + classNames: ["cbi-button-action"], + onClick: startTest, + text: `\u{1F504} ${_("Re-run Leak Test")}` + }); + const closeBtn = renderButton({ + classNames: ["cbi-button"], + onClick: () => { + if (ui.hideModal) ui.hideModal(); + }, + text: _("Close") + }); + const modalContent = E("div", { style: "padding: 8px;" }, [ + E( + "p", + { + style: "font-size: 13px; color: var(--text-color-medium, #6c757d); margin-bottom: 14px;" + }, + _( + "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP." + ) + ), + statusLabel, + progressContainer, + resultsContainer, + E( + "div", + { + style: "display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; border-top: 1px solid var(--border-color, rgba(128,128,128,0.2)); padding-top: 12px;" + }, + [retryBtn, closeBtn] + ) + ]); + ui.showModal(`\u{1F6E1}\uFE0F ${_("Tachyon IP & DNS Leak Detection")}`, modalContent); + startTest(); +} + // src/helpers/normalizeCompiledVersion.ts function normalizeCompiledVersion(version, commitSha) { if (!version || version.includes("COMPILED")) { @@ -16424,6 +16788,9 @@ async function handleRunAiDoctor() { function handleOpenAiChat() { renderAiChatModal(); } +function handleOpenLeakCheck() { + renderLeakCheckModal(); +} function handleOpenStrategyFuzzer() { getConfigSections().then((sections) => { const ruleNames = sections.filter((s) => s[".type"] === "section" || s[".type"] === "rule").map((s) => s.name || s[".name"]).filter((n) => Boolean(n)); @@ -16711,6 +17078,12 @@ function renderDiagnosticAvailableActionsWidget() { disabled: utilityActionsDisabled, onClick: handleCheckServicesAction }, + testLeaks: { + visible: true, + loading: false, + disabled: false, + onClick: handleOpenLeakCheck + }, viewLogs: { loading: diagnosticsActions.viewLogs.loading, visible: true, diff --git a/luci-app-tachyon/po/ru/tachyon.po b/luci-app-tachyon/po/ru/tachyon.po index 9598a666..81cc53ec 100644 --- a/luci-app-tachyon/po/ru/tachyon.po +++ b/luci-app-tachyon/po/ru/tachyon.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: TACHYON\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-08 09:57+0300\n" -"PO-Revision-Date: 2026-09-08 09:57+0300\n" +"POT-Creation-Date: 2026-09-09 17:09+0300\n" +"PO-Revision-Date: 2026-09-09 17:09+0300\n" "Last-Translator: Dushnilin\n" "Language-Team: none\n" "Language: ru\n" @@ -50,6 +50,12 @@ msgstr "⚠️ Бенчмарк завершен. Не найдено рабоч msgid "⚠️ Benchmark stopped" msgstr "⚠️ Бенчмарк остановлен" +msgid "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!" +msgstr "⚠️ КРИТИЧЕСКАЯ УТЕЧКА IP: Ваш реальный публичный IP раскрыт через исходящий прокси!" + +msgid "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!" +msgstr "⚠️ ОБНАРУЖЕНА УТЕЧКА DNS: DNS-запросы утекают к вашему местному интернет-провайдеру!" + msgid "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "⚠️ Если все Bootstrap DNS завершатся с ошибкой 3 раза, запросы будут отправлены в DNS вашего провайдера в открытом виде. Используйте только в крайнем случае для предотвращения полной потери интернета." @@ -155,9 +161,21 @@ msgstr "🛑 Остановить бенчмарк" msgid "🛠️ My Custom Strategies Only" msgstr "🛠️ Только мои стратегии" +msgid "🛡️ IP & DNS Leak Test" +msgstr "🛡️ Проверка утечек IP и DNS" + +msgid "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers." +msgstr "🛡️ ЗАЩИЩЕНО: Утечек DNS не обнаружено. Все запросы обрабатываются независимыми резолверами." + +msgid "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound." +msgstr "🛡️ ЗАЩИЩЕНО: Утечек IP не обнаружено. Реальный WAN IP скрыт за исходящим прокси." + msgid "🟣 Twitch Suite (Live Stream + HLS CDN)" msgstr "🟣 Twitch Набор (Прямой эфир + HLS CDN)" +msgid "127.0.0.1:4534 (sing-box mixed)" +msgstr "127.0.0.1:4534 (смешанный sing-box)" + msgid "Блокировка по IP (Таймаут TCP SYN)" msgstr "Блокировка по IP (Таймаут TCP SYN)" @@ -485,6 +503,9 @@ msgstr "Генератор AmneziaWG" msgid "AmneziaWG Version" msgstr "Версия AmneziaWG" +msgid "An unexpected error occurred during test" +msgstr "Произошла непредвиденная ошибка во время проверки" + msgid "Anonymized support report copied to clipboard" msgstr "Анонимизированный отчет скопирован в буфер обмена" @@ -641,6 +662,9 @@ msgstr "Ср. задержка" msgid "Backend validation failed: %s" msgstr "Ошибка проверки бэкенда: %s" +msgid "Baseline" +msgstr "Базовый уровень" + msgid "Basic connectivity" msgstr "Базовая связность" @@ -791,6 +815,9 @@ msgstr "Стратегия ByeDPI" msgid "ByeDPI strategy cannot be empty" msgstr "Стратегия ByeDPI не может быть пустой" +msgid "Bypasses proxy (SO_MARK 0x08000000)" +msgstr "В обход прокси (SO_MARK 0x08000000)" + msgid "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy." msgstr "Обходит UDP-трафик для выбранных игровых консолей (PS5/Xbox) для достижения NAT Type 1 / 2 (Full Cone NAT) для P2P-матчмейкинга, сохраняя TCP (PSN/Auth) через прокси." @@ -1055,6 +1082,9 @@ msgstr "Подключено" msgid "Connected Devices" msgstr "Подключенные устройства" +msgid "Connection Path" +msgstr "Маршрут соединения" + msgid "Connection URL" msgstr "URL подключения" @@ -1100,6 +1130,12 @@ msgstr "Основные настройки и параметры" msgid "Could not compare FakeIP and control public IPs" msgstr "Не удалось сравнить публичные IP FakeIP и контрольной проверки" +msgid "Could not contact leak test endpoints. Please ensure router has internet access." +msgstr "Не удалось связаться с серверами проверки утечек. Убедитесь, что у роутера есть доступ в интернет." + +msgid "Country" +msgstr "Страна" + msgid "Country code (e.g. ru, us, de)" msgstr "Код страны (напр. ru, us, de)" @@ -1271,6 +1307,9 @@ msgstr "Прямой прокси" msgid "Direct WAN" msgstr "Прямой WAN" +msgid "Direct WAN (ISP)" +msgstr "Напрямую в WAN (провайдер)" + msgid "Disable" msgstr "Отключить" @@ -1382,6 +1421,9 @@ msgstr "Быстрый DNS-кэш" msgid "DNS Unavailability Timeout" msgstr "Таймаут недоступности DNS" +msgid "DNS Upstream Resolver Analysis (bash.ws protocol)" +msgstr "Анализ восходящих DNS-резолверов (протокол bash.ws)" + msgid "Do not panic, everything can be fixed, just..." msgstr "Не паникуйте, всё можно исправить, просто..." @@ -1524,7 +1566,7 @@ msgid "e.g. SHA256 — leave empty for default" msgstr "напр. SHA256 — оставьте пустым для значения по умолчанию" msgid "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889" -msgstr "Каждая запись — \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp), напр. tcp:6881,udp:6881-6889" +msgstr "Каждая запись должна быть \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp), например: tcp:6881,udp:6881-6889" msgid "Edit" msgstr "Изменить" @@ -1802,6 +1844,9 @@ msgstr "Не удалось определить тип DPI" msgid "Failed to execute" msgstr "Не удалось выполнить" +msgid "Failed to execute IP and DNS leak check" +msgstr "Не удалось выполнить проверку утечек IP и DNS" + msgid "Failed to fetch releases" msgstr "Не удалось получить список релизов" @@ -2348,6 +2393,9 @@ msgstr "Полезный груз init (I1)" msgid "Init timeout (Itime)" msgstr "Таймаут init (Itime)" +msgid "Initializing router-level IP & DNS leak test..." +msgstr "Инициализация проверки утечек IP и DNS с роутера..." + msgid "Install" msgstr "Установить" @@ -2517,7 +2565,7 @@ msgid "Invalid Shadowsocks URL: missing credentials" msgstr "Неверный URL Shadowsocks: отсутствуют учетные данные" msgid "Invalid Shadowsocks URL: missing method and password separator \":\"" -msgstr "Неверный Shadowsocks URL: отсутствует разделитель метода и пароля \":\"" +msgstr "Неверный URL Shadowsocks: отсутствует разделитель метода и пароля \":\"" msgid "Invalid Shadowsocks URL: missing port" msgstr "Неверный URL Shadowsocks: отсутствует порт" @@ -2660,6 +2708,12 @@ msgstr "Изолировать трафик BitTorrent и направить е msgid "Isolate Local LAN" msgstr "Изолировать локальную сеть" +msgid "ISP / Organization" +msgstr "Провайдер / Организация" + +msgid "ISP DNS LEAK" +msgstr "УТЕЧКА DNS К ПРОВАЙДЕРУ" + msgid "Issues" msgstr "Проблемы" @@ -2780,6 +2834,15 @@ msgstr "Установлена последняя версия" msgid "Latest version:" msgstr "Последняя версия:" +msgid "Leak detection completed" +msgstr "Проверка утечек завершена" + +msgid "Leak detection failed to complete" +msgstr "Не удалось завершить проверку утечек" + +msgid "LEAKED" +msgstr "УТЕЧКА" + msgid "Leave empty to omit this header" msgstr "Оставьте пустым, чтобы пропустить этот заголовок" @@ -2858,6 +2921,9 @@ msgstr "Загрузка..." msgid "Local Address" msgstr "Локальный адрес" +msgid "Location" +msgstr "Местоположение" + msgid "Log Level" msgstr "Уровень логирования" @@ -3078,13 +3144,13 @@ msgid "No active routing sections found." msgstr "Активные секции маршрутизации не найдены." msgid "No benchmark data yet. Click \"Start Benchmark\" to begin." -msgstr "Нет данных бенчмарка. Нажмите «Начать тест», чтобы запустить проверку." +msgstr "Данные тестирования отсутствуют. Нажмите \"Запустить тест\" для начала." msgid "No benchmark history yet. Run a benchmark to see results here." msgstr "История бенчмарков пуста. Запустите бенчмарк, чтобы увидеть результаты здесь." msgid "No benchmark results yet. Configure options and click \"Start Benchmark\"." -msgstr "Результатов бенчмарка пока нет. Настройте параметры и нажмите «Запустить бенчмарк»." +msgstr "Результаты тестирования пока отсутствуют. Настройте параметры и нажмите \"Запустить тест\"." msgid "No check targets found in the configuration." msgstr "Цели для проверки не найдены в конфигурации." @@ -3113,6 +3179,12 @@ msgstr "DHCP-клиенты не обнаружены" msgid "No diagnostic history available yet." msgstr "История проверок пока пуста." +msgid "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains." +msgstr "В тесте через прокси резолверы не зафиксированы. Возможно, прокси не работает или блокирует тестовые поддомены." + +msgid "No DNS resolvers recorded" +msgstr "DNS-резолверы не зафиксированы" + msgid "No domains detected yet" msgstr "Домены пока не обнаружены" @@ -3242,6 +3314,12 @@ msgstr "Обфускация" msgid "Obfuscation password" msgstr "Пароль обфускации" +msgid "Observed Public IP" +msgstr "Внешний публичный IP" + +msgid "OFFLINE" +msgstr "ОФЛАЙН" + msgid "Ollama (Local PC / Server)" msgstr "Ollama (локальный ПК / сервер)" @@ -3312,13 +3390,13 @@ msgid "Optimize RAM memory" msgstr "Оптимизировать память (RAM)" msgid "Option \"%s\" contains an invalid input value." -msgstr "Параметр \"%s\" содержит недопустимое значение." +msgstr "Опция \"%s\" содержит недопустимое значение." msgid "Optional — leave empty for default" msgstr "Опционально — оставьте пустым для значения по умолчанию" msgid "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")..." -msgstr "Дополнительный контекст (напр. «Ростелеком, YouTube 4K долго буферизуется»)..." +msgstr "Дополнительный контекст (напр. \"Ростелеком, долго грузится YouTube 4K\")..." msgid "Optional tls-auth or tls-crypt key" msgstr "Опциональный ключ tls-auth или tls-crypt" @@ -3440,6 +3518,9 @@ msgstr "Ожидает запуска" msgid "Pending..." msgstr "Ожидание..." +msgid "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP." +msgstr "Выполняет одновременные исходящие запросы напрямую в WAN (в обход правил Sing-box) и через прокси (127.0.0.1:4534), проверяя, что ваш реальный IP и DNS-запросы не утекают провайдеру." + msgid "Periodically check the current level and switch to a faster server even when the current one works." msgstr "Периодически проверять текущий уровень и переключаться на более быстрый сервер, даже если текущий работает." @@ -3462,7 +3543,7 @@ msgid "Pin on dashboard" msgstr "Закрепить на дашборде" msgid "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct." -msgstr "Закрепить изоляцию P2P за портами торрент-клиента, через запятую. Каждая запись — \"протокол\", \"протокол:порт\" или \"протокол:порт-порт\" (tcp/udp). Без порта весь протокол уходит напрямую." +msgstr "Привязка изоляции P2P к портам торрент-клиента через запятую. Каждая запись: \"proto\", \"proto:port\" или \"proto:port-port\" (tcp/udp). Без указания порта весь протокол направляется напрямую." msgid "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers." msgstr "Обычные UDP DNS-серверы, используемые как резерв при недоступности всех основных DNS. Всегда работают без шифрования (без DoH/DoT). Пример: 1.1.1.1, 8.8.8.8. В отличие от аварийного DNS провайдера, это выбранные вами серверы." @@ -3620,9 +3701,15 @@ msgstr "Интервал проверки здоровья прокси (с)" msgid "Proxy Health Check URL" msgstr "URL проверки здоровья прокси" +msgid "Proxy is offline or unreachable on 127.0.0.1:4534." +msgstr "Прокси выключен или недоступен на 127.0.0.1:4534." + msgid "Proxy link is unavailable" msgstr "Ссылка прокси недоступна" +msgid "Proxy Outbound" +msgstr "Исходящий прокси (туннель)" + msgid "Proxy Section for Bot" msgstr "Секция прокси для бота" @@ -3635,9 +3722,15 @@ msgstr "PSK" msgid "Public host" msgstr "Публичный хост" +msgid "Public IP Address Isolation" +msgstr "Изоляция публичного IP-адреса" + msgid "QR code is too large" msgstr "QR-код слишком большой" +msgid "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534..." +msgstr "Опрос прямого WAN-сокета и исходящего прокси на 127.0.0.1:4534..." + msgid "QUIC (HTTP/3)" msgstr "QUIC (HTTP/3)" @@ -3653,6 +3746,9 @@ msgstr "Оценка" msgid "RDP" msgstr "RDP" +msgid "Re-run Leak Test" +msgstr "Повторить проверку утечек" + msgid "Read error" msgstr "Ошибка чтения" @@ -3791,6 +3887,9 @@ msgstr "Определить шлюз" msgid "Resolve real IP for routing" msgstr "Разрешать реальный IP для маршрутизации" +msgid "Resolver IP" +msgstr "IP резолвера" + msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "Выбор ресурсов по имени хоста внутри nfqws не поддерживается здесь; sing-box выбирает ресурсы до NFQUEUE." @@ -3884,6 +3983,12 @@ msgstr "Направлять весь не-локальный LAN-трафик msgid "Route bot API requests through this section. Leave empty to use the default mixed proxy." msgstr "Маршрутизировать запросы API бота через эту секцию. Оставьте пустым для использования смешанного прокси по умолчанию." +msgid "Route community list subnets (IP/CIDR)" +msgstr "Маршрутизировать подсети списков сообщества (IP/CIDR)" + +msgid "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers)." +msgstr "Маршрутизировать IP-подсети из списков сообщества (например, голос/медиа Discord). Отключите, если подсети сообщества пересекаются с CDN/Anycast сетями (Cloudflare/Google Cloud) и мешают другим сервисам." + msgid "Route main DNS requests through the selected section." msgstr "Маршрутизировать основные DNS-запросы через выбранную секцию." @@ -3971,6 +4076,9 @@ msgstr "Выполняется диагностика…" msgid "Russia (ru)" msgstr "Россия (ru)" +msgid "SAFE" +msgstr "БЕЗОПАСНО" + msgid "SafeSearch" msgstr "SafeSearch" @@ -4040,6 +4148,9 @@ msgstr "Секция для регистрации Cloudflare WARP API. Если msgid "Sections" msgstr "Секции" +msgid "SECURE" +msgstr "ЗАЩИЩЕНО" + msgid "Security" msgstr "Безопасность" @@ -4625,6 +4736,9 @@ msgstr "Tachyon: Бенчмарк и автоподбор DNS" msgid "Tachyon Error" msgstr "Ошибка Tachyon" +msgid "Tachyon IP & DNS Leak Detection" +msgstr "Проверка утечек IP и DNS Tachyon" + msgid "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here." msgstr "Tachyon управляет файлами pid ciadpi самостоятельно, поэтому параметры pidfile здесь не допускаются." @@ -4769,6 +4883,9 @@ msgstr "Тестирование" msgid "Testing bypass strategies in isolated sandbox..." msgstr "Тестирование стратегий обхода в изолированной песочнице..." +msgid "Testing DNS leak upstream resolvers with bash.ws protocol..." +msgstr "Тестирование восходящих DNS-резолверов по протоколу bash.ws..." + msgid "Testing strategy" msgstr "Тестирование стратегии" @@ -5156,6 +5273,9 @@ msgstr "Отдано" msgid "Upstream Mode" msgstr "Режим DNS Upstream" +msgid "Upstream Provider / ASN" +msgstr "Восходящий провайдер / ASN" + msgid "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://" msgstr "URL должен начинаться с vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2:// или tuic://" @@ -5273,6 +5393,9 @@ msgstr "Значение должно быть положительным цел msgid "Value must not contain control characters" msgstr "Значение не должно содержать символы управления" +msgid "Verdict" +msgstr "Статус" + msgid "Verifying router and service readiness..." msgstr "Проверка готовности роутера и служб..." @@ -5837,9 +5960,6 @@ msgstr "Маршрут" msgid "Resolved IP / DNS" msgstr "IP / DNS" -msgid "Verdict" -msgstr "Статус" - msgid "Check domain or IP (e.g. example.com)..." msgstr "Проверить домен или IP (напр. example.com)..." diff --git a/luci-app-tachyon/po/templates/tachyon.pot b/luci-app-tachyon/po/templates/tachyon.pot index 963854ba..b79c883f 100644 --- a/luci-app-tachyon/po/templates/tachyon.pot +++ b/luci-app-tachyon/po/templates/tachyon.pot @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: TACHYON\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-08 06:57+0300\n" -"PO-Revision-Date: 2026-09-08 06:57+0300\n" +"POT-Creation-Date: 2026-09-09 14:09+0300\n" +"PO-Revision-Date: 2026-09-09 14:09+0300\n" "Last-Translator: Dushnilin \n" "Language-Team: LANGUAGE \n" "Language: \n" @@ -16,125 +16,135 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2123 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2500 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2879 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2894 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3110 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3349 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3501 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3339 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3354 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3593 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3755 msgid "-- Select --" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11315 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11674 msgid ".lst Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2627 msgid "(provider default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045 msgid "+ Add JSON outbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3509 msgid "+ Add level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10131 msgid "+ Add priority" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13357 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13396 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:904 msgid "+ Add Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10072 msgid "+ Add URLTest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14154 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1779 msgid "⏳ Stopping..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1618 msgid "⚠️ Benchmark completed. No working bypass found for this target." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13983 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14022 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1617 msgid "⚠️ Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1489 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:122 +msgid "⚠️ CRITICAL IP LEAK: Your real public IP is exposed through the proxy outbound!" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14949 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:263 +msgid "⚠️ DNS LEAK DETECTED: DNS queries are leaking to your local Internet Service Provider!" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1491 msgid "⚠️ If all Bootstrap DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1478 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1480 msgid "⚠️ If all Main DNS fail 3 times, queries will be sent to your ISP's DNS in plaintext. Only use as a last resort to prevent complete internet loss." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11425 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11454 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:164 msgid "⚡ DPI Strategy Fuzzer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12985 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:440 msgid "⚡ Fast (>1MB/s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12785 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:209 msgid "⚡ QUIC / HTTP/3 (UDP 443)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12822 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:254 msgid "⚡ Quick Benchmark (Presets ~30+)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14346 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:2010 msgid "⚡ Strategy Fuzzer & Auto-Tuner" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14039 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14078 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1690 msgid "✅ Auto-applied best strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13978 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14017 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1611 msgid "✅ Benchmark completed! Optimal strategy identified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12937 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12976 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:431 msgid "✅ Working only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12782 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:206 msgid "✈️ Telegram Suite (Web + Bot API)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055 #: src/tachyon/tabs/dashboard/initController.ts:1976 msgid "✔ Online" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9017 #: src/tachyon/tabs/dashboard/initController.ts:1906 #: src/tachyon/tabs/dashboard/initController.ts:1917 #: src/tachyon/tabs/dashboard/initController.ts:1918 @@ -143,144 +153,164 @@ msgstr "" msgid "✔ Running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9027 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9055 #: src/tachyon/tabs/dashboard/initController.ts:1976 msgid "✘ Offline" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8973 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8980 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9008 #: src/tachyon/tabs/dashboard/initController.ts:1906 #: src/tachyon/tabs/dashboard/initController.ts:1919 msgid "✘ Stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12786 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:210 msgid "🌐 Custom Target URL..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12717 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12756 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:180 msgid "🎬 YouTube Full Suite (Web + 4K Stream + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12903 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12942 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:394 msgid "🏆 Apply Best Match" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12784 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:208 msgid "🏴‍☠️ RuTracker Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12732 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12771 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:195 msgid "🐦 X / Twitter Suite (API + Media CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12722 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12761 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:185 msgid "💬 Discord Suite (Gateway + Voice + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13342 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:841 msgid "💾 Save Custom Patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12738 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12777 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:201 msgid "📸 Instagram / Meta (Web + CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13627 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1170 msgid "🔄 Refresh" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13315 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13354 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:854 msgid "🔄 Reset to Factory Defaults" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12788 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12827 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:259 msgid "🔍 Combinatorial Deep Fuzzing (~150-300+)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13632 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1175 msgid "🗑️ Clear History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12734 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12773 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:197 msgid "🤖 ChatGPT / OpenAI Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13510 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14246 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13549 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1078 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1929 msgid "🧠 Synthesize with AI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1875 msgid "🧠 Synthesizing..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14134 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14173 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1801 msgid "🚀 Initializing benchmark in sandbox..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13071 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14016 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14194 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14233 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:580 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1657 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1867 msgid "🚀 Start Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "🛑 Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14124 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14050 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14266 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1652 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1789 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1908 msgid "🛑 Stop Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12829 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:261 msgid "🛠️ My Custom Strategies Only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12727 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11474 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:184 +msgid "🛡️ IP & DNS Leak Test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14951 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:267 +msgid "🛡️ SECURE: No DNS leaks detected. All queries resolve through non-ISP upstream resolvers." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14836 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:125 +msgid "🛡️ SECURE: No IP leak detected. Real WAN IP is concealed behind proxy outbound." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12766 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:190 msgid "🟣 Twitch Suite (Live Stream + HLS CDN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14089 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14893 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:188 +msgid "127.0.0.1:4534 (sing-box mixed)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14128 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1746 msgid "Блокировка по IP (Таймаут TCP SYN)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14096 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14135 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1757 msgid "Обнаружена блокировка по IP! Ресурс блокируется на сетевом уровне (нет ответа на TCP SYN). Методы обхода DPI (Zapret / ByeDPI) бессильны для этого адреса — настройте маршрутизацию через прокси/VPN (Sing-box) для данного домена!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:531 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:572 msgid "Accept external proxy connections and route them with sing-box." msgstr "" @@ -288,16 +318,16 @@ msgstr "" msgid "Accept routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1016 msgid "Access schedule and screen time limits" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7306 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7580 msgid "Action" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9999 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10027 #: src/tachyon/helpers/notifyActionFailure.ts:40 msgid "Action failed" msgstr "" @@ -318,16 +348,16 @@ msgstr "" msgid "Action Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13046 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13085 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13462 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:552 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:979 msgid "Actions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8371 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17263 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17848 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17641 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18226 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:464 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470 #: src/tachyon/tabs/dashboard/initController.ts:1137 @@ -346,7 +376,7 @@ msgstr "" msgid "Active (Blocking)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:56 msgid "Active Bootstrap DNS" msgstr "" @@ -358,69 +388,69 @@ msgstr "" msgid "Active Clients" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8986 #: src/tachyon/tabs/dashboard/initController.ts:1890 msgid "Active Connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67 msgid "Active Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11831 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11870 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:245 msgid "Active routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:559 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:600 msgid "Add a family profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:618 msgid "Add a schedule rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560 msgid "Add a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:578 msgid "Add a server inbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1904 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2148 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:124 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:183 msgid "Add at least one DNS server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13391 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13430 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:944 msgid "Add Custom DPI Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2590 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2834 msgid "Add prefix to nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10661 msgid "Add URLs or local paths to .lst lists containing domains and subnets." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10685 msgid "Add URLs or local paths to .lst lists containing domains. IP entries are ignored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10636 msgid "Add URLs or local paths to .srs / .json lists. Only domain rules are supported." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10267 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10607 msgid "Add URLs or local paths to .srs / .json lists. Subnets are ignored by default." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3767 msgid "Add URLTest / Priority group" msgstr "" @@ -428,36 +458,36 @@ msgstr "" msgid "Additional Individual Devices (IP / MAC)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:106 msgid "Additional marking rules found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2809 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3053 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3266 msgid "Additionally exclude servers by protocol, transport, and security. Exclude only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2792 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3248 msgid "Additionally filter servers by protocol, transport, and security. Add only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3667 msgid "Additionally hide servers by protocol, transport, and security. Hide servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3403 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3647 msgid "Additionally show servers by protocol, transport, and security. Add only servers matching the specified parameters." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14422 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1734 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:45 msgid "Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3161 msgid "Administrator Chat IDs" msgstr "" @@ -465,7 +495,7 @@ msgstr "" msgid "Adult content" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1290 msgid "Advanced System" msgstr "" @@ -477,107 +507,107 @@ msgstr "" msgid "Advertise routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9768 msgid "AEAD Method" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1289 msgid "AI & Watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2578 msgid "AI Agent REST API Bearer Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2645 msgid "AI API Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12614 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:235 msgid "AI Chat & Tachyon Assistant" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11415 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:152 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:154 msgid "AI Chat Assistant" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13528 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13567 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1099 msgid "AI Diagnostics & Strategy Rationale" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16403 -#: src/tachyon/tabs/diagnostic/initController.ts:1563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16772 +#: src/tachyon/tabs/diagnostic/initController.ts:1564 msgid "AI Doctor Diagnosis" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16406 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16414 -#: src/tachyon/tabs/diagnostic/initController.ts:857 -#: src/tachyon/tabs/diagnostic/initController.ts:1569 -#: src/tachyon/tabs/diagnostic/initController.ts:1577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16775 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16783 +#: src/tachyon/tabs/diagnostic/initController.ts:858 +#: src/tachyon/tabs/diagnostic/initController.ts:1570 +#: src/tachyon/tabs/diagnostic/initController.ts:1578 msgid "AI Doctor failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2633 msgid "AI Doctor Language" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12650 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:95 msgid "AI Doctor RAG" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13589 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1124 msgid "AI DPI Engineer & Strategy Synthesizer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2618 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2620 msgid "AI Model" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2601 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2603 msgid "AI Provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12502 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12541 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:151 msgid "AI service error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14256 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1894 msgid "AI successfully synthesized custom strategies!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1923 msgid "AI Synthesis Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14239 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14278 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1922 msgid "AI synthesis failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12928 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17660 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18191 #: src/tachyon/tabs/monitoring/initController.ts:681 #: src/tachyon/tabs/monitoring/render.ts:40 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:422 msgid "All" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3379 msgid "All checks passed — Telegram bot should work correctly" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240 msgid "All components" msgstr "" @@ -590,12 +620,12 @@ msgstr "" msgid "All Devices are Guests EXCEPT Trusted (Zero-Trust)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12731 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:151 msgid "All Engines (Full Matrix)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2020 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2264 msgid "All except selected" msgstr "" @@ -608,37 +638,37 @@ msgstr "" msgid "All Internet (Complete internet cutoff)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2274 msgid "All remaining except selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2028 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2272 msgid "All remaining servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2978 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3222 msgid "All remaining servers means every server not already assigned to a higher-priority level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17290 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17786 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17668 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18164 #: src/tachyon/tabs/monitoring/initController.ts:644 #: src/tachyon/tabs/monitoring/render.ts:49 msgid "All Routes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2019 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2263 msgid "All servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11840 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11879 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11982 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:257 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:376 msgid "All services" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10717 msgid "All traffic from these IP addresses will be routed through the section unconditionally, ignoring all other conditions." msgstr "" @@ -651,7 +681,7 @@ msgstr "" msgid "Allow in interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9614 msgid "Allow Insecure TLS" msgstr "" @@ -671,7 +701,7 @@ msgstr "" msgid "Allowed Days of Week" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5631 msgid "Allowed domain prefixes are full:, keyword:, and regex:" msgstr "" @@ -683,15 +713,15 @@ msgstr "" msgid "Allowed Start Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1817 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1819 msgid "Allows access to YACD from the WAN. Make sure to open the appropriate port in your firewall." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3013 msgid "Allows limiting the list of servers for URLTest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2590 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2592 msgid "Allows Tachyon to send diagnostic snapshots to ChatGPT or DeepSeek API for intelligent root-cause analysis and auto-repair recommendations." msgstr "" @@ -707,20 +737,20 @@ msgstr "" msgid "Always block these domains for all devices in this profile. Enter one domain per line or use category preset buttons." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1155 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1199 msgid "Always visible" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8890 msgid "AmneziaWG (Cloudflare WARP) configuration generated and loaded successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9457 msgid "AmneziaWG 3.0 / 3.1 content padding range, e.g. 38-104" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9452 msgid "AmneziaWG 3.0 / 3.1 header protection key" msgstr "" @@ -728,7 +758,7 @@ msgstr "" msgid "AmneziaWG 3.1 content padding range, e.g. 38-104" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9175 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9502 msgid "AmneziaWG 3.1 disable cookie replies" msgstr "" @@ -736,54 +766,59 @@ msgstr "" msgid "AmneziaWG 3.1 header protection key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9477 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3668 msgid "AmneziaWG 3.1 keepalive timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9482 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3674 msgid "AmneziaWG 3.1 max handshake attempts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9490 msgid "AmneziaWG 3.1 random packet trailers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9472 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3662 msgid "AmneziaWG 3.1 reject after time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9462 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3650 msgid "AmneziaWG 3.1 rekey after time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3656 msgid "AmneziaWG 3.1 rekey timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9238 msgid "AmneziaWG config loaded successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8438 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8700 msgid "AmneziaWG Generator" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9061 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9352 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3472 msgid "AmneziaWG Version" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15939 -#: src/tachyon/tabs/diagnostic/initController.ts:970 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14815 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:92 +msgid "An unexpected error occurred during test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16308 +#: src/tachyon/tabs/diagnostic/initController.ts:971 msgid "Anonymized support report copied to clipboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20496 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20874 #: src/tachyon/tabs/updates/initController.ts:942 msgid "Another component action is already running" msgstr "" @@ -796,36 +831,36 @@ msgstr "" msgid "Anti-Bypass: Block Private DNS / DoH / DoT" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2644 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2646 msgid "API Key for OpenAI (sk-...) or DeepSeek (optional for Ollama / LM Studio)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941 msgid "Applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13940 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13979 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1566 msgid "Apply" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14589 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14718 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:279 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:379 msgid "Apply Recommended DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10777 msgid "Apply rules of this section only to selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10368 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10708 msgid "Apply section rules only to the specified local IP addresses" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12865 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:302 msgid "Apply Strategy To" msgstr "" @@ -834,24 +869,24 @@ msgstr "" msgid "Apply this schedule rule to all devices in the selected family profile(s)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16069 -#: src/tachyon/tabs/diagnostic/initController.ts:1181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16438 +#: src/tachyon/tabs/diagnostic/initController.ts:1182 msgid "Applying fix" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14654 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16067 -#: src/tachyon/tabs/diagnostic/initController.ts:1179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14693 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16436 +#: src/tachyon/tabs/diagnostic/initController.ts:1180 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:353 msgid "Applying..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13417 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13456 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:973 msgid "Arguments" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12465 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:60 msgid "Ask Tachyon AI Assistant a question..." msgstr "" @@ -860,39 +895,39 @@ msgstr "" msgid "Assigned Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3170 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3172 msgid "At least one Admin Chat ID is required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5418 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5662 msgid "At least one valid domain must be specified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5744 msgid "At least one valid IP or subnet must be specified." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9866 msgid "Auth Digest" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8205 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8551 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11658 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8579 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11697 #: src/tachyon/tabs/dashboard/initController.ts:927 #: src/tachyon/tabs/dashboard/initController.ts:1365 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:594 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:35 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:594 msgid "Auto" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13277 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13316 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:813 msgid "Auto Modes (--auto)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11272 #: src/partials/modal/renderModal.ts:286 msgid "Auto refresh" msgstr "" @@ -901,130 +936,135 @@ msgstr "" msgid "Auto update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12890 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:332 msgid "Auto-apply best strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14088 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1700 msgid "Auto-apply failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2952 msgid "Auto-detected domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10517 msgid "Auto-detected Domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2908 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2910 msgid "Auto-detects blocked domains from logs and adds them to the first section where they work via proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2338 msgid "Auto-failover of proxy sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760 msgid "Auto-generate HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15997 -#: src/tachyon/tabs/diagnostic/initController.ts:1094 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16366 +#: src/tachyon/tabs/diagnostic/initController.ts:1095 msgid "Auto-Heal Network Stack" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1346 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1348 msgid "Auto-Tune & Benchmark DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8649 msgid "Auto-update Hosts Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2197 msgid "Auto-update mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2140 msgid "Automatic component update checks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2184 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2186 msgid "Automatic component updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2729 msgid "Automatic User-Agent selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835 msgid "Automatically add text to the name of each server from this subscription for convenient filtering." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1342 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1344 msgid "Automatically benchmark latency, packet loss, and anti-censorship reliability of major DNS servers (UDP/DoH) from this router to find and apply the optimal configuration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2141 msgid "Automatically check installed components for new versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2187 msgid "Automatically download and install new versions of components" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8439 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8701 msgid "Automatically generate a Cloudflare WARP account and configure all AmneziaWG settings." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2867 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2869 msgid "Automatically increase check intervals when healthy (to 5 min) and decrease on problems (to 120s)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13561 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13600 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1135 msgid "Automatically runs a diagnostic probe against the target service, queries the built-in DPI Knowledge Base, and synthesizes 3-5 custom bypass strategies tailored to your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8631 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459 #: src/tachyon/tabs/dashboard/initController.ts:1468 msgid "Automatically select the fastest node in the current level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8650 msgid "Automatically update remote hosts lists on schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11728 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11918 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11767 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11957 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:125 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:346 msgid "Available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11321 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:58 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11350 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:60 msgid "Available actions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11920 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11959 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:348 msgid "Avg. latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5633 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6078 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6490 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5877 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6734 msgid "Backend validation failed: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11675 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14881 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:175 +msgid "Baseline" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11714 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:58 msgid "Basic connectivity" msgstr "" @@ -1033,47 +1073,47 @@ msgstr "" msgid "Beginning of the schedule interval (e.g. 22:00)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10452 msgid "Belarus (by)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12647 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12686 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:92 msgid "Benchmark & Test" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14656 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:311 msgid "Benchmark completed successfully" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13584 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13623 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1166 msgid "Benchmark History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14726 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:388 msgid "Benchmark measures actual latency and resolution reliability of major DNS servers (UDP 53 and encrypted DoH) directly from your router to find the fastest, unblocked upstream for your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14156 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1781 msgid "Benchmark stopped" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12914 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:363 msgid "Benchmarking in progress..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13653 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13692 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1240 msgid "Best Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10420 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10439 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10779 msgid "BitTorrent / P2P" msgstr "" @@ -1094,7 +1134,7 @@ msgstr "" msgid "Block in interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:569 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:610 msgid "Block internet access or specific proxy sections for family profiles or individual devices based on time and days." msgstr "" @@ -1114,7 +1154,7 @@ msgstr "" msgid "Block: deny the listed sites. Allow only (whitelist): deny everything except the listed sites. Whitelist mode requires DNS-level blocking and applies to the schedule window." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11715 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:59 msgid "Blocked resources" msgstr "" @@ -1135,103 +1175,103 @@ msgstr "" msgid "Blocks port 853 (DNS-over-TLS) and prevents bypass via encrypted DNS or Private Relay on smartphones for devices in this profile." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10094 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14556 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:57 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:240 msgid "Bootstrap DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1411 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1413 msgid "Bootstrap DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3123 msgid "Bot Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10474 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10502 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:51 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:79 msgid "Browser FakeIP check could not be completed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:82 msgid "Browser is not using FakeIP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10521 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:81 msgid "Browser is using FakeIP correctly" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16573 -#: src/tachyon/tabs/diagnostic/initController.ts:1766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16945 +#: src/tachyon/tabs/diagnostic/initController.ts:1771 msgid "Bug report downloaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10212 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10538 msgid "Built-in rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2281 msgid "By flag emoji from name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2204 msgid "By schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2246 msgid "ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12730 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:150 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1981 msgid "ByeDPI (ciadpi)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6559 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6803 msgid "ByeDPI listen address and port are assigned by Tachyon and must not be set in the strategy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6980 msgid "ByeDPI option does not accept a compact value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6665 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6909 msgid "ByeDPI option does not accept a value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6657 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6683 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6717 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6726 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6901 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6927 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6961 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6970 msgid "ByeDPI option requires a value: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:71 msgid "ByeDPI package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10774 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:72 msgid "ByeDPI package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:64 msgid "ByeDPI provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10769 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:65 msgid "ByeDPI provider binary is not available" msgstr "" @@ -1241,62 +1281,67 @@ msgstr "" msgid "ByeDPI restarted after exiting; strategy or traffic load may be unstable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:107 msgid "ByeDPI sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:108 msgid "ByeDPI sing-box outbound is not configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756 msgid "ByeDPI Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7006 msgid "ByeDPI strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1910 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:155 +msgid "Bypasses proxy (SO_MARK 0x08000000)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1912 msgid "Bypasses UDP traffic for selected game consoles (PS5/Xbox) to achieve NAT Type 1 / 2 (Full Cone NAT) for P2P matchmaking, while keeping TCP (PSN/Auth) routed through the proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877 msgid "CA Certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2128 msgid "Cache all built-in lists and databases even if they are not currently selected in any section. Recommended if you have plenty of storage space or USB drive." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2375 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2377 msgid "Cache File Path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2389 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2391 msgid "Cache file path cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16450 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16822 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8221 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:476 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:659 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:710 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:778 -#: src/tachyon/tabs/diagnostic/initController.ts:1622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:661 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:712 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:780 +#: src/tachyon/tabs/diagnostic/initController.ts:1627 msgid "Cancel" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10138 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10382 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10544 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10628 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10716 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10102 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10347 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10572 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10656 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15165 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:26 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:27 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:172 @@ -1312,11 +1357,11 @@ msgstr "" msgid "Cannot save server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3898 msgid "Cannot save settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10164 msgid "Cascade connection" msgstr "" @@ -1328,18 +1373,18 @@ msgstr "" msgid "Certificate pin is unavailable. Apply or restart the server to generate the default certificate, then open this dialog again." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12353 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12392 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:865 msgid "Check again" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12342 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:793 msgid "Check all" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20594 #: src/tachyon/tabs/updates/initController.ts:570 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:326 msgid "Check completed!" @@ -1352,72 +1397,72 @@ msgstr "" msgid "Check Connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12178 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12330 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:652 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:778 msgid "Check domain" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8618 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2697 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410 #: src/tachyon/tabs/dashboard/initController.ts:1455 msgid "Check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11896 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:276 msgid "Check mode:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11435 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11464 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:174 msgid "Check Services" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3423 msgid "Check timeout after which the server is considered dead" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932 #: src/tachyon/tabs/updates/initController.ts:1011 msgid "Check update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8616 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2723 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3153 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8644 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3397 #: src/tachyon/tabs/dashboard/initController.ts:1453 msgid "Check URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12518 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12557 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:170 msgid "Check YouTube" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8775 #: src/tachyon/tabs/dashboard/initController.ts:1634 msgid "Checking Connection..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19532 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19910 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:117 msgid "Checking for updates..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10064 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10128 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10309 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10370 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10453 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10534 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10618 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10706 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14784 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16830 -#: src/tachyon/tabs/diagnostic/initController.ts:2072 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10398 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10481 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10562 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10734 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15153 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17208 +#: src/tachyon/tabs/diagnostic/initController.ts:2083 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:14 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:15 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:15 @@ -1442,32 +1487,32 @@ msgid "Checking..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3013 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3015 msgid "Checking…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5984 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6012 #: src/tachyon/tabs/diagnostic/helpers/getCheckTitle.ts:2 msgid "checks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10034 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10512 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10062 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10540 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:10 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:26 msgid "Checks failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10023 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10469 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10551 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:23 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:43 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:13 msgid "Checks passed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10046 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10074 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:27 msgid "Checks passed with manual DHCP" msgstr "" @@ -1476,7 +1521,7 @@ msgstr "" msgid "Child (🧒)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10449 msgid "China (cn)" msgstr "" @@ -1484,11 +1529,11 @@ msgstr "" msgid "Choose a visual icon for this profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7887 msgid "Choose Hosts File..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2198 msgid "Choose whether to install updates immediately when detected or at a scheduled time (e.g. maintenance window)" msgstr "" @@ -1496,7 +1541,7 @@ msgstr "" msgid "Choose whether to restrict the entire internet or only specific Tachyon routing sections." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10408 msgid "Choose whether to route traffic to all destinations except selected countries (Exclude) or only to selected countries (Include)." msgstr "" @@ -1509,28 +1554,28 @@ msgstr "" msgid "CIDR must be between 0 and 32 for IPv4 or 0 and 128 for IPv6" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9855 msgid "Cipher" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8350 msgid "Clean Comments" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11396 msgid "Clear" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15990 -#: src/tachyon/tabs/diagnostic/initController.ts:1087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16359 +#: src/tachyon/tabs/diagnostic/initController.ts:1088 msgid "Clear DNS cache" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1159 msgid "Click to hide" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1160 msgid "Click to show" msgstr "" @@ -1538,7 +1583,7 @@ msgstr "" msgid "Client Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9889 msgid "Client Certificate" msgstr "" @@ -1550,7 +1595,7 @@ msgstr "" msgid "Client fingerprint" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9901 msgid "Client Key" msgstr "" @@ -1578,29 +1623,31 @@ msgstr "" msgid "Client VPN IP address (e.g. 10.0.0.2/32)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8489 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11223 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12358 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12568 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13083 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14595 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16394 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17987 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18030 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19784 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19819 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3721 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11344 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8517 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11251 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11815 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12607 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18408 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3965 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11703 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1826 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2037 #: src/partials/modal/renderModal.ts:263 +#: src/tachyon/tabs/diagnostic/initController.ts:1554 #: src/tachyon/tabs/dashboard/initController.ts:1277 -#: src/tachyon/tabs/diagnostic/initController.ts:1553 #: src/tachyon/tabs/monitoring/initController.ts:893 #: src/tachyon/tabs/monitoring/initController.ts:948 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:227 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:286 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:379 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:178 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:871 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:594 @@ -1609,81 +1656,81 @@ msgstr "" msgid "Close" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17309 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17688 #: src/tachyon/tabs/monitoring/render.ts:68 #: src/tachyon/tabs/monitoring/render.ts:69 msgid "Close all connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17956 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18334 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18335 #: src/tachyon/tabs/monitoring/initController.ts:860 #: src/tachyon/tabs/monitoring/initController.ts:861 msgid "Close connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17272 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17854 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17650 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18232 #: src/tachyon/tabs/monitoring/initController.ts:729 #: src/tachyon/tabs/monitoring/render.ts:29 msgid "Closed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9468 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9794 msgid "Cloudflare account / device ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9480 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9806 msgid "Cloudflare API access token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9528 msgid "Cloudflare WARP account / device ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9214 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9540 msgid "Cloudflare WARP API access token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3162 msgid "Comma-separated list of Telegram user IDs authorized to control the bot." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13353 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13392 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:899 msgid "Command-line arguments string..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11311 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11670 msgid "Community Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4161 -#: src/tachyon/methods/shell/index.ts:928 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4169 +#: src/tachyon/methods/shell/index.ts:930 msgid "Component action timed out" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7068 #: src/tachyon/services/core.service.ts:43 msgid "Component update available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2148 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2150 msgid "Component update check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1042 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1044 msgid "Component versions and update manager" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1041 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:672 msgid "Components" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6619 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6647 #: src/tachyon/helpers/singBoxVariant.ts:56 msgid "compressed" msgstr "" @@ -1692,46 +1739,46 @@ msgstr "" msgid "Concurrency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7294 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7539 msgid "Conditions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14143 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1767 msgid "confidence" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2363 msgid "Config File Path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2549 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2551 msgid "Config Snapshots" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4718 -#: src/tachyon/methods/shell/index.ts:1660 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4726 +#: src/tachyon/methods/shell/index.ts:1662 msgid "Configuration applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:418 msgid "Configuration for Tachyon service" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5057 msgid "Configure User-Agent in the item settings" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14864 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15233 #: src/tachyon/methods/custom/getDashboardSections.ts:1695 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:314 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:146 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:314 msgid "Conflict" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9876 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202 msgid "Connect through" msgstr "" @@ -1742,26 +1789,31 @@ msgstr "" msgid "Connected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16150 -#: src/tachyon/tabs/diagnostic/initController.ts:1276 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16519 +#: src/tachyon/tabs/diagnostic/initController.ts:1277 msgid "Connected Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9599 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:138 +msgid "Connection Path" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9925 msgid "Connection URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18460 #: src/tachyon/tabs/monitoring/initController.ts:1012 msgid "Connections are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14898 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15267 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:184 msgid "Connectivity probe failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14208 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14247 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1884 msgid "Consulting DPI Knowledge Base & AI..." msgstr "" @@ -1770,7 +1822,7 @@ msgstr "" msgid "Content Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3643 msgid "Content Padding Addition" msgstr "" @@ -1785,59 +1837,69 @@ msgstr "" msgid "Copied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11244 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1776 #: src/partials/modal/renderModal.ts:258 msgid "Copy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21579 #: src/tachyon/tabs/updates/initController.ts:1807 msgid "Copy address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19574 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19952 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:165 msgid "Copy log" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2708 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2709 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8449 #: src/tachyon/tabs/dashboard/initController.ts:1202 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:640 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:641 msgid "Copy proxy link" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356 -#: src/tachyon/tabs/diagnostic/initController.ts:1511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16725 +#: src/tachyon/tabs/diagnostic/initController.ts:1512 msgid "Copy Support Report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1049 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1051 msgid "Core configuration and preferences" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:89 msgid "Could not compare FakeIP and control public IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10129 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14805 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:82 +msgid "Could not contact leak test endpoints. Please ensure router has internet access." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14990 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:313 +msgid "Country" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10455 msgid "Country code (e.g. ru, us, de)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16307 -#: src/tachyon/tabs/diagnostic/initController.ts:1452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16676 +#: src/tachyon/tabs/diagnostic/initController.ts:1453 msgid "Current Diagnosis" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9893 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10219 msgid "Current section cannot be used as its own transit section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2721 msgid "Current section cannot download its own subscription" msgstr "" @@ -1846,24 +1908,24 @@ msgstr "" msgid "Currently unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11717 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:61 msgid "Custom" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2656 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2658 msgid "Custom API Endpoint URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2553 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2797 msgid "Custom device headers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7988 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8233 msgid "Custom DNS Records (Hosts)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:60 msgid "Custom domains" msgstr "" @@ -1884,24 +1946,24 @@ msgstr "" msgid "Custom header for handshake response" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2613 msgid "Custom OpenAI-Compatible API" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2659 msgid "Custom OpenAI-compatible API endpoint URL (e.g. http://192.168.1.100:11434/v1/chat/completions)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10040 msgid "Custom outbound configurations in JSON format" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:927 msgid "Custom strategy added!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1317 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1319 msgid "Customize the order and visibility of tabs in the main navigation menu. Use the arrows to reorder and checkboxes to show or hide tabs." msgstr "" @@ -1926,9 +1988,9 @@ msgstr "" msgid "Daily Traffic Limit (MB)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:985 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:987 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:541 msgid "Dashboard" msgstr "" @@ -1937,12 +1999,12 @@ msgstr "" msgid "Dashboard currently unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13806 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13845 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1416 msgid "Data transfer verified: streamed >= 32KB without throttling or disconnect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13633 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13672 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1220 msgid "Date" msgstr "" @@ -1951,59 +2013,59 @@ msgstr "" msgid "Days of Week" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1394 msgid "Dedicated cgroup unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3288 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3290 msgid "Default (auto)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2460 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2472 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2462 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2474 msgid "Default (Direct WAN / Default mixed proxy)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2266 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2268 msgid "Default address for checking server availability and latency. URLTest uses its own address." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1298 msgid "Default Tab on Startup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1792 msgid "Delay in milliseconds before reloading Tachyon after interface UP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1797 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1799 msgid "Delay value cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13478 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13517 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:722 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:730 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:732 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1039 msgid "Delete" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:692 msgid "Delete Snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:695 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:697 msgid "Delete the snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2779 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2991 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3235 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3634 msgid "Detect server country" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2433 msgid "Detects and drops STUN/TURN packets in nftables to prevent real IP leaks via WebRTC." msgstr "" @@ -2017,16 +2079,16 @@ msgstr "" msgid "dev." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10707 msgid "Device filter" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7025 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7269 msgid "Device or IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16225 -#: src/tachyon/tabs/diagnostic/initController.ts:1359 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16594 +#: src/tachyon/tabs/diagnostic/initController.ts:1360 msgid "Device updated" msgstr "" @@ -2038,79 +2100,84 @@ msgstr "" msgid "Devices that are isolated as guests. Enter IP or MAC addresses, or pick from active LAN devices." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:37 msgid "DHCP has DNS server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10076 #: src/tachyon/tabs/diagnostic/checks/getDnsCheckPresentation.ts:36 msgid "DHCP is managed manually" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1034 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:658 msgid "Diagnostics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11649 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11688 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11694 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2743 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:25 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:32 msgid "Direct" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9232 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9558 msgid "Direct (Default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213 -#: src/tachyon/tabs/diagnostic/initController.ts:1346 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582 +#: src/tachyon/tabs/diagnostic/initController.ts:1347 msgid "Direct Bypass" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3212 msgid "Direct connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20848 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21226 #: src/tachyon/tabs/updates/initController.ts:1377 msgid "Direct Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207 -#: src/tachyon/tabs/diagnostic/initController.ts:1337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 +#: src/tachyon/tabs/diagnostic/initController.ts:1338 msgid "Direct WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20790 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20805 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:148 +msgid "Direct WAN (ISP)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21168 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21183 #: src/tachyon/tabs/updates/initController.ts:1302 #: src/tachyon/tabs/updates/initController.ts:1320 msgid "Disable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11357 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:94 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11386 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:96 msgid "Disable autostart" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9174 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9501 msgid "Disable Cookies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1841 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1843 msgid "Disable QUIC" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1842 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1844 msgid "Disable the QUIC protocol to improve compatibility or fix issues with video streaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:457 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:470 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:944 @@ -2120,91 +2187,91 @@ msgstr "" msgid "Disabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6404 msgid "Disabling interception is incompatible with action=zapret2 because Tachyon sends matched traffic through NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13304 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:801 msgid "Disorder Values (-d)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2679 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2923 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3386 msgid "Display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10423 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10782 msgid "DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1343 msgid "DNS Auto-Tuner & Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1515 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1517 msgid "DNS Check Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2759 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2761 msgid "DNS Check Interval (s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1547 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1549 msgid "DNS Failures Before Switching" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10134 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:75 msgid "DNS on router" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2119 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366 msgid "DNS over HTTPS (DoH)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1877 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1366 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1368 msgid "DNS over QUIC (DoQ)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1876 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367 msgid "DNS over TLS (DoT)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2646 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2890 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7609 msgid "DNS protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14569 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:213 msgid "DNS Protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1363 msgid "DNS Protocol Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2647 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7365 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2891 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7610 msgid "DNS protocol used by the resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7435 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1645 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7680 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1647 msgid "DNS requests through section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1589 msgid "DNS Rewrite TTL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2656 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2900 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7623 msgid "DNS server" msgstr "" @@ -2217,121 +2284,126 @@ msgstr "" msgid "DNS server pushed to the client configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2657 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2901 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7624 msgid "DNS server used by the resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1414 msgid "DNS server used to obtain IP addresses for upstream DNS and proxies. If multiple servers are selected, a timeout switches to a backup." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1395 msgid "DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285 msgid "DNS Settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1623 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625 msgid "DNS Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1567 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1569 msgid "DNS Successful Checks Before Recovery" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1636 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1638 msgid "DNS through proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7423 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7668 msgid "DNS through section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1611 msgid "DNS Turbo Cache" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1537 msgid "DNS Unavailability Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15027 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:354 +msgid "DNS Upstream Resolver Analysis (bash.ws protocol)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15110 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:26 msgid "Do not panic, everything can be fixed, just..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2852 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3096 msgid "Do not test servers from these countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2868 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3112 msgid "Do not test servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3057 msgid "Do not test servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2819 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3063 msgid "Do not test servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060 msgid "Do not test servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2860 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3104 msgid "Do not test specified servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15798 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15806 -#: src/tachyon/tabs/diagnostic/initController.ts:731 -#: src/tachyon/tabs/diagnostic/initController.ts:773 -#: src/tachyon/tabs/diagnostic/initController.ts:781 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16175 +#: src/tachyon/tabs/diagnostic/initController.ts:732 +#: src/tachyon/tabs/diagnostic/initController.ts:774 +#: src/tachyon/tabs/diagnostic/initController.ts:782 msgid "Doctor failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: src/tachyon/tabs/diagnostic/initController.ts:747 -#: src/tachyon/tabs/diagnostic/initController.ts:759 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: src/tachyon/tabs/diagnostic/initController.ts:748 #: src/tachyon/tabs/diagnostic/initController.ts:760 +#: src/tachyon/tabs/diagnostic/initController.ts:761 msgid "Doctor repair" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:54 msgid "Does not resolve" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10660 msgid "Domain and IP lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10344 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10684 msgid "Domain lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2881 msgid "Domain Resolver" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2920 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2922 msgid "Domain test sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10162 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11312 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11671 msgid "Domains" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10192 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10518 msgid "Domains automatically detected by Smart Detect or added via Telegram bot. You can manually edit or remove them here." msgstr "" @@ -2339,22 +2411,22 @@ msgstr "" msgid "Domains to block for the selected devices. Leave empty to block all internet. Enter one domain per line, e.g. youtube.com. Use the preset buttons to quickly add common categories." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9237 msgid "Done" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2326 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2328 msgid "Dont Touch My DHCP!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8935 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8963 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8975 #: src/tachyon/tabs/dashboard/initController.ts:1865 #: src/tachyon/tabs/dashboard/initController.ts:1878 msgid "Downlink" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11239 #: src/partials/modal/renderModal.ts:253 msgid "Download" msgstr "" @@ -2363,81 +2435,81 @@ msgstr "" msgid "Download .conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2307 msgid "Download component packages via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2313 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2315 msgid "Download components through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2304 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2306 msgid "Download components through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2293 msgid "Download lists through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2284 msgid "Download lists through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2285 msgid "Download remote lists and rule sets via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2451 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2695 msgid "Download subscription through a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2696 msgid "Download subscriptions via the selected section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2460 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2704 msgid "Download through" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17980 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18027 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18358 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18544 #: src/tachyon/tabs/monitoring/initController.ts:886 #: src/tachyon/tabs/monitoring/initController.ts:945 #: src/tachyon/tabs/monitoring/initController.ts:1134 msgid "Downloaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1999 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2001 msgid "Downloading and applying rule sets and lists..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14142 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1766 msgid "DPI Detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12705 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12744 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:166 msgid "DPI Engine" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13820 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13859 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1431 msgid "DPI throttling: stream cut off after ~16KB payload transfer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13648 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13687 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1235 msgid "DPI Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:515 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:556 msgid "Drag rows to change priority. The rule at the top is checked first." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10404 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10744 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11680 msgid "DSCP marks (QoS)" msgstr "" @@ -2446,15 +2518,15 @@ msgstr "" msgid "Duplicate JSON outbound tag" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4859 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5103 msgid "Duplicate value" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9856 msgid "e.g. AES-256-GCM — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11394 msgid "e.g. google.com, 1.1.1.1, 443" msgstr "" @@ -2470,11 +2542,11 @@ msgstr "" msgid "e.g. Kids Phone (Night YouTube)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9541 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9867 msgid "e.g. SHA256 — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1878 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1880 msgid "Each entry must be \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp), e.g. tcp:6881,udp:6881-6889" msgstr "" @@ -2483,30 +2555,30 @@ msgstr "" msgid "Edit" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2236 msgid "Eligible components for auto-update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20796 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21174 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21189 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:282 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7541 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2657 #: src/tachyon/tabs/updates/initController.ts:1309 #: src/tachyon/tabs/updates/initController.ts:1327 msgid "Enable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2866 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2868 msgid "Enable Adaptive Intervals" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2589 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2591 msgid "Enable AI Doctor (ChatGPT / LLM Analysis)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2880 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2882 msgid "Enable Anomaly Detection" msgstr "" @@ -2514,37 +2586,37 @@ msgstr "" msgid "Enable authentication" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1945 msgid "Enable automatic updates for remote lists and rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11367 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11396 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:106 msgid "Enable autostart" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2882 msgid "Enable built-in DNS resolver for domains handled by this section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2826 msgid "Enable Config Validation" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15998 -#: src/tachyon/tabs/diagnostic/initController.ts:1095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16367 +#: src/tachyon/tabs/diagnostic/initController.ts:1096 msgid "Enable Direct WAN Bypass" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2748 msgid "Enable DNS Continuous Check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2771 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2773 msgid "Enable Firewall Reload Dedup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2840 msgid "Enable Graceful Degradation" msgstr "" @@ -2552,78 +2624,78 @@ msgstr "" msgid "Enable Guest Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2785 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2787 msgid "Enable Health Metrics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1944 msgid "Enable list updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10240 msgid "Enable Mixed Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10283 msgid "Enable Mixed Proxy Authentication" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1694 msgid "Enable Output Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2702 msgid "Enable Proxy Health Monitor" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2674 msgid "Enable RAG (Knowledge Base Retrieval)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2810 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2812 msgid "Enable Smart Cooldowns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2907 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2909 msgid "Enable Smart Detect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3131 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3133 msgid "Enable Telegram Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1490 msgid "Enable WAN DNS Fallback for Bootstrap DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1479 msgid "Enable WAN DNS Fallback for Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2565 msgid "Enable Watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1806 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1808 msgid "Enable YACD" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1818 msgid "Enable YACD WAN Access" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20849 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1379 #: src/tachyon/tabs/updates/initController.ts:1396 msgid "Enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3134 msgid "Enables the background daemon that polls Telegram for commands and sends notifications." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2566 msgid "Enables the background watchdog process to monitor services and auto-recover on failures." msgstr "" @@ -2643,9 +2715,9 @@ msgstr "" msgid "Enforce SafeSearch & YouTube Restricted Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13001 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13416 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13677 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:507 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:972 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1225 @@ -2656,28 +2728,28 @@ msgstr "" msgid "Enter a complete sing-box inbound object" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4313 msgid "Enter a complete sing-box outbound object" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2691 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3147 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4024 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4040 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2935 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3391 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4268 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4284 msgid "Enter a display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12171 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12210 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:644 msgid "Enter a domain or IP to check (e.g. example.com)..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2941 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2962 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3206 msgid "Enter a level name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9342 msgid "Enter a number or range, e.g. 25 or 25-35" msgstr "" @@ -2685,7 +2757,7 @@ msgstr "" msgid "Enter a positive whole number in megabytes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2229 msgid "Enter a valid time in HH:MM format (00:00 to 23:59)" msgstr "" @@ -2695,46 +2767,46 @@ msgstr "" msgid "Enter a whole number of minutes between 0 and 1440" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2778 msgid "Enter HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3143 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3145 msgid "Enter the API token obtained from @BotFather." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2526 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2770 msgid "Enter the HWID sent with subscription requests" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9951 msgid "Enter the subscription URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8547 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8550 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8561 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8564 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8638 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8641 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8648 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8651 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8765 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8779 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8782 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8809 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8823 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8905 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8912 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8915 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9031 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9045 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9048 msgid "Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8916 msgid "Error running generator:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11561 msgid "Error running trace:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2090 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2117 msgid "Error updating lists:" msgstr "" @@ -2742,60 +2814,60 @@ msgstr "" msgid "Every day" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14407 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14446 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:74 msgid "EXCELLENT" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2808 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3021 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3666 msgid "Exclude by proxy parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2867 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3083 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3482 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3327 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3726 msgid "Exclude by regular expression" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3067 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3466 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3311 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3710 msgid "Exclude countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10412 msgid "Exclude selected countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3075 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3474 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3718 msgid "Exclude servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3273 msgid "Exclude servers with one of the selected protocols from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3279 msgid "Exclude servers with one of the selected security types from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3276 msgid "Exclude servers with one of the selected transports from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10755 msgid "Exclude traffic types" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3781 msgid "Exclude URLTest / Priority group" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10387 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10727 msgid "Excluded devices" msgstr "" @@ -2808,16 +2880,16 @@ msgstr "" msgid "Expires" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9915 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10241 msgid "Expose this section as a local HTTP+SOCKS proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6623 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6651 #: src/tachyon/helpers/singBoxVariant.ts:60 msgid "extended" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1000 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1002 msgid "External inbound proxy servers" msgstr "" @@ -2826,72 +2898,72 @@ msgstr "" msgid "External NFQUEUE rules overlap with Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5694 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5938 msgid "External nfqws config files bypass Tachyon queue management and explicit validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6383 msgid "External nfqws2 config files bypass Tachyon queue management and explicit validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14419 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14458 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:86 msgid "FAILED" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4712 -#: src/tachyon/methods/shell/index.ts:1654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4720 +#: src/tachyon/methods/shell/index.ts:1656 msgid "Failed to apply DNS configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14713 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:374 msgid "Failed to apply DNS settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16085 -#: src/tachyon/tabs/diagnostic/initController.ts:1202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16454 +#: src/tachyon/tabs/diagnostic/initController.ts:1203 msgid "Failed to apply fix" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4427 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14261 -#: src/tachyon/methods/shell/index.ts:1255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4435 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14300 +#: src/tachyon/methods/shell/index.ts:1257 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1945 msgid "Failed to apply strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4604 -#: src/tachyon/methods/shell/index.ts:1507 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4612 +#: src/tachyon/methods/shell/index.ts:1509 msgid "Failed to auto-apply strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4642 -#: src/tachyon/methods/shell/index.ts:1552 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4650 +#: src/tachyon/methods/shell/index.ts:1554 msgid "Failed to clear fuzzer history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18733 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18747 #: src/tachyon/tabs/monitoring/initController.ts:1400 #: src/tachyon/tabs/monitoring/initController.ts:1415 msgid "Failed to close connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18384 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18396 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18774 #: src/tachyon/tabs/monitoring/initController.ts:1434 #: src/tachyon/tabs/monitoring/initController.ts:1447 msgid "Failed to close connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1926 msgid "Failed to communicate with AI provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15943 -#: src/tachyon/tabs/diagnostic/initController.ts:974 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16312 +#: src/tachyon/tabs/diagnostic/initController.ts:975 msgid "Failed to copy report to clipboard" msgstr "" @@ -2901,114 +2973,119 @@ msgstr "" msgid "Failed to copy!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:583 msgid "Failed to delete snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4581 -#: src/tachyon/methods/shell/index.ts:1479 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4589 +#: src/tachyon/methods/shell/index.ts:1481 msgid "Failed to detect DPI type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3614 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3617 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20363 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20537 -#: src/tachyon/methods/shell/index.ts:199 -#: src/tachyon/methods/shell/index.ts:206 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20915 #: src/tachyon/tabs/updates/initController.ts:693 #: src/tachyon/tabs/updates/initController.ts:694 #: src/tachyon/tabs/updates/initController.ts:773 #: src/tachyon/tabs/updates/initController.ts:989 +#: src/tachyon/methods/shell/index.ts:199 +#: src/tachyon/methods/shell/index.ts:206 msgid "Failed to execute" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4743 +#: src/tachyon/methods/shell/index.ts:1683 +msgid "Failed to execute IP and DNS leak check" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4030 #: src/tachyon/methods/shell/index.ts:730 msgid "Failed to fetch releases" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 -#: src/tachyon/tabs/diagnostic/initController.ts:1769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16948 +#: src/tachyon/tabs/diagnostic/initController.ts:1774 msgid "Failed to generate bug report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8551 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8565 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8827 msgid "Failed to generate WARP config:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4680 -#: src/tachyon/methods/shell/index.ts:1606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4688 +#: src/tachyon/methods/shell/index.ts:1608 msgid "Failed to get DNS benchmark status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4624 -#: src/tachyon/methods/shell/index.ts:1529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4632 +#: src/tachyon/methods/shell/index.ts:1531 msgid "Failed to get fuzzer history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4510 -#: src/tachyon/methods/shell/index.ts:1383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4518 +#: src/tachyon/methods/shell/index.ts:1385 msgid "Failed to get fuzzer patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4385 -#: src/tachyon/methods/shell/index.ts:1207 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4393 +#: src/tachyon/methods/shell/index.ts:1209 msgid "Failed to get fuzzer status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4454 -#: src/tachyon/methods/shell/index.ts:1307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4462 +#: src/tachyon/methods/shell/index.ts:1309 msgid "Failed to get fuzzer strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4046 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4054 #: src/tachyon/methods/shell/index.ts:759 msgid "Failed to install version" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13742 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13781 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1338 msgid "Failed to load history" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:745 msgid "Failed to load snapshots" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21324 #: src/tachyon/tabs/updates/initController.ts:1511 msgid "Failed to load versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9049 msgid "Failed to parse file:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11819 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11858 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:231 msgid "Failed to parse target list." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8906 msgid "Failed to parse WARP config:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003 #: src/tachyon/methods/shell/index.ts:697 msgid "Failed to read operation log" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12510 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:115 msgid "Failed to receive response from AI service." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4562 -#: src/tachyon/methods/shell/index.ts:1458 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4570 +#: src/tachyon/methods/shell/index.ts:1460 msgid "Failed to reset fuzzer patterns" msgstr "" @@ -3016,59 +3093,59 @@ msgstr "" msgid "Failed to reset settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16384 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16475 -#: src/tachyon/tabs/diagnostic/initController.ts:1543 -#: src/tachyon/tabs/diagnostic/initController.ts:1651 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16753 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16847 +#: src/tachyon/tabs/diagnostic/initController.ts:1544 +#: src/tachyon/tabs/diagnostic/initController.ts:1656 msgid "Failed to restore native internet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:568 msgid "Failed to restore snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3362 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390 msgid "Failed to run diagnostics — is the tachyon binary installed?" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4536 -#: src/tachyon/methods/shell/index.ts:1416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4544 +#: src/tachyon/methods/shell/index.ts:1418 msgid "Failed to save fuzzer patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13349 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:849 msgid "Failed to save patterns" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:798 msgid "Failed to save snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14192 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14231 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14681 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:339 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1865 msgid "Failed to start benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3077 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3079 msgid "Failed to start bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4660 -#: src/tachyon/methods/shell/index.ts:1582 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4668 +#: src/tachyon/methods/shell/index.ts:1584 msgid "Failed to start DNS benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4362 -#: src/tachyon/methods/shell/index.ts:1181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4370 +#: src/tachyon/methods/shell/index.ts:1183 msgid "Failed to start fuzzer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11802 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12374 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11841 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12413 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:213 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:890 msgid "Failed to start service check." @@ -3078,17 +3155,17 @@ msgstr "" msgid "Failed to start watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3093 msgid "Failed to stop bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4699 -#: src/tachyon/methods/shell/index.ts:1626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4707 +#: src/tachyon/methods/shell/index.ts:1628 msgid "Failed to stop DNS benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4399 -#: src/tachyon/methods/shell/index.ts:1222 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4407 +#: src/tachyon/methods/shell/index.ts:1224 msgid "Failed to stop fuzzer" msgstr "" @@ -3096,30 +3173,30 @@ msgstr "" msgid "Failed to stop watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8026 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8054 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8060 #: src/tachyon/tabs/dashboard/initController.ts:704 #: src/tachyon/tabs/dashboard/initController.ts:710 msgid "Failed to switch proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4487 -#: src/tachyon/methods/shell/index.ts:1352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4495 +#: src/tachyon/methods/shell/index.ts:1354 msgid "Failed to synthesize AI strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16230 -#: src/tachyon/tabs/diagnostic/initController.ts:1364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16599 +#: src/tachyon/tabs/diagnostic/initController.ts:1365 msgid "Failed to update device" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7732 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7747 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7783 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8689 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8692 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7775 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7808 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8717 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8720 #: src/tachyon/tabs/dashboard/initController.ts:313 #: src/tachyon/tabs/dashboard/initController.ts:314 #: src/tachyon/tabs/dashboard/initController.ts:334 @@ -3130,31 +3207,31 @@ msgstr "" msgid "Failed to update subscriptions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2350 msgid "Failover failure threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14452 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:80 msgid "FAIR" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13873 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1446 msgid "Fake packets reached remote server (HTTP 400 Bad Request)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:91 msgid "FakeIP and control checks use different public IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10527 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:92 msgid "FakeIP and control checks use the same public IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10499 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:46 msgid "FakeIP works; public IP comparison is inconclusive" msgstr "" @@ -3163,20 +3240,20 @@ msgstr "" msgid "FakeTLS host" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14603 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:248 msgid "Fallback DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1428 msgid "Fallback DNS Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1441 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443 msgid "Fallback DNS servers must be plain UDP (IP or hostname). DoH/DoT URLs are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1445 msgid "Fallback DNS servers must be plain UDP (IP or hostname). Path-style DoH (e.g. domain/path) is not allowed here." msgstr "" @@ -3188,104 +3265,104 @@ msgstr "" msgid "Family (🏠)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:558 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:599 msgid "Family Profile" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1006 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:591 msgid "Family Profiles" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1007 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1009 msgid "Family profiles and device grouping" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2749 msgid "Faster DNS health monitoring than the default cycle. Switches bootstrap DNS on failure." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8636 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3226 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8664 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3470 #: src/tachyon/tabs/dashboard/initController.ts:1474 msgid "Faster server search interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5141 #: src/tachyon/methods/custom/getDashboardSections.ts:674 msgid "Fastest" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11985 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12024 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:425 msgid "Filter by service:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3623 msgid "Filter the servers that will be displayed on the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12918 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12957 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:412 msgid "Filter:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8357 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8615 msgid "Finished with code" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446 msgid "Finland (fi)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10319 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:136 msgid "Firewall WAN port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16079 -#: src/tachyon/tabs/diagnostic/initController.ts:1196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16448 +#: src/tachyon/tabs/diagnostic/initController.ts:1197 msgid "Fix applied" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15984 -#: src/tachyon/tabs/diagnostic/initController.ts:1081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16353 +#: src/tachyon/tabs/diagnostic/initController.ts:1082 msgid "Fix resolv.conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3899 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2359 msgid "Fix the highlighted fields and save again." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16075 -#: src/tachyon/tabs/diagnostic/initController.ts:753 -#: src/tachyon/tabs/diagnostic/initController.ts:1192 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16444 +#: src/tachyon/tabs/diagnostic/initController.ts:754 +#: src/tachyon/tabs/diagnostic/initController.ts:1193 msgid "Fixed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16001 -#: src/tachyon/tabs/diagnostic/initController.ts:1098 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16370 +#: src/tachyon/tabs/diagnostic/initController.ts:1099 msgid "Flush Conntrack Table" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13273 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:768 msgid "Fooling Methods (dpi-desync-fooling)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13185 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13224 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:717 msgid "Fooling Methods (fooling)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1990 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992 msgid "Force immediate download and refresh of all remote lists and rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10716 msgid "Forced device routing" msgstr "" @@ -3293,16 +3370,16 @@ msgstr "" msgid "Forces SafeSearch on Google, Yandex, Bing, DuckDuckGo and Strict Restricted Mode on YouTube via DNS rewrite for all devices in this profile." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2445 msgid "Forces sing-box to tunnel DNS requests via DoQ with Encrypted Client Hello (ECH) for SNI hiding." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "Found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10119 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445 msgid "France (fr)" msgstr "" @@ -3326,20 +3403,20 @@ msgstr "" msgid "Fronting proxy protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12521 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12560 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:173 msgid "Full System Diagnostic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6401 msgid "Fuzzing is not supported here because Tachyon needs deterministic runtime validation." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1921 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1923 msgid "Game Console IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1909 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1911 msgid "Game Console Optimizer (NAT Type 1)" msgstr "" @@ -3351,91 +3428,91 @@ msgstr "" msgid "Gaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2541 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2785 msgid "Generate a random 16-character hexadecimal HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11462 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:199 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11501 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:211 msgid "Generate bug report" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2540 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2545 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2784 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2789 msgid "Generate HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2517 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2761 msgid "Generate HWID from router hardware information for this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8444 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8483 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8505 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8706 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8767 msgid "Generate WARP Config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10283 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:89 msgid "Generated inbound" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8888 msgid "Generated!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8542 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8804 msgid "Generating…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10109 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10435 msgid "GeoIP Countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10081 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10407 msgid "GeoIP Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11317 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11676 msgid "GeoSite / GeoIP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10116 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10442 msgid "Germany (de)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:115 msgid "Get global check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:765 msgid "Give the snapshot a name. It is saved with the current date and can be restored from this list later." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15753 -#: src/tachyon/tabs/diagnostic/initController.ts:703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16122 +#: src/tachyon/tabs/diagnostic/initController.ts:704 msgid "Global check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15764 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15768 -#: src/tachyon/tabs/diagnostic/initController.ts:714 -#: src/tachyon/tabs/diagnostic/initController.ts:718 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16133 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16137 +#: src/tachyon/tabs/diagnostic/initController.ts:715 +#: src/tachyon/tabs/diagnostic/initController.ts:719 msgid "Global check failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14257 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14296 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1941 msgid "Global Default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14449 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:77 msgid "GOOD" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:551 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:592 msgid "Group devices into family profiles to manage content filtering, SafeSearch, and screen time limits in one place." msgstr "" @@ -3447,16 +3524,16 @@ msgstr "" msgid "Guest Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1020 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:586 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:627 msgid "Guest Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:628 msgid "Guest mode isolates guest devices from local LAN and router administration, while allowing internet access with daily quotas and schedules." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1021 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1023 msgid "Guest network isolation and device quotas" msgstr "" @@ -3464,12 +3541,12 @@ msgstr "" msgid "Handshake timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9156 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9451 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3637 msgid "Header Protection Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12386 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12425 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:14 msgid "Hello! I am Tachyon AI Assistant. How can I help you today? Ask me about domain blocks, diagnostics, or router settings." msgstr "" @@ -3494,137 +3571,137 @@ msgstr "" msgid "Hex or binary payload for response" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2870 msgid "Hide cascade connection nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2615 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2859 msgid "Hide individual nodes that are already included in imported subscription URLTest groups" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2871 msgid "Hide intermediate nodes used as detours by other subscription nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3475 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3719 msgid "Hide selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3538 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3782 msgid "Hide servers from selected groups without repeating their filtering criteria." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3467 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3711 msgid "Hide servers from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3483 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3727 msgid "Hide servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3430 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3674 msgid "Hide servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3678 msgid "Hide servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3675 msgid "Hide servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2858 msgid "Hide URLTest group nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11263 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11291 #: src/partials/modal/renderModal.ts:310 msgid "Hide values" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616 #: src/tachyon/tabs/updates/initController.ts:1847 msgid "Hide versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8623 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8651 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3434 #: src/tachyon/tabs/dashboard/initController.ts:1460 msgid "Higher-level check interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1525 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1527 msgid "Higher-priority DNS Check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12651 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16331 -#: src/tachyon/tabs/diagnostic/initController.ts:1480 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16700 +#: src/tachyon/tabs/diagnostic/initController.ts:1481 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:96 msgid "History" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4647 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13597 -#: src/tachyon/methods/shell/index.ts:1557 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13636 +#: src/tachyon/methods/shell/index.ts:1559 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1179 msgid "History cleared" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17970 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18401 #: src/tachyon/tabs/monitoring/initController.ts:876 #: src/tachyon/tabs/monitoring/initController.ts:941 msgid "Host" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4329 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4573 msgid "Hosts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8661 msgid "Hosts Lists Update Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2799 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2801 msgid "How many hours of metrics to keep (default 24)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3435 msgid "How often higher priority levels are checked while a lower level is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3411 msgid "How often the currently selected server is checked" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2762 msgid "How often to check DNS health in seconds (default 60)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2714 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2716 msgid "How often to check proxy health in seconds (fast tier, default 30)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3183 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3185 msgid "How often to check Telegram for new messages (default: 5)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1518 msgid "How often to check the active DNS servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1526 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1528 msgid "How often to check whether a higher-priority DNS server has recovered." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10424 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10764 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10783 msgid "HTTP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5903 #: src/tachyon/api.ts:27 msgid "HTTP error" msgstr "" @@ -3633,49 +3710,49 @@ msgstr "" msgid "HTTP hosts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2525 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2769 msgid "HWID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8507 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2980 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3266 #: src/tachyon/tabs/dashboard/initController.ts:1305 msgid "Idle timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2839 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2841 msgid "If one health check fails with an error, continue running other checks instead of stopping." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2203 msgid "Immediately upon release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7734 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7756 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7843 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7979 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8088 msgid "Import" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7838 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8083 msgid "Import (%d records)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8664 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8928 msgid "Import AmneziaWG settings from .conf file" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7915 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8118 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8363 msgid "Import Hosts File" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2605 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2849 msgid "Import subscription URLTest groups" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2850 msgid "Import URLTest groups returned by this subscription provider" msgstr "" @@ -3691,35 +3768,35 @@ msgstr "" msgid "Inbound JSON must be an object with a type field" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2791 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3402 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3247 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3646 msgid "Include by proxy parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2843 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3059 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3458 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3702 msgid "Include by regular expression" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2827 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3071 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3287 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3686 msgid "Include countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4144 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4388 msgid "Include IP addresses and subnets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10087 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10413 msgid "Include selected countries" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2835 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3051 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3450 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3079 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3295 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3694 msgid "Include servers" msgstr "" @@ -3739,31 +3816,31 @@ msgstr "" msgid "Init packet junk size (S1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9107 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9400 msgid "Init Packet Magic Header (S1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9109 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9402 msgid "Init Packet Magic Header (S3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9425 msgid "Init Packet Payload (I1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9133 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9426 msgid "Init Packet Payload (I2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9134 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9427 msgid "Init Packet Payload (I3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9135 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9428 msgid "Init Packet Payload (I4)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9136 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9429 msgid "Init Packet Payload (I5)" msgstr "" @@ -3775,10 +3852,15 @@ msgstr "" msgid "Init timeout (Itime)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19774 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20961 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21008 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14764 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:28 +msgid "Initializing router-level IP & DNS leak test..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20152 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21339 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21386 #: src/tachyon/tabs/updates/initController.ts:1025 #: src/tachyon/tabs/updates/initController.ts:1531 #: src/tachyon/tabs/updates/initController.ts:1584 @@ -3786,71 +3868,71 @@ msgstr "" msgid "Install" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21603 #: src/tachyon/tabs/updates/initController.ts:1833 msgid "Install another build:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1980 msgid "Installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21093 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21471 #: src/tachyon/tabs/updates/initController.ts:1679 msgid "Installed build → Available build" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20070 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20448 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479 #: src/tachyon/tabs/updates/initController.ts:376 #: src/tachyon/tabs/updates/initController.ts:1687 msgid "Installed version is newer than release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2500 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2502 msgid "Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1757 msgid "Interface Monitoring" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1789 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1791 msgid "Interface Monitoring Delay" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1758 msgid "Interface monitoring for Bad WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8509 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2750 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8537 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8669 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2994 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3486 #: src/tachyon/tabs/dashboard/initController.ts:1307 #: src/tachyon/tabs/dashboard/initController.ts:1480 msgid "Interrupt connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3487 msgid "Interrupt connections when priority failover switches server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2995 msgid "Interrupt connections when URLTest switches the selected server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8533 #: src/tachyon/tabs/dashboard/initController.ts:1303 msgid "Interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7532 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7777 msgid "Invalid ByeDPI strategy" msgstr "" @@ -3871,7 +3953,7 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:76 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:80 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5611 #: src/validators/validateDomain.ts:67 #: src/validators/validateDomain.ts:73 msgid "Invalid domain address" @@ -4028,7 +4110,7 @@ msgstr "" msgid "Invalid JSON format" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8026 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8271 msgid "Invalid line: \"%s\". Use: domain ip or ip domain" msgstr "" @@ -4038,16 +4120,16 @@ msgid "Invalid path format. Path must start with \"/\" and contain valid charact msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:400 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10276 #: src/validators/validateShadowsocksUrl.ts:91 msgid "Invalid port number. Must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5760 msgid "Invalid port or range. Use 80 or 1000-2000" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4742 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4986 msgid "Invalid regular expression" msgstr "" @@ -4270,24 +4352,24 @@ msgstr "" msgid "Invalid VMess URL: parsing failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11313 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11672 msgid "IP Addresses (IP CIDR)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13289 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13328 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:825 msgid "IP Frag Bounds (--ip-frag)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10202 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10528 msgid "IPs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628 msgid "IPv4 only" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1628 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1630 msgid "IPv6 only" msgstr "" @@ -4296,7 +4378,7 @@ msgstr "" msgid "is unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1854 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1856 msgid "Isolate BitTorrent traffic and force it direct to prevent VPN bans" msgstr "" @@ -4304,31 +4386,41 @@ msgstr "" msgid "Isolate Local LAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15787 -#: src/tachyon/tabs/diagnostic/initController.ts:749 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14851 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:141 +msgid "ISP / Organization" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14968 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:288 +msgid "ISP DNS LEAK" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16156 +#: src/tachyon/tabs/diagnostic/initController.ts:750 msgid "Issues" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10029 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10518 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10057 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10546 #: src/tachyon/tabs/diagnostic/checks/getCheckItemsMeta.ts:17 #: src/tachyon/tabs/diagnostic/helpers/getMeta.ts:20 msgid "Issues detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16101 -#: src/tachyon/tabs/diagnostic/initController.ts:1221 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16470 +#: src/tachyon/tabs/diagnostic/initController.ts:1222 msgid "Issues detected. Review the diagnosis above." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10124 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10450 msgid "Japan (jp)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1124 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4068 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4331 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9713 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4312 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4575 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10039 msgid "JSON outbound" msgstr "" @@ -4352,15 +4444,15 @@ msgstr "" msgid "JSON outbound must contain a non-empty type field" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4336 msgid "JSON outbound settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399 msgid "Junk Max Size (Jmax)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9398 msgid "Junk Min Size (Jmin)" msgstr "" @@ -4368,7 +4460,7 @@ msgstr "" msgid "Junk packet count (Jc)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9104 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9397 msgid "Junk Packet Count (Jc)" msgstr "" @@ -4408,32 +4500,32 @@ msgstr "" msgid "Junk size for transport packet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10127 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10453 msgid "Kazakhstan (kz)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3252 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3496 msgid "Keep Priority before latency-sorted servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2254 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2256 msgid "Keep the previous working binary/package on the router flash for instant offline rollback if needed. Consumes extra storage." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3004 msgid "Keep URLTest before latency-sorted servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9161 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9476 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3667 msgid "Keepalive Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1610 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1612 msgid "Keeps FakeIP cache persistent across reboots and pre-resolves popular blocked domains on startup so first-visit latency is 0 ms." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9757 msgid "Key" msgstr "" @@ -4441,16 +4533,16 @@ msgstr "" msgid "Key path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4996 msgid "Keyword must not contain spaces or commas" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16317 -#: src/tachyon/tabs/diagnostic/initController.ts:1464 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16686 +#: src/tachyon/tabs/diagnostic/initController.ts:1465 msgid "LAN Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2632 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2634 msgid "Language for AI Doctor diagnosis responses" msgstr "" @@ -4458,35 +4550,50 @@ msgstr "" msgid "Laptop / PC (💻)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14384 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14423 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:46 msgid "Latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3877 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3885 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3904 #: src/tachyon/methods/shell/index.ts:547 #: src/tachyon/methods/shell/index.ts:568 msgid "Latency test failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2267 msgid "Latency test URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20072 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21099 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20450 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21477 #: src/tachyon/tabs/updates/initController.ts:379 #: src/tachyon/tabs/updates/initController.ts:1685 msgid "Latest version is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21479 #: src/tachyon/tabs/updates/initController.ts:1687 msgid "Latest version:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14790 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:62 +msgid "Leak detection completed" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14797 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:73 +msgid "Leak detection failed to complete" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14917 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:219 +msgid "LEAKED" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2815 msgid "Leave empty to omit this header" msgstr "" @@ -4495,7 +4602,7 @@ msgstr "" msgid "Legacy zapret runtime paths are still present and should be migrated" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3201 msgid "Level name" msgstr "" @@ -4503,15 +4610,15 @@ msgstr "" msgid "Limit device network usage per day. When the quota is exhausted, the device is blocked until midnight. 0 disables the limit." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7227 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7472 msgid "List must be an HTTP(S) URL or a local .lst path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2951 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2953 msgid "List of domains automatically detected and the section they were added to. To edit or remove them, open the routing rules of the respective section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1952 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1954 msgid "List Update Frequency" msgstr "" @@ -4523,45 +4630,45 @@ msgstr "" msgid "Listen port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10313 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:125 msgid "Listening port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2084 msgid "Lists and rule sets successfully updated!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2032 msgid "Lists update is continuing in the background." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2071 msgid "Lists update is still running in background. You can check system logs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2610 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2612 msgid "LM Studio (Local PC / Server)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8740 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9006 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9021 msgid "Load .conf" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8663 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8927 msgid "Load .conf config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7923 msgid "Load Current Records" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7917 msgid "Loaded %d current record(s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9234 msgid "Loaded!" msgstr "" @@ -4569,36 +4676,36 @@ msgstr "" msgid "Loading client link..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16120 -#: src/tachyon/tabs/diagnostic/initController.ts:1243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16489 +#: src/tachyon/tabs/diagnostic/initController.ts:1244 msgid "Loading connected LAN devices..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17341 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18073 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18451 #: src/tachyon/tabs/monitoring/initController.ts:1002 #: src/tachyon/tabs/monitoring/render.ts:101 msgid "Loading connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11751 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11790 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11829 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:150 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:194 msgid "Loading service list..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21354 #: src/tachyon/tabs/updates/initController.ts:1550 msgid "Loading versions..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20823 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20837 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274 #: src/tachyon/tabs/updates/initController.ts:1341 #: src/tachyon/tabs/updates/initController.ts:1357 #: src/tachyon/tabs/updates/initController.ts:1407 @@ -4608,63 +4715,68 @@ msgstr "" msgid "Loading..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8969 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9260 msgid "Local Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14850 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:140 +msgid "Location" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2414 msgid "Log Level" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14385 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14424 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:47 msgid "Loss" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242 msgid "LuCI Web UI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6621 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6649 #: src/tachyon/helpers/singBoxVariant.ts:58 msgid "lx" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10101 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10129 #: src/tachyon/tabs/diagnostic/checks/runDnsCheck.ts:67 msgid "Main DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1394 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1396 msgid "Main DNS server. If multiple servers are selected, a timeout switches to a backup." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:986 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:988 msgid "Main overview and status widgets" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8198 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8544 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8226 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8572 #: src/tachyon/tabs/dashboard/initController.ts:918 #: src/tachyon/tabs/dashboard/initController.ts:1356 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:592 msgid "Manual" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1991 msgid "Manual list update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9479 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9805 msgid "MASQUE Access Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9467 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9793 msgid "MASQUE Account ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9781 msgid "MASQUE Private Key" msgstr "" @@ -4676,28 +4788,28 @@ msgstr "" msgid "Master and family devices with full LAN and router access. Any device NOT in this list will be treated as a guest." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10529 msgid "Match destination IPs or subnets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10737 msgid "Match destination ports. Use a single port or a range" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11105 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11464 msgid "Match Found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10745 msgid "Match traffic by packet DSCP mark (assigned in Windows via Policy-Based QoS). Examples: 46 (EF), 0x2e, 34 (AF41)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9481 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3673 msgid "Max Handshake Attempts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2894 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2896 msgid "Max reconnects per hour before alert (default 10)." msgstr "" @@ -4713,16 +4825,16 @@ msgstr "" msgid "Maximum size of junk packets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1538 msgid "Maximum time to wait for example.com to resolve during a DNS health check." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8959 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8987 #: src/tachyon/tabs/dashboard/initController.ts:1891 msgid "Memory Usage" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284 msgid "Menu & Navigation" msgstr "" @@ -4734,7 +4846,7 @@ msgstr "" msgid "Method" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2798 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2800 msgid "Metrics Retention (hours)" msgstr "" @@ -4745,7 +4857,7 @@ msgstr "" msgid "min/day" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2710 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2954 msgid "Minimum latency difference in milliseconds that triggers switching to a faster server." msgstr "" @@ -4753,15 +4865,15 @@ msgstr "" msgid "Minimum size of junk packets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10340 msgid "Mixed Proxy Password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9930 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10256 msgid "Mixed Proxy Port" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9973 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10299 msgid "Mixed Proxy Username" msgstr "" @@ -4769,7 +4881,7 @@ msgstr "" msgid "Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2619 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2621 msgid "Model name to use. Leave empty to use default (gpt-4o-mini / claude-3-5-haiku / deepseek-chat / llama3:latest)." msgstr "" @@ -4781,65 +4893,65 @@ msgstr "" msgid "Monday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1765 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1767 msgid "Monitored Interfaces" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1027 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1304 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:603 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1306 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:644 msgid "Monitoring" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2881 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2883 msgid "Monitors sing-box reconnect frequency. Alerts if too many reconnects per hour." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1243 msgid "Move Down" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1218 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1220 msgid "Move Up" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3415 msgid "MTU" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3173 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3175 msgid "Must be a comma-separated list of numeric IDs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2135 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2150 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2379 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2394 msgid "Must be a number in the range of 0 - 10000" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12649 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12688 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:94 msgid "My Strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13454 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:971 msgid "Name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2680 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3143 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2924 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3387 msgid "Name displayed on the dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3202 msgid "Name shown in the priority level list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16374 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16467 -#: src/tachyon/tabs/diagnostic/initController.ts:1533 -#: src/tachyon/tabs/diagnostic/initController.ts:1643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16839 +#: src/tachyon/tabs/diagnostic/initController.ts:1534 +#: src/tachyon/tabs/diagnostic/initController.ts:1648 msgid "Native internet restored. Tachyon stopped." msgstr "" @@ -4857,73 +4969,73 @@ msgstr "" msgid "Native tailscaled (tailnet reachable from LAN without client)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10443 msgid "Netherlands (nl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1284 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286 msgid "Network & Interfaces" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1950 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2194 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9998 msgid "Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3845 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4089 msgid "Network interface settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19504 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19506 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19882 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19884 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:73 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:75 msgid "new build" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7827 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8072 msgid "New domains:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7066 #: src/tachyon/services/core.service.ts:38 msgid "New version %s is available for %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:100 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:97 msgid "NFQUEUE range is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10586 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10672 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10614 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10700 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:99 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:96 msgid "NFQUEUE range overlaps with another rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7452 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7697 msgid "NFQWS Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6068 msgid "NFQWS strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7730 msgid "NFQWS2 Strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6298 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6542 msgid "NFQWS2 strategy cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8129 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8189 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8563 #: src/tachyon/tabs/dashboard/initController.ts:826 #: src/tachyon/tabs/dashboard/initController.ts:830 #: src/tachyon/tabs/dashboard/initController.ts:906 @@ -4936,55 +5048,55 @@ msgstr "" msgid "No active clients" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470 #: src/tachyon/tabs/monitoring/initController.ts:1026 msgid "No active connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16131 -#: src/tachyon/tabs/diagnostic/initController.ts:1255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16500 +#: src/tachyon/tabs/diagnostic/initController.ts:1256 msgid "No active DHCP clients found on local network." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:859 msgid "No active routing sections found." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14479 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:109 msgid "No benchmark data yet. Click \"Start Benchmark\" to begin." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13617 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13656 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1204 msgid "No benchmark history yet. Run a benchmark to see results here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13100 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:567 msgid "No benchmark results yet. Configure options and click \"Start Benchmark\"." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11826 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11865 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:239 msgid "No check targets found in the configuration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18470 #: src/tachyon/tabs/monitoring/initController.ts:1027 msgid "No closed connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10239 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:32 msgid "No conflict detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11186 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11545 msgid "No Custom Rules Matched" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13479 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:998 msgid "No custom strategies added yet." msgstr "" @@ -4998,60 +5110,70 @@ msgstr "" msgid "No devices assigned" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15914 -#: src/tachyon/tabs/diagnostic/initController.ts:943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16283 +#: src/tachyon/tabs/diagnostic/initController.ts:944 msgid "No DHCP clients detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16247 -#: src/tachyon/tabs/diagnostic/initController.ts:1382 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16616 +#: src/tachyon/tabs/diagnostic/initController.ts:1383 msgid "No diagnostic history available yet." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14953 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:270 +msgid "No DNS resolvers captured via proxy test. Proxy may be offline or blocking test subdomains." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15011 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:336 +msgid "No DNS resolvers recorded" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2970 msgid "No domains detected yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10331 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10359 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:187 msgid "No enabled server inbounds configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7687 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7932 msgid "No file selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16108 -#: src/tachyon/tabs/diagnostic/initController.ts:1230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16477 +#: src/tachyon/tabs/diagnostic/initController.ts:1231 msgid "No issues detected. System is running normally." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15789 -#: src/tachyon/tabs/diagnostic/initController.ts:760 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16158 +#: src/tachyon/tabs/diagnostic/initController.ts:761 msgid "No issues found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10464 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:105 msgid "No other marking rules found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:99 msgid "No public firewall port required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:79 msgid "No rules use ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:79 msgid "No rules use Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:82 msgid "No rules use Zapret2" msgstr "" @@ -5061,38 +5183,38 @@ msgstr "" msgid "No sections selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:608 msgid "No snapshots yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1372 msgid "No strategies match the active filter." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20932 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20935 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21313 #: src/tachyon/tabs/updates/initController.ts:1497 #: src/tachyon/tabs/updates/initController.ts:1500 msgid "No versions found" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14267 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14306 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1954 msgid "No working strategy to apply" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8465 #: src/tachyon/tabs/dashboard/initController.ts:1221 msgid "Node list is empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8270 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8298 #: src/tachyon/tabs/dashboard/initController.ts:1014 msgid "Nodes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15911 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16280 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:871 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:884 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:897 @@ -5101,18 +5223,18 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2803 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3095 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3104 -#: src/tachyon/tabs/diagnostic/initController.ts:934 +#: src/tachyon/tabs/diagnostic/initController.ts:935 msgid "None" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10220 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14875 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10248 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15244 #: src/tachyon/methods/custom/getDashboardSections.ts:1698 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:317 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:46 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:157 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:317 msgid "Not configured" msgstr "" @@ -5123,27 +5245,27 @@ msgstr "" msgid "Not connected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10369 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:199 msgid "Not detected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11626 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11665 #: src/tachyon/tabs/diagnostic/partials/renderCheckSection.ts:193 msgid "Not implement yet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6611 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14285 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20875 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6639 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21264 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21274 #: src/tachyon/helpers/singBoxVariant.ts:34 #: src/tachyon/helpers/singBoxVariant.ts:42 #: src/tachyon/tabs/updates/initController.ts:1410 @@ -5156,49 +5278,49 @@ msgstr "" msgid "Not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10234 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10262 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:62 msgid "Not public" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10292 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10320 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:139 msgid "Not required for this listen address" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2583 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2876 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14824 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14843 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14848 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14903 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:470 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:849 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15193 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15212 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15272 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:91 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:118 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:124 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:190 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:470 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:849 msgid "Not responding" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6167 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15311 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15481 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15527 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15589 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15680 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15850 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15896 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15958 #: src/tachyon/tabs/diagnostic/diagnostic.store.ts:159 -#: src/tachyon/tabs/diagnostic/initController.ts:127 -#: src/tachyon/tabs/diagnostic/initController.ts:358 -#: src/tachyon/tabs/diagnostic/initController.ts:416 -#: src/tachyon/tabs/diagnostic/initController.ts:502 +#: src/tachyon/tabs/diagnostic/initController.ts:128 +#: src/tachyon/tabs/diagnostic/initController.ts:359 +#: src/tachyon/tabs/diagnostic/initController.ts:417 +#: src/tachyon/tabs/diagnostic/initController.ts:503 msgid "Not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11258 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11617 msgid "Not set" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8630 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8896 msgid "Notice: Cloudflare WARP edge servers only support AmneziaWG 2.0 (WireGuard). The profile has been automatically set to 2.0 so the connection works properly. Versions 3.0 and 3.1 require an AmneziaWG server via 'Import .conf'." msgstr "" @@ -5206,43 +5328,43 @@ msgstr "" msgid "Notify in Telegram" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3255 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3257 msgid "Notify on Certificate Warnings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3205 msgid "Notify on Core Crashes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3268 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3270 msgid "Notify on DNS Leaks" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3229 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3231 msgid "Notify on Server Switches" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3218 msgid "Notify on Service Restarts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3244 msgid "Notify on Subscription Updates" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1548 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1550 msgid "Number of consecutive failed checks required before switching DNS servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2351 msgid "Number of consecutive failed probes before switching sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2725 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2727 msgid "Number of consecutive failures before restarting (default 3)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1570 msgid "Number of consecutive successful checks required before returning to a higher-priority DNS server." msgstr "" @@ -5258,143 +5380,153 @@ msgstr "" msgid "Obfuscation password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14849 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:139 +msgid "Observed Public IP" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14910 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:209 +msgid "OFFLINE" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2611 msgid "Ollama (Local PC / Server)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7989 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8234 msgid "One record per line: example.com 192.168.1.100 or 192.168.1.100 example.com. Lines starting with # are ignored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3044 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3288 msgid "Only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2021 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2029 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2265 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2273 msgid "Only selected" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2022 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2031 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2266 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2275 msgid "Only selected except exclusions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3060 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3304 msgid "Only servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3011 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3255 msgid "Only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3015 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3259 msgid "Only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3256 msgid "Only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3052 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3296 msgid "Only the specified servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13271 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13310 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:807 msgid "OOB Values (-o)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21076 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21454 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21491 #: src/tachyon/tabs/updates/initController.ts:1661 #: src/tachyon/tabs/updates/initController.ts:1700 msgid "Open" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4280 msgid "Open priority settings and enter a display name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14746 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15115 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:31 msgid "Open Project Page" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:329 msgid "Operation completed successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19815 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20193 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:471 msgid "Operation failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19530 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19585 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19908 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19963 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:115 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:177 msgid "Operation in progress..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19949 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:162 msgid "Operation log" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3995 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4003 #: src/tachyon/methods/shell/index.ts:696 msgid "Operation log is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19567 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19945 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:157 msgid "Operation started. Waiting for log output..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1148 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3857 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3925 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1196 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3933 #: src/helpers/withTimeout.ts:7 #: src/tachyon/methods/shell/index.ts:517 #: src/tachyon/methods/shell/index.ts:605 msgid "Operation timed out" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16003 -#: src/tachyon/tabs/diagnostic/initController.ts:1100 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16372 +#: src/tachyon/tabs/diagnostic/initController.ts:1101 msgid "Optimize AWG MTU" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15995 -#: src/tachyon/tabs/diagnostic/initController.ts:1092 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364 +#: src/tachyon/tabs/diagnostic/initController.ts:1093 msgid "Optimize RAM memory" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1441 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6900 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7144 msgid "Option \"%s\" contains an invalid input value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9769 msgid "Optional — leave empty for default" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13543 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1071 msgid "Optional context (e.g. \"Rostelecom, YouTube 4K buffering is slow\")..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9914 msgid "Optional tls-auth or tls-crypt key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6146 msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6620 msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws2." msgstr "" @@ -5402,11 +5534,11 @@ msgstr "" msgid "Optionally specify individual devices not in a profile. MAC addresses (e.g. AA:BB:CC:DD:EE:FF) work even if the IP changes." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7928 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8173 msgid "Or paste hosts file content:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9069 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9097 #: src/tachyon/tabs/dashboard/initController.ts:2035 msgid "Other peers" msgstr "" @@ -5416,23 +5548,23 @@ msgstr "" msgid "outbounds must be a non-empty array of strings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1702 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1704 msgid "Output Network Interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2798 msgid "Override the default OpenWrt device headers for this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7957 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8202 msgid "Overwrite existing records (if unchecked, merge with existing records)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1863 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1865 msgid "P2P Client Ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1853 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1855 msgid "P2P Leak Protection" msgstr "" @@ -5450,32 +5582,32 @@ msgstr "" msgid "Padding" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1383 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1385 msgid "Parallel (fast failover, ≤3 s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1013 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1015 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:609 msgid "Parental Control" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8061 msgid "Parsed records:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9265 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9399 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9725 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3066 msgid "Password" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10045 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10371 msgid "Password cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7722 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7967 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7995 msgid "Paste content or upload a file to preview imported DNS records." msgstr "" @@ -5484,46 +5616,46 @@ msgstr "" msgid "Path cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2395 msgid "Path must be absolute (start with /)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2402 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2404 msgid "Path must contain at least one directory (like /tmp/cache.db)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2397 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2399 msgid "Path must end with cache.db" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12648 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12687 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:93 msgid "Pattern Builder" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13361 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:861 msgid "Patterns reset to defaults!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4555 -#: src/tachyon/methods/shell/index.ts:1448 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4563 +#: src/tachyon/methods/shell/index.ts:1450 msgid "Patterns reset to factory defaults" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4531 -#: src/tachyon/methods/shell/index.ts:1410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4539 +#: src/tachyon/methods/shell/index.ts:1412 msgid "Patterns saved successfully" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13308 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13347 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:847 msgid "Patterns saved successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17321 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17322 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17699 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243 #: src/tachyon/tabs/monitoring/initController.ts:746 #: src/tachyon/tabs/monitoring/render.ts:80 #: src/tachyon/tabs/monitoring/render.ts:81 @@ -5542,48 +5674,53 @@ msgstr "" msgid "Payload (I5)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8992 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9283 msgid "Peer Public Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9552 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9878 msgid "PEM-encoded CA certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9564 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890 msgid "PEM-encoded client certificate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902 msgid "PEM-encoded client private key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6108 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:971 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:984 #: src/tachyon/tabs/diagnostic/diagnostic.store.ts:63 msgid "Pending" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11706 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11745 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:98 msgid "Pending..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3216 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15057 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:389 +msgid "Performs simultaneous outbound checks via direct WAN (bypassing Sing-box redirect) and via proxy (127.0.0.1:4534) to verify that your real IP and DNS queries are not leaking to your ISP." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3460 msgid "Periodically check the current level and switch to a faster server even when the current one works." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2701 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2703 msgid "Periodically checks if the proxy is responding. Restarts Tachyon after consecutive failures." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9334 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3422 msgid "Persistent Keepalive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2852 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2854 msgid "Persistent Smart Detect" msgstr "" @@ -5595,20 +5732,20 @@ msgstr "" msgid "Phone (📱)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2759 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3251 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3003 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3495 msgid "Pin on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1864 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1866 msgid "Pin P2P isolation to the torrent client's own ports, comma separated. Each entry is \"proto\", \"proto:port\" or \"proto:port-port\" (tcp/udp). Without a port the whole protocol is routed direct." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1427 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1429 msgid "Plain-UDP DNS servers used as a last resort when all primary DNS fail. These are always unencrypted (no DoH/DoT). Example: 1.1.1.1, 8.8.8.8. Unlike the ISP fallback toggle, these are your own chosen servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13403 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:912 msgid "Please specify strategy name and arguments" msgstr "" @@ -5617,63 +5754,63 @@ msgstr "" msgid "Policy Mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3182 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3184 msgid "Polling Interval (seconds)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3195 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3197 msgid "Polling interval must be at least 1 second" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10268 msgid "Port cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10228 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:19 msgid "Port conflict" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9931 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10257 msgid "Port for the local mixed proxy of this section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5523 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5767 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1920 msgid "Port must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5527 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5771 msgid "Port range start must be less than or equal to end" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1898 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1900 msgid "Port range start must not exceed its end" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10396 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11679 msgid "Ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1894 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1896 msgid "Ports must be between 1 and 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2675 msgid "Pre-built index of Tachyon documentation chunks. When enabled, AI Doctor searches relevant docs before generating a diagnosis." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2127 msgid "Pre-download all preset lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21002 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21380 #: src/tachyon/tabs/updates/initController.ts:1578 msgid "pre-release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9324 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9650 msgid "Pre-shared key" msgstr "" @@ -5681,11 +5818,11 @@ msgstr "" msgid "Pre-shared Key (PSK)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627 msgid "Prefer IPv4" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1629 msgid "Prefer IPv6" msgstr "" @@ -5693,16 +5830,16 @@ msgstr "" msgid "Preferred IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2598 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2842 msgid "Prefix text" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14137 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14176 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1804 msgid "Preparing strategies and isolated nftables queue..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9026 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9317 msgid "Preshared Key" msgstr "" @@ -5714,50 +5851,50 @@ msgstr "" msgid "Prevent guest devices from accessing router management services (LuCI Web UI, SSH, Clash API). DHCP and DNS remain accessible." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2772 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2774 msgid "Prevents multiple reload_firewall calls within 120 seconds to avoid connection drops." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14548 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14587 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:232 msgid "Primary DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9799 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11170 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11529 msgid "Priority" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2740 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2741 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8687 #: src/tachyon/tabs/dashboard/initController.ts:1504 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:678 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:679 msgid "Priority details" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8609 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8637 #: src/tachyon/tabs/dashboard/initController.ts:1441 msgid "Priority details are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3922 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3923 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4167 msgid "Priority level settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3260 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3504 msgid "Priority levels" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3981 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3986 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3987 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4231 msgid "Priority settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8981 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9272 msgid "Private Key" msgstr "" @@ -5785,16 +5922,16 @@ msgstr "" msgid "Protection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14382 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2091 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9842 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2663 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2697 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:44 msgid "Protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9062 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353 msgid "Protocol version: 2.0 (standard headers, WARP compatible), 3.0 (header protection key, padding ranges), or 3.1 (header protection key, padding ranges, advanced timers)" msgstr "" @@ -5802,12 +5939,12 @@ msgstr "" msgid "Protocol version: 2.0 (standard integer headers) or 3.1 (header protection key, padding ranges, advanced timers)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14381 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14420 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:43 msgid "Provider" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12851 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:287 msgid "Provider Global Default" msgstr "" @@ -5817,84 +5954,109 @@ msgstr "" msgid "Provider status is normal" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11691 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:29 msgid "Proxy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16207 -#: src/tachyon/tabs/diagnostic/initController.ts:1338 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16576 +#: src/tachyon/tabs/diagnostic/initController.ts:1339 msgid "Proxy / DPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2726 msgid "Proxy Fail Threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2713 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2715 msgid "Proxy Health Check Interval (s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2735 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2737 msgid "Proxy Health Check URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14834 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:120 +msgid "Proxy is offline or unreachable on 127.0.0.1:4534." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8150 #: src/tachyon/tabs/dashboard/initController.ts:821 msgid "Proxy link is unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3279 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14887 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:181 +msgid "Proxy Outbound" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3281 msgid "Proxy Section for Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9225 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9551 msgid "Proxy to use for WARP API registration (api.cloudflareclient.com)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9323 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9649 msgid "PSK" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10215 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10243 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2729 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:40 msgid "Public host" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14940 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:246 +msgid "Public IP Address Isolation" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1694 msgid "QR code is too large" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10421 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14775 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:42 +msgid "Querying WAN direct socket and proxy outbound on 127.0.0.1:4534..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10761 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10780 msgid "QUIC (HTTP/3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13554 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13593 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1128 msgid "RAG Knowledge Base + Live ISP Probe Context" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9165 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9489 msgid "Random Trailers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14386 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14425 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:48 msgid "Rating" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10427 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10446 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10767 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10786 msgid "RDP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8953 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15042 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:371 +msgid "Re-run Leak Test" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9244 msgid "Read error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14408 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:29 msgid "Ready to benchmark DNS providers" msgstr "" @@ -5927,50 +6089,50 @@ msgstr "" msgid "Reality short ID must contain 1-8 hex digits" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15982 -#: src/tachyon/tabs/diagnostic/initController.ts:1079 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16351 +#: src/tachyon/tabs/diagnostic/initController.ts:1080 msgid "Rebuild firewall rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21095 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21473 #: src/tachyon/tabs/updates/initController.ts:1681 msgid "Rebuilt release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14106 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14145 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1769 msgid "Recommended" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14520 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14559 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:202 msgid "Recommended DNS Configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14663 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14702 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:363 msgid "Recommended DNS settings applied successfully and service restarted!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16052 -#: src/tachyon/tabs/diagnostic/initController.ts:1163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16421 +#: src/tachyon/tabs/diagnostic/initController.ts:1164 msgid "Recommended Quick Fixes:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2893 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2895 msgid "Reconnect Threshold" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15988 -#: src/tachyon/tabs/diagnostic/initController.ts:1085 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16357 +#: src/tachyon/tabs/diagnostic/initController.ts:1086 msgid "Reconnect WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2786 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2788 msgid "Records proxy/DNS latency and health status in hourly buckets for analysis." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8060 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8305 msgid "Records: %d" msgstr "" @@ -5979,91 +6141,91 @@ msgstr "" msgid "Refill" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16154 -#: src/tachyon/tabs/diagnostic/initController.ts:1280 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16523 +#: src/tachyon/tabs/diagnostic/initController.ts:1281 msgid "Refresh" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16135 -#: src/tachyon/tabs/diagnostic/initController.ts:1259 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16504 +#: src/tachyon/tabs/diagnostic/initController.ts:1260 msgid "Refresh Device List" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9224 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9550 msgid "Registration Detour" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5409 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5653 msgid "Regular expression must not contain spaces or commas" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21062 #: src/tachyon/tabs/updates/initController.ts:1188 msgid "Reinstall" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9471 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3661 msgid "Reject After Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9158 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9461 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3649 msgid "Rekey After Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9159 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9466 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3655 msgid "Rekey Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19723 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20101 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:354 msgid "Reload now" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20128 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:390 msgid "Reloading..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8138 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8383 msgid "Remote Hosts Lists" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1056 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1058 msgid "Remote management Telegram daemon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20081 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:328 msgid "Removal completed successfully!" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20643 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8260 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21021 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8506 #: src/tachyon/tabs/updates/initController.ts:1133 msgid "Remove" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3068 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3312 msgid "Remove servers from the specified countries from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3328 msgid "Remove servers whose names match the expression from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3076 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3320 msgid "Remove the specified servers from this level." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19912 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:119 msgid "Removing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9958 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10284 msgid "Require a username and password for the local mixed proxy" msgstr "" @@ -6071,14 +6233,14 @@ msgstr "" msgid "Reset" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16002 -#: src/tachyon/tabs/diagnostic/initController.ts:1099 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16371 +#: src/tachyon/tabs/diagnostic/initController.ts:1100 msgid "Reset Bootstrap DNS" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:416 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:457 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2535 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2537 msgid "Reset Settings" msgstr "" @@ -6086,32 +6248,37 @@ msgstr "" msgid "Resetting…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10056 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10382 msgid "Resolve domain names before routing so sing-box can use real destination IPs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15989 -#: src/tachyon/tabs/diagnostic/initController.ts:1086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16358 +#: src/tachyon/tabs/diagnostic/initController.ts:1087 msgid "Resolve gateway" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10381 msgid "Resolve real IP for routing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5697 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14989 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:312 +msgid "Resolver IP" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5941 msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6386 msgid "Resource selection by hostname inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5700 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5944 msgid "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6389 msgid "Resource selection by IP or CIDR inside nfqws2 is not supported here; sing-box selects resources before NFQUEUE." msgstr "" @@ -6123,11 +6290,11 @@ msgstr "" msgid "Response packet junk size (S2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9108 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9401 msgid "Response Packet Magic Header (S2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9403 msgid "Response Packet Magic Header (S4)" msgstr "" @@ -6135,33 +6302,33 @@ msgstr "" msgid "Response payload (I2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15983 -#: src/tachyon/tabs/diagnostic/initController.ts:1080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16352 +#: src/tachyon/tabs/diagnostic/initController.ts:1081 msgid "Restart dnsmasq" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15992 -#: src/tachyon/tabs/diagnostic/initController.ts:1089 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361 +#: src/tachyon/tabs/diagnostic/initController.ts:1090 msgid "Restart firewall" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15993 -#: src/tachyon/tabs/diagnostic/initController.ts:1090 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16362 +#: src/tachyon/tabs/diagnostic/initController.ts:1091 msgid "Restart network" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15986 -#: src/tachyon/tabs/diagnostic/initController.ts:1083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16355 +#: src/tachyon/tabs/diagnostic/initController.ts:1084 msgid "Restart sing-box DNS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11327 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:64 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11356 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:66 msgid "Restart Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15994 -#: src/tachyon/tabs/diagnostic/initController.ts:1091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16363 +#: src/tachyon/tabs/diagnostic/initController.ts:1092 msgid "Restart Zapret/ByeDPI" msgstr "" @@ -6170,44 +6337,44 @@ msgstr "" msgid "Restarts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:671 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:681 msgid "Restore" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15987 -#: src/tachyon/tabs/diagnostic/initController.ts:1084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16356 +#: src/tachyon/tabs/diagnostic/initController.ts:1085 msgid "Restore config backup" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11405 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16432 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16455 -#: src/tachyon/tabs/diagnostic/initController.ts:1603 -#: src/tachyon/tabs/diagnostic/initController.ts:1627 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11434 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16804 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16827 +#: src/tachyon/tabs/diagnostic/initController.ts:1608 +#: src/tachyon/tabs/diagnostic/initController.ts:1632 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:144 msgid "Restore Native Internet" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15999 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16361 -#: src/tachyon/tabs/diagnostic/initController.ts:1096 -#: src/tachyon/tabs/diagnostic/initController.ts:1516 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16368 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16730 +#: src/tachyon/tabs/diagnostic/initController.ts:1097 +#: src/tachyon/tabs/diagnostic/initController.ts:1517 msgid "Restore Native Internet (Stop Tachyon)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:639 msgid "Restore Snapshot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2538 msgid "Restores the Tachyon factory defaults: all rules, subscriptions, custom DNS servers and other options will be lost." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16459 -#: src/tachyon/tabs/diagnostic/initController.ts:1519 -#: src/tachyon/tabs/diagnostic/initController.ts:1631 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16733 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16831 +#: src/tachyon/tabs/diagnostic/initController.ts:1520 +#: src/tachyon/tabs/diagnostic/initController.ts:1636 msgid "Restoring native direct internet (stopping Tachyon)..." msgstr "" @@ -6219,7 +6386,7 @@ msgstr "" msgid "Restricted users (auth_user)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17865 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18243 #: src/tachyon/tabs/monitoring/initController.ts:746 msgid "Resume updates" msgstr "" @@ -6228,16 +6395,16 @@ msgstr "" msgid "Return NXDOMAIN for blocked domains (recommended). When enabled, blocked domains are not resolved at all. When disabled, only direct connections are rejected." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20622 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21000 #: src/tachyon/tabs/updates/initController.ts:1103 #: src/tachyon/tabs/updates/initController.ts:1103 msgid "Rollback" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12002 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17974 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18025 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12041 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18403 #: src/tachyon/tabs/monitoring/initController.ts:880 #: src/tachyon/tabs/monitoring/initController.ts:943 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:444 @@ -6248,20 +6415,28 @@ msgstr "" msgid "Route all non-local LAN traffic through the tailnet exit node instead of the proxy engines." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3280 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3282 msgid "Route bot API requests through this section. Leave empty to use the default mixed proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10592 +msgid "Route community list subnets (IP/CIDR)" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10593 +msgid "Route IP subnets associated with built-in community lists (e.g. Discord voice/media). Disable this if community subnets overlap with CDN/Anycast networks (such as Cloudflare/Google Cloud) and interfere with unrelated services (e.g. game launchers)." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1639 msgid "Route main DNS requests through the selected section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7424 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7669 msgid "Route requests to this DNS server through another section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16213 -#: src/tachyon/tabs/diagnostic/initController.ts:1345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16582 +#: src/tachyon/tabs/diagnostic/initController.ts:1346 msgid "Route via Proxy" msgstr "" @@ -6269,13 +6444,13 @@ msgstr "" msgid "Routing mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11032 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11391 msgid "Routing Rule Tracer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10268 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10277 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10296 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10324 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:103 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:114 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:144 @@ -6286,11 +6461,11 @@ msgstr "" msgid "Routing section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:993 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:995 msgid "Routing sections, rules and strategies" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11123 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11482 msgid "Rule" msgstr "" @@ -6298,104 +6473,109 @@ msgstr "" msgid "Rule Name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7218 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7463 msgid "Rule set must be an HTTP(S) URL or a local .srs / .json path" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4395 msgid "Rule set settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10266 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10295 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10606 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10635 msgid "Rule sets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11314 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11673 msgid "Rule Sets (.srs / .json)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12813 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12852 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:288 msgid "Rule:" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2742 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:104 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:152 msgid "Rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10411 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10439 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:79 msgid "Rules mangle counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10406 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10434 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:74 msgid "Rules mangle exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10421 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10449 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:89 msgid "Rules mangle output counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10444 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:84 msgid "Rules mangle output exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10459 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:99 msgid "Rules proxy counters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10426 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10454 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:94 msgid "Rules proxy exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11395 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:132 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11424 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:134 msgid "Run AI Doctor" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11637 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11676 #: src/tachyon/tabs/diagnostic/partials/renderRunAction.ts:17 msgid "Run Diagnostic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11385 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11414 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:124 msgid "Run doctor repair" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14858 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15227 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:327 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3041 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3042 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3043 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3044 #: src/tachyon/methods/custom/getDashboardSections.ts:1693 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:312 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:140 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:312 msgid "Running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13769 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13808 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1371 msgid "Running benchmarks..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3348 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3350 msgid "Running diagnostics…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10114 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10440 msgid "Russia (ru)" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14975 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:297 +msgid "SAFE" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:398 msgid "SafeSearch" msgstr "" @@ -6408,21 +6588,21 @@ msgstr "" msgid "Saturday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3730 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:802 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3974 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:804 msgid "Save" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2550 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2552 msgid "Save a snapshot of the working config and restore it later if something breaks." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2253 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2255 msgid "Save component backup before update" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:512 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:760 msgid "Save Snapshot" msgstr "" @@ -6430,32 +6610,32 @@ msgstr "" msgid "Schedule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:617 msgid "Schedule Rule" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2210 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2212 msgid "Scheduled auto-update time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13038 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13661 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13077 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13700 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:544 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1248 msgid "Score" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17298 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17676 #: src/tachyon/tabs/monitoring/render.ts:57 msgid "Search" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11961 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12000 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:397 msgid "Search domain or service..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12803 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12842 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:276 msgid "Search Mode" msgstr "" @@ -6464,77 +6644,82 @@ msgstr "" msgid "Secret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1830 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1832 msgid "Secret key for authenticating remote access to YACD when WAN access is enabled." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2577 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2579 msgid "Secret token for authorizing WRITE operations (POST/PUT) on /cgi-bin/tachyon-agent/. Leave empty if auth is not required." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2479 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2481 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:560 msgid "Section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11300 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11659 msgid "Section action" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7322 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7567 msgid "Section name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11326 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11685 msgid "Section Rules Content" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2456 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2458 msgid "Section used for Cloudflare WARP API registration. If your ISP blocks Cloudflare API on WAN, select a proxy section (with Mixed proxy enabled) or a tunnel interface section (WireGuard / AmneziaWG / VPN). Leave empty to use direct WAN / default mixed proxy." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:992 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1300 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:514 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:994 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1302 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:555 msgid "Sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2103 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14924 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:228 +msgid "SECURE" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2347 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2800 msgid "Security" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8417 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8445 #: src/tachyon/tabs/dashboard/initController.ts:1195 msgid "Select" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2741 msgid "Select a common client profile or enter a custom User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9032 msgid "Select a file with .conf extension" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9678 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004 msgid "Select a network interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10213 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10539 msgid "Select a predefined domain list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7445 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7690 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:89 msgid "Select a section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2474 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2718 msgid "Select a section for downloading this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9877 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10203 msgid "Select a transit section" msgstr "" @@ -6542,23 +6727,23 @@ msgstr "" msgid "Select active days. If none selected, the rule applies every day." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2602 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2604 msgid "Select AI LLM provider for diagnostics" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2245 msgid "Select an existing network interface" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3606 msgid "Select an existing URLTest or Priority group" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9890 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10216 msgid "Select an intermediate section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2921 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2923 msgid "Select and order the sections through which blocked domains are tested. Checked sections are tried top-to-bottom." msgstr "" @@ -6566,7 +6751,7 @@ msgstr "" msgid "Select days when guest access is permitted. Leave empty for all days." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1364 msgid "Select DNS protocol to use" msgstr "" @@ -6574,27 +6759,27 @@ msgstr "" msgid "Select LAN devices to assign to this profile, or enter IP or MAC addresses manually. MAC addresses (e.g. AA:BB:CC:DD:EE:FF) work even if the device's IP changes via DHCP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9999 msgid "Select network interface for VPN connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10110 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436 msgid "Select one or more country ISO codes (e.g. ru, us, de, nl, fr, fi, se, tr, cn, jp, sg, by, kz, ua)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2510 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2754 msgid "Select or enter a User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2378 msgid "Select or enter path for sing-box cache file. Change this ONLY if you know what you are doing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1922 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1924 msgid "Select or enter the IP addresses of your game consoles." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2362 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2364 msgid "Select path for sing-box config file. Change this ONLY if you know what you are doing" msgstr "" @@ -6602,25 +6787,25 @@ msgstr "" msgid "Select Sections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8627 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3204 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3448 #: src/tachyon/tabs/dashboard/initController.ts:1464 msgid "Select the fastest node" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2415 msgid "Select the log level for sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1655 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1657 msgid "Select the network interface from which the traffic will originate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1705 msgid "Select the network interface to which the traffic will originate" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1768 msgid "Select the WAN interfaces to be monitored" msgstr "" @@ -6628,16 +6813,16 @@ msgstr "" msgid "Select whether to disable the target during the schedule or enable it ONLY during the schedule." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2235 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2237 msgid "Select which components are permitted to update automatically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1297 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1299 msgid "Select which tab opens automatically when entering Tachyon." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8501 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8613 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8529 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8641 #: src/tachyon/tabs/dashboard/initController.ts:1299 #: src/tachyon/tabs/dashboard/initController.ts:1450 msgid "Selected" @@ -6660,24 +6845,24 @@ msgstr "" msgid "Selector and URLTest outbounds must contain a non-empty outbounds array" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12431 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12470 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:67 msgid "Send" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3269 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3271 msgid "Send a Telegram notification if a potential DNS leak is detected." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3204 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3206 msgid "Send a Telegram notification if sing-box or nftables rules crash and get auto-restored." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3256 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3258 msgid "Send a Telegram notification if SSL/TLS certificates are close to expiration." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3219 msgid "Send a Telegram notification if the Tachyon service is restarted by the watchdog." msgstr "" @@ -6685,11 +6870,11 @@ msgstr "" msgid "Send a Telegram notification to admins when a blocked site is accessed. Requires the Telegram bot to be enabled." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3232 msgid "Send a Telegram notification when a URLTest group switches to a new server." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3245 msgid "Send a Telegram notification when proxy subscriptions are successfully updated." msgstr "" @@ -6701,43 +6886,43 @@ msgstr "" msgid "Send Telegram notification when a guest device hits its daily time or traffic quota." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13197 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13236 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:729 msgid "Sequence Overlaps (seqovl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1382 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1384 msgid "Sequential (one active at a time)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1380 msgid "Sequential: failover to the next server after N failures. Parallel: aggressive failover — switches in seconds (1 failure = switch), best if your ISP blocks DoH/DoT." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:577 msgid "Server" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9003 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9243 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9353 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9413 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9493 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9294 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9569 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9627 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9679 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9739 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9819 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3383 msgid "Server Address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2768 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2977 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3012 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3221 msgid "Server filtering" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9741 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10067 msgid "Server group for automatic lowest-latency selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9800 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10126 msgid "Server group for priority failover" msgstr "" @@ -6754,7 +6939,7 @@ msgstr "" msgid "Server name / SNI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9278 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9604 msgid "Server Name Indication — leave empty to use server address" msgstr "" @@ -6768,12 +6953,12 @@ msgstr "" msgid "Server outbound must contain a numeric server_port from 1 to 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9014 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9254 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9312 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9424 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9305 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9580 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9638 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9690 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9750 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9830 msgid "Server Port" msgstr "" @@ -6785,7 +6970,7 @@ msgstr "" msgid "Server Public Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12499 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12538 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:148 msgid "Server unavailable" msgstr "" @@ -6799,63 +6984,63 @@ msgstr "" msgid "server_port must be a number from 1 to 65535" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:999 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1301 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:530 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1001 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1303 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:571 msgid "Servers" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3378 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3622 msgid "Servers on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11997 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12036 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:439 msgid "Service / Target" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3816 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3835 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:3843 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16042 +#: src/tachyon/tabs/diagnostic/initController.ts:610 #: src/tachyon/methods/shell/index.ts:468 #: src/tachyon/methods/shell/index.ts:489 -#: src/tachyon/tabs/diagnostic/initController.ts:609 msgid "Service action failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11783 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11822 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:186 msgid "Service availability check" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10217 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10543 msgid "Service list" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1285 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1287 msgid "Services & Access" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19747 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20125 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:387 msgid "Services are online and ready! Reloading page..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8968 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8996 #: src/tachyon/tabs/dashboard/initController.ts:1901 msgid "Services info" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19763 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20141 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:406 msgid "Services restarted. Click to reload page." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1185 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7293 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1048 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1307 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:645 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:1369 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7538 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1050 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1309 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:686 msgid "Settings" msgstr "" @@ -6867,61 +7052,61 @@ msgstr "" msgid "Shopping" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2825 msgid "Show metadata on dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3451 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3695 msgid "Show only selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3410 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3654 msgid "Show only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3660 msgid "Show only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3413 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3657 msgid "Show only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3524 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3768 msgid "Show servers from selected groups without repeating their filtering criteria." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3443 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3687 msgid "Show servers only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3459 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3703 msgid "Show servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11453 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16496 -#: src/tachyon/tabs/diagnostic/initController.ts:1677 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11492 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16868 +#: src/tachyon/tabs/diagnostic/initController.ts:1682 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:202 msgid "Show sing-box config" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16507 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16514 -#: src/tachyon/tabs/diagnostic/initController.ts:1688 -#: src/tachyon/tabs/diagnostic/initController.ts:1695 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16879 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16886 +#: src/tachyon/tabs/diagnostic/initController.ts:1693 +#: src/tachyon/tabs/diagnostic/initController.ts:1700 msgid "Show sing-box config failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2582 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2826 msgid "Show subscription metadata for this source on the dashboard" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243 msgid "sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10200 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:77 msgid "Sing-box autostart disabled" msgstr "" @@ -6930,42 +7115,42 @@ msgstr "" msgid "sing-box endpoint (userspace, default)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:69 msgid "Sing-box FakeIP DNS does not work" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10488 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10516 #: src/tachyon/tabs/diagnostic/checks/runFakeIPCheck.ts:68 msgid "Sing-box FakeIP DNS works" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10157 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10185 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:62 msgid "Sing-box installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10182 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10210 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:87 msgid "Sing-box listening ports" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10177 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:82 msgid "Sing-box process running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10167 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10195 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:72 msgid "Sing-box service exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10190 #: src/tachyon/tabs/diagnostic/checks/runSingBoxCheck.ts:67 msgid "Sing-box version is compatible (newer than 1.12.4)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10125 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10451 msgid "Singapore (sg)" msgstr "" @@ -6973,32 +7158,32 @@ msgstr "" msgid "sites" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7943 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8188 msgid "Skip loopback & local entries (127.0.0.1, ::1, 0.0.0.0, localhost)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9289 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9615 msgid "Skip TLS certificate verification (not recommended)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7824 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8069 msgid "Skipped comments/invalid:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7820 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8065 msgid "Skipped loopback:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14455 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:83 msgid "SLOW" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:758 msgid "Snapshot name" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:553 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:555 msgid "Snapshot restored. The service restarts and the page will reload." msgstr "" @@ -7006,7 +7191,7 @@ msgstr "" msgid "SNAT LAN sources when leaving through tailscale0 so peers can answer. Required unless every peer accepts routes." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9662 msgid "Snell Version" msgstr "" @@ -7014,31 +7199,31 @@ msgstr "" msgid "Social media" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8086 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8331 msgid "Sort Alphabetically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9902 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10228 msgid "Sort by latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9903 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10229 msgid "Sorts servers in this section by lowest latency in the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17986 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18029 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11135 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18364 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18407 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11494 #: src/tachyon/tabs/monitoring/initController.ts:892 #: src/tachyon/tabs/monitoring/initController.ts:947 msgid "Source" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11678 msgid "Source Devices" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1654 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1656 msgid "Source Network Interface" msgstr "" @@ -7055,52 +7240,52 @@ msgstr "" msgid "Specify different files" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13069 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:536 msgid "Speed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13222 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13261 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:756 msgid "Split Modes (dpi-desync)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13228 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13267 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:762 msgid "Split Positions (dpi-desync-split-pos)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13179 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13218 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:711 msgid "Split Positions (pos)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13259 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13298 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:795 msgid "Split Values (-s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10426 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10445 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10785 msgid "SSH" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:122 msgid "Standalone ByeDPI autostart is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:119 msgid "Standalone ByeDPI is active together with Tachyon ByeDPI rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:120 msgid "Standalone ByeDPI service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10766 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10794 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:123 msgid "Standalone ByeDPI service is inactive" msgstr "" @@ -7110,37 +7295,37 @@ msgstr "" msgid "Standalone service is active alongside Tachyon; policy or port conflicts are possible" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:111 msgid "Standalone Zapret is active together with Tachyon Zapret rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:112 msgid "Standalone Zapret service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10596 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10624 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:113 msgid "Standalone Zapret service is inactive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:123 msgid "Standalone Zapret2 autostart is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10710 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:118 msgid "Standalone Zapret2 is active together with Tachyon Zapret2 rules" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:121 msgid "Standalone Zapret2 service is active" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10684 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10712 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:124 msgid "Standalone Zapret2 service is inactive" msgstr "" @@ -7154,12 +7339,12 @@ msgstr "" msgid "Start" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14584 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14623 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:273 msgid "Start Benchmark" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3023 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3025 msgid "Start bot" msgstr "" @@ -7167,13 +7352,13 @@ msgstr "" msgid "Start of allowed daily access window in HH:MM format (24-hour clock)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15981 -#: src/tachyon/tabs/diagnostic/initController.ts:1078 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16350 +#: src/tachyon/tabs/diagnostic/initController.ts:1079 msgid "Start sing-box" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11347 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:84 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11376 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:86 msgid "Start Tachyon" msgstr "" @@ -7181,36 +7366,38 @@ msgstr "" msgid "Start Time (HH:MM)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15985 -#: src/tachyon/tabs/diagnostic/initController.ts:1082 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16354 +#: src/tachyon/tabs/diagnostic/initController.ts:1083 msgid "Start watchdog" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14635 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14674 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:331 msgid "Starting DNS benchmark..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:360 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3070 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3072 msgid "Starting…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9051 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9079 #: src/tachyon/tabs/dashboard/initController.ts:2014 msgid "State" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2497 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12039 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12078 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14852 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:448 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:935 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:359 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:142 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:481 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:359 msgid "Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13014 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13053 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:520 msgid "Status / Suite" msgstr "" @@ -7219,55 +7406,55 @@ msgstr "" msgid "Stop" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3032 msgid "Stop bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2737 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2981 msgid "Stop checking when URLTest group is not used. Use sing-box duration format like 1d, 12h or 30m." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11337 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:74 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11366 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:76 msgid "Stop Tachyon" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14870 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15239 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:333 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3047 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3049 #: src/tachyon/methods/custom/getDashboardSections.ts:1697 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:316 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:152 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:316 msgid "Stopped" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:374 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3084 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3086 msgid "Stopping…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2853 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2855 msgid "Store auto-detected domains in /etc instead of /tmp to survive reboots." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13006 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13045 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:512 msgid "Strategy & Parameters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14184 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14223 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1857 msgid "Strategy benchmark started" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13485 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13524 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1046 msgid "Strategy deleted" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13374 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:881 msgid "Strategy Name" msgstr "" @@ -7276,20 +7463,20 @@ msgstr "" msgid "Strict (🔒)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2442 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2444 msgid "Strict ECH + DoQ DNS Enforcer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10422 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10762 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10781 msgid "STUN (P2P Calls)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4145 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4389 msgid "Subnets from the list will be extracted and added to nftables" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2428 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2672 msgid "Subscription auto update" msgstr "" @@ -7298,39 +7485,39 @@ msgstr "" msgid "Subscription info:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4239 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4257 -#: src/tachyon/methods/shell/index.ts:1035 -#: src/tachyon/methods/shell/index.ts:1055 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4247 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4265 +#: src/tachyon/methods/shell/index.ts:1037 +#: src/tachyon/methods/shell/index.ts:1057 msgid "Subscription update failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2437 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2681 msgid "Subscription update interval" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9624 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9950 msgid "Subscription URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4078 msgid "Subscription URL settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7780 #: src/tachyon/tabs/dashboard/initController.ts:340 msgid "Subscriptions updated" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8633 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8900 msgid "Success" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7910 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8155 msgid "Successfully imported %d DNS record(s)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8604 msgid "Successfully updated %d hosts entries" msgstr "" @@ -7342,86 +7529,91 @@ msgstr "" msgid "Sunday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10121 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10447 msgid "Sweden (se)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15996 -#: src/tachyon/tabs/diagnostic/initController.ts:1093 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16365 +#: src/tachyon/tabs/diagnostic/initController.ts:1094 msgid "Switch DNS to DoH" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8477 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8505 #: src/tachyon/tabs/dashboard/initController.ts:1264 msgid "Switch to auto-selection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16000 -#: src/tachyon/tabs/diagnostic/initController.ts:1097 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16369 +#: src/tachyon/tabs/diagnostic/initController.ts:1098 msgid "Sync System Time (NTP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1035 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1037 msgid "System diagnostics, AI Doctor and logs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8956 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8984 #: src/tachyon/tabs/dashboard/initController.ts:1888 msgid "System info" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14319 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14358 #: src/tachyon/tabs/diagnostic/partials/renderSystemInfo.ts:24 msgid "System information" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1316 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1318 msgid "Tab Order & Visibility" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10401 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10429 #: src/tachyon/tabs/diagnostic/checks/runNftCheck.ts:69 msgid "Table exist" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14659 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14673 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14698 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14712 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:359 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:373 msgid "Tachyon" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2239 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2241 msgid "Tachyon Core" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14742 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:406 msgid "Tachyon DNS Benchmark & Auto-Tuning" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7048 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:7076 #: src/tachyon/services/core.service.ts:52 msgid "Tachyon Error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6568 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15072 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:406 +msgid "Tachyon IP & DNS Leak Detection" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6812 msgid "Tachyon manages ciadpi pid files itself, so pidfile options are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6565 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6809 msgid "Tachyon manages the ciadpi process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5712 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5956 msgid "Tachyon manages the nfqws process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6407 msgid "Tachyon manages the nfqws2 process lifecycle itself, so daemon mode is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18063 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18441 #: src/tachyon/tabs/monitoring/initController.ts:991 msgid "Tachyon service is stopped. Start the service to display connections." msgstr "" @@ -7431,71 +7623,71 @@ msgstr "" msgid "Tachyon service is stopped. Start the service to display the dashboard." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:376 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:417 msgid "Tachyon Settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4150 -#: src/tachyon/methods/shell/index.ts:913 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:4158 +#: src/tachyon/methods/shell/index.ts:915 msgid "Tachyon update did not complete within the timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2327 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2329 msgid "Tachyon will not modify your DHCP configuration" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:91 msgid "Tachyon-managed ciadpi runtime has restarted" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:94 msgid "Tachyon-managed ciadpi runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:97 msgid "Tachyon-managed ciadpi runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:93 msgid "Tachyon-managed ciadpi runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:87 msgid "Tachyon-managed nfqws runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:90 msgid "Tachyon-managed nfqws runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:86 msgid "Tachyon-managed nfqws runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:90 msgid "Tachyon-managed nfqws2 runtime is not ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:93 msgid "Tachyon-managed nfqws2 runtime is not running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:89 msgid "Tachyon-managed nfqws2 runtime is ready" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9046 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9074 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2247 #: src/tachyon/tabs/dashboard/initController.ts:2004 msgid "Tailscale" msgstr "" @@ -7508,7 +7700,7 @@ msgstr "" msgid "Tailscale control URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10263 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10291 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:98 msgid "Tailscale endpoint" msgstr "" @@ -7526,7 +7718,7 @@ msgstr "" msgid "Tailscale package is installed, but no server section uses native mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13643 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13682 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/parental.js:766 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1230 msgid "Target" @@ -7540,12 +7732,12 @@ msgstr "" msgid "Target Scope" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12770 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12809 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:239 msgid "Target Service / Suite" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13203 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13242 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:735 msgid "TCP Window Sizes (wsize)" msgstr "" @@ -7563,25 +7755,25 @@ msgstr "" msgid "Telegram Alerts" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1055 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1308 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:659 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1057 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1310 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/tachyon.js:700 msgid "Telegram Bot" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3142 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3144 msgid "Telegram Bot Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15125 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:42 msgid "Telegram Channel" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3333 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3364 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3383 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3335 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3366 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3385 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3392 msgid "Test Connection" msgstr "" @@ -7594,105 +7786,110 @@ msgstr "" msgid "Test latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2836 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3080 msgid "Test only selected servers." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2796 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3040 msgid "Test only servers with one of the selected protocols." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2802 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3046 msgid "Test only servers with one of the selected security types." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2799 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3043 msgid "Test only servers with one of the selected transports." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2828 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3072 msgid "Test servers only from the specified countries." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2844 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3088 msgid "Test servers whose names match the expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3320 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3322 msgid "Test Telegram Connection" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14611 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14650 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:305 msgid "Testing" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14168 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14207 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1839 msgid "Testing bypass strategies in isolated sandbox..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13972 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14781 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:51 +msgid "Testing DNS leak upstream resolvers with bash.ws protocol..." +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14011 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1605 msgid "Testing strategy" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8504 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8532 #: src/tachyon/tabs/dashboard/initController.ts:1302 msgid "Testing URL" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11716 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12307 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11755 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12346 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:108 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:797 msgid "Testing..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3345 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3347 msgid "Testing…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5709 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5953 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6398 msgid "The desync fwmark is managed by Tachyon for loop prevention and must not be overridden here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5706 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5950 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6395 msgid "The NFQUEUE number is assigned by Tachyon for each rule and must not be overridden here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10163 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10489 msgid "The rule applies to the domain and all its subdomains. Use full:, keyword:, or regex: prefixes for exact match, keyword match, or regular expression." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10751 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10779 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:78 msgid "There are rules using ByeDPI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10576 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10604 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:78 msgid "There are rules using Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10690 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:81 msgid "There are rules using Zapret2" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12494 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:97 msgid "Thinking..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16437 -#: src/tachyon/tabs/diagnostic/initController.ts:1608 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16809 +#: src/tachyon/tabs/diagnostic/initController.ts:1613 msgid "This action will stop Tachyon, restore standard dnsmasq/DNS, remove all proxy/anti-censorship firewall rules and restore direct Internet connection through your ISP." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11390 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11909 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1927 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1946 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1951 @@ -7702,41 +7899,41 @@ msgstr "" msgid "This field is required" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6815 msgid "This field must start a working ciadpi strategy; help/version options exit immediately and are not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5715 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5959 msgid "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5718 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5962 msgid "This field must start a working nfqws strategy; --version exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6410 msgid "This field must start a working nfqws2 strategy; --dry-run exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6169 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6413 msgid "This field must start a working nfqws2 strategy; --version exits immediately and is not allowed here." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5887 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6131 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6605 msgid "This flag does not accept a value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2006 msgid "This may take 1-2 minutes. The process runs in the background on the router." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5918 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6162 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6636 msgid "This option requires a value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9059 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:9087 #: src/tachyon/tabs/dashboard/initController.ts:2025 msgid "This router" msgstr "" @@ -7745,7 +7942,7 @@ msgstr "" msgid "This will erase all Tachyon settings and restore the factory defaults. The service will restart. This action cannot be undone." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:642 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:644 msgid "This will replace the current Tachyon settings with the snapshot" msgstr "" @@ -7757,16 +7954,16 @@ msgstr "" msgid "Thursday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17977 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18026 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18160 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18355 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18404 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18538 #: src/tachyon/tabs/monitoring/initController.ts:883 #: src/tachyon/tabs/monitoring/initController.ts:944 #: src/tachyon/tabs/monitoring/initController.ts:1127 msgid "Time" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1588 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1590 msgid "Time in seconds for DNS record caching (default: 60)" msgstr "" @@ -7774,7 +7971,7 @@ msgstr "" msgid "Time is required (e.g. 22:00)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2211 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2213 msgid "Time of day to run scheduled component updates in HH:MM (24h) format, e.g. 04:00" msgstr "" @@ -7782,30 +7979,30 @@ msgstr "" msgid "Time skew tolerance" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14447 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14486 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:117 msgid "Timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6653 #: src/tachyon/helpers/singBoxVariant.ts:62 msgid "tiny" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10425 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10765 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10784 msgid "TLS / HTTPS" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9587 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9913 msgid "TLS Auth/Crypt Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9277 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9603 msgid "TLS SNI" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13283 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13322 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:819 msgid "TLS-Rec Bounds (--tlsrec)" msgstr "" @@ -7814,26 +8011,26 @@ msgstr "" msgid "Toddler (👶)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3153 msgid "Token is required when the bot is enabled" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8506 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2709 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8534 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2953 #: src/tachyon/tabs/dashboard/initController.ts:1304 msgid "Tolerance" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3261 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3505 msgid "Top level has the highest priority; lower levels are used as fallback" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20856 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21234 #: src/tachyon/tabs/updates/initController.ts:1390 msgid "TorrServer Direct" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1392 msgid "TorrServer not found" msgstr "" @@ -7842,70 +8039,70 @@ msgstr "" msgid "Total allowed network usage per day for devices in this profile. When the quota is reached, access is blocked until midnight. Enter 0 for unlimited." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7812 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8057 msgid "Total lines:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11917 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11956 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:345 msgid "Total targets" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11036 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11395 msgid "Trace" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11080 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11439 msgid "Tracing routing rules..." msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2338 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8932 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8960 #: src/tachyon/tabs/dashboard/initController.ts:1862 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:138 msgid "Traffic" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2969 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3213 msgid "Traffic for this level goes directly." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10728 msgid "Traffic from these IP addresses will never be routed through this section, even if other conditions match." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10416 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10756 msgid "Traffic of specified protocols (e.g. BitTorrent, QUIC, STUN) will bypass this section." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1028 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1030 msgid "Traffic statistics and active connections" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8944 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8972 #: src/tachyon/tabs/dashboard/initController.ts:1875 msgid "Traffic Total" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10436 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10776 msgid "Traffic type filter" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11187 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11546 msgid "Traffic will go through the default route (Direct/Default)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20511 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20889 #: src/tachyon/tabs/updates/initController.ts:958 msgid "Transient connection error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6562 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6806 msgid "Transparent proxy mode is incompatible with action=byedpi because Tachyon connects to ciadpi through SOCKS." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2097 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9375 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9701 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:2967 msgid "Transport" msgstr "" @@ -7930,7 +8127,7 @@ msgstr "" msgid "Transport path must start with /" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14740 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15109 #: src/tachyon/tabs/diagnostic/partials/renderWikiDisclaimer.ts:25 msgid "Troubleshooting" msgstr "" @@ -7939,29 +8136,29 @@ msgstr "" msgid "Trusted Master Devices (MAC / IP)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2486 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2730 msgid "Try compatible User-Agent profiles automatically when downloading this subscription" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13022 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13061 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:528 msgid "TTFB" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1599 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1601 msgid "TTL must be a positive number" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1594 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1596 msgid "TTL value cannot be empty" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13240 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13279 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:774 msgid "TTL Values (dpi-desync-ttl)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13191 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13230 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:723 msgid "TTL Values (ttl)" msgstr "" @@ -7974,53 +8171,53 @@ msgstr "" msgid "Tuesday" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10122 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10448 msgid "Turkey (tr)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17971 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18024 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18402 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1719 #: src/tachyon/tabs/monitoring/initController.ts:877 #: src/tachyon/tabs/monitoring/initController.ts:942 msgid "Type" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1367 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1369 msgid "UDP (Unprotected DNS)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11721 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:65 msgid "UDP / QUIC protocols" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10128 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10454 msgid "Ukraine (ua)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6486 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6730 msgid "Unable to validate the ByeDPI strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5629 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6964 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5873 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7208 msgid "Unable to validate the NFQWS strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6074 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6973 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7217 msgid "Unable to validate the NFQWS2 strategy through the backend parser." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8621 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3178 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8649 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3422 #: src/tachyon/tabs/dashboard/initController.ts:1458 msgid "Unavailability timeout" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11737 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11919 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11776 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11958 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:135 #: src/tachyon/tabs/diagnostic/partials/renderServiceCheckModal.ts:347 msgid "Unavailable" @@ -8030,19 +8227,19 @@ msgstr "" msgid "Underload packet header (H3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9404 msgid "Underload Packet Magic Header (H1)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9112 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9405 msgid "Underload Packet Magic Header (H2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9113 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9406 msgid "Underload Packet Magic Header (H3)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9114 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9407 msgid "Underload Packet Magic Header (H4)" msgstr "" @@ -8051,27 +8248,27 @@ msgstr "" msgid "Unexpected background processes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6703 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6752 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6947 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6996 msgid "Unexpected ByeDPI strategy argument: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5867 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6111 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6585 msgid "Unexpected standalone token. Use explicit flags such as --name or --name=value." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10756 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10784 #: src/tachyon/tabs/diagnostic/checks/runByedpiCheck.ts:96 msgid "Unexpected Tachyon-managed ciadpi runtime is running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10581 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10609 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:89 msgid "Unexpected Tachyon-managed nfqws runtime is running" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10667 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10695 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:92 msgid "Unexpected Tachyon-managed nfqws2 runtime is running" msgstr "" @@ -8080,27 +8277,27 @@ msgstr "" msgid "unique UCI identifier" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10118 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10444 msgid "United Kingdom (gb)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10115 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10441 msgid "United States (us)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6606 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10786 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10788 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10789 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10790 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10797 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10799 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10801 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10803 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10806 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10807 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20120 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:6634 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10814 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10816 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10817 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10818 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10825 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10827 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10831 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10834 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10835 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20498 #: src/tachyon/helpers/singBoxVariant.ts:33 #: src/tachyon/services/systemInfo.service.ts:10 #: src/tachyon/services/systemInfo.service.ts:12 @@ -8118,48 +8315,48 @@ msgid "unknown" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2459 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5812 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14880 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5840 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15249 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:354 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3064 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:3066 #: src/tachyon/methods/custom/getDashboardSections.ts:1699 -#: src/tachyon/tabs/dashboard/partials/renderSections.ts:318 #: src/tachyon/tabs/diagnostic/checks/runSectionsCheck.ts:162 +#: src/tachyon/tabs/dashboard/partials/renderSections.ts:318 msgid "Unknown" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6672 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6694 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6745 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6916 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6938 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6989 msgid "Unknown ByeDPI option: %s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:658 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:793 msgid "Unknown country" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5886 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14044 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14191 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15778 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15797 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15864 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16405 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:5914 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14230 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16147 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16166 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16233 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16774 #: src/tachyon/api.ts:40 -#: src/tachyon/tabs/diagnostic/initController.ts:731 -#: src/tachyon/tabs/diagnostic/initController.ts:772 -#: src/tachyon/tabs/diagnostic/initController.ts:857 -#: src/tachyon/tabs/diagnostic/initController.ts:1568 +#: src/tachyon/tabs/diagnostic/initController.ts:732 +#: src/tachyon/tabs/diagnostic/initController.ts:773 +#: src/tachyon/tabs/diagnostic/initController.ts:858 +#: src/tachyon/tabs/diagnostic/initController.ts:1569 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1695 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1864 msgid "Unknown error" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5878 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6122 msgid "Unknown NFQWS flag." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6352 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6596 msgid "Unknown NFQWS2 flag." msgstr "" @@ -8182,111 +8379,116 @@ msgstr "" msgid "Unsupported security mode for this protocol" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:822 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:824 msgid "Up to 10 snapshots are kept; the oldest ones are removed automatically." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20563 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20941 #: src/tachyon/tabs/updates/initController.ts:1025 msgid "Update" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2091 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2093 msgid "Update failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8354 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8609 msgid "Update failed:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20067 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20445 #: src/tachyon/tabs/updates/initController.ts:372 msgid "Update is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21083 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21461 #: src/tachyon/tabs/updates/initController.ts:1668 msgid "Update is available for current release" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21064 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21442 #: src/tachyon/tabs/updates/initController.ts:1647 msgid "Update is available:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1992 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1994 msgid "Update lists now" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8345 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8367 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8372 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8597 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8625 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8634 msgid "Update Lists Now" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2409 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2420 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15991 -#: src/tachyon/tabs/diagnostic/initController.ts:1088 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16360 +#: src/tachyon/tabs/diagnostic/initController.ts:1089 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:229 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:242 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:243 msgid "Update subscriptions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2429 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2673 msgid "Update this subscription automatically" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8074 msgid "Updated/duplicates:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1286 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1288 msgid "Updates & Downloads" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19536 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19914 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:121 msgid "Updating" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16216 -#: src/tachyon/tabs/diagnostic/initController.ts:1349 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16585 +#: src/tachyon/tabs/diagnostic/initController.ts:1350 msgid "Updating device routing mode..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2040 msgid "Updating lists..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8341 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8593 msgid "Updating…" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8934 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8946 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8962 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8974 #: src/tachyon/tabs/dashboard/initController.ts:1864 #: src/tachyon/tabs/dashboard/initController.ts:1877 msgid "Uplink" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:17983 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18028 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18172 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18361 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18406 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:18550 #: src/tachyon/tabs/monitoring/initController.ts:889 #: src/tachyon/tabs/monitoring/initController.ts:946 #: src/tachyon/tabs/monitoring/initController.ts:1141 msgid "Uploaded" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14540 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1377 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14579 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1379 #: src/tachyon/tabs/diagnostic/partials/renderDnsBenchmarkModal.ts:224 msgid "Upstream Mode" msgstr "" +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14991 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:314 +msgid "Upstream Provider / ASN" +msgstr "" + #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1041 #: src/validators/validateProxyUrl.ts:52 msgid "URL must start with vless://, vmess://, ss://, trojan://, socks4://, socks4a://, socks5://, http://, https://, hysteria2://, hy2://, or tuic://" @@ -8297,46 +8499,46 @@ msgstr "" msgid "URL must use one of the following protocols:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2736 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2738 msgid "URL to test through the proxy (default: Cloudflare 204)." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3154 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3398 msgid "URL used to check whether a server is alive" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2724 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2968 msgid "URL used to test server latency" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8139 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8384 msgid "URLs of remote hosts files to download and apply. Supports standard hosts format: IP domain." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9740 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10066 msgid "URLTest" msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2724 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:2725 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8527 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8555 #: src/tachyon/tabs/dashboard/initController.ts:1331 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:659 #: src/tachyon/tabs/dashboard/partials/renderSections.ts:660 msgid "URLTest details" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8497 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8525 #: src/tachyon/tabs/dashboard/initController.ts:1290 msgid "URLTest details are unavailable" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3873 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3874 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4117 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4118 msgid "URLTest settings" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2811 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2813 msgid "Use 3-tier check intervals: fast (15s), normal (120s), slow (300s) instead of a single interval." msgstr "" @@ -8376,7 +8578,7 @@ msgstr "" msgid "Use an IP listen address" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9839 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10165 msgid "Use another section as an intermediate hop to connect to servers in this section. Does not apply to network interfaces or JSON outbounds." msgstr "" @@ -8396,22 +8598,22 @@ msgstr "" msgid "Use sing-box duration format like 10s, 1m or 2m30s" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2438 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2698 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3227 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4786 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4793 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4800 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1953 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1975 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1982 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2149 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2177 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2682 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2942 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3471 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5030 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5037 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5044 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1955 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1977 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1984 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2151 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2179 msgid "Use sing-box duration format like 1d, 12h or 30m" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8400 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8412 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8662 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:8674 msgid "Use sing-box duration format like 1d, 12h or 6h" msgstr "" @@ -8419,12 +8621,12 @@ msgstr "" msgid "Use tailnet exit node for LAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10205 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10233 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:25 msgid "Used by" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13373 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13412 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:923 msgid "User custom strategy" msgstr "" @@ -8433,16 +8635,16 @@ msgstr "" msgid "User names (e.g. from VLESS/Trojan/SS/JSON inbound users) that are forbidden from reaching LAN subnets. Leave empty to restrict all users on this inbound." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2496 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2740 msgid "User-Agent" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9388 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9714 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:3050 msgid "Username" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10004 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:10330 msgid "Username cannot be empty" msgstr "" @@ -8463,8 +8665,8 @@ msgstr "" #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:807 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:927 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:1009 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5402 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5415 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5646 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5659 #: src/validators/validateDns.ts:25 #: src/validators/validateDns.ts:29 #: src/validators/validateDomain.ts:57 @@ -8485,15 +8687,15 @@ msgstr "" msgid "Valid" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2825 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2827 msgid "Validates sing-box config before restart to prevent boot loops on broken configs." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:4855 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5099 msgid "Validation errors:" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5392 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5636 msgid "Value cannot be empty" msgstr "" @@ -8501,22 +8703,27 @@ msgstr "" msgid "Value must be a positive integer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11393 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:11912 #: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/server.js:1955 msgid "Value must not contain control characters" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19743 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14995 +#: src/tachyon/tabs/diagnostic/partials/renderLeakCheckModal.ts:318 +msgid "Verdict" +msgstr "" + +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20121 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:382 msgid "Verifying router and service readiness..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21238 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21616 #: src/tachyon/tabs/updates/initController.ts:1847 msgid "Versions" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2038 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:2282 msgid "Via country.is" msgstr "" @@ -8524,21 +8731,21 @@ msgstr "" msgid "Video streaming" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11444 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15841 -#: src/tachyon/tabs/diagnostic/initController.ts:831 -#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:181 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:11483 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16210 +#: src/tachyon/tabs/diagnostic/initController.ts:832 +#: src/tachyon/tabs/diagnostic/partials/renderAvailableActions.ts:193 msgid "View logs" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15851 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:15854 -#: src/tachyon/tabs/diagnostic/initController.ts:841 -#: src/tachyon/tabs/diagnostic/initController.ts:844 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16220 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:16223 +#: src/tachyon/tabs/diagnostic/initController.ts:842 +#: src/tachyon/tabs/diagnostic/initController.ts:845 msgid "View logs failed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7323 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7568 msgid "Visible name of this section" msgstr "" @@ -8546,55 +8753,55 @@ msgstr "" msgid "VLESS flow" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9600 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9926 msgid "vless://, vmess://, ss://, trojan://, socks4/5://, http/s://, hy2/hysteria2:// links" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:19719 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20097 #: src/tachyon/tabs/updates/partials/renderUpdateProgressModal.ts:349 msgid "Waiting for router services to restart..." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:20857 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:21235 #: src/tachyon/tabs/updates/initController.ts:1398 msgid "Waiting for TorrServer" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10241 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10269 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:70 msgid "WAN" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10340 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10368 #: src/tachyon/tabs/diagnostic/checks/runInboundsCheck.ts:198 msgid "WAN public IP" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9213 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9539 msgid "WARP Access Token" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9201 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9527 msgid "WARP Account ID" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2455 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2457 msgid "WARP Generator Proxy Section" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9189 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9515 msgid "WARP Private Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2337 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2339 msgid "Watchdog probes every Connection section; when the active one fails several checks in a row, traffic switches to a healthy backup and Telegram is notified. Requires a config reload to take effect." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2685 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2687 msgid "Watchdog Status" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2430 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2432 msgid "WebRTC Leak Protection" msgstr "" @@ -8614,33 +8821,33 @@ msgstr "" msgid "Weekends (Sat-Sun)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7336 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:7581 msgid "What Tachyon should do when this section matches" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3205 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:3449 msgid "When switching to another level, test every server and select the fastest instead of the first working one." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12519 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12558 #: src/tachyon/tabs/diagnostic/partials/renderAiChatModal.ts:171 msgid "Why Discord fails?" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9456 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9782 msgid "WireGuard private key from your Cloudflare account" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9190 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:9516 msgid "WireGuard private key from your Cloudflare WARP account" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13669 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13708 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1256 msgid "Working" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:13976 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14015 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1609 msgid "working strategies" msgstr "" @@ -8649,109 +8856,109 @@ msgstr "" msgid "XHTTP mode" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1829 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1831 msgid "YACD Secret Key" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8126 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:8154 #: src/tachyon/tabs/dashboard/initController.ts:826 msgid "Yes" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1693 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:1695 msgid "You can select Output Network Interface, by default autodetect" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2242 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2244 msgid "Zapret" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5703 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:5947 msgid "Zapret hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS strategies." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:71 msgid "Zapret package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10571 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10599 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:72 msgid "Zapret package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:60 msgid "Zapret provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10566 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10594 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:61 msgid "Zapret provider binary is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:103 msgid "Zapret sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10591 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10619 #: src/tachyon/tabs/diagnostic/checks/runZapretCheck.ts:104 msgid "Zapret sing-box outbound is not configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12690 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14282 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12729 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14321 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:149 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1975 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1976 msgid "Zapret v1 (nfqws)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12689 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14279 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:12728 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:14318 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:148 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1970 #: src/tachyon/tabs/diagnostic/partials/renderStrategyFuzzerModal.ts:1971 msgid "Zapret v2 (nfqws2)" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2243 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/settings.js:2245 msgid "Zapret2" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6148 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/section.js:6392 msgid "Zapret2 hostlist templates are not supported here because Tachyon does not expand them for per-rule NFQWS2 strategies." msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:74 msgid "Zapret2 package is installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10657 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10685 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:75 msgid "Zapret2 package is not installed" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:63 msgid "Zapret2 provider binary is available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10652 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10680 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:64 msgid "Zapret2 provider binary is not available" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:106 msgid "Zapret2 sing-box outbound is configured" msgstr "" -#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10677 +#: ../luci-app-tachyon/htdocs/luci-static/resources/view/tachyon/main.js:10705 #: src/tachyon/tabs/diagnostic/checks/runZapret2Check.ts:107 msgid "Zapret2 sing-box outbound is not configured" msgstr "" diff --git a/tachyon/files/usr/bin/tachyon b/tachyon/files/usr/bin/tachyon index 6b0b5cd7..7d436fbf 100755 --- a/tachyon/files/usr/bin/tachyon +++ b/tachyon/files/usr/bin/tachyon @@ -168,6 +168,9 @@ function show_help() { print(" Validate an NFQWS2 strategy and print JSON result\n"); print(" validate_byedpi_strategy_json\n"); print(" Validate a ByeDPI ciadpi strategy and print JSON result\n"); + print(" leak_check [--pretty] Test for IP and DNS leaks (direct vs proxy outbound)\n"); + print(" check_ip_leak Check IP leak status (JSON)\n"); + print(" check_dns_leak Check DNS leak status via bash.ws (JSON)\n"); } function command_spec(command) { @@ -275,6 +278,9 @@ function command_spec(command) { validate_nfqws_strategy_json: [ "diagnostics/runtime.uc", "validate-nfqws-strategy-json", 1 ], validate_nfqws2_strategy_json: [ "diagnostics/runtime.uc", "validate-nfqws2-strategy-json", 1 ], validate_byedpi_strategy_json: [ "diagnostics/runtime.uc", "validate-byedpi-strategy-json", 1 ], + leak_check: [ "diagnostics/leak_check.uc", "leak-check", 2 ], + check_ip_leak: [ "diagnostics/leak_check.uc", "ip-leak", 0 ], + check_dns_leak: [ "diagnostics/leak_check.uc", "dns-leak", 0 ], fuzzer_start: [ "diagnostics/fuzzer.uc", "start", 6 ], fuzzer_status: [ "diagnostics/fuzzer.uc", "status", 0 ], fuzzer_stop: [ "diagnostics/fuzzer.uc", "stop", 0 ], diff --git a/tachyon/files/usr/lib/components/hosts.uc b/tachyon/files/usr/lib/components/hosts.uc index 6cc3b674..6bd88f4b 100644 --- a/tachyon/files/usr/lib/components/hosts.uc +++ b/tachyon/files/usr/lib/components/hosts.uc @@ -227,9 +227,13 @@ function get_hosts_urls() { function hosts_list_update(target_url) { let urls = target_url != null && target_url != "" ? [target_url] : get_hosts_urls(); if (length(urls) == 0) { - log("No hosts list URLs configured", "warn"); - print('{"success":false,"error":"no_urls","entries":0}'); - return false; + if (target_url != null && target_url != "") { + log("Specified hosts list URL is empty", "warn"); + print('{"success":false,"error":"no_urls","entries":0}'); + return false; + } + print('{"success":true,"entries":0,"sources":0}'); + return true; } mkdir_p(HOSTS_TMP_DIR); diff --git a/tachyon/files/usr/lib/diagnostics/leak_check.uc b/tachyon/files/usr/lib/diagnostics/leak_check.uc new file mode 100644 index 00000000..4c748252 --- /dev/null +++ b/tachyon/files/usr/lib/diagnostics/leak_check.uc @@ -0,0 +1,433 @@ +#!/usr/bin/env ucode + +let fs = require("fs"); +let common = require("core.common"); +let constants = require("core.constants"); +let uci_core = require("core.uci"); + +let as_string = common.as_string; +let command_capture = common.command_capture; +let command_status = common.command_status; +let shell_quote = common.shell_quote; + +const CONFIG_NAME = getenv("TACHYON_CONFIG_NAME") || "tachyon"; + +let _has_so_mark_cached = null; +function curl_supports_so_mark() { + if (_has_so_mark_cached != null) + return _has_so_mark_cached; + _has_so_mark_cached = (command_status("curl --so-mark 0 -V >/dev/null 2>&1") == 0); + return _has_so_mark_cached; +} + +/** + * Detect active WAN network interface/device name. + */ +function get_wan_interface() { + try { + let cursor = uci_core.cursor(); + if (cursor) { + cursor.load("network"); + let dev = cursor.get("network", "wan", "device") || cursor.get("network", "wan", "ifname"); + if (dev != null && dev != "") + return trim(as_string(dev)); + } + } catch (e) { + // Fallback to routing inspection below + } + + let route_res = command_capture("ip -4 route show default 2>/dev/null"); + if (route_res && route_res.status == 0 && route_res.output != "") { + let m = match(route_res.output, /dev\s+([a-zA-Z0-9_\.\-]+)/); + if (m && m[1]) + return trim(as_string(m[1])); + } + + return ""; +} + +/** + * Read upstream ISP DNS servers assigned by DHCP/PPPoE from standard OpenWrt resolv files. + */ +function get_direct_dns_servers() { + let servers = []; + let seen = {}; + + let candidate_paths = [ + "/tmp/resolv.conf.d/resolv.conf.auto", + "/tmp/resolv.conf.auto", + "/tmp/resolv.conf" + ]; + + for (let path in candidate_paths) { + let content = fs.readfile(path); + if (content == null) + continue; + + let lines = split(as_string(content), "\n"); + for (let line in lines) { + line = trim(line); + if (substr(line, 0, 11) == "nameserver ") { + let ns = trim(substr(line, 11)); + if (ns != "" && !seen[ns] && + ns != "127.0.0.1" && ns != "127.0.0.42" && ns != "127.0.0.43" && + ns != "::1" && index(ns, "127.0.") < 0) { + seen[ns] = true; + push(servers, { + ip: ns, + country: "", + isp: "ISP / WAN Local", + is_isp: true + }); + } + } + } + if (length(servers) > 0) + break; + } + + return servers; +} + +/** + * Generate curl CLI flags for direct WAN routing bypassing Tachyon tproxy. + */ +function get_direct_curl_flags(wan_iface) { + let parts = []; + if (wan_iface != null && wan_iface != "") { + push(parts, "--interface " + shell_quote(wan_iface)); + } + + if (curl_supports_so_mark()) { + let mark = constants.NFT_OUTBOUND_MARK || "0x08000000"; + push(parts, "--so-mark " + shell_quote(mark)); + } + + return join(" ", parts); +} + +/** + * Query public IP details with fallback services. + */ +function fetch_ip_info(use_proxy, wan_iface, mixed_port) { + let proxy_flag = use_proxy ? ("--proxy http://127.0.0.1:" + mixed_port + " ") : ""; + let direct_flag = use_proxy ? "" : (get_direct_curl_flags(wan_iface) + " "); + + let flags = "-s -m 7 --connect-timeout 4 " + proxy_flag + direct_flag; + + // 1. Try ipleak.net JSON API + let res = command_capture("curl " + flags + "https://ipleak.net/json/ 2>/dev/null"); + if (res && res.status == 0 && res.output != "") { + try { + let data = json(res.output); + if (type(data) == "object" && data.ip != null && data.ip != "") { + return { + ip: as_string(data.ip), + country: as_string(data.country_name || ""), + country_code: as_string(data.country_code || ""), + city: as_string(data.city_name || ""), + isp: as_string(data.isp_name || ""), + ok: true + }; + } + } catch (e) { + // Fall through to fallback + } + } + + // 2. Fallback to api.ipify.org + res = command_capture("curl -s -m 5 --connect-timeout 3 " + proxy_flag + direct_flag + "'https://api.ipify.org?format=json' 2>/dev/null"); + if (res && res.status == 0 && res.output != "") { + try { + let data = json(res.output); + if (type(data) == "object" && data.ip != null && data.ip != "") { + return { + ip: as_string(data.ip), + country: "", + country_code: "", + city: "", + isp: "", + ok: true + }; + } + } catch (e) { + // Fall through + } + } + + // 3. Fallback to ifconfig.me + res = command_capture("curl -s -m 5 --connect-timeout 3 " + proxy_flag + direct_flag + "https://ifconfig.me/ip 2>/dev/null"); + if (res && res.status == 0 && res.output != "") { + let ip = trim(as_string(res.output)); + if (ip != "" && match(ip, /^[0-9a-fA-F\.\:]+$/)) { + return { + ip: ip, + country: "", + country_code: "", + city: "", + isp: "", + ok: true + }; + } + } + + return { + ip: "—", + country: "", + country_code: "", + city: "", + isp: "", + ok: false + }; +} + +/** + * Check for IP Leaks by comparing direct WAN IP and proxy outbound IP. + */ +function check_ip_leak(wan_iface, mixed_port) { + mixed_port = mixed_port || common.get_mixed_port(); + wan_iface = wan_iface != null ? wan_iface : get_wan_interface(); + + let direct = fetch_ip_info(false, wan_iface, mixed_port); + let proxy = fetch_ip_info(true, wan_iface, mixed_port); + + let proxy_online = (proxy.ok && proxy.ip != "—"); + let leaked = true; + + if (proxy_online && direct.ok && direct.ip != "—") { + leaked = (proxy.ip == direct.ip); + } else if (proxy_online) { + leaked = false; + } else { + leaked = false; + } + + return { + leaked: leaked, + direct_ip: direct.ip, + direct_country: direct.country, + direct_country_code: direct.country_code, + direct_city: direct.city, + direct_isp: direct.isp, + proxy_ip: proxy.ip, + proxy_country: proxy.country, + proxy_country_code: proxy.country_code, + proxy_city: proxy.city, + proxy_org: proxy.isp, + proxy_online: proxy_online + }; +} + +/** + * Check for DNS Leaks using the bash.ws DNS Leak detection protocol. + */ +function check_dns_leak(wan_iface, mixed_port, direct_ip, proxy_ip) { + mixed_port = mixed_port || common.get_mixed_port(); + wan_iface = wan_iface != null ? wan_iface : get_wan_interface(); + + let direct_dns_servers = get_direct_dns_servers(); + + let direct_flags = get_direct_curl_flags(wan_iface); + let proxy_flag = "--proxy http://127.0.0.1:" + mixed_port; + + // 1. Get unique leak tokens from bash.ws/id + let res_direct_id = command_capture("curl -s -m 6 --connect-timeout 4 " + direct_flags + " https://bash.ws/id 2>/dev/null"); + let direct_id = (res_direct_id && res_direct_id.status == 0) ? trim(as_string(res_direct_id.output)) : ""; + + let res_proxy_id = command_capture("curl -s -m 6 --connect-timeout 4 " + proxy_flag + " https://bash.ws/id 2>/dev/null"); + let proxy_id = (res_proxy_id && res_proxy_id.status == 0) ? trim(as_string(res_proxy_id.output)) : ""; + + // 2. Fire parallel DNS queries for bash.ws subdomains + if (direct_id != "" || proxy_id != "") { + let parallel_cmd = "{ "; + if (direct_id != "") { + for (let i = 1; i <= 6; i++) { + parallel_cmd += sprintf("curl -s -m 3 %s http://%d.%s.bash.ws >/dev/null 2>&1 & ", direct_flags, i, direct_id); + } + } + if (proxy_id != "") { + for (let i = 1; i <= 6; i++) { + parallel_cmd += sprintf("curl -s -m 3 %s http://%d.%s.bash.ws >/dev/null 2>&1 & ", proxy_flag, i, proxy_id); + } + } + parallel_cmd += "wait; } 2>/dev/null"; + system(parallel_cmd); + + // Allow 1.5s propagation time for upstream resolvers + system("sleep 1.5 2>/dev/null || sleep 2 2>/dev/null"); + } + + // 3. Fetch test results from bash.ws + let direct_resolvers = []; + if (direct_id != "") { + let res = command_capture("curl -s -m 6 --connect-timeout 4 " + direct_flags + " 'https://bash.ws/dnsleak/test/" + direct_id + "?json' 2>/dev/null"); + if (res && res.status == 0 && res.output != "") { + try { + let parsed = json(res.output); + if (type(parsed) == "array") + direct_resolvers = parsed; + } catch (e) {} + } + } + + let proxy_resolvers = []; + if (proxy_id != "") { + let res = command_capture("curl -s -m 6 --connect-timeout 4 " + proxy_flag + " 'https://bash.ws/dnsleak/test/" + proxy_id + "?json' 2>/dev/null"); + if (res && res.status == 0 && res.output != "") { + try { + let parsed = json(res.output); + if (type(parsed) == "array") + proxy_resolvers = parsed; + } catch (e) {} + } + } + + // 4. Build lookup table of direct / ISP DNS resolvers + let direct_map = {}; + for (let s in direct_dns_servers) { + if (s.ip) direct_map[s.ip] = true; + } + for (let r in direct_resolvers) { + if (r.ip) direct_map[r.ip] = true; + } + + let formatted_proxy_servers = []; + let leak_found = false; + + for (let pr in proxy_resolvers) { + if (type(pr) != "object" || !pr.ip) continue; + + let is_direct_leak = (direct_map[pr.ip] == true); + if (is_direct_leak) { + leak_found = true; + } + + push(formatted_proxy_servers, { + ip: pr.ip, + country: as_string(pr.country || pr.country_name || ""), + isp: as_string(pr.name || pr.asn || "Unknown"), + is_isp: is_direct_leak + }); + } + + let formatted_direct_servers = []; + for (let dr in direct_resolvers) { + if (type(dr) != "object" || !dr.ip) continue; + push(formatted_direct_servers, { + ip: dr.ip, + country: as_string(dr.country || dr.country_name || ""), + isp: as_string(dr.name || dr.asn || "ISP Upstream"), + is_isp: true + }); + } + + // Fallback: If bash.ws returned no direct resolvers, populate with OpenWrt system resolv servers + if (length(formatted_direct_servers) == 0 && length(direct_dns_servers) > 0) { + formatted_direct_servers = direct_dns_servers; + } + + let proxy_online = (proxy_id != "" || (proxy_ip != null && proxy_ip != "" && proxy_ip != "—")); + let dns_leaked = false; + + if (proxy_online && length(formatted_proxy_servers) > 0) { + dns_leaked = leak_found; + } else if (proxy_online && length(formatted_proxy_servers) == 0) { + dns_leaked = false; + } + + // If proxy IP equals direct IP, then DNS is definitely not shielded + if (proxy_ip != null && direct_ip != null && proxy_ip != "—" && direct_ip != "—" && proxy_ip == direct_ip) { + dns_leaked = true; + } + + return { + dns_leaked: dns_leaked, + direct_ip: direct_ip || "—", + proxy_ip: proxy_ip || "—", + dns_servers: formatted_proxy_servers, + direct_dns_servers: formatted_direct_servers, + proxy_online: proxy_online + }; +} + +/** + * Unified diagnostic check for both IP and DNS leaks. + */ +function run_leak_check(wan_iface, mixed_port) { + mixed_port = mixed_port || common.get_mixed_port(); + wan_iface = wan_iface != null ? wan_iface : get_wan_interface(); + + let ip_res = check_ip_leak(wan_iface, mixed_port); + let dns_res = check_dns_leak(wan_iface, mixed_port, ip_res.direct_ip, ip_res.proxy_ip); + + return { + ip_leak: ip_res, + dns_leak: dns_res, + timestamp: time() + }; +} + +function print_cli_summary(res) { + print("\n=== TACHYON IP & DNS LEAK TEST REPORT ===\n\n"); + print(sprintf("Direct WAN IP : %s (%s, %s)\n", res.ip_leak.direct_ip, res.ip_leak.direct_country || "Unknown", res.ip_leak.direct_isp || "ISP")); + print(sprintf("Proxy Outbound: %s (%s, %s)\n", res.ip_leak.proxy_ip, res.ip_leak.proxy_country || "Unknown", res.ip_leak.proxy_org || "Proxy")); + + if (res.ip_leak.proxy_online) { + if (res.ip_leak.leaked) { + print("IP Status : ❌ LEAK DETECTED (Direct and Proxy IP match!)\n"); + } else { + print("IP Status : ✅ SECURE (Real WAN IP is hidden behind proxy)\n"); + } + } else { + print("IP Status : ⚪ Proxy is offline or unreachable\n"); + } + + print("\n--- DNS Resolvers Detected ---\n"); + if (length(res.dns_leak.dns_servers) > 0) { + for (let s in res.dns_leak.dns_servers) { + let flag = s.is_isp ? "❌ ISP LEAK" : "✅ SECURE"; + print(sprintf(" [%s] %s (%s - %s)\n", flag, s.ip, s.country, s.isp)); + } + } else { + print(" (No proxy DNS queries recorded or proxy offline)\n"); + } + + if (res.dns_leak.dns_leaked) { + print("\nDNS Status : ❌ DNS LEAK DETECTED (Queries reach your local ISP!)\n\n"); + } else { + print("\nDNS Status : ✅ SECURE (All DNS routed through encrypted/proxy resolvers)\n\n"); + } +} + +// --- CLI Dispatcher --- +let mode = ARGV[0] || ""; + +if (mode == "leak-check" || mode == "leak_check") { + let res = run_leak_check(null, null); + if (ARGV[1] == "--pretty" || ARGV[1] == "-p") { + print_cli_summary(res); + } else { + print(sprintf("%J\n", res)); + } + exit(0); +} +else if (mode == "ip-leak" || mode == "check_ip_leak") { + let res = check_ip_leak(null, null); + print(sprintf("%J\n", res)); + exit(0); +} +else if (mode == "dns-leak" || mode == "check_dns_leak") { + let res = check_dns_leak(null, null, null, null); + print(sprintf("%J\n", res)); + exit(0); +} + +return { + get_wan_interface, + get_direct_dns_servers, + get_direct_curl_flags, + fetch_ip_info, + check_ip_leak, + check_dns_leak, + run_leak_check +}; diff --git a/tachyon/files/usr/lib/service/api.uc b/tachyon/files/usr/lib/service/api.uc index 521a8774..a164b81b 100644 --- a/tachyon/files/usr/lib/service/api.uc +++ b/tachyon/files/usr/lib/service/api.uc @@ -257,6 +257,24 @@ function run_speedtest() { }; } +function run_leak_check() { + let leak_mod = require("diagnostics.leak_check"); + if (!leak_mod) return null; + return leak_mod.run_leak_check(null, null); +} + +function run_ip_leak_check() { + let leak_mod = require("diagnostics.leak_check"); + if (!leak_mod) return null; + return leak_mod.check_ip_leak(null, null); +} + +function run_dns_leak_check() { + let leak_mod = require("diagnostics.leak_check"); + if (!leak_mod) return null; + return leak_mod.check_dns_leak(null, null, null, null); +} + function manage_domain_list(action_type, domain, do_delete) { let c = uci_core.cursor(); if (!c) return { success: false, error: "Не удалось инициализировать UCI" }; @@ -372,6 +390,9 @@ return { get_clash_connections, check_connection, run_speedtest, + run_leak_check, + run_ip_leak_check, + run_dns_leak_check, manage_domain_list, manage_domain_list_by_section, get_sections, diff --git a/tachyon/files/usr/lib/service/lifecycle.uc b/tachyon/files/usr/lib/service/lifecycle.uc index 18489dc6..ca06e8fb 100644 --- a/tachyon/files/usr/lib/service/lifecycle.uc +++ b/tachyon/files/usr/lib/service/lifecycle.uc @@ -847,7 +847,8 @@ function start_main() { if (status != 0) return status; - module_background(HOSTS_UC, [ "list-update" ]); + if (module_success(STATE_UC, [ "has-hosts-list-update-sources" ])) + module_background(HOSTS_UC, [ "list-update" ]); status = module_status(SINGBOX_UC, [ "configure-service" ]); if (status != 0) @@ -1402,7 +1403,7 @@ function reload(reason) { if (plan.needs_byedpi_restart == 1) module_success(BYEDPI_UC, [ "stop-runtime" ]); - if (plan.needs_hosts_update == 1) + if (plan.needs_hosts_update == 1 && module_success(STATE_UC, [ "has-hosts-list-update-sources" ])) module_success(HOSTS_UC, [ "list-update" ]); if (plan.needs_nft_rebuild == 1) { diff --git a/tachyon/files/usr/lib/service/state.uc b/tachyon/files/usr/lib/service/state.uc index c7657d8a..1ee0607e 100644 --- a/tachyon/files/usr/lib/service/state.uc +++ b/tachyon/files/usr/lib/service/state.uc @@ -1787,6 +1787,27 @@ function has_subscription_update_sources_from_sections(sections) { return false; } +function has_hosts_list_update_sources_from_sections(sections) { + for (let section in sections) { + section = object_or_empty(section); + if (option(section, "action", "") != "hosts") + continue; + if (!bool_option(section, "enabled", true)) + continue; + let urls = option(section, "hosts_list_urls", ""); + if (type(urls) == "array") { + for (let u in urls) { + if (trim(as_string(u)) != "") + return true; + } + } else if (trim(as_string(urls)) != "") { + return true; + } + } + + return false; +} + function fixture_sections(path) { let data = object_or_empty(read_json_file(path)); connections.set_item_sections_from_data(data); @@ -2143,6 +2164,10 @@ else if (mode == "has-nft-list-update-sources") exit(has_nft_list_update_sources_from_sections(uci_sections("section")) ? 0 : 1); else if (mode == "has-nft-list-update-sources-fixture") exit(has_nft_list_update_sources_from_sections(fixture_sections(ARGV[1])) ? 0 : 1); +else if (mode == "has-hosts-list-update-sources") + exit(has_hosts_list_update_sources_from_sections(uci_sections("section")) ? 0 : 1); +else if (mode == "has-hosts-list-update-sources-fixture") + exit(has_hosts_list_update_sources_from_sections(fixture_sections(ARGV[1])) ? 0 : 1); else { warn("Usage: service/state.uc ...\n"); exit(1); diff --git a/tests/hosts_list.sh b/tests/hosts_list.sh index 7cda4f6e..2323641f 100644 --- a/tests/hosts_list.sh +++ b/tests/hosts_list.sh @@ -74,6 +74,11 @@ echo "=== Test: hosts_list_status with no URLs ===" output=$(ucode "$HOSTS_UC" list-status 2>/dev/null || true) assert_eq "false" "$(echo "$output" | grep -o '"cache_exists":[a-z]*' | cut -d: -f2)" "cache_exists should be false initially" +# Run hosts_list_update with no URLs (should succeed cleanly with success: true and exit 0) +echo "=== Test: hosts_list_update with no URLs ===" +update_output=$(ucode "$HOSTS_UC" list-update 2>/dev/null || true) +assert_eq "true" "$(echo "$update_output" | grep -o '"success":[a-z]*' | cut -d: -f2)" "list-update should succeed when no URLs configured" + # --- Test 5: Safe name length for long percent-encoded URLs --- echo "=== Test: safe_name length for long URLs ===" long_url_safe_len=$(ucode -e ' diff --git a/tests/leak_check.sh b/tests/leak_check.sh new file mode 100644 index 00000000..43b13440 --- /dev/null +++ b/tests/leak_check.sh @@ -0,0 +1,66 @@ +#!/usr/bin/env bash +set -eo pipefail + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +TACHYON_LIB="$ROOT_DIR/tachyon/files/usr/lib" +LEAK_CHECK="$TACHYON_LIB/diagnostics/leak_check.uc" +BIN="$ROOT_DIR/tachyon/files/usr/bin/tachyon" +API_UC="$TACHYON_LIB/service/api.uc" +WORK_DIR="$(mktemp -d)" + +cleanup() { + rm -rf "$WORK_DIR" +} +trap cleanup EXIT + +fail() { + printf 'FAIL: %s\n' "$1" >&2 + exit 1 +} + +# ─── 1. Syntax check & module load ────────────────────────────────────────── +ucode -L "$TACHYON_LIB" -c "$LEAK_CHECK" || fail "leak_check.uc must pass ucode syntax check" +ucode -S -L "$TACHYON_LIB" -c "$LEAK_CHECK" || fail "leak_check.uc must pass strict ucode syntax check" + +# ─── 2. Test logic with synthetic inputs ──────────────────────────────────── +cat >"$WORK_DIR/test_leak_logic.uc" <<'UCODE' +let leak_mod = require("diagnostics.leak_check"); + +if (type(leak_mod) != "object") { + print("ERR: leak_check module must export object\n"); + exit(1); +} + +// Test exports +if (type(leak_mod.check_ip_leak) != "function" || + type(leak_mod.check_dns_leak) != "function" || + type(leak_mod.run_leak_check) != "function") { + print("ERR: leak_check module missing required functions\n"); + exit(2); +} + +// Test direct curl flags generation +let flags = leak_mod.get_direct_curl_flags("eth0"); +if (index(flags, "--interface 'eth0'") < 0 && index(flags, "--interface eth0") < 0) { + print("ERR: direct curl flags must specify wan interface\n"); + exit(3); +} + +print("OK\n"); +exit(0); +UCODE + +ucode -L "$TACHYON_LIB" "$WORK_DIR/test_leak_logic.uc" | grep -q "OK" || + fail "leak_check.uc unit logic validation failed" + +# ─── 3. Test CLI registration in /usr/bin/tachyon ─────────────────────────── +grep -Fq "leak_check" "$BIN" || fail "/usr/bin/tachyon must register leak_check" +grep -Fq "check_ip_leak" "$BIN" || fail "/usr/bin/tachyon must register check_ip_leak" +grep -Fq "check_dns_leak" "$BIN" || fail "/usr/bin/tachyon must register check_dns_leak" + +# ─── 4. Test api.uc integration ───────────────────────────────────────────── +grep -Fq "run_leak_check" "$API_UC" || fail "api.uc must export run_leak_check" +grep -Fq "run_ip_leak_check" "$API_UC" || fail "api.uc must export run_ip_leak_check" +grep -Fq "run_dns_leak_check" "$API_UC" || fail "api.uc must export run_dns_leak_check" + +printf 'PASS: leak_check\n' diff --git a/tests/runtime_state_predicates.sh b/tests/runtime_state_predicates.sh index 90f3d832..bfe6b009 100644 --- a/tests/runtime_state_predicates.sh +++ b/tests/runtime_state_predicates.sh @@ -1598,4 +1598,43 @@ if state_ucode has-remote-sing-box-ruleset-sources-fixture "$WORK_DIR/disabled-o fail "disabled rule should not require remote sing-box ruleset refresh" fi +cat >"$WORK_DIR/hosts-source.json" <<'JSON' +{ + "section": [ + { + ".name": "my_hosts", + ".type": "section", + "action": "hosts", + "enabled": "1", + "hosts_list_urls": [ "https://example.com/hosts.txt" ] + } + ] +} +JSON + +state_ucode has-hosts-list-update-sources-fixture "$WORK_DIR/hosts-source.json" >/dev/null || + fail "enabled hosts section with URL should require hosts list update" + +cat >"$WORK_DIR/hosts-no-url.json" <<'JSON' +{ + "section": [ + { + ".name": "my_hosts", + ".type": "section", + "action": "hosts", + "enabled": "1", + "dns_hosts": "127.0.0.1 example.com" + } + ] +} +JSON + +if state_ucode has-hosts-list-update-sources-fixture "$WORK_DIR/hosts-no-url.json" >/dev/null 2>&1; then + fail "hosts section without remote URLs should not require hosts list update" +fi + +if state_ucode has-hosts-list-update-sources-fixture "$WORK_DIR/general-only-source.json" >/dev/null 2>&1; then + fail "proxy sections without hosts should not require hosts list update" +fi + printf 'runtime state predicate checks passed\n'