sagit
b26e9ee9e4
fix: align card handles and show live deployment progress ( #577 )
...
* fix: keep user and limit drag handles beside names
* fix: show live node and tunnel deployment progress in list view
2026-11-10 10:55:53 +08:00
sagit
577c189737
feat: show current owner names and persist user and limit order ( #576 )
...
Resolve current forwarding-rule owner names by user ID. Add administrator-managed persistent user and speed-limit ordering, backup compatibility, and conflict recovery. Repair PostgreSQL explicit-ID import sequences transactionally.
Closes #574
Closes #575
2026-11-10 09:13:05 +08:00
sagit
3209ff8a59
fix(sqlite): backfill tunnel relay authentication mode ( #573 )
...
* fix(sqlite): backfill tunnel relay authentication mode
* ci: cover SQLite upgrade migrations in backend checks
2026-11-09 20:46:52 +08:00
sagit
7e81e1c65c
fix(panel): make self-upgrades durable and observable ( #572 )
...
Persist upgrade jobs and progress across backend restarts; preserve Compose identity and database mounts, isolate backups, and fail safely on uncertain recreation. Add frontend recovery handling and lifecycle/permission regressions.
2026-11-09 20:24:03 +08:00
sagit
fadc2b6c12
fix(relay): authenticate endpoints and fail closed on missing routes ( #569 )
...
* fix(relay): authenticate endpoints and fail closed on missing routes
* fix(tunnel): retain chains until receiver replacement is acknowledged
* docs: record final relay security review and validation
2026-11-08 23:46:18 +08:00
sagit
46bfb86c1b
fix(user): revoke tunnel access when disabling users ( #568 )
...
Revoke tunnel grants and pause each forwarding entry without self-healing missing services. Continue healthy nodes and other forwards after failures, aggregate pending nodes for retry, and show persistent partial-disable feedback.
Related: #562
2026-11-01 18:03:07 +08:00
sagit
c794586cc7
fix(security): require patched Go and Node.js runtimes ( #566 )
2026-10-22 11:15:28 +08:00
sagit
d9303032ca
feat: support username-free passkey login ( #564 )
2026-09-30 21:12:18 +08:00
sagit
861d61239a
feat: support secure passkey login ( #561 )
...
Add WebAuthn passkey enrollment and login for issue #536 , with trusted origin configuration, user verification, single-use challenges, and documented deployment and recovery behavior.
2026-09-30 19:23:10 +08:00
sagit
c952d2fb3a
fix: protect shared rules across delivery and recovery ( #560 )
2026-09-29 14:05:49 +08:00
sagit
b4c2989285
Merge branch 'main' into codex/issues-548-549-traffic-units
2026-09-24 15:38:49 +08:00
sagitchu
5d60c4fbe1
feat: support adaptive traffic units and precise quotas
2026-09-24 15:33:53 +08:00
sagitchu
62c56e0a79
feat: add mode-specific wallpapers and installer regression coverage
2026-09-24 14:59:52 +08:00
sagit
da7bef88f1
fix: harden panel updates and nftables deployment ( #551 )
...
Fix panel update deployment discovery and rollback safety, add nftables compatibility and atomic replacement, and restore reproducible frontend CI installs.
2026-09-01 15:37:33 +08:00
sagit
5041c722c9
fix: harden license lifecycle ( #547 )
2026-08-13 09:25:05 +08:00
sagit
c56798e991
fix: accept existing license machine binding ( #546 )
2026-08-12 14:12:46 +08:00
sagit
40e96f3592
fix: preserve active per-IP traffic limiters ( #545 )
2026-08-12 11:31:03 +08:00
sagit
0e24b53a5b
fix: preserve license state across panel upgrades ( #544 )
2026-08-11 17:04:20 +08:00
sagit
a8fd01d4d8
fix(node): allow IPv6-only addresses ( #537 )
2026-08-03 11:05:04 +08:00
sagit
cbe2fc492e
feat(monitor): show backup tunnel latencies ( #535 )
...
Closes #508
2026-08-03 10:15:22 +08:00
sagit
e112d81697
fix: bound and configure tunnel quality probes ( #533 )
...
Closes #528 and #532 .
2026-07-31 15:37:26 +08:00
sagit
11a27d3c67
feat: add per-rule traffic reset ( #526 )
...
Reset only the selected forwarding rule's displayed upload/download usage without affecting user totals, tunnel quotas, historical statistics, nftables baselines, or running services.
Closes #523
2026-07-10 17:05:20 +08:00
sagitchu
f98be845d3
fix: skip agent protocol updates for nftables nodes
2026-07-02 10:26:10 +08:00
sagitchu
777db8767f
fix nftables recovery and diagnostics
2026-06-30 17:07:50 +08:00
sagit
82f6047506
fix(forward): split proxy protocol directions
...
Closes #520
2026-06-21 21:03:47 +08:00
sagitchu
3ce320da5a
fix(nftables): harden traffic accounting edges
2026-06-07 11:55:59 +08:00
sagitchu
7ab0db29ae
fix(nftables): clean counter state on forward delete
2026-06-07 11:55:59 +08:00
sagitchu
006ea97200
feat(nftables): ingest traffic counters
2026-06-07 11:55:59 +08:00
sagitchu
e569aedd3e
feat(nftables): calculate traffic deltas
2026-06-07 11:55:59 +08:00
sagitchu
35080aea2d
feat(flow): expose forward owner metadata
2026-06-07 11:55:59 +08:00
sagitchu
85e588ffe9
feat(nftables): persist counter state
2026-06-07 11:55:59 +08:00
sagitchu
03524f4a65
feat(nftables): collect counters over ssh
2026-06-07 11:55:59 +08:00
sagitchu
9e69e020ab
feat(nftables): parse traffic counters
2026-06-07 11:55:59 +08:00
sagitchu
14bbd3907d
feat(nftables): render traffic counters
2026-06-07 11:55:59 +08:00
sagitchu
a599f383f5
feat: add nftables forwarding mode
2026-06-01 19:47:26 +08:00
sagitchu
8b64542c94
fix(handler): allow admin access to sensitive configs
2026-05-17 23:07:37 +08:00
sagitchu
7008717a49
fix(ws): serialize websocket writes in realtime server
2026-05-17 21:48:37 +08:00
sagitchu
b2454e86c9
fix: allow monitor realtime websocket access
2026-05-15 23:37:08 +08:00
sagitchu
312c9a9c5c
fix: harden panel self-upgrade
2026-05-15 23:16:14 +08:00
sagit
e1324b8c8c
fix: update dependabot vulnerabilities ( #505 )
...
* docs: add dependabot remediation design
* docs: add dependabot remediation plan
* fix: update backend pgx dependency
* fix: update frontend vulnerable dependencies
* fix: update gost quic dependencies
* fix: migrate gost dtls dependency
* fix: sync gost main dependencies
* fix: enable webtransport stream reset partial delivery
* fix: restore backend bcrypt dependency
2026-05-15 00:16:29 +08:00
sagitchu
fd3ecc38ef
fix: allow public config fallback for cached login
2026-05-14 18:45:12 +08:00
sagitchu
abf13bdac9
fix: close remaining security remediation gaps
2026-05-14 11:10:06 +08:00
sagitchu
f0facf6703
fix: block sensitive config writes
2026-05-14 10:37:29 +08:00
sagitchu
583a3834f9
fix: expire websocket admin sessions
2026-05-14 01:24:03 +08:00
sagitchu
106a30bf9d
fix: tighten websocket auth and client cache handling
2026-05-14 00:24:56 +08:00
sagitchu
465815cf34
fix: harden auth, config access, and backups
2026-05-13 23:53:06 +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 )
2026-05-07 16:37:51 +08:00
sagit
5ebd4c2a91
feat: add panel self-upgrade workflow ( #492 )
2026-05-06 17:58:01 +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