arblant
BlueKnight-Panel-Marvel / patched / PATCH_NOTES.txt
PATCH_NOTES.txt36 lines · 1.8 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
Marvel panel + 6 features (in-bundle surgical patch)
====================================================
Base: panelkhoshgel-arblant-v15_7_hx79.js (byte-identical to v1.3 release worker.js)
Patched: 2026-10-19 via exact-string anchors mapped from BlueKnight source.

What was added (all inside the bundle, original code untouched):
1. Per-user VLESS UUIDs + quota/expiry/revoke — single choke-point patch at the
   VLESS auth check. Unknown/expired/revoked/over-quota UUIDs get 1008.
   When no users exist, original master-UUID behavior is preserved byte-for-byte.
2. Byte accounting (up/down) per user, flushed to BK_KV on connection close.
   Mid-connection quota cutoff with 4403.
3. New admin UI at /gw-admin/ (Persian RTL, 5 tabs):
   - یوزرها (create/revoke/reset/copy vless link)
   - داشبورد (per-user traffic bars)
   - پروکسی IP (TCP 443 probe from CF edge via cloudflare:sockets)
   - پریست ISP (Irancell fp=unsafe+fragment guide / MCI fp=chrome+ECH guide)
   - بکاپ/ریستور (JSON download/upload)
   API at /gw-admin/api/*, Bearer auth (GW_ADMIN_SECRET, constant-time compare).
4. Telegram bot: NOT in bundle (separate worker) — src/bot.js in panel-gateway,
   needs BotFather token.

Deploy:
- JaSaz: source URL = <host this file somewhere> (do NOT commit to GitHub),
  KV binding name BK_KV, then set secret GW_ADMIN_SECRET in dashboard
  (Workers > Settings > Variables > Secrets).
- Or paste into Workers dashboard Quick Edit.

Verified:
- node --check: syntax OK
- miniflare: /gw-admin/ 200, API 401 without key / 200 with key,
  user create/list work, /api/health 200, /panel/login 200 (original intact)
- NOT verified in production (fresh test account 1101s even the ORIGINAL
  bundle via JaSaz — account-side issue, under investigation).

Secrets:
- GW_ADMIN_SECRET is set by YOU at deploy (pick a strong one).