Commit Graph
100 Commits
Author SHA1 Message Date
ushan0v 28ca142662 Restore dnsmasq after legacy backend failure 2026-07-14 22:34:57 +03:00
ushan0v 01d98a9a47 Bound dashboard proxy loading 2026-07-14 22:34:57 +03:00
ushan0v 2a1c97b592 Skip unavailable SourceForge mirror 2026-07-14 06:42:19 +03:00
ushan0v c1c913ba4d Shorten interrupt connections label 2026-07-14 06:17:53 +03:00
ushan0v 80d20cd8ef Refactor runtime and harden package lifecycle 2026-07-14 05:06:27 +03:00
ushan0v 8094108286 Optimize sing-box reloads and config generation 2026-07-14 04:12:17 +03:00
ushan0v 264d6699fe Cache dashboard proxy links directly 2026-07-14 03:16:07 +03:00
ushan0v c05752fd5f Bound installer service checks 2026-07-14 01:38:42 +03:00
ushan0v 2ddc26988a Fix available package versions on APK 2026-07-14 01:18:30 +03:00
ushan0v adf4edc73c Show nested settings validation errors 2026-07-14 01:06:41 +03:00
ushan0v c60ce8179b Fix process stability checks in containers 2026-07-14 01:04:37 +03:00
ushan0v 40848660fa Respect LuCI theme on component cards 2026-07-14 00:45:10 +03:00
ushan0v f8928fdf24 Add section-level dashboard server filtering
Replace per-group dashboard hiding with a global section filter, including live URLTest and Priority group selectors. Keep server selectors usable before choices exist and preserve shared rule-set values across conditional LuCI fields.
2026-07-14 00:33:11 +03:00
ushan0v bc2b1faf91 Bound sing-box UI capability probes 2026-07-13 21:08:52 +03:00
ushan0v 7f84f65a4f Fix startup route and stability checks 2026-07-13 18:02:33 +03:00
ushan0v 8b476cd145 Add SourceForge release mirror 2026-07-13 07:14:06 +03:00
ushan0v 182735f7dd Fix APK component version detection 2026-07-13 03:57:08 +03:00
ushan0v 5b06f51f61 Add proxy parameter filters for URLTest and Priority 2026-07-13 03:28:59 +03:00
ushan0v ec936a675a Add optional SOCKS server authentication 2026-07-13 02:39:35 +03:00
ushan0v 416c367f81 Parse routing condition comments consistently 2026-07-13 02:22:17 +03:00
ushan0v 0070c6fda8 Report terminal sing-box generator errors 2026-07-13 02:13:22 +03:00
ushan0v cd58746a88 Hydrate interface sections in dashboard 2026-07-13 02:04:33 +03:00
ushan0v 0fde4a39c3 Update README.md 2026-07-13 01:06:58 +03:00
ushan0v a9b92eb58d Fix custom DynamicList add button layout 2026-07-13 01:02:36 +03:00
ushan0v 8a7e25c6ed Add DNS action for routing sections 2026-07-13 00:28:22 +03:00
ushan0v 8d82681fcb Hide stale component check results 2026-07-12 21:56:06 +03:00
ushan0v afc05c9100 Restore per-interface domain resolvers 2026-07-12 21:38:58 +03:00
ushan0v cea4ab4505 Enable component update checks by default 2026-07-12 16:25:22 +03:00
ushan0v bcb9794cb9 Keep installer wget timeouts portable 2026-07-12 16:05:06 +03:00
ushan0v 5af3aaddaf Wait for the reloaded sing-box process 2026-07-12 15:57:28 +03:00
ushan0v 8f8e0de4e1 Stop Forkop before removing its route table 2026-07-12 15:29:25 +03:00
ushan0v c1f6cbe6b7 Preserve Tailscale state during legacy migration 2026-07-12 15:23:24 +03:00
ushan0v 013b62b71c Keep MTProto defaults in the server process 2026-07-12 15:11:41 +03:00
ushan0v 6a3b0a459d Pin exact sing-box package on APK 2026-07-12 15:09:46 +03:00
ushan0v 3c0cc5fe7d Preserve domain comments across UI and runtime 2026-07-12 15:06:00 +03:00
ushan0v 00b7a400ec Bound installer network requests 2026-07-12 15:01:11 +03:00
ushan0v 2cdcbb4c0f Log sing-box configuration check failures 2026-07-12 14:59:53 +03:00
ushan0v 380ea1f7cf Tag migrated legacy JSON outbounds 2026-07-12 14:58:33 +03:00
ushan0v 62fe47b31f Retry failed startup without another WAN event 2026-07-12 14:56:50 +03:00
ushan0v 077510bcac Refine installer setup prompts 2026-07-12 08:54:26 +03:00
ushan0v 22c26121dd Remove unsupported URLTest defaults 2026-07-12 03:08:44 +03:00
ushan0v 67fdf4ed04 Restore deployed FakeIP diagnostic endpoints 2026-07-12 02:46:51 +03:00
ushan0v 2fb2236d5e Drop extended URLTest defaults on stable sing-box 2026-07-12 02:34:33 +03:00
ushan0v 57359d355e Free overlay before package sing-box installs 2026-07-12 02:26:32 +03:00
ushan0v b742160862 Install compressed sing-box across filesystems 2026-07-12 02:11:35 +03:00
ushan0v ae56d6742c Avoid OOM during compressed sing-box validation 2026-07-12 02:05:57 +03:00
ushan0v 8379be6c50 Fix stable sing-box variant detection 2026-07-12 01:59:37 +03:00
ushan0v 5b5d2e2832 Restore Close labels in LuCI dialogs 2026-07-12 01:40:19 +03:00
ushan0v 9881dc2b50 Filter unsupported XHTTP subscription outbounds 2026-07-12 01:36:45 +03:00
ushan0v b7ff705a24 Restore sing-box after package install failures 2026-07-12 01:32:15 +03:00
ushan0v c618a07b03 Fix redirected component archive extraction 2026-07-12 01:26:49 +03:00
ushan0v 02def64793 Route community rule-set downloads through proxy 2026-07-12 00:57:11 +03:00
ushan0v 3f5e4c28e8 Fix sing-box extended version validation 2026-07-12 00:42:43 +03:00
ushan0v 7256f830f1 Stabilize release CI and record upstream state 2026-07-12 00:18:57 +03:00
ushan0v 62641cf760 Rewrite README for Forkop 2026-07-12 00:00:59 +03:00
ushan0v 64de43dee0 Add configurable DNS strategy 2026-07-11 19:17:13 +03:00
ushan0v b5f2eb3724 Rebrand project as Forkop 2026-07-11 18:23:20 +03:00
ushan0v dc052f03a7 Simplify build and backend test layout 2026-07-11 05:11:50 +03:00
ushan0v d0b53e9525 Fix component loading translation 2026-07-11 03:39:06 +03:00
ushan0v 834b8b8d4b Harden service reload recovery 2026-07-11 02:40:57 +03:00
ushan0v 6bfdca6229 Add automatic component update checks 2026-07-11 02:08:39 +03:00
ushan0v 3292766afe Refine Priority UX and add GitHub ruleset 2026-07-11 00:10:57 +03:00
ushan0v 958fc3cd14 Improve stopped-service dashboard and monitoring UX 2026-07-11 00:10:57 +03:00
ushan0v bf8eb5e2f9 Add prioritized DNS failover 2026-07-11 00:10:57 +03:00
ushan0v ef4bb76ad3 Harden outbound tag allocation 2026-07-11 00:10:57 +03:00
ushan0v 584f72f503 Add subscription node prefixes 2026-07-11 00:10:57 +03:00
ushan0v 53b49cac06 Simplify connection source settings and cascade 2026-07-11 00:10:56 +03:00
ushan0v 6577b341e1 Fix country lookup behind FakeIP DNS 2026-07-11 00:10:56 +03:00
ushan0v 6774d48356 Polish Priority labels and country flags 2026-07-11 00:10:56 +03:00
ushan0v 82494b77a0 Add Priority failover groups 2026-07-11 00:10:56 +03:00
ushan0v 2cc686d18f Improve JSON outbound and URLTest editing 2026-07-11 00:10:56 +03:00
ushan0v d3fc23b26c Speed up LuCI initial render 2026-07-11 00:10:56 +03:00
ushan0v 222f73710f Preserve selector choice across restart 2026-07-11 00:10:56 +03:00
ushan0v 8789c53a16 Defer nonessential LuCI startup work 2026-07-11 00:10:56 +03:00
ushan0v e172187234 Improve dashboard copy feedback 2026-07-11 00:10:56 +03:00
ushan0v f352193765 Gate WAN start retry on failed start marker 2026-07-11 00:10:56 +03:00
ushan0v 86e0278c3d Fix sing-box crash startup action state
Require sing-box to survive a dedicated startup stability window before Podkop Plus continues startup. This is generic runtime dependency validation, not special handling for rule-set, list, URL, or specific sing-box FATAL text.

