ruview @ v1336
integrity
- size
- 60.0 MiB
- downloaded
- last checked
release notes
Automated release from CI pipeline
Changes: docs(adr-125): RuView <-> Apple Home native HAP bridge (APPLE-FABRIC)
Proposes direct HomeKit Accessory Protocol (HAP-1.1) advertisement from the Seed runtime so HomePod / Apple Home discovers RuView with zero Home Assistant intermediary. Two implementation tracks:
P1 (lands first): HAP-python sidecar — a tiny pyhap entrypoint in the same Docker image, ~80 LOC; fastest to ship; pairing flow from the Apple Home app.
P2 (follow-up): Rust-native HAP via the hap crate; replaces P1;
closes the ADR-116 P7 stub (matter = [] feature flag becomes
matter = ["dep:hap"]); single binary.
P3 (later): Matter Controller path when matter-rs stabilizes.
Strategic framing: RuView contributes the invisible cognition layer (passive RF presence, breathing/HR, fall, BFLD identity-risk) the Apple ecosystem cannot natively sense; Apple Home contributes the consumer-grade discoverability + Siri + automation graph + trust that an open sensing stack cannot bootstrap. The structural privacy gate from ADR-118 (only class-2 and class-3 frames cross the Matter boundary, per ADR-122 §2.4) is what makes this safe to do at all.
Refs ADR-115, ADR-116, ADR-118, ADR-122.
Co-Authored-By: claude-flow ruv@ruv.net
Docker Image:
ghcr.io/ruvnet/RuView:d7087a5f9fa1c64e110f879a5576eda4341784a7
download
curl -fL -o v1336.zip https://ratatoskr.space/pkg/ruview/v1336.zip
printf '%s %s\n' 'cae4e656bb44e39690926e3a63d79b3cec33d2f6f81df4e712d08d4c9baa289d' 'v1336.zip' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/ruview/v1336.zip"
$out = "v1336.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "cae4e656bb44e39690926e3a63d79b3cec33d2f6f81df4e712d08d4c9baa289d") { throw "sha256 mismatch" }
curl -fL -o v1336.tar.gz https://ratatoskr.space/pkg/ruview/v1336.tar.gz
printf '%s %s\n' '05ffc5592a485a5df7b5033db25d36a55d09aaac069d8018d77afd68b95311bd' 'v1336.tar.gz' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/ruview/v1336.tar.gz"
$out = "v1336.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "05ffc5592a485a5df7b5033db25d36a55d09aaac069d8018d77afd68b95311bd") { throw "sha256 mismatch" }
download via yggdrasil mesh
curl -fL -o v1336.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.zip
printf '%s %s\n' 'cae4e656bb44e39690926e3a63d79b3cec33d2f6f81df4e712d08d4c9baa289d' 'v1336.zip' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.zip"
$out = "v1336.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "cae4e656bb44e39690926e3a63d79b3cec33d2f6f81df4e712d08d4c9baa289d") { throw "sha256 mismatch" }
curl -fL -o v1336.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.tar.gz
printf '%s %s\n' '05ffc5592a485a5df7b5033db25d36a55d09aaac069d8018d77afd68b95311bd' 'v1336.tar.gz' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.tar.gz"
$out = "v1336.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "05ffc5592a485a5df7b5033db25d36a55d09aaac069d8018d77afd68b95311bd") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v1336.zip | zip | 60.0 MiB |
blake3-24 586af7242babf0814456c2d3f02d52b4270310402e06f210
sha256 cae4e656bb44e39690926e3a63d79b3cec33d2f6f81df4e712d08d4c9baa289d
sha1 8747c836bd22a2fc4a5035946fc51ac96ec72aea
|
| v1336.tar.gz | tar.gz | 58.4 MiB |
blake3-24 f4f2827e32f851c2b260730392dad860c50a6c6e3a8b908c
sha256 05ffc5592a485a5df7b5033db25d36a55d09aaac069d8018d77afd68b95311bd
sha1 bbf294f71de4956aad2116f42f84ae0642502094
|
install
http_archive(
name = "ruview",
urls = ["https://ratatoskr.space/pkg/ruview/v1336.tar.gz"],
integrity = "sha256-Bf/FWSpIWl33tQM9sl02pV0JqqwGnYAY13r9aLlTEb0=",
strip_prefix = "ruview-v1336",
)
.url = "https://ratatoskr.space/pkg/ruview/v1336.tar.gz",
install via yggdrasil mesh
http_archive(
name = "ruview",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.tar.gz"],
integrity = "sha256-Bf/FWSpIWl33tQM9sl02pV0JqqwGnYAY13r9aLlTEb0=",
strip_prefix = "ruview-v1336",
)
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1336.tar.gz",