sagit
5a327459f7
fix: use .npmrc for pnpm onlyBuiltDependencies ( #498 )
...
Use .npmrc file for pnpm v11 build scripts approval.
2026-05-07 20:43:29 +08:00
sagitchu
f307e7d5eb
fix: use .npmrc for pnpm onlyBuiltDependencies config
...
pnpm config set doesn't support onlyBuiltDependencies in global config.
Use .npmrc file instead.
2026-05-07 20:41:05 +08:00
sagit
fdd72979b6
fix: approve @tailwindcss/oxide build script for pnpm v11 ( #497 )
...
pnpm v11 blocks build scripts by default. Allow @tailwindcss/oxide via
onlyBuiltDependencies.
2026-05-07 20:26:24 +08:00
sagitchu
ad33791a26
fix: approve @tailwindcss/oxide build script for pnpm v11
...
pnpm v11 blocks build scripts by default; explicitly allow
@tailwindcss/oxide via onlyBuiltDependencies config.
2026-05-07 20:24:17 +08:00
sagit
6320b1f0c1
fix: upgrade Node.js to 22-alpine for corepack/pnpm compat ( #496 )
...
## Summary
Node.js 20.19.0 + corepack + pnpm@11.0.8 hits
`ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING` during Docker build. Upgrade
builder image to `node:22-alpine` (LTS).
## Verification
Frontend build passes locally with `pnpm run build`.
2026-05-07 20:11:46 +08:00
sagitchu
91d79b6b3a
fix: upgrade Node.js to 22-alpine for corepack/pnpm compatibility
...
node:20.19.0 + corepack + pnpm@11.0.8 hits ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING
2026-05-07 20:09:42 +08:00
sagit
fc7df6bd64
fix: panel self-upgrade helper not recreating containers ( #495 )
...
## Summary
- **Helper container `docker compose up` 不会强制重建容器**:原脚本缺少
`--force-recreate`,Docker Compose
在检测不到配置变化时不会替换运行中的容器,导致拉取了新镜像但旧容器继续运行。新增 `--force-recreate
--remove-orphans` 确保容器被替换。
- **无错误日志**:helper 容器执行失败时没有任何可见反馈。新增 `upgrade.log` 写入部署目录,每一步操作和错误都有记录。
- **"立即升级"按钮永久禁用**:按钮 `isDisabled` 绑定了
`!canOpenSystemUpgradeModal`,该条件要求已完成检查更新且有可用更新,但页面本身有点击时自动检查的逻辑,导致按钮永远无法点击。改为
`!canTriggerSystemUpgrade` 允许自动检查流程触发。
## Verification
| Check | Result |
|-------|--------|
| `go test ./...` | ✅ 498 passed |
| `pnpm run build` | ✅ passed |
| `pnpm run lint` | ✅ passed |
2026-05-07 19:53:53 +08:00
sagitchu
25dfb84324
fix: panel self-upgrade helper not recreating containers
...
- Add --force-recreate --remove-orphans to docker compose up so helper
actually replaces running containers with newly pulled images
- Add upgrade.log file for post-mortem debugging when helper fails
- Add pre-flight validation for docker-compose.yml and .env
- Fix "立即升级" button permanently disabled by relaxing the disabled
condition so auto-check on click can fire
2026-05-07 19:51:18 +08:00
sagit
4ebd6703fe
fix: harden proxy protocol rollout safety ( #494 )
3.0.0-beta12
2026-05-07 16:37:51 +08:00
sagit
1f53a39784
Update contact link from group to channel ( #493 )
2026-05-07 01:26:56 +00:00
sagit
5ebd4c2a91
feat: add panel self-upgrade workflow ( #492 )
3.0.0-beta11
2026-05-06 17:58:01 +08:00
sagit
6c93d829c6
fix: refine advanced settings layout
...
Merge PR #491
3.0.0-beta10
2026-05-04 17:33:56 +08:00
sagitchu
5d22d4cb06
fix: refine advanced settings layout
2026-05-04 17:25:58 +08:00
sagit
e5cd5af550
Use custom probe targets for diagnostics
3.0.0-beta9
2026-05-02 14:27:20 +08:00
sagitchu
cdcdfd8ff0
fix: use custom probe targets for diagnostics
...
Move custom probe target controls into the tunnel advanced settings and reuse the configured target in tunnel diagnosis output.
2026-05-02 14:23:51 +08:00
sagit
791773fd62
Add custom tunnel probe targets ( #488 )
3.0.0-beta8
2026-05-02 00:54:54 +08:00
sagitchu
13764b4615
fix: reject malformed probe target updates
2026-05-02 00:12:41 +08:00
sagitchu
4c882d907b
fix: preserve probe targets on legacy updates
2026-05-02 00:08:24 +08:00
sagitchu
6033e39466
fix: preserve probe targets in backups
2026-05-02 00:02:23 +08:00
sagitchu
0f3242bf11
fix: reject raw probe target whitespace
2026-05-01 23:54:31 +08:00
sagitchu
d97d91801d
fix: reject leading zero probe IPv4
2026-05-01 23:50:41 +08:00
sagitchu
727ef56c67
fix: improve probe target form feedback
2026-05-01 23:46:56 +08:00
sagitchu
a40150b136
fix: type tunnel probe target payloads
2026-05-01 23:42:21 +08:00
sagitchu
a923ec4785
fix: validate probe target port input
2026-05-01 23:39:14 +08:00
sagitchu
42c5492c1d
feat: add tunnel probe target UI
2026-05-01 23:36:14 +08:00
sagitchu
869d726b7a
fix: preserve type one quality probe owner
2026-05-01 23:32:00 +08:00
sagitchu
55a931510b
feat: use probe target for tunnel quality checks
2026-05-01 23:28:26 +08:00
sagitchu
a259dd83b2
fix: load probe target with tunnel record
2026-05-01 23:24:48 +08:00
sagitchu
cc0b8de2e1
feat: use probe target for best exit scoring
2026-05-01 23:20:50 +08:00
sagitchu
58ef260755
fix: migrate legacy tunnel probe target columns
2026-05-01 23:15:21 +08:00
sagitchu
521fe79b15
fix: validate tunnel probe target before cleanup
2026-05-01 23:10:47 +08:00
sagitchu
90012725cc
feat: persist tunnel probe targets
2026-05-01 22:58:47 +08:00
sagitchu
615d9e67eb
fix: validate probe target host shape
2026-05-01 22:53:37 +08:00
sagitchu
a131b70613
fix: reject probe target scheme prefixes
2026-05-01 22:49:34 +08:00
sagitchu
cbed4eab23
feat: add tunnel probe target normalization
2026-05-01 22:45:58 +08:00
sagitchu
c2745dcd56
docs: add custom best exit probe target plan
2026-05-01 22:22:57 +08:00
sagitchu
ad4109594a
docs: add custom best exit probe target design
2026-05-01 22:14:02 +08:00
sagit
efc8c75dcb
Show current best exit state ( #487 )
...
## Summary
- Add backend display-state snapshots and response enrichment for best
multi-exit tunnels.
- Surface direct-entry and final-chain-hop owner choices, including
waiting, partial, multi-exit, and stale-exit safeguards.
- Render compact current best-exit text in tunnel table/card views with
native tooltip details.
## Test Plan
- [x] `rtk go test ./...` from `go-backend`
- [x] `pnpm run build` from `vite-frontend`
3.0.0-beta7
2026-05-01 13:58:30 +08:00
sagitchu
e5acc49186
feat: show current best exit state
2026-05-01 13:30:46 +08:00
sagitchu
d98377a297
docs: add best exit current display plan
2026-05-01 12:24:50 +08:00
sagitchu
950e9a9ba8
docs: add best exit current display design
2026-05-01 12:18:29 +08:00
sagit
3f3159aafd
Add best exit selection ( #486 )
...
* docs: add best exit selection design
* feat: add best exit selection
3.0.0-beta6
2026-05-01 08:12:17 +08:00
sagit
5e8d0682c0
Modify wallet addresses in README.md ( #485 )
...
Updated wallet addresses for BNB(BEP20), TRC20, and polygon.
2026-04-30 07:43:34 +00:00
sagit
3c0e833cfc
fix: reduce runtime sync disruptions ( #484 )
3.0.0-beta5
2026-04-30 14:36:26 +08:00
sagit
60311d3e47
fix: prune stale agent traffic counters ( #483 )
...
## Summary
- Prune stale agent traffic counters when services are deleted or config
is reloaded.
- Ignore late traffic updates from services no longer registered, while
preserving pending bytes until the next report flush.
- Add regression tests for stale traffic cleanup and
report-before-delete behavior.
## Test Plan
- rtk go test ./service
- rtk go test ./service ./socket ./api
- rtk go test ./...
- CGO_ENABLED=0 rtk go build .
- rtk git diff --check
3.0.0-beta4
2026-04-30 09:56:32 +08:00
sagitchu
b4192c9e94
fix: prune stale agent traffic counters
2026-04-30 09:54:02 +08:00
sagit
f05e9480ee
Add monitoring retention planning docs ( #482 )
...
## Summary
- Add the design spec for monitoring retention and storage display.
- Add the implementation plan used for the monitoring retention feature.
## Test Plan
- Documentation-only change; no runtime tests required.
2026-04-29 15:16:35 +08:00
sagitchu
9861b44107
docs: add monitoring retention plan
2026-04-29 15:14:53 +08:00
sagit
d8144821e6
Add monitoring retention controls ( #481 )
...
## Summary
- Add configurable monitoring retention days for node metrics, tunnel
metrics, service monitor results, and tunnel quality history.
- Add an admin-only storage summary endpoint and show database usage on
the config page.
- Keep tunnel quality cleanup active even when real-time quality probing
is disabled.
## Test Plan
- go test ./... (go-backend)
- pnpm run build (vite-frontend)
3.0.0-beta3
2026-04-28 13:27:44 +08:00
sagitchu
023be27287
feat: add monitoring retention controls
2026-04-28 11:41:07 +08:00