ADR-125 (codename APPLE-FABRIC) lands: RuView advertises itself as a HomeKit Accessory Protocol (HAP-1.1) bridge on the LAN, so HomePod (acting as Home Hub) discovers it, Apple Home becomes the operator UX, and Siri voices presence/vitals by room — with zero Home Assistant intermediary.
Validated end-to-end on real hardware (ESP32-C6 on ruv.net, no mocks/sims, 8 iters tracked live on #796).
What's new
Native Apple Home integration (ADR-125)
- HAP-1.1 bridge
RuView Sensingwith N child accessories — one per room (ADR-125 §2.1.c topology). Single pairing covers all rooms; children remain individually addressable for Siri ("is anyone in the kitchen?") and Home automations. - Three services per room:
MotionSensor(immediate movement),OccupancySensor(sustained presence — "Unknown Presence"),StatelessProgrammableSwitch(BFLD anomaly drift — "Unrecognized Activity Pattern"). ADR-125 §2.1.d semantic-event naming, never security/threat framing. - Privacy gate enforced at FIVE boundaries: HAP characteristic, HTTP
/api/v1/bfld/..., semantic-events endpoint, MCP boundary, Python BFLD gate.identity_risk_score,soul_match_probability, andrf_signature_hashnever cross any of them.
Agentic capabilities
@ruvnet/rvagent 0.1.0(npm) — published in this release window — wired through a Python sensing-server bridge so any MCP-aware agent (Claude Code, Codex, custom LLM) can consume the BFLD-gated C6 stream through the standard 12-tool catalog.- New
scripts/rvagent-mcp-consumer.py— JSON-RPC 2.0 stdio MCP client that round-trips real C6 data throughnpx -y @ruvnet/rvagent.
HomePod announcements (Shortcuts-as-glue)
scripts/macos-shortcuts/— launchd + osascript glue that triggers operator-defined Shortcuts on RuView events, routing HomePod announcements via the iCloud Home graph instead of local Bonjour (works even when the AP doesn't reflect mDNS).
SOTA path
python/src/bindings/privacy_gate.rs— PyO3 binding over the publishedwifi-densepose-bfld 0.3.0Rust crate. Verifiedcargo checkgreen; wheel-deploy is ADR-117 P5 scope.
Docker
- Multi-arch image (
amd64+linux/arm64) restored. Apple Silicondocker pull ruvnet/wifi-densepose:latestworks again (closes #794). - Image now bundles
cog-ha-matterbinary + HA-DISCO MQTT publisher.
Documentation
- New ADR:
docs/adr/ADR-125-ruview-apple-home-native-hap-bridge.md(with §2.1.c and §2.1.d decisions captured during operator review) - New user guide:
docs/user-guide-apple-homepod.md(~4,500 words) — quickstart to HomePod-announces-RuView in 5 steps - HomePod Integration badge added to
README.md
Release artifacts
- crates.io:
cog-ha-matter 0.3.0,cog-person-count 0.3.0,cog-pose-estimation 0.3.0(published earlier this session) - crates.io:
wifi-densepose-signal 0.3.1,wifi-densepose-sensing-server 0.3.1(cascade for cog-ha-matter) - npm:
@ruvnet/rvagent 0.1.0 - Docker Hub:
ruvnet/wifi-densepose:latest(multi-arch)
Deferred to future releases
- HAP-python custom characteristic JSON-loader (runtime activation of the BFLD privacy class UUID)
- ADR-117 P5 wheel build for the PyO3 BFLD binding
- AirPlay 2 voice synthesis via pyatv (blocked on operator's Nighthawk MR60 Bonjour reflector)
- P2 Rust-native HAP via the
hapcrate (closes ADR-116 §P7) - P3 Matter Controller path (awaiting matter-rs stabilization)
References
- ADR-125 — RuView ↔ Apple Home native HAP bridge
- ADR-118 — BFLD beamforming feedback layer
- ADR-124 — @ruvnet/rvagent MCP/ruvector integration
- Issue #796 — live tracking thread (8 iter close-outs)
- Issue #794 — Docker Apple Silicon pull fix (closed)
Co-Authored-By: claude-flow ruv@ruv.net