- Change Go buildmode from c-archive to c-shared
- musl libc doesn't pass argc/argv to constructors, causing runtime.sysargs to crash
- c-shared mode has cleaner initialization boundary for Go runtime
- CMakeLists.txt now supports both .so and .a modes for cross-platform compatibility
- Add musl environment detection in CMakeLists.txt
- Disable LTO and PIE for stable Go CGO linking
- Use --whole-archive to prevent symbol loss
- Set CC=musl-gcc explicitly in Dockerfile
- Add -trimpath for safe binary size reduction
- Add -Wl,--no-as-needed and static libgcc/libstdc++ linking
- Add Go wrapper layer (bridge/) calling mihomo's ConvertsV2Ray()
- Add C++ bridge (mihomo_bridge.h/cpp) for CGO interop
- Update CMakeLists.txt to link Go static library
- Update Dockerfile with multi-stage build (Go + C++)
- Replace explodeConfContent with mihomo::parseSubscription in nodemanip.cpp
- Implement full protocol support (SS/VMess/Trojan/Hysteria/TUIC etc.)
- Add fallback to legacy parser if mihomo library unavailable
This ensures 100% compatibility with mihomo's node config generation
and auto-syncs protocol support with upstream mihomo updates.