Dushnilin
207f77954a
fix: auto-switch DNS servers on protocol change in settings and per-rule
2026-07-31 20:05:33 +03:00
Dushnilin
6061c92571
fix: read dns_type from DOM select instead of UCI for dynamic DNS server filtering
2026-07-31 19:01:07 +03:00
Dushnilin
bc04794b73
feat: DoQ в UI + динамическая фильтрация DNS серверов по протоколу (UDP/DoT/DoH/DoQ)
2026-07-31 18:41:58 +03:00
Dushnilin
ac1ff6bbb7
fix: кнопки активны после обновления + перевод Reinstall → Переустановить
2026-07-31 18:15:28 +03:00
Dushnilin
ac209457d7
feat: кнопка Переустановить для Tachyon на странице обновлений
2026-07-31 17:34:11 +03:00
Dushnilin
ce0256528b
fix(security): харденинг Telegram-бота, DNS failover и ACL
2026-07-31 14:31:13 +03:00
Dushnilin
7757ceae6a
feat: implement WebRTC Leak Protection and Strict DNS DoQ Enforcer
2026-07-30 21:43:56 +03:00
Dushnilin
af620a2f45
fix: исправление резолвинга пакета zapret2 для роутеров и поиск релизов
2026-07-30 17:52:16 +03:00
Dushnilin
b057e0a48d
refactor: удаление неиспользуемого автоподбора Zapret2 и чистка файлов локализации
2026-07-30 16:42:30 +03:00
Dushnilin
f3d8c5a264
fix: решение зацикливания TPROXY FakeIP для ip.podkop.fyi и синхронизация тестов с локалями
2026-07-30 10:39:55 +03:00
Dushnilin
6c1d3dc7be
LuCI: Remove express/deep scan dropdown, use single deep scan
2026-07-29 22:39:45 +03:00
Dushnilin
4422416227
fix(ui): native rules button layout and tracer community match logic
2026-07-29 18:32:17 +03:00
Dushnilin
3821e92148
style(luci): complete visual redesign of zapret2 strategy tuner with 1-click automated section domain optimization
2026-07-29 13:41:41 +03:00
Dushnilin
03f6699099
feat(zapret2): fully automated 1-click strategy tuner for section domains and fix state directory creation
2026-07-29 13:19:15 +03:00
Dushnilin
a8187270ca
fix(luci): use async background polling for strategy tuner to prevent XHR timeouts
2026-07-29 13:02:26 +03:00
Dushnilin
b82f98288a
ux(luci): render strategy auto-tuner inline inside section modal with visual textarea feedback
2026-07-29 12:59:44 +03:00
Dushnilin
14270430d2
fix(zapret2): improve strategy probe connectivity and winner evaluation logic
2026-07-29 12:02:51 +03:00
Dushnilin
dc695ff2d5
fix(luci): use renderWidget for native LuCI dependency handling
2026-07-29 11:52:43 +03:00
Dushnilin
3c4efea11b
fix(luci): add zapret2 strategy tuner UI widget and fix AWG obfuscation visibility
2026-07-29 11:43:01 +03:00
Dushnilin
c7ff142a48
Release 1.2.43 - Pre-download and cache all preset rulesets & databases
2026-07-29 08:58:00 +03:00
Dushnilin
28f2a04f02
chore(locales): synchronize extracted translation templates and Russian PO catalog
2026-07-28 21:48:24 +03:00
Dushnilin
53e3f1f041
feat(routing): add traffic type / protocol filtering and exclusion per section
2026-07-28 21:46:18 +03:00
Dushnilin
698ef4dd33
fix(ui): fix AWG group render argument signature to (option_index, section_id, in_table)
2026-07-28 11:35:09 +03:00
Dushnilin
a54607a6e7
fix(ui): remove duplicate realSid declaration
2026-07-28 11:29:30 +03:00
Dushnilin
297ffd0975
fix(ui): resolve real UCI section name from CBI section_id in AWG group render
2026-07-28 11:22:10 +03:00
Dushnilin
a06248cd6e
fix(ui): read AWG params via cfgvalue() not uci.get() — fixes missing values in spoiler
2026-07-28 11:05:40 +03:00
Dushnilin
9dcb474228
feat(ui): AWG obfuscation params compact spoiler in OpenWRT style + ru translations; fix(types): add dns_turbo_cache to ConfigSection
2026-07-28 11:02:29 +03:00
Dushnilin
3e1c68f836
feat(ui): collapse AWG amnezia params (Jc/Jmin/Jmax/S1-4/H1-4/I1-5) into compact spoiler
2026-07-28 10:52:42 +03:00
Dushnilin
b069e8f6a4
style(ui): remove emojis and clean up GeoIP mode labels
2026-07-27 18:47:04 +03:00
Dushnilin
cc8cec4275
fix(ui): strip legacy all value and map non-ru in geoip_country load handler
2026-07-27 18:44:45 +03:00
Dushnilin
eef4d587bd
feat: custom multi-country GeoIP grouping and filter modes (include/exclude)
2026-07-27 18:30:02 +03:00
Dushnilin
1e82413022
style(ui): move GeoIP country routing option into section match conditions tab
2026-07-27 18:12:22 +03:00
Dushnilin
3c3a4b7035
feat(section): add DSCP mark matching for QoS application routing
2026-07-27 17:09:48 +03:00
Dushnilin
fa93ad4cd0
fix: sync Russian po catalogs and fix Unicode corruption in DNS Turbo Cache translations
...
- Both ru po files now byte-for-byte identical (cmp -s passes)
- Fixed Unicode corruption: u0411... literals replaced with actual UTF-8
- Unified description msgid between settings.js (LuCI) and fe-app
- Added Enable DNS Turbo Cache + Saving ellipsis entries to both files
- Updated pot files to match new description string
2026-07-26 20:52:50 +03:00
Dushnilin
d8a0d64501
feat: DNS Turbo Cache - persistent FakeIP + startup domain prefetch
...
- singbox/dns_prefetch.uc: new module, resolves ~70 popular blocked domains
after startup to warm sing-box FakeIP cache (sleep 10s, then nslookup each)
- lifecycle.uc: DNS_PREFETCH_UC constant + module_background call in start_main
- generator.uc: when dns_turbo_cache=1 use /etc/sing-box/cache.db (persistent)
- settings.js (LuCI): Flag toggle for dns_turbo_cache in DNS settings block
- renderAdvancedSettings.ts: DNS Turbo Cache section with toggle + save
- tachyon.pot / tachyon.po / tachyon.ru.po: translations RU
- constants.uc: bump 1.2.30 -> 1.2.31
- package.json: bump 1.2.30 -> 1.2.31
2026-07-26 20:22:35 +03:00
Dushnilin
51e36997b7
i18n(pot): добавлены строки GeoIP Country Routing в шаблон .pot
2026-07-26 19:21:23 +03:00
Dushnilin
9c04276aac
fix(geoip): запрет geoip_country для block/bypass/dns секций - предотвращение блокировки всего зарубежного трафика
2026-07-26 19:15:04 +03:00
Dushnilin
89be9109b7
i18n(po): добавлены русские переводы для GeoIP Country Routing
2026-07-26 18:44:25 +03:00
Dushnilin
dc071a5064
feat(routing): Selective GeoIP Routing (Региональный умный маршрутизатор по странам non-ru/ru/us/cn)
2026-07-26 18:33:53 +03:00
Dushnilin
e4e645a914
fix(generator): импорт core.ip, обработка многострочных hosts и добавление переводов (v1.2.28)
2026-07-26 09:39:01 +03:00
Dushnilin
02008f3394
feat: поддержка нескольких DNS-серверов в секциях DNS и улучшение текстареа Hosts (v1.2.28)
2026-07-26 08:31:14 +03:00
Dushnilin
595c4cef3b
feat(download): add ghproxy mirror fallback chain and disk cache fallback
...
- Add download_candidates helper in core/url.uc to auto-generate ghproxy mirror URLs (ghproxy.net, mirror.ghproxy.com, gh-proxy.com) for GitHub and external downloads
- Enhance download_to_file and download_subscription to try mirror candidates if direct download fails due to DPI or blocking
- Fallback to disk cache if all download attempts fail, preventing sing-box and service crashes on network outages
- Add 'Load Current Records' button in UI hosts import modal to pre-fill editor from saved configuration
- Synchronize localization catalogs
2026-07-25 12:35:37 +03:00
Dushnilin
1ea9cc354e
feat(dns-hosts): replace DynamicList with textarea for 300+ record comfort
2026-07-25 10:13:33 +03:00
Dushnilin
15d722162d
fix(security): resolve CodeQL XSS vulnerability (js/xss-through-exception) in tracer error handling
2026-07-25 06:17:23 +03:00
Dushnilin
922783226e
release: 1.2.23 - add hosts file import feature for custom DNS records
2026-07-25 06:15:33 +03:00
Dushnilin
cdf24c4632
release: 1.2.22 - section rules modal UI, fix telegram worker command_output_from_args, fix watchdog ubus listener
2026-07-24 20:18:51 +03:00
Dushnilin
c431c2739c
fix(luci-app-tachyon): render rules summary badges using real DOM elements in renderWidget
2026-07-24 10:26:28 +03:00
Dushnilin
83fe16eda2
fix(luci-app-tachyon): resolve [object HTMLDivElement] stringification bug by rendering rules summary in dedicated DummyValue column with rawhtml
2026-07-24 10:24:21 +03:00
Dushnilin
2991d76ec0
feat(luci-app-tachyon): display compact rule counter badges next to section title
2026-07-24 08:49:23 +03:00
Dushnilin
dff26f1232
style(luc-app-tachyon): redesign routing rule tracer to be ultra-compact and horizontal under the rule list
2026-07-23 12:24:37 +03:00