rch v1.0.47 — self-healing worker circuits + SSH connection reuse + managed build-artifact dirs
Fleet-targeted release built manually (GitHub Actions unavailable):
x86_64-unknown-linux-gnu+aarch64-apple-darwin. Each tarball bundlesrch,rchd,rch-wkr.rch updateself-updates per-platform.
Workers stop falsely going DOWN and self-heal
Fixes the failure mode where the daemon's per-worker health checks intermittently failed SSH under connection load, tripping circuit breakers that latched open and needed a manual rch workers enable to recover.
- Connection reuse (A1): the daemon's periodic SSH (health, telemetry, capability probe, cache-cleanup, stale-target-reap, reclaim, toolchain probe) now flows through one shared
SshPool(warm ControlMaster, boundedControlPersist=IdleFor(60),close_all()on shutdown, gated onconnection_pooling), collapsing ~72 SSH handshakes/min to ~12 warm masters and eliminating the connection flood. - Resilient + unified circuits (A2): transient transport errors are retried before counting a circuit failure; the two circuit stores are unified so
WorkerState.circuit(what selection reads) is the single source of truth viarecord_health_check+apply_health_outcome;enable()and a successful benchmark now actually reset/promote it; half-open recovery needs exactlysuccess_thresholdclean probes and a transient half-open failure no longer reopens/resets the cooldown.
Dispatched build artifacts land in the managed /data/tmp zone
build_remote_env_plan now unconditionally injects CARGO_TARGET_DIR, TMPDIR, GOCACHE/GOMODCACHE/GOPATH into the remote build prefix (env precedence overrides an absolute .cargo/config target-dir, covering wrapper/unclassified builds), and remote_base defaults to /data/tmp/rch. Stops out-of-scan-zone build junk (a 241G /root/cass-ft-target filled a worker).
Tests
Touched-crate suites green (rch-common / rchd / rch); new tests for transient retry, unified-circuit reset via enable, half-open 2-probe recovery, env injection incl. absolute-target-dir override, and SSH pool reuse/no-leak.
What's Changed
See the full changelog in the commit history.
Installation
Quick Install (Unix/macOS)
curl -fsSL https://github.com/Dicklesworthstone/remote_compilation_helper/releases/download/v1.0.47/install.sh | shQuick Install (Windows PowerShell)
iwr https://github.com/Dicklesworthstone/remote_compilation_helper/releases/download/v1.0.47/install.ps1 | iexManual Download
Download the appropriate archive for your platform:
| Platform | Architecture | Download |
|---|---|---|
| Linux | x86_64 (glibc) | rch-v1.0.47-x86_64-unknown-linux-gnu.tar.gz |
| Linux | x86_64 (musl/static) | rch-v1.0.47-x86_64-unknown-linux-musl.tar.gz |
| Linux | ARM64 | rch-v1.0.47-aarch64-unknown-linux-gnu.tar.gz |
| macOS | Intel | rch-v1.0.47-x86_64-apple-darwin.tar.gz |
| macOS | Apple Silicon | rch-v1.0.47-aarch64-apple-darwin.tar.gz |
| Windows | x86_64 | rch-v1.0.47-x86_64-pc-windows-msvc.zip |
Verify Downloads
All downloads include SHA256 checksums. Verify with:
sha256sum -c rch-v1.0.47-<target>.tar.gz.sha256Or check against checksums.txt which contains all checksums.
Sigstore Verification
Artifacts are signed with Sigstore for enhanced supply chain security.
Verify with:
cosign verify-blob --bundle rch-v1.0.47-<target>.tar.gz.sigstore.json \
--certificate-identity-regexp=".*" \
--certificate-oidc-issuer-regexp=".*" \
rch-v1.0.47-<target>.tar.gzClaude Code Skill
The skill.tar.gz contains the RCH skill for Claude Code.
Install with:
mkdir -p ~/.claude/skills && tar -xzf skill.tar.gz -C ~/.claude/skills/Full Changelog: v1.0.46...v1.0.47