Commit Graph
100 Commits
Author SHA1 Message Date
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
ushan0v 86f1be3273 Optimize Podkop runtime process batching 2026-06-24 04:23:47 +03:00
ushan0v fbe812c7ce Fix URLTest connection interruption flag 2026-06-23 02:37:55 +03:00
ushan0v 3c57ea1182 Fix Zapret2 route mark range overlap 2026-06-23 02:15:34 +03:00
ushan0v 6169bfe1ed Normalize ALPN for websocket transports 2026-06-23 01:49:49 +03:00
ushan0v 3dcd5c00e8 Fix invalid xHTTP post byte import 2026-06-23 00:47:06 +03:00
ushan0v 1528eebf7d Allow download routing through provider sections 2026-06-22 04:56:57 +03:00
ushan0v 9d5c3a5198 Make dashboard subscription update a text button 2026-06-22 03:52:04 +03:00
ushan0v 06744259c8 Split proxy download settings 2026-06-22 03:46:18 +03:00
ushan0v e000ea3bff Make remote list updates non-fatal 2026-06-22 03:22:02 +03:00
ushan0v e863a16c91 Add JSON inbound server protocol 2026-06-22 02:48:04 +03:00
ushan0v a045a1c58d Fix startup cleanup and offload dependency 2026-06-18 21:55:57 +03:00
ushan0v 5f515acedf Preserve Hysteria2 userinfo in subscriptions 2026-06-18 09:39:58 +03:00
ushan0v e7e9188962 Update diagnostics and domain UI 2026-06-18 08:45:51 +03:00
ushan0v 59a13cc772 Improve diagnostics masking controls 2026-06-18 08:44:35 +03:00
ushan0v 3b0c7e0fc7 Honor section order and combined domains 2026-06-18 08:40:19 +03:00