Compare commits

..

3 Commits

Author SHA1 Message Date
09eb22fb4f Merge branch 'main' into fix/1414
Some checks failed
Review Approval Gate / verify-review (pull_request) Failing after 12s
CI / test (pull_request) Failing after 1m15s
CI / validate (pull_request) Failing after 1m22s
2026-04-22 01:14:49 +00:00
98225fd2a1 Merge branch 'main' into fix/1414
Some checks failed
Review Approval Gate / verify-review (pull_request) Failing after 10s
CI / test (pull_request) Failing after 1m17s
CI / validate (pull_request) Failing after 1m20s
2026-04-22 01:07:43 +00:00
Alexander Whitestone
b5e256ab54 fix: replace hardcoded VPS IP with dynamic WebSocket URL (#1414)
Some checks failed
CI / test (pull_request) Failing after 1m9s
CI / validate (pull_request) Failing after 1m6s
Review Approval Gate / verify-review (pull_request) Failing after 7s
Replaces hardcoded ws://143.198.27.163:8765 in HUD status display
with dynamic URL matching the actual WebSocket connection.

Before: ws://143.198.27.163:8765
After:  ${protocol}//${window.location.host}/api/world/ws

Fixes:
- HUD now shows correct URL through proxy/nginx
- No exposed internal IP
- Works with any deployment configuration

Fixes #1414
2026-04-20 20:58:50 -04:00
3 changed files with 2 additions and 6 deletions

2
app.js
View File

@@ -1269,7 +1269,7 @@ async function updateSovereignHealth() {
{ name: 'LOCAL DAEMON', status: daemonReachable ? 'ONLINE' : 'OFFLINE' },
{ name: 'FORGE / GITEA', url: 'https://forge.alexanderwhitestone.com', status: 'ONLINE' },
{ name: 'NEXUS CORE', url: 'https://forge.alexanderwhitestone.com/Timmy_Foundation/the-nexus', status: 'ONLINE' },
{ name: 'HERMES WS', url: 'ws://143.198.27.163:8765', status: wsConnected ? 'ONLINE' : 'OFFLINE' },
{ name: 'HERMES WS', url: `${window.location.protocol === 'https:' ? 'wss:' : 'ws:'}//${window.location.host}/api/world/ws`, status: wsConnected ? 'ONLINE' : 'OFFLINE' },
{ name: 'SOVEREIGNTY', url: 'http://localhost:8082/metrics', status: metrics.sovereignty_score + '%' }
];

View File

@@ -391,10 +391,6 @@
<div id="archive-health-dashboard" class="archive-health-dashboard" style="display:none;" aria-label="Archive Health Dashboard"><div class="archive-health-header"><span class="archive-health-title">◈ ARCHIVE HEALTH</span><button class="archive-health-close" onclick="toggleArchiveHealthDashboard()" aria-label="Close dashboard"></button></div><div id="archive-health-content" class="archive-health-content"></div></div>
<div id="memory-feed" class="memory-feed" style="display:none;"><div class="memory-feed-header"><span class="memory-feed-title">✨ Memory Feed</span><div class="memory-feed-actions"><button class="memory-feed-clear" onclick="clearMemoryFeed()">Clear</button><button class="memory-feed-toggle" onclick="document.getElementById('memory-feed').style.display='none'"></button></div></div><div id="memory-feed-list" class="memory-feed-list"></div></div>
<div id="memory-filter" class="memory-filter" style="display:none;"><div class="filter-header"><span class="filter-title">⬡ Memory Filter</span><button class="filter-close" onclick="closeMemoryFilter()"></button></div><div class="filter-controls"><button class="filter-btn" onclick="setAllFilters(true)">Show All</button><button class="filter-btn" onclick="setAllFilters(false)">Hide All</button></div><div class="filter-list" id="filter-list"></div></div>
<div id="spatial-search" class="spatial-search" style="display:none;">
<input type="text" id="spatial-search-input" placeholder="Search spatial memories..." autocomplete="off" />
<div id="spatial-search-results"></div>
</div>
<div id="memory-inspect-panel" class="memory-inspect-panel" style="display:none;" aria-label="Memory Inspect Panel"></div>
<div id="memory-connections-panel" class="memory-connections-panel" style="display:none;" aria-label="Memory Connections Panel"></div>

View File

@@ -161,7 +161,7 @@ class TestLoadingFlow:
enter = browser_page.query_selector("#enter-prompt")
if enter and enter.is_visible():
enter.click()
time.sleep(2) # Wait for click handler + transition
time.sleep(1)
# HUD should now be visible
hud = browser_page.query_selector("#hud")