You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
perf(admin): P2P settings popup opens instantly (render before fetch)
The drawer was async and awaited GET /api/settings BEFORE building any
DOM, so the popup only appeared after a full round-trip — and during an
active audit the single Node event loop is busy, so even that trivial GET
lagged, making the popup feel slow.
Now the shell renders and appends synchronously (instant open) with the
coded fallbacks as placeholders and inputs disabled + a "Loading current
settings…" message. The fetch runs after the popup is on screen; on
resolve it populates the real values (incl. the env-driven gigabytes
default hint + batch-size echo) and enables the inputs. On fetch failure
the operator can still work from defaults. s/d are `let` so the reset/save
closures observe the loaded values.
<span style="color:var(--text-muted);font-weight:400;font-size:11px">Skips any node priced above this. Real cheapest mainnet node is ≈ 4,000,000 udvpn/GB.</span>
<span style="font-weight:700;letter-spacing:0.4px">Auto-cancel sessions after each batch</span>
2473
-
<span style="color:var(--text-muted);font-weight:400;font-size:11px">After a batch finishes testing, broadcast a single TX with up to ${_esc(s.batchSize??5)} <code style="color:var(--accent)">MsgCancelSession</code> messages so the chain settles each session and refunds any unused balance to this wallet. Verified live (Apr 2026 mainnet): the cancel TX emits only <code style="color:var(--accent)">EventUpdateStatus</code>; the chain sets <code style="color:var(--accent)">inactive_at = status_at + 2h</code>, refund is credited at that block. If the node never reported usage, 100% of the deposit is refundable.</span>
2475
+
<span style="color:var(--text-muted);font-weight:400;font-size:11px">After a batch finishes testing, broadcast a single TX with up to <span id="p2pBatchEcho">${_esc(s.batchSize??5)}</span> <code style="color:var(--accent)">MsgCancelSession</code> messages so the chain settles each session and refunds any unused balance to this wallet. Verified live (Apr 2026 mainnet): the cancel TX emits only <code style="color:var(--accent)">EventUpdateStatus</code>; the chain sets <code style="color:var(--accent)">inactive_at = status_at + 2h</code>, refund is credited at that block. If the node never reported usage, 100% of the deposit is refundable.</span>
0 commit comments