35 Commits

Author SHA1 Message Date
Aethersailor
60bbadde5b fix(version): support lightweight backend probes 2026-06-06 13:11:48 +08:00
Aethersailor
b9e8dea1b0 build(package): trim bundled runtime libraries 2026-06-01 18:56:10 +08:00
Aethersailor
cee3a162d6 fix(inspect): localize diagnostics and log access 2026-05-25 22:37:33 +08:00
Aethersailor
36e3f73440 feat(inspect): show request parameter diagnostics 2026-05-25 22:04:36 +08:00
Aethersailor
9f4b2c0b61 fix(inspect): register only inspect route 2026-05-25 20:21:21 +08:00
Aethersailor
3d70c4b5d0 feat(debug): add request inspector page 2026-05-25 19:45:28 +08:00
Aethersailor
85290de257 feat(sub): add explain mode smoke coverage 2026-05-25 17:22:47 +08:00
Aethersailor
38fa058255 ci(release): deduplicate Linux build workflow 2026-05-21 20:19:03 +08:00
Aethersailor
8507b2f164 ci(parser): enable historical upstream catch-up 2026-05-21 10:18:08 +08:00
Aethersailor
c29cdf1cf1 ci(parser): add upstream sync dry-run diagnostics 2026-05-21 10:04:08 +08:00
Aethersailor
d550f50f2c ci(parser): automate upstream parser sync 2026-05-21 09:54:55 +08:00
Aethersailor
a3b1889fa3 ci(docker): use mirrored base images 2026-05-21 00:16:31 +08:00
Aethersailor
5665fe5639 fix(openwrt): use etc config and stable procd service 2026-05-21 00:04:00 +08:00
Aethersailor
5644df5a05 fix(release): omit apk size metadata 2026-05-20 23:37:21 +08:00
Aethersailor
63fbd10e27 fix(release): use apk size metadata field 2026-05-20 23:28:01 +08:00
Aethersailor
db3a06857f feat(release): add OpenWrt APK artifacts 2026-05-20 23:20:51 +08:00
Aethersailor
acc49808ff fix(release): preserve Windows portable configs 2026-05-20 22:57:17 +08:00
Aethersailor
034cff1be0 fix(release): locate mihomo module via go list 2026-05-20 20:53:15 +08:00
Aethersailor
d12feae3ce ci(release): add Windows amd64 artifact 2026-05-20 20:41:30 +08:00
Aethersailor
087cb49bd2 fix(release): avoid armv7 runtime root lib conflict 2026-05-20 20:04:53 +08:00
Aethersailor
33b2e181be ci(release): add Linux artifact smoke checks 2026-05-20 19:56:08 +08:00
Aethersailor
6c21fd5a44 build(msys2): add local Windows build support 2026-05-19 18:47:06 +08:00
Aethersailor
eaf24bc39d feat(runtime): localize logs and product branding 2026-05-18 21:02:06 +08:00
Aethersailor
5d0edc1279 chore: update build scripts and remove unused script 2026-01-04 09:53:27 +08:00
Aethersailor
90da87f8a8 chore: remove patches and upstream sync workflow (no longer syncing upstream) 2025-12-29 11:15:07 +08:00
Aethersailor
250d30bcf6 chore: remove obsolete scripts (rules updater, termux config, old dockerfile) 2025-12-29 11:13:24 +08:00
Aethersailor
7c0e954172 fix: add GOMODCACHE detection for Docker builds 2025-12-29 09:11:21 +08:00
Aethersailor
0e823a7fa0 feat(phase-9.3+): add hardcoded parameter protection and smart link routing
Phase 9.3 Enhancements:
1. Hardcoded Parameter Protection
   - Auto-detect hardcoded params from Mihomo converter.go (detectHardcodedParams)
   - Mark 27 hardcoded instances (trojan udp=true, vmess udp/xudp=true, etc)
   - Add isParamHardcoded() check to prevent global overrides
   - Respect Mihomo's intentional defaults

2. Smart Subscription/Node Link Routing
   - HTTP(S) links: judge by path/query (not unreliable @ symbol)
   - Support protocol-less links (api.com/sub -> subscription)
   - Unknown protocols: feed to Mihomo (silent fail filtering)
   - Handle edge cases (trailing slash, port numbers)

Changes:
- generate_param_compat.go: Add IsHardcoded field + detection logic
- param_compat.h: Add hardcoded field to ParamCompatInfo
- nodemanip.cpp: Implement intelligent link routing rules

This ensures Mihomo's hardcoded parameters are protected while improving
subscription/node link detection accuracy.
2025-12-29 09:06:35 +08:00
Aethersailor
2047424d28 feat(phase-9.3): implement fully automated parameter compatibility system
- Auto-extract protocol list from mihomo converter.go switch statements
- Auto-extract protocol aliases from case declarations (hy2->hysteria2, etc)
- Auto-scan all protocol files and build protocol->file->struct mappings
- Auto-extract parameters from XXXOption structs via AST parsing
- Generate param_compat.h with complete compatibility database
- Integrate smart parameter application in subexport.cpp
- Add mihomo_schemes.h and param_compat.h generation to build process
- Support 15 protocols with zero hardcoded protocol lists
- Fix http/https protocol filtering (were incorrectly excluded)
- Add intelligent protocol name matching for abbreviations (ss->shadowsocks)

This achieves ~95% automation - only 3 naming convention mappings remain.
All protocol and alias information is now extracted directly from mihomo source code.
2025-12-29 01:41:22 +08:00
Aethersailor
b1b8ff143c fix(docker): ensure go mod tidy runs before scripts and add debug info 2025-12-28 23:15:08 +08:00
Aethersailor
9b1912fd1f fix(scripts): add debug logging for go list command 2025-12-28 23:12:24 +08:00
Aethersailor
3a3cec828c fix(scripts): remove unused variable to fix build failure 2025-12-28 23:08:23 +08:00
Aethersailor
48430f05c6 fix(scripts): support dynamic module root detection 2025-12-28 23:06:21 +08:00
Aethersailor
8b8312d2fd feat: implement auto-sync for supported schemes
- Added scripts/generate_schemes.go to extract protocols from mihomo source using AST
- Updated bridge/build.sh to run extraction before compilation
- Refactored nodemanip.cpp to use generated mihomo::SUPPORTED_SCHEMES instead of hardcoded list
2025-12-28 22:46:03 +08:00
Aethersailor
b0bb3901c9 chore: add upstream sync workflow 2026-01-03 23:48:48 +08:00