github ruvnet/RuView v1229
Release v1229

latest releases: v1230, v1231
4 hours ago

Automated release from CI pipeline

Changes:
cog-ha-matter (ADR-116 P4): MdnsService -> mdns-sd ServiceInfo bridge

Pure conversion from our wire-format MdnsService to the
mdns_sd::ServiceInfo shape the responder daemon consumes. No
socket binding, no daemon registration yet — that lands next iter
as a runtime::spawn_mdns_responder(info) JoinHandle returning
helper, same shape as runtime::spawn_publisher.

  • MdnsService::to_service_info(hostname, ipv4) -> Result<ServiceInfo, mdns_sd::Error>
  • mdns-sd = "0.11" added — aligned with the workspace pin from
    wifi-densepose-desktop so the lockfile doesn't fork dalek-like
    surfaces.

3 new tests:

  • to_service_info_carries_service_type_and_port — locks that
    _ruview-ha._tcp (with or without mdns-sd's trailing-dot
    normalisation) and the control port round-trip through the
    conversion
  • to_service_info_propagates_txt_records — every locked TXT
    key from iter 4 (cog_id, mqtt_port, privacy, proto, node_id,
    cog_version) reachable via get_property_val_str on the
    converted ServiceInfo
  • to_service_info_does_not_silently_drop_caller_hostname —
    locks the caller-side responsibility for the .local. suffix.
    mdns-sd 0.11 accepts bare hostnames (verified empirically by
    initial test expecting it to reject — it didn't), so the
    wrapper layer must do the trailing-dot dance. Documenting
    that via a named test catches future bumps where the lib
    starts mutating the value.

63/63 cog tests green (60 → 63).

ADR-116 P4 now ⁶⁄₇: ✅ mDNS record-builder, ✅ chain, ✅ JSONL, ✅
file persistence, ✅ Ed25519 signing, ✅ ServiceInfo conversion;
⏳ daemon register + embedded broker.

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

Docker Image:
ghcr.io/ruvnet/RuView:34eced880f9e39b9ebf043848003df5249770521

Don't miss a new RuView release

NewReleases is sending notifications on new releases.