When startup fails, Podkop Plus rolls back runtime/DNS state and the UI service action is closed through a short post-command wait instead of staying in the starting state until the full action timeout.

Keep the diagnostic restart action hidden during start/stop transitions, even if runtime probes briefly report Podkop Plus as running before the transition finishes. This prevents the restart button from flickering during failed startup.
2026-07-11 00:10:56 +03:00
ushan0v fd63d123e5 Fix crash-loop runtime status handling 2026-07-11 00:10:56 +03:00
ushan0v 826ebf6f32 Refine subscription URL settings 2026-07-11 00:10:55 +03:00
ushan0v 5181218788 Add latency test progress feedback 2026-07-11 00:10:55 +03:00
ushan0v 6ecfc75f8f Fix runtime cleanup after failed start 2026-07-11 00:10:55 +03:00
ushan0v 2e9351d309 Normalize section item UCI storage 2026-07-11 00:10:55 +03:00
ushan0v 803680aa4e Add subscription node visibility toggles 2026-07-11 00:10:55 +03:00
ushan0v 90a00a926b Fix Hysteria2 subscription runtime compatibility 2026-07-11 00:10:55 +03:00
ushan0v 16d7f7e155 Refine LuCI download and rule set settings 2026-07-11 00:10:55 +03:00
ushan0v 8610b83e43 feat: add unified connection action 2026-07-11 00:10:55 +03:00
ushan0v c0cf425fb5 Improve URLTest details and Xray tag handling 2026-07-11 00:10:55 +03:00
ushan0v f7a2fc3e4e Improve URLTest group imports and dashboard details 2026-07-11 00:10:54 +03:00
ushan0v 4f6c692163 Fix subscription proxy groups in generator 2026-07-11 00:10:54 +03:00
ushan0v 932bd725a8 Fix validated diagnostics and VLESS regressions
Delay stable sing-box package version failures until after package index refresh, preserve non-none VLESS encryption through import/cache/manual paths, and avoid false-positive FakeIP/firewall diagnostics.

Add targeted backend and frontend regression coverage for the accepted cases.
2026-07-11 00:10:54 +03:00
ushan0v e213fc342f Support IDN domain conditions 2026-07-11 00:10:54 +03:00
ushan0v 045ea42562 Add regression coverage for resolved issue reports 2026-07-11 00:10:54 +03:00
ushan0v 9ce314e5c4 Add priority bypass routing action
Replace user-facing direct routing action with bypass, add priority nft bypass handling, real DNS for bypass domains, migration cleanup, and the related runtime/frontend tests.

Also includes the previously pending runtime log hygiene cleanup and regression coverage that was already in the working tree.
2026-07-11 00:10:54 +03:00
ushan0v ae1e0373ee fix: translate IPv6 subnet validation errors 2026-07-11 00:10:54 +03:00
ushan0v 173b8bb789 feat: add dual-stack IPv6 support 2026-07-11 00:10:54 +03:00
ushan0v 5e3cf10d91 Fix stuck UI background actions 2026-07-11 00:10:54 +03:00
ushan0v 20b4b74e73 Make section editor open without metadata wait 2026-07-11 00:10:53 +03:00
ushan0v b19378e7b4 Optimize diagnostic value masking 2026-07-11 00:10:53 +03:00
ushan0v f681c4eacd fix direct route display tag mapping 2026-07-11 00:10:53 +03:00
ushan0v e3ef9e70fa Rewrite backend runtime from shell to ucode
Replace the legacy shell-owned runtime with modular ucode implementations for configuration, service lifecycle, subscriptions, diagnostics, DNS, nftables, routing, providers, updates, and sing-box generation.

Keep thin OpenWrt entrypoints and add regression and package-contract coverage for the new runtime ownership model.
2026-06-30 20:09:28 +03:00