yggvault ratatoskr-space connected via regular web
Color theme
also available via yggdrasil mesh http://[203:b338:2a84:a18f:986:47ae:1a4:d8d3]/pkg/ruview/v1160
vault / ruview / v1160

ruview @ v1160

integrity

size
57.4 MiB
downloaded
last checked
source https://github.com/ruvnet/RuView · available · github

release notes

Automated release from CI pipeline

Changes: fix(ui): unbreak viz.html — OrbitControls importmap, WS URL, toast NPE (#760) (#773)

Three independent bugs were stacking to make ui/viz.html unusable from main:

  1. Three.js r160 removed examples/js/OrbitControls.js, so the script-tag load 404'd and new THREE.OrbitControls(...) threw. Switch to an importmap that pulls the ES module build, then re-expose window.THREE and THREE.OrbitControls so the existing component modules (scene.js, body-model.js, …) keep working without a wider refactor.

  2. The WebSocket client was hardcoded to ws://localhost:8000/ws/pose, but the sensing-server listens on --ws-port (8765 default, 3001 in the Docker image) at /ws/sensing. Reuse the existing buildSensingWsUrl() helper from sensing.service.js so port pairings are handled centrally, and add a ?ws=… query-string override for non-standard setups. The websocket-client.js default is also updated to derive from window.location instead of the dead :8000/ws/pose literal.

  3. ToastManager.show() called this.container.appendChild(...) even when init() had never been called, throwing a TypeError that killed the rest of page initialization. Auto-init the container lazily on first show (patch from issue reporter).

Closes #760.

Co-Authored-By: claude-flow ruv@ruv.net

Browser validation against the previous commit caught two stacked issues:

  1. import * as THREE from 'three' returns a frozen Module Namespace Object — assignment THREE.OrbitControls = OrbitControls silently no-ops, so the global never gets the OrbitControls reference.

  2. Two separate <script type="module"> blocks (one installing the THREE global, one consuming it via Scene) are independently async-resolved. The second can finish dependency loading first and call new THREE.OrbitControls(...) before the first script has run.

Fixed by spreading the namespace into a plain mutable object and merging all initialization into a single module script with await import() for component modules. Order is now strictly: import THREE → install window.THREE → import components → run init().

Validated via agent-browser: page logs [VIZ] Initialization complete, WebSocket targets the correct ws://127.0.0.1:3001/ws/sensing endpoint (derived from buildSensingWsUrl), toast lazy-init confirmed via eval.

Co-Authored-By: claude-flow ruv@ruv.net

Docker Image: ghcr.io/ruvnet/RuView:5d544126ee1a6141535cd1e6e6fe89f8213aaafb

download

unix · zip
curl -fL -o v1160.zip https://ratatoskr.space/pkg/ruview/v1160.zip
                    printf '%s  %s\n' '526141cafd8175cddb3586a8be21a6dd679a06993afdfce2a16385a755285e27' 'v1160.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/ruview/v1160.zip"
$out = "v1160.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "526141cafd8175cddb3586a8be21a6dd679a06993afdfce2a16385a755285e27") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1160.tar.gz https://ratatoskr.space/pkg/ruview/v1160.tar.gz
                    printf '%s  %s\n' 'c57994d4c339ff871b3fea57a238d03b13f6c1d7b85e9501265eeab3c64b156d' 'v1160.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/ruview/v1160.tar.gz"
$out = "v1160.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "c57994d4c339ff871b3fea57a238d03b13f6c1d7b85e9501265eeab3c64b156d") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v1160.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.zip
                    printf '%s  %s\n' '526141cafd8175cddb3586a8be21a6dd679a06993afdfce2a16385a755285e27' 'v1160.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.zip"
$out = "v1160.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "526141cafd8175cddb3586a8be21a6dd679a06993afdfce2a16385a755285e27") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1160.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.tar.gz
                    printf '%s  %s\n' 'c57994d4c339ff871b3fea57a238d03b13f6c1d7b85e9501265eeab3c64b156d' 'v1160.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.tar.gz"
$out = "v1160.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "c57994d4c339ff871b3fea57a238d03b13f6c1d7b85e9501265eeab3c64b156d") { throw "sha256 mismatch" }
artifact format size hashes
v1160.zip zip 57.4 MiB
blake3-24 8cde3521958b4bc3acfdaa1086f478c35cf8663148de0c4c
sha256 526141cafd8175cddb3586a8be21a6dd679a06993afdfce2a16385a755285e27
sha1 cb0b3c1c2cf468c3ee749f62a4e224767912401f
v1160.tar.gz tar.gz 55.9 MiB
blake3-24 af569e363ed6fce741cf4bdc0460432e1e519b2de6d0cfdf
sha256 c57994d4c339ff871b3fea57a238d03b13f6c1d7b85e9501265eeab3c64b156d
sha1 8def7a3ff78f867cd69e9e0a4c61e233cfc4c65d

install

bazel
http_archive(
    name = "ruview",
    urls = ["https://ratatoskr.space/pkg/ruview/v1160.tar.gz"],
    integrity = "sha256-xXmU1MM5/4cbP+pXojjQOxP2wde4XpUBJl7qs8ZLFW0=",
    strip_prefix = "ruview-v1160",
)
zig
.url = "https://ratatoskr.space/pkg/ruview/v1160.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
    name = "ruview",
    urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.tar.gz"],
    integrity = "sha256-xXmU1MM5/4cbP+pXojjQOxP2wde4XpUBJl7qs8ZLFW0=",
    strip_prefix = "ruview-v1160",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1160.tar.gz",
← v1201v1155 →