Browse Source

Fix bunker UI state management issues (v0.44.5)

- Add guard to prevent duplicate service starts
- Fix stale variable references in error handler
- Show token list even when WebSocket temporarily disconnects
- Add logging for bunker service status changes

Files modified:
- app/web/src/BunkerView.svelte: UI state fixes
- app/web/dist/bundle.js: Rebuilt web UI

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
main
woikos 2 weeks ago
parent
commit
ae024cc784
No known key found for this signature in database
  1. 2
      app/web/dist/bundle.js
  2. 2
      app/web/dist/bundle.js.map
  3. 18
      app/web/src/BunkerView.svelte
  4. 2
      pkg/version/version

2
app/web/dist/bundle.js vendored

File diff suppressed because one or more lines are too long

2
app/web/dist/bundle.js.map vendored

File diff suppressed because one or more lines are too long

18
app/web/src/BunkerView.svelte

@ -163,6 +163,12 @@ @@ -163,6 +163,12 @@
// Start the bunker service
async function startBunkerService() {
// Prevent starting if already active or starting
if (isServiceActive || isStartingService) {
console.log("Service already active or starting, ignoring");
return;
}
if (!userPrivkey || !userPubkey || !bunkerInfo) {
error = "Missing private key or bunker info";
return;
@ -221,7 +227,10 @@ @@ -221,7 +227,10 @@
};
bunkerService.onStatusChange = (status) => {
console.log("[BunkerView] Service status changed:", status);
isServiceActive = status === 'connected';
// Don't clear tokens on disconnect - they're still valid
// Just clear the connected clients list
if (status === 'disconnected') {
connectedClients = [];
}
@ -240,8 +249,9 @@ @@ -240,8 +249,9 @@
error = err.message || "Failed to start bunker service";
bunkerService = null;
isServiceActive = false;
catToken = null;
catTokenEncoded = "";
serviceCatToken = null;
clientTokens = [];
selectedTokenId = null;
} finally {
isStartingService = false;
}
@ -409,8 +419,8 @@ @@ -409,8 +419,8 @@
{/if}
</div>
<!-- Client Tokens Table -->
{#if isServiceActive && clientTokens.length > 0}
<!-- Client Tokens Table - show if tokens exist, even if temporarily disconnected -->
{#if clientTokens.length > 0}
<div class="tokens-section">
<div class="tokens-header">
<h4>Client Tokens</h4>

2
pkg/version/version

@ -1 +1 @@ @@ -1 +1 @@
v0.44.4
v0.44.5

Loading…
Cancel
Save