From b438829ef615ab4492943b89810cfdad063b1ca0 Mon Sep 17 00:00:00 2001 From: Michael Bradley Date: Tue, 24 Mar 2026 02:50:46 -0400 Subject: [PATCH] =?UTF-8?q?release:=20bump=20version=20to=202.4.0=20?= =?UTF-8?q?=E2=80=94=20native=20AMD=20Lemonade=20integration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Version 2.4.0 adds native AMD Lemonade inference with NPU + ROCm + Vulkan acceleration, LiteLLM model aliasing, AMD contract tests, pinned Lemonade v10.0.0, and 19 bug fixes across the installer and dashboard. Updates version in all 5 constants files, manifest.json, CHANGELOG, and both READMEs. Co-Authored-By: Claude Opus 4.6 (1M context) --- README.md | 2 +- dream-server/CHANGELOG.md | 30 +++++++++++++++++++ dream-server/README.md | 2 +- dream-server/get-dream-server.sh | 2 +- dream-server/installers/lib/constants.sh | 2 +- .../installers/macos/lib/constants.sh | 2 +- .../installers/phases/06-directories.sh | 2 +- .../installers/windows/lib/constants.ps1 | 2 +- dream-server/manifest.json | 6 ++-- 9 files changed, 40 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 4346779f..49fb3809 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ If AI is becoming critical infrastructure, it shouldn’t be rented. Self-hostin > > **Tested Linux distros:** Ubuntu 24.04/22.04, Debian 12, Fedora 41+, Arch Linux, CachyOS, openSUSE Tumbleweed. Other distros using apt, dnf, pacman, or zypper should also work — [open an issue](https://github.com/Light-Heart-Labs/DreamServer/issues) if yours doesn't. > -> **Windows:** Requires Docker Desktop with WSL2 backend. NVIDIA GPUs use Docker GPU passthrough; AMD Strix Halo runs llama-server natively with Vulkan. +> **Windows:** Requires Docker Desktop with WSL2 backend. NVIDIA GPUs use Docker GPU passthrough; AMD Strix Halo runs natively with Lemonade (NPU + ROCm + Vulkan acceleration). > > **macOS:** Requires Apple Silicon (M1+) and Docker Desktop. llama-server runs natively with Metal GPU acceleration; all other services run in Docker. > diff --git a/dream-server/CHANGELOG.md b/dream-server/CHANGELOG.md index 67ad0bf9..85d152e8 100644 --- a/dream-server/CHANGELOG.md +++ b/dream-server/CHANGELOG.md @@ -6,6 +6,36 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [Unreleased] +## [2.4.0] - 2026-03-24 + +### Added +- Native AMD Lemonade inference backend with NPU + ROCm + Vulkan acceleration +- LiteLLM model aliasing for AMD (friendly model names resolve to Lemonade internal IDs) +- AMD/Lemonade contract test suite (17 tests in `tests/contracts/test-amd-lemonade-contracts.sh`) +- Lemonade Docker image pinned to v10.0.0 with libatomic1 fix (`Dockerfile.amd`) +- Host-systemd service support in dashboard health checks (OpenCode no longer grayed out) +- `DREAM_MODE=lemonade` for AMD installs — routes all services through LiteLLM proxy +- Bootstrap model aliasing — both tier and bootstrap model names resolve in LiteLLM +- NPU detection on Windows (Win32_PnPEntity) and Linux (sysfs/lspci) + +### Changed +- AMD backend upgraded from generic Vulkan llama-server to native Lemonade Server +- LiteLLM runs as default inference proxy on AMD installs +- Lemonade image pinned to v10.0.0 (no longer `:latest`) +- LiteLLM auth disabled for localhost-only AMD installs (all ports bind 127.0.0.1) +- OpenCode config always synced on reinstall (stale API keys and URLs updated) + +### Fixed +- APE healthcheck replaced curl (missing in slim image) with python3 urllib +- Windows installer surfaces docker compose config errors on failure instead of just exit code +- Windows installer passes `--env-file .env` to docker compose for reliable variable loading +- Dashboard no longer grays out host-systemd services unreachable from Docker +- `.env.schema.json` updated for `DREAM_MODE=lemonade`, `TARGET_API_KEY`, `LLM_BACKEND`, `LLM_API_BASE_PATH` +- Lemonade entrypoint uses absolute path (`/opt/lemonade/lemonade-server`) +- Service health endpoint override for Lemonade (`/api/v1/health` vs `/health`) +- Perplexica, Privacy Shield, OpenClaw, Open WebUI API paths corrected for Lemonade (`/api/v1`) +- OpenCode config filename (`config.json` copy), LiteLLM routing, and small_model fallback + ## [2.0.0-strix-halo] - 2026-03-04 ### Added diff --git a/dream-server/README.md b/dream-server/README.md index 00ef28a6..dfd10c1c 100644 --- a/dream-server/README.md +++ b/dream-server/README.md @@ -39,7 +39,7 @@ Known-good version baselines: [`docs/KNOWN-GOOD-VERSIONS.md`](docs/KNOWN-GOOD-VE ```bash # One-line install (Linux — NVIDIA or AMD) -curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.3.4/get-dream-server.sh | bash +curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.4.0/get-dream-server.sh | bash ``` Or manually: diff --git a/dream-server/get-dream-server.sh b/dream-server/get-dream-server.sh index 1730b397..07e18177 100755 --- a/dream-server/get-dream-server.sh +++ b/dream-server/get-dream-server.sh @@ -1,6 +1,6 @@ #!/bin/bash # Dream Server Bootstrap Installer -# curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.3.4/get-dream-server.sh | bash +# curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.4.0/get-dream-server.sh | bash # # Detects OS, clones repo, runs installer. diff --git a/dream-server/installers/lib/constants.sh b/dream-server/installers/lib/constants.sh index b114f77d..ff2177ab 100755 --- a/dream-server/installers/lib/constants.sh +++ b/dream-server/installers/lib/constants.sh @@ -14,7 +14,7 @@ # Change VERSION for custom builds. Add new color codes here. # ============================================================================ -VERSION="2.3.4" +VERSION="2.4.0" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" # Source path utilities for cross-platform path resolution diff --git a/dream-server/installers/macos/lib/constants.sh b/dream-server/installers/macos/lib/constants.sh index cc5a04a1..1a8f4d39 100755 --- a/dream-server/installers/macos/lib/constants.sh +++ b/dream-server/installers/macos/lib/constants.sh @@ -11,7 +11,7 @@ # Change DS_VERSION for custom builds. Must match constants.sh VERSION. # ============================================================================ -DS_VERSION="2.3.4" +DS_VERSION="2.4.0" # Install location - use shared path resolution if available MACOS_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" diff --git a/dream-server/installers/phases/06-directories.sh b/dream-server/installers/phases/06-directories.sh index 859b98e6..14f89a9f 100755 --- a/dream-server/installers/phases/06-directories.sh +++ b/dream-server/installers/phases/06-directories.sh @@ -295,7 +295,7 @@ MODELS_EOF # Tier: ${TIER} (${TIER_NAME}) #=== Dream Server Version (used by dream-cli update for version-compat checks) === -DREAM_VERSION=${VERSION:-2.3.4} +DREAM_VERSION=${VERSION:-2.4.0} #=== LLM Backend Mode === DREAM_MODE=$(if [[ "$GPU_BACKEND" == "amd" && "${DREAM_MODE:-local}" == "local" ]]; then echo "lemonade"; else echo "${DREAM_MODE:-local}"; fi) diff --git a/dream-server/installers/windows/lib/constants.ps1 b/dream-server/installers/windows/lib/constants.ps1 index c45e0194..67bce2b7 100644 --- a/dream-server/installers/windows/lib/constants.ps1 +++ b/dream-server/installers/windows/lib/constants.ps1 @@ -10,7 +10,7 @@ # Change DS_VERSION for custom builds. Must match constants.sh VERSION. # ============================================================================ -$script:DS_VERSION = "2.3.4" +$script:DS_VERSION = "2.4.0" # Install location (override via $env:DREAM_HOME) # NOTE: $(if ...) syntax required for PS 5.1 compatibility (bare if-as-expression is PS 7+ only) diff --git a/dream-server/manifest.json b/dream-server/manifest.json index 1797550d..aab23694 100644 --- a/dream-server/manifest.json +++ b/dream-server/manifest.json @@ -1,12 +1,12 @@ { "schema_version": 2, - "dream_version": "2.2.0", + "dream_version": "2.4.0", "min_compatible_dream_version": "1.0.0", "manifestVersion": "1.0.0", "release": { - "version": "2.2.0", + "version": "2.4.0", "channel": "stable", - "date": "2026-03-20" + "date": "2026-03-24" }, "compatibility": { "os": {