Skip to content

v0.48.8

Choose a tag to compare

@github-actions github-actions released this 11 Sep 06:20
· 129 commits to main since this release
8f48dfe

Install

Homebrew (recommended — macOS + Linux):

brew install SmooAI/tools/th

curl | sh:

curl -fsSL https://raw.githubusercontent.com/SmooAI/smooth/main/install.sh | sh

Build from source (Cargo):

git clone https://github.com/SmooAI/smooth.git
cd smooth
cargo install --path crates/smooth-cli

Upgrade

# Homebrew
brew update && brew upgrade th

# curl|sh — re-run the installer (it overwrites in place)
curl -fsSL https://raw.githubusercontent.com/SmooAI/smooth/main/install.sh | sh

# Cargo — from your cloned checkout
cd smooth && git pull && cargo install --path crates/smooth-cli --force

What's new

Patch Changes

  • 2a8f30a: th attest: never stall or hang on the build box — fail fast, bound the run, fall back to local

    th attest rust routes to a remote build box. Three ways that stalled or hung th,
    now closed:

    • Unreachable box: the ssh calls had no ConnectTimeout, so they stalled on the
      full TCP handshake. Both now use ConnectTimeout=10.
    • Wedged mid-run: once connected, a check could wedge (measured: cargo finished but
      rust.sh hung in a docker probe) and child.wait() never returned, hanging th
      with it (th-7db71c). A watchdog now kills the ssh after a deadline
      (SMOOTH_ATTEST_REMOTE_DEADLINE_SECS, default 45 min); killing the local client drops
      the connection so the remote check is torn down too.
    • Either way: a remote infrastructure failure (unreachable / no disk / dropped /
      timed out) no longer blocks and defers the whole row to CI. It prints a visible
      ⚠ <host>: <reason> and runs the check locally — a real verdict on this machine.
      Slower (no warm cache), which is why the warning is loud.

Downloads

Platform File name
macOS (Apple Silicon) th-macos-arm64.tar.gz
Linux (x86_64) th-linux-x86_64.tar.gz
Linux (arm64) th-linux-arm64.tar.gz

Source · README · Homebrew tap · Pearls (work tracker)