-
tried
-
{komodoProbe.url}
+
+ {#if rconProbe?.ok}
+
+ Connected
+
+ {rconProbe.status?.players ?? '?'} players
+ {#if rconProbe.status?.map} · map {rconProbe.status.map}{/if}
+ {#if rconProbe.status?.gametype} · {rconProbe.status.gametype}{/if}
+
{/if}
- {#if komodoProbe.reason}
-
{komodoFixHint(komodoProbe.reason, komodoProbe.httpStatus)}
+
+ {#if netDiagnosis}
+ {#if netDiagnosis.ok && netDiagnosis.results}
+
+
+
+ | Trial | Resolved | Outcome |
+ Elapsed | Detail |
+
+
+
+ {#each netDiagnosis.results as r (r.label)}
+
+ | {r.label} |
+ {r.resolvedIp ?? '—'} |
+
+ {r.outcome}
+ |
+ {r.elapsedMs} ms |
+ {r.detail ?? ''} |
+
+ {/each}
+
+
+ {#if netDiagnosis.config}
+
+ KOMODO_ADDRESS = {netDiagnosis.config.komodoAddress ?? '(unset)'}
+ · RCON_HOST = {netDiagnosis.config.rconHost}
+ · probe timeout = {netDiagnosis.config.probeTimeoutMs} ms
+
+ {/if}
+ {:else}
+
+ Error
+ {netDiagnosis.error ?? 'network diagnostic failed'}
+
+ {/if}
{/if}
- {#if komodoProbe.snippet}
-
{komodoProbe.snippet}
+
+ {#if komodoProbe}
+ {#if komodoProbe.ok}
+
+ Resolved
+
+ Port {komodoProbe.port} cached — RCON will retry on the next tick.
+
+
+ {#if komodoProbe.snippet}
+
+ Show response snippet
+ {komodoProbe.snippet}
+
+ {/if}
+ {:else}
+
+ {komodoProbe.reason}
+
+ {komodoProbe.detail}{#if komodoProbe.httpStatus} · HTTP {komodoProbe.httpStatus}{/if}
+
+
+ {#if komodoProbe.url}
+
Tried{komodoProbe.url}
+ {/if}
+ {#if komodoProbe.reason}
+
{komodoFixHint(komodoProbe.reason, komodoProbe.httpStatus)}
+ {/if}
+ {#if komodoProbe.snippet}
+
{komodoProbe.snippet}
+ {/if}
+ {/if}
{/if}
- {/if}
- {/if}
-
- {/if}
-
-
-
-
-
- Config
-
-
-
komodo
-
{server.komodo_type} · {server.komodo_name}
-
-
-
rcon override
-
{server.rcon_host ?? '(default)'}
-
-
-
game_port
-
{server.game_port ?? '(unresolved)'}
-
-
-
game
-
{server.game ?? '(unset)'}
-
-
-
map
-
{server.map ?? '(unset)'}
-
- {#if server.held.length > 0}
-
-
held by beta
-
{server.held.map((h) => `${h.target} (beta ${h.betaId})`).join(', ')}
-
+
+
Configuration
+
+
+
Komodo{server.komodo_type} · {server.komodo_name}
+
RCON override{server.rcon_host ?? '(default)'}
+
Game port{server.game_port ?? '(unresolved)'}
+
Game{server.game ?? '(unset)'}
+
Map{server.map ?? '(unset)'}
+ {#if server.held.length > 0}
+
Held by beta{server.held.map((h) => `${h.target} (beta ${h.betaId})`).join(', ')}
+ {/if}
+
+
+ {:else if activeTab === 'history'}
+
+
+
Deployment history
+ {history.length}
+
+ {#if history.length === 0}
+
+ {:else}
+
+ {/if}
+
{/if}
-
-
-
- Scripts on this server ({inventory.length})
- {#if inventory.length === 0}
- no scripts tracked — upload one from the Scripts page and open a beta to deploy it here
- {:else}
-
- {#each inventory as f (f.relPath)}
-
- {f.relPath}
- {f.size}B
- {f.source ?? '—'}
- {f.sha256.slice(0, 12)}
-
- {/each}
-
- {/if}
-
-
-
+