deploy(hailo): rename install-bridge.sh → install-mmwave-bridge.sh (iter 216)

Closes ADR-178 Gap H (LOW). The mmwave-bridge installer was named
unqualified `install-bridge.sh` since iter 106 — fine when there was
only one bridge, increasingly misleading after iter 123 added
ruview-csi-bridge and iter 124 added ruvllm-bridge. ADR-178 §3.2 H
recommended folding the rename into Gap A (iter 215); shipped as
its own focused commit so the rename is git-traceable separately.

Used `git mv` so blame history follows the file. Updated all 7
references across the deploy tree:

  - install-ruview-csi-bridge.sh   (companion-of comment)
  - install-mmwave-bridge.sh       (self-reference in usage line)
  - install-ruvllm-bridge.sh       (companion-of comment)
  - ruvector-mmwave-bridge.env.example (udev rule provenance)
  - ruvector-mmwave-bridge.service (User=/Group= comment + udev note)
  - 99-radar-ruvector.rules        (provenance comment)
  - cross-build-bridges.sh         (operator hint at line 144)

ADR-178's references to `install-bridge.sh` (lines 83, 96, 337-342)
are intentionally preserved — they're the historical gap evidence
the analysis relies on. Updating them would erase the rationale for
this commit.

Validated:
  - bash -n on install-mmwave-bridge.sh + cross-build-bridges.sh
  - systemd-analyze verify on ruvector-mmwave-bridge.service
    (only "binary missing" error, expected on dev box)
  - All three install scripts now consistently named:
      install-mmwave-bridge.sh   (iter 106 + iter 216 rename)
      install-ruview-csi-bridge.sh (iter 123)
      install-ruvllm-bridge.sh   (iter 215)

ADR-178 Gap H status: CLOSED.

Co-Authored-By: claude-flow <ruv@ruv.net>
This commit is contained in:
ruvnet 2026-05-03 21:26:21 -04:00
parent 2acb56979e
commit 6e5e179ee1
7 changed files with 8 additions and 8 deletions

View file

@ -8,7 +8,7 @@
# * Custom MR60 boards → native USB-CDC → /dev/ttyACM*
#
# Match SUBSYSTEM == tty and any of the typical USB serial drivers.
# install-bridge.sh drops this file at
# install-mmwave-bridge.sh drops this file at
# /etc/udev/rules.d/99-radar-ruvector.rules and triggers udev to
# re-evaluate existing nodes — no replug needed.

View file

@ -141,5 +141,5 @@ echo
echo "Then install the systemd service (if not already done):"
echo " ssh root@${DEPLOY_HOST}"
echo " cd /path/to/ruvector/crates/ruvector-hailo-cluster/deploy"
echo " sudo bash install-bridge.sh /usr/local/bin/ruvector-mmwave-bridge # mmwave"
echo " sudo bash install-mmwave-bridge.sh /usr/local/bin/ruvector-mmwave-bridge # mmwave"
echo " sudo bash install-ruview-csi-bridge.sh /usr/local/bin/ruview-csi-bridge"

View file

@ -19,7 +19,7 @@
# system user: ruvector-bridge (no home, no shell)
#
# Usage:
# sudo bash install-bridge.sh /path/to/ruvector-mmwave-bridge
# sudo bash install-mmwave-bridge.sh /path/to/ruvector-mmwave-bridge
set -euo pipefail

View file

@ -3,7 +3,7 @@
# CSI UDP frames (typically a Pi 5 on the same LAN as the ESP32 CSI
# nodes, or any Linux host that can route to them).
#
# Companion to install-bridge.sh (mmwave) and install.sh (worker).
# Companion to install-mmwave-bridge.sh (mmwave) and install.sh (worker).
# Same idempotent shape as the iter-106 worker installer.
#
# Drops:

View file

@ -8,7 +8,7 @@
# hand-build the user, drop the binary, and write the env file
# themselves.
#
# UNLIKE install-bridge.sh and install-ruview-csi-bridge.sh, this
# UNLIKE install-mmwave-bridge.sh and install-ruview-csi-bridge.sh, this
# installer does NOT drop a systemd unit. ruvllm-bridge is a
# subprocess-style adapter that reads JSON from stdin, writes JSON to
# stdout, and exits on EOF — it's spawned by the parent ruvllm

View file

@ -12,7 +12,7 @@
# Serial device the radar enumerates as. Typical values:
# Seeed MR60BHA2 USB stick (CP2102 bridge): /dev/ttyUSB0
# Custom MR60 board with native USB-CDC: /dev/ttyACM0
# install-bridge.sh sets up a udev rule giving the ruvector-bridge
# install-mmwave-bridge.sh sets up a udev rule giving the ruvector-bridge
# group rw on these nodes regardless of which one the kernel picks.
RUVECTOR_BRIDGE_DEVICE=/dev/ttyUSB0

View file

@ -17,7 +17,7 @@ StartLimitIntervalSec=60
[Service]
Type=simple
# Dedicated unprivileged system user analogous to the iter-106
# ruvector-worker pattern. Created by install-bridge.sh.
# ruvector-worker pattern. Created by install-mmwave-bridge.sh.
User=ruvector-bridge
Group=ruvector-bridge
DynamicUser=no
@ -60,7 +60,7 @@ MemoryMax=128M
# Hardening — same shape as the iter-106 worker.service, minus the
# Hailo-specific DeviceAllow. The bridge needs read access to the
# radar's serial node; install-bridge.sh provisions a udev rule
# radar's serial node; install-mmwave-bridge.sh provisions a udev rule
# that grants the ruvector-bridge group rw on /dev/ttyUSB* + /dev/ttyACM*.
NoNewPrivileges=yes
CapabilityBoundingSet